private void HandleServerReceived(object sender, DataPacketEventArgs e) { // Add the input to working memory string senderName = e.DataPacket.SenderName; StringMemoryItem inputItem = null; if (senderName == AgentConstants.LISTENER_PROCESS_NAME) { inputItem = new StringMemoryItem(); inputItem.TagList.Add(listenerInputTag); inputItem.SetContent(e.DataPacket.Message); workingMemory.AddItem(inputItem); timeOfLastListenerInput = inputItem.InsertionTime; if (!busy) { HandleUserInput(inputItem); } } else if (senderName == AgentConstants.VISION_PROCESS_NAME) { inputItem = new StringMemoryItem(); inputItem.TagList.Add(visionInputTag); inputItem.SetContent(e.DataPacket.Message); workingMemory.AddItem(inputItem); timeOfLastVisionInput = inputItem.InsertionTime; if (!busy) { HandleUserInput(inputItem); } } else if (senderName == AgentConstants.INTERNET_PROCESS_NAME) { ProcessInternetInput(e.DataPacket.Message); } }