// NOTE: The received messages at each server are updated here // Hence, this update depends on your application architecture // How many frames per second or Update() calls per frame? void Update() { OSCHandler.Instance.UpdateLogs(); msg = "0.1544944"; byte[] val = new byte[] { 176, 8, 0 }; servers = OSCHandler.Instance.Servers; clients = OSCHandler.Instance.Clients; if (UnityEngine.Random.value < 0.01f) { randVal = UnityEngine.Random.Range(0f, 0.7f); Debug.Log("sending messages"); // OSCHandler.Instance.SendMessageToClient ("localhost", "/user/1", randVal); // OSCHandler.Instance.SendMessageToClient ("localhost", "/user/2", randVal); // OSCHandler.Instance.SendMessageToClient ("localhost", "/user/3", randVal); // OSCHandler.Instance.SendMessageToClient ("localhost", "/user/4", randVal); } OSCHandler.Instance.UpdateLogs(); foreach (KeyValuePair <string, ServerLog> item in servers) { // If we have received at least one packet, // show the last received from the log in the Debug console if (item.Value.log.Count > 0) { int lastPacketIndex = item.Value.packets.Count - 1; UnityEngine.Debug.Log("received something"); UnityEngine.Debug.Log(String.Format("SERVER: {0} ADDRESS: {1} VALUE : {2}", item.Key, // Server name item.Value.packets [lastPacketIndex].Address, // OSC address item.Value.packets [lastPacketIndex].Data [0].ToString())); //First data value Vector3 newpos = Camera.main.ScreenToWorldPoint(new Vector3(UnityEngine.Random.Range(0f, Screen.width), UnityEngine.Random.Range(0f, Screen.height), 2f)); if (item.Value.packets [lastPacketIndex].Address == "Frog/ip/src") { if (tempFrog != null) { tempFrog.GetComponent <FrogScript> ().ChangeType("ip"); tempFrog.GetComponent <FrogScript> ().AssignIP(item.Value.packets [lastPacketIndex].Data [0].ToString()); } } else if (item.Value.packets [lastPacketIndex].Address == "Frog/ip/ttl") { if (tempFrog != null) { tempFrog.GetComponent <FrogScript> ().ChangeType("ip"); tempFrog.GetComponent <FrogScript> ().SetTTL(int.Parse(item.Value.packets [lastPacketIndex].Data [0].ToString())); } } else if (item.Value.packets [lastPacketIndex].Address == "Frog/ip/dst") { holeManager.CheckAdd(item.Value.packets [lastPacketIndex].Data [0].ToString()); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/radiotap") { //INSTANTIATE tempFrog = Instantiate(frogSprite, newpos, Quaternion.identity) as GameObject; tempFrog.GetComponent <FrogScript> ().ChangeType("ip"); tempFrog.GetComponent <FrogScript> ().AssignChannel(int.Parse(item.Value.packets [lastPacketIndex].Data [0].ToString())); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/http") { UnityEngine.Debug.Log("OOOOH HTTTP!!"); //INSTANTIATE tempFrog = Instantiate(frogSprite, newpos, Quaternion.identity) as GameObject; tempFrog.GetComponent <FrogScript> ().ChangeType("http"); holeManager.AssignServer(item.Value.packets [lastPacketIndex].Data [0].ToString()); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/http/user_agent") { pondManager.AssignUserAgent(item.Value.packets [lastPacketIndex].Data [0].ToString()); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/udp") { //INSTANTIATE tempFrog = Instantiate(frogSprite, newpos, Quaternion.identity) as GameObject; tempFrog.GetComponent <FrogScript> ().ChangeType("udp"); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/ssl") { tempFrog = Instantiate(frogSprite, newpos, Quaternion.identity) as GameObject; tempFrog.GetComponent <FrogScript> ().ChangeType("ssl"); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/ssl/cookie") { if (tempFrog != null) { tempFrog.GetComponent <FrogScript> ().GiveCookie(item.Value.packets [lastPacketIndex].Data [0].ToString()); } } else if (item.Value.packets [lastPacketIndex].Address == "Frog/wlan_mgt/ssid") { if (tempFrog != null) { pondManager.AssignSSID(item.Value.packets [lastPacketIndex].Data [0].ToString()); } } else if (item.Value.packets [lastPacketIndex].Address == "Frog/wlan_addr") { //INSTANTIATE GameObject tempFrog = Instantiate(frogSprite, newpos, Quaternion.identity) as GameObject; tempFrog.GetComponent <FrogScript> ().ChangeType("wlan"); string combAddr = item.Value.packets [lastPacketIndex].Data [0].ToString(); string delimiter = ","; char[] delimArray = delimiter.ToCharArray(); string[] combArray = combAddr.Split(delimArray, 2); //UnityEngine.Debug.Log ("OOOOH" + combArray [0] + "AND" + combArray [1]); pondManager.CheckAdd(combArray [0]); //holeManager.CheckAdd (combArray [1]); //tempFrog.GetComponent<FrogScript> ().AssignIP (combArray[0]); } else if (item.Value.packets [lastPacketIndex].Address == "Frog/wlan_radio") { //tempFrog = Instantiate (frogSprite, newpos, Quaternion.identity) as GameObject; //tempFrog.GetComponent<FrogScript> ().ChangeType ("wlan"); pondManager.ConveySignalStrength(int.Parse(item.Value.packets [lastPacketIndex].Data [0].ToString())); if (tempFrog != null) { } } } } foreach (KeyValuePair <string, ClientLog> item in clients) { // If we have sent at least one message, // show the last sent message from the log in the Debug console if (item.Value.log.Count > 0) { int lastMessageIndex = item.Value.messages.Count - 1; UnityEngine.Debug.Log(String.Format("CLIENT: {0} ADDRESS: {1} VALUE 0: {2}", item.Key, // Server name item.Value.messages[lastMessageIndex].Address, // OSC address item.Value.messages[lastMessageIndex].Data[0].ToString())); //First data value } } }