public Connect ( string endPoint ) : IEndPointClient | ||
endPoint | string | |
return | IEndPointClient |
void direct_Example() { var directSocket = new Client("http://127.0.0.1:3000/logger"); // url to the nodejs directSocket.Connect(); directSocket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); }); directSocket.On("traceEvent", (eventLog) => { // do something with eventLog }); directSocket.Emit("messageAck", new { hello = "papa" }); }
public void initialize() { socket = new SocketIOClient.Client("http://" + ip + ""); socket.On("connect", (fn) => { Debug.Log("connect - socket"); //Dictionary<string, string> args = new Dictionary<string, string>(); //List<string> args = new List<string>(); //args.Add("what's up?"); //socket.Emit("SEND", args); //string valueout; //args.TryGetValue("msg", out valueout); }); socket.On("keyPressed", (fn) => { string data = (string)fn.Json.args[0]; string[] dataArray = data.Split(','); int millis = int.Parse(dataArray[1]); int score = int.Parse(dataArray[2]); if (dataArray[0].Equals("0")) { manager.reciveLeft(millis, score); } if (dataArray[0].Equals("1")) { manager.reciveDown(millis, score); } if (dataArray[0].Equals("2")) { manager.reciveUp(millis, score); } if (dataArray[0].Equals("3")) { manager.reciveRight(millis, score); } }); socket.On("startGame", (fn) => { Debug.Log("Gloworbo"); gameFlowManagerScript.runOnline(); }); socket.Error += (sender, e) => { Debug.Log("Error " + e.Message.ToString()); error = true; }; socket.On("playerLeft", (fn) => { Application.LoadLevel(Application.loadedLevel); }); if (!error) { socket.Connect(); } }
private void connect() { websocket = new Client(HOST_URL); /* サーバとの接続が確定 */ websocket.On("connect", (fn) => { NotifyUpdateState(INROOM); Console.WriteLine("connect"); }); /* サーバからのプッシュ通知(誰かの状態が更新された)*/ websocket.On("s2c_update_state", (data) => { string json = "" + data.Json.Args[0]; Console.WriteLine("update state : =" + json); }); /* サーバからのプッシュ通知(新しくメンバーが追加) */ websocket.On("s2c_message_register_member", (data) => { string json = "" + data.Json.Args[0]; Console.WriteLine("register new member :" + json); }); websocket.Connect(); }
void Start() { Debug.Log("Attempting to connect to server..."); System.Net.WebRequest.DefaultWebProxy = null; string url = "http://45.56.101.79:80/"; Debug.Log("Server url: " + url); socket = new SocketIOClient.Client(url); socket.On("connect", (fn) => { Debug.Log("connect - socket"); Dictionary <string, string> args = new Dictionary <string, string>(); args.Add("msg", "what's up?"); socket.Emit("SEND", args); }); socket.On("RECV", (data) => { Debug.Log(data.Json.ToJsonString()); }); socket.Error += (sender, e) => { Debug.Log("socket Error: " + e.Message.ToString()); }; socket.Connect(); }
private void WorkerFunc() { try { var client = new RestClient(Host.Url, Session.Cookies); var res = client.Get("push_settings.json?ctype=mobile"); var queryString = client.Content.SelectToken("query_string").Value<string>(); var url = string.Format(@"https://notification-service-{0}{1}", Host.Uri.Host, queryString); _socket = new SocketIOClient.Client(url); _socket.Message += socket_MessageReceived; _socket.Error += socket_Error; _socket.Opened += socket_Opened; _socket.Connect(); } catch (OperationCanceledException) { IsStarted = false; } catch (Exception ex) { IsStarted = false; Logger.LogError(ex); throw; } }
public void Execute() { Console.WriteLine("Starting TestSocketIOClient Example..."); socket = new Client("http://127.0.0.1:8000/"); // url to nodejs server socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); }); // received new message from the server socket.On("new", (data) => { // json returned is in a wieird format ex: {"name":"new","args":[{"name":"sung","msg":"wefwef"}]} grab the right string from that (second part is what we're interested in) string jsonstr = data.Json.Args[0].ToString(); // convert json string to message object Message msg = JsonConvert.DeserializeObject<Message>(jsonstr); // start a new thread to safely append the textbox text this.txtUpdateThread = new Thread(() => this.SetText(msg.name + ": " + msg.msg + "\r\n")); this.txtUpdateThread.Start(); }); // make the socket.io connection socket.Connect(); }
//start socket private void Start() { //get the sample player trans = GameObject.Find("SamplePlayer").GetComponent <Transform> (); socket = new SocketIOClient.Client("http://localhost:3000/"); //("http://localhost:3000");// socket.On("connect", (fn) => { //Debug.Log ("connect - socket"); //Dictionary<string, string> args = new Dictionary<string, string>(); //args.Add("zcock", "0"); //args.Add("xcock", "0"); //socket.Emit("send message", args); //socket.Emit("send message", "yo new socket in town"); }); socket.On("allppl", (data) => { Debug.Log("cockfucker" + data.Json.ToJsonString()); //string jot = JSONObject.Parse(data).ToString(); }); socket.On("new pos", (data) => { fuckdata = JSONObject.Parse(data.Json.ToJsonString()); JSONArray awesa = fuckdata.GetArray("args"); positionData = awesa.ToString(); //(string) data.Json.ToJsonString(); usernamesocket = awesa[0].ToString(); try{ if (awesa[1].Obj.GetString("xcock") != null && awesa[1].Obj.GetString("zcock") != null) { xman = awesa[1].Obj.GetString("xcock"); zman = awesa[1].Obj.GetString("zcock"); } }catch { } }); socket.On("new message", (data) => { // Debug.Log ("fukeroo"+ data.ToString()); fuckdata = JSONObject.Parse(data.Json.ToJsonString()); }); socket.Error += (sender, e) => { //Debug.Log ("socket Error: " + e.Message.ToString ()); }; socket.Connect(); } //end
public void InitializeSocket() { if(_client != null) _client.Close(); _client = new Client(@"https://feed.bitfloor.com"); _client.Message += SocketClientMessage; _client.Error += SocketClientError; _client.SocketConnectionClosed += SocketClientConnectionClosed; _client.On("order_new", (details) => { }); _client.Connect("/1"); }
// https://github.com/kaistseo/UnitySocketIO-WebSocketSharp void Start() { socket = new SocketIOClient.Client("http://literature.uncontext.com:80/"); socket.On("0", (data) => { Debug.Log(data.Json.ToJsonString()); }); socket.Error += (sender, e) => { Debug.Log("socket Error: " + e.Message.ToString()); }; socket.Connect(); }
// Use this for initialization void OnEnable() { client = new SocketIOClient.Client(serverAdress + "/?transport=polling"); client.Opened += SocketOpened; client.Message += SocketMessage; client.Error += SocketError; client.SocketConnectionClosed += SocketConnectionClosed; client.Connect(); }
// https://github.com/kaistseo/UnitySocketIO-WebSocketSharp void Start() { socket = new SocketIOClient.Client("http://literature.uncontext.com:80/"); socket.On("0", (data) => { Debug.Log (data.Json.ToJsonString()); }); socket.Error += (sender, e) => { Debug.Log ("socket Error: " + e.Message.ToString ()); }; socket.Connect(); }
public MtGoxWebSocketClient() { _client = new Client(MTGOXSOCKETURL); _client.Error += _client_Error; _client.Message += _client_Message; _client.SocketConnectionClosed += _client_SocketConnectionClosed; _client.On("subscribe", data => SetStatus("Subscribed to channel: " + data.Json.ToJsonString() + Environment.NewLine)); _client.On("channel", data => SetStatus("Ticker: " + data.Json.ToJsonString() + Environment.NewLine)); _client.On("connect", data => SetStatus("Connected to the socket.." + Environment.NewLine)); _client.Connect("/mtgox"); }
//Awake is always called before any Start functions void Awake() { Debug.Log("start"); sended = 0; // socket = new SocketIOClient.Client ("http://127.0.0.1:3000/"); socket = new SocketIOClient.Client("https://unity-server.herokuapp.com/"); socket.On("connect", (fn) => { Debug.Log("connect - socket"); Dictionary <string, string> args = new Dictionary <string, string>(); args.Add("scene", "game_start"); socket.Emit("emit", args); }); //socket.Send("nuwaaa"); socket.On("message:receive", (data) => { Debug.Log(data.Json.ToJsonString()); //text = data.Json.ToJsonString() + "\n" + text; }); socket.Connect(); //Check if instance already exists if (instance == null) { //if not, set instance to this instance = this; } //If instance already exists and it's not this: else if (instance != this) { //Then destroy this. This enforces our singleton pattern, meaning there can only ever be one instance of a GameManager. Destroy(gameObject); } //Sets this to not be destroyed when reloading scene DontDestroyOnLoad(gameObject); //Assign enemies to a new List of Enemy objects. enemies = new List <Enemy>(); //Get a component reference to the attached BoardManager script boardScript = GetComponent <BoardManager>(); //Call the InitGame function to initialize the first level InitGame(); }
void Start() { socket = new SocketIOClient.Client("http://127.0.0.1:80/"); socket.On("connect", (fn) => { Debug.Log ("connect - socket"); Dictionary<string, string> args = new Dictionary<string, string>(); args.Add("msg", "what's up?"); socket.Emit("SEND", args); }); socket.On("RECV", (data) => { Debug.Log (data.Json.ToJsonString()); }); socket.Connect(); }
public void Execute() { Console.WriteLine("Starting TestSocketIOClient Example..."); socket = new Client("http://127.0.0.1:3000/"); // url to the nodejs / socket.io instance socket.Opened += SocketOpened; socket.Message += SocketMessage; socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; socket.HandShake.Headers.Add("OrganizationId", "1034"); socket.HandShake.Headers.Add("UserId", "TestSample"); // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); Console.WriteLine("Emit Part object"); // emit Json Serializable object, anonymous types, or strings //Part newPart = new Part() { X = 1, Y = 2, Z = 3 }; //socket.Emit("JSONSkeleton", newPart); JSONSkeleton newPart = new JSONSkeleton(); socket.Emit("partInfo", newPart.ToJsonString()); }); // register for 'update' events - message is a json 'Part' object socket.On("update", (data) => { Console.WriteLine("recv [socket].[update] event"); //Console.WriteLine(" raw message: {0}", data.RawMessage); //Console.WriteLine(" string message: {0}", data.MessageText); //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); // cast message as Part - use type cast helper Part part = data.Json.GetFirstArgAs<Part>(); //Console.WriteLine(" Part Level: {0}\r\n", part.Level); }); // make the socket.io connection socket.Connect(); }
public void initialize(){ socket = new SocketIOClient.Client("http://"+ip+""); socket.On("connect", (fn) => { Debug.Log ("connect - socket"); //Dictionary<string, string> args = new Dictionary<string, string>(); //List<string> args = new List<string>(); //args.Add("what's up?"); //socket.Emit("SEND", args); //string valueout; //args.TryGetValue("msg", out valueout); }); socket.On("keyPressed", (fn) => { string data = (string)fn.Json.args[0]; string[] dataArray = data.Split(','); int millis = int.Parse(dataArray[1]); int score = int.Parse(dataArray[2]); if(dataArray[0].Equals("0")) manager.reciveLeft(millis, score); if(dataArray[0].Equals("1")) manager.reciveDown(millis, score); if(dataArray[0].Equals("2")) manager.reciveUp(millis, score); if(dataArray[0].Equals("3")) manager.reciveRight(millis, score); }); socket.On("startGame", (fn) => { Debug.Log("Gloworbo"); gameFlowManagerScript.runOnline(); }); socket.Error+=(sender, e) => { Debug.Log("Error "+ e.Message.ToString()); error = true; }; socket.On("playerLeft", (fn) => { Application.LoadLevel(Application.loadedLevel); }); if(!error) socket.Connect(); }
void Start() { socket = new SocketIOClient.Client("http://127.0.0.1:80/"); socket.On("connect", (fn) => { Debug.Log("connect - socket"); Dictionary <string, string> args = new Dictionary <string, string>(); args.Add("msg", "what's up?"); socket.Emit("SEND", args); }); socket.On("RECV", (data) => { Debug.Log(data.Json.ToJsonString()); }); socket.Error += (sender, e) => { Debug.Log("socket Error: " + e.Message.ToString()); }; socket.Connect(); }
static void Main(string[] args) { Console.WriteLine("Starting TestSocketIOClient Example..."); var socket = new Client("http://192.168.80.1:3000/"); // url to nodejs socket.Opened += (a, b) => { Console.WriteLine("Opened"); }; socket.Message += (a, b) => { Console.WriteLine("Message"); }; socket.SocketConnectionClosed += (a, b) => { Console.WriteLine("SocketConnectionClosed"); }; socket.Error += (a, b) => { Console.WriteLine("Error"); }; // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("socket.On(connect)"); // emit Json Serializable object, anonymous types, or strings var msg = new Message() { body = "Hello world!" }; socket.Emit("msg", msg); }); // register for 'update' events - message is a json 'Part' object socket.On("msg", (data) => { //Console.WriteLine("recv [socket].[update] event"); //Console.WriteLine(" raw message: {0}", data.RawMessage); //Console.WriteLine(" string message: {0}", data.MessageText); //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); // cast message as Part - use type cast helper var msg = data.Json.GetFirstArgAs<Message>(); Console.WriteLine(">> {0}", msg.body); }); // make the socket.io connection socket.Connect(); while (true) { Console.Write("> "); var txt = Console.ReadLine(); var msg = new Message { body = txt }; socket.Emit("msg", msg); } }
// Use this for initialization void Start() { socket = new SocketIOClient.Client("http://127.0.0.1:3000/"); socket.On("connect", (fn) => { //Debug.Log ("connect - socket"); //Dictionary<string, string> args = new Dictionary<string, string>(); //args.Add("send message", "what's up?"); socket.Emit("send message", "yo new albert socket in town"); //socket.Emit("send message", "yo new socket in town"); socket.Message += SocketMessage; }); socket.Connect(); }
public void StartConnection(string Ip) { Console.WriteLine("Starting TestSocketIOClient Example..."); client = new Client(Ip); // register for 'connect' event with io server client.On("succesfull", (data) => { //MessageBox.Show("asd"); }); // register for 'update' events - message is a json 'Part' object client.On("playerJoined", (data) => { //MessageBox.Show(data.RawMessage); //SimpleJson.SimpleJson.DeserializeObject<Player>(data.RawMessage); }); // make the socket.io connection client.Connect(); }
static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); user = "******"; MyForm = new Form1(); temp = new Form2(); Application.Run(temp); try { socket = new Client(ip.ToString()); socket.On("txt", (data) => { //MessageBox.Show(data.RawMessage); String msg = data.Json.Args[0].ToString(); Console.Write(msg); MyForm.update(msg); //MessageBox.Show(msg, "Received Data"); }); socket.Connect(); } catch (Exception e) { MessageBox.Show(e.ToString(),"Something Went Wrong!!"); Application.Exit(); } if (socket.ReadyState.ToString() == "Connecting") { userset(); Application.Run(MyForm); } else { MessageBox.Show("Failed To Connect To Server!", "Error!"); Application.Exit(); } }
public void InitializeSocket() { if(_client != null) _client.Close(); _client = new Client(@"https://socketio.mtgox.com"); _client.Message += SocketClientMessage; _client.Error += SocketClientError; _client.SocketConnectionClosed += SocketClientConnectionClosed; if (ValidApiKey) { SubscribeUserChannel subUser = new SubscribeUserChannel(GetIdKey()); JSONMessage userMsg = new JSONMessage(subUser, endpoint: "/mtgox") { Json = new JsonEncodedEventMessage("message", subUser) }; SubscribeLag subLag = new SubscribeLag(); JSONMessage lagMsg = new JSONMessage(subLag, endpoint: "/mtgox") { Json = new JsonEncodedEventMessage("message", subLag) }; _client.On("connect", data => { _client.Send(userMsg); _client.Send(lagMsg); }); } _client.Connect("/mtgox"); }
void explicit_Example() { var socket = new Client("http://127.0.0.1:3000/"); // url to the nodejs socket.Connect(); socket.Connect("/logger"); // EventMessage by namespace socket.On("traceEvent", "/logger", (eventLog) => { Console.WriteLine("recv #1 [logger].[traceEvent] : {0}\r\n", eventLog.Json.GetFirstArgAs<EventLog>().ToJsonString()); }); socket.Emit("messageAck", new { hello = "papa" }, "/logger"); }
//class Part { PartNumber = "K4P2G324EC", Code = "DDR2", Level = 1 }; public void Execute() { Console.WriteLine("Starting TestSocketIOClient Example..."); var headers = new NameValueCollection { { "Cookie", "SID=7fmir6ps5ksdt9fo1dr76c7to7" } }; //socket = new Client("http://prestashop:8081"); // url to nodejs socket = new Client("https://wsbeta.tradernet.ru:443", WebSocket4Net.WebSocketVersion.Rfc6455, headers); // url to nodejs //http://prestashop:8081/ socket.Opened += SocketOpened; socket.Message += SocketMessage; socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; socket.Connect(); // socket.On("q", (data) => // { // Console.WriteLine(">q", data.RawMessage); // Console.WriteLine(">q", data.Json.ToJsonString()); // }); // // socket.On("sup_updateTransactions", (data) => // { // Console.WriteLine(">sup_updateTransactions", data.RawMessage); // Console.WriteLine(">sup_updateTransactions", data.Json.ToJsonString()); // }); // // socket.On("server_message", (data) => // { // Console.WriteLine("server_message", data); // Console.WriteLine(data); // Console.WriteLine(" raw message: {0}", data.RawMessage); // Console.WriteLine(" string message: {0}", data.MessageText); // Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); // //Part part = data.Json.GetFirstArgAs<Part>(); // //Console.WriteLine(" Part Level: {0}\r\n", part.Level); // // }); // register for 'connect' event with io server // socket.On("connect", (fn) => // { // Console.WriteLine("Connected event..."); // Console.WriteLine("Emit Part object"); // // // emit Json Serializable object, anonymous types, or strings //// Part newPart = new Part() //// { //// PartNumber = "K4P2G324EC", //// Code = "DDR2", //// Level = 1 //// }; // //socket.Emit("partInfo", newPart); // //socket.Emit("message", new int[] { 372134,371014,157050,371012,371033 }); // socket.Emit("sup_subscribeTransactions", new int[] { 372134,371014,157050,371012,371033 }); // socket.Emit("sup_updateSecurities2", new string[] { "RIH4","SIH4","SRH4","EUH4","BRG4","SBER","RTKM","EDH4","GZH4","GAZPM","GDH4","LKOH","GMKN","ROSN","PLZL","BRF4","GUH4","OMC.US","TXN.US","TYC.US","MAR.US","NKE.US","CTSH.US","CHK.US","GD.US","CHRW.US","KMX.US","RU000A0JQC49","RU000A0JQC56","RU000A0JR0A9","RU000A0JSG43","RU000A0JS546","RU000A0JRHL1","RU000A0JREU9","RU000A0JQYZ8","RU000A0JQZ00","RU000A0JTCM6","RU000A0JUBD5","SU25076RMFS9","SU26207RMFS9","RU000A0JRG44","RU000A0JTX33","SU25077RMFS7","RU000A0JS8R5","RU000A0JU179","RU000A0JU963","SU26212RMFS9","GAZPM","SBER","MGNT","LKOH","GMKN","ROSN","VTBR","URKA","SNGSP","SBERP","RIM4","ESM14.US","UXM4" }); // // }); // socket.Emit("message", new int[] { 372134,371014,157050,371012,371033 }); // socket.Emit("sup_subscribeTransactions", new int[] { 372134,371014,157050,371012,371033 }); // socket.Emit("sup_updateSecurities2", new string[] { "RIH4","SIH4","SRH4","EUH4","BRG4","SBER","RTKM","EDH4","GZH4","GAZPM","GDH4","LKOH","GMKN","ROSN","PLZL","BRF4","GUH4","OMC.US","TXN.US","TYC.US","MAR.US","NKE.US","CTSH.US","CHK.US","GD.US","CHRW.US","KMX.US","RU000A0JQC49","RU000A0JQC56","RU000A0JR0A9","RU000A0JSG43","RU000A0JS546","RU000A0JRHL1","RU000A0JREU9","RU000A0JQYZ8","RU000A0JQZ00","RU000A0JTCM6","RU000A0JUBD5","SU25076RMFS9","SU26207RMFS9","RU000A0JRG44","RU000A0JTX33","SU25077RMFS7","RU000A0JS8R5","RU000A0JU179","RU000A0JU963","SU26212RMFS9","GAZPM","SBER","MGNT","LKOH","GMKN","ROSN","VTBR","URKA","SNGSP","SBERP","RIM4","ESM14.US","UXM4" }); // register for 'update' events - message is a json 'Part' object // socket.On("update", (data) => // { // Console.WriteLine("recv [socket].[update] event"); // //Console.WriteLine(" raw message: {0}", data.RawMessage); // //Console.WriteLine(" string message: {0}", data.MessageText); // //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); // //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); // // // cast message as Part - use type cast helper // Part part = data.Json.GetFirstArgAs<Part>(); // Console.WriteLine(" Part Level: {0}\r\n", part.Level); // }); // make the socket.io connection var logger = socket.Connect("/sup"); // connect to the logger ns socket.Message += SocketMessage; logger.On("sup_updateTransactions", (data) => { Console.WriteLine("t: {0}", data.RawMessage); //Console.WriteLine(">sup_updateTransactions", data.Json.ToJsonString()); }); logger.On("q", (data) => { QuotesUpdateEvent quotesUpdate = data.Json.GetFirstArgAs<QuotesUpdateEvent>(); //Console.WriteLine("q: {0}", data.MessageText); Console.WriteLine(">q: {0}", quotesUpdate); }); socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); Console.WriteLine("Emit Part object"); // emit Json Serializable object, anonymous types, or strings // Part newPart = new Part() // { // PartNumber = "K4P2G324EC", // Code = "DDR2", // Level = 1 // }; //socket.Emit("partInfo", newPart); //socket.Emit("message", new int[] { 372134,371014,157050,371012,371033 }); socket.Emit("sup_subscribeTransactions", new int[] { 372134,371014,157050,371012,371033 }); }); logger.Emit("sup_subscribeTransactions", new int[] { 372134,371014,157050,371012,371033 }); logger.Emit("sup_updateSecurities2", new string[] { "RIH4","SIH4","SRH4","EUH4","BRG4","SBER","RTKM","EDH4","GZH4","GAZPM","GDH4","LKOH","GMKN","ROSN","PLZL","BRF4","GUH4","OMC.US","TXN.US","TYC.US","MAR.US","NKE.US","CTSH.US","CHK.US","GD.US","CHRW.US","KMX.US","RU000A0JQC49","RU000A0JQC56","RU000A0JR0A9","RU000A0JSG43","RU000A0JS546","RU000A0JRHL1","RU000A0JREU9","RU000A0JQYZ8","RU000A0JQZ00","RU000A0JTCM6","RU000A0JUBD5","SU25076RMFS9","SU26207RMFS9","RU000A0JRG44","RU000A0JTX33","SU25077RMFS7","RU000A0JS8R5","RU000A0JU179","RU000A0JU963","SU26212RMFS9","GAZPM","SBER","MGNT","LKOH","GMKN","ROSN","VTBR","URKA","SNGSP","SBERP","RIM4","ESM14.US","UXM4" }); }
static void Main(string[] args) { Console.WriteLine("Starting TestSocketIOClient Example..."); socket = new Client("http://localhost:8008/"); // url to nodejs server socket.Error += SocketError; // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); }); socket.On("news", (data) => { Console.WriteLine(" raw message: {0}", data.RawMessage); Console.WriteLine(" string message: {0}", data.MessageText); }); socket.On("acceptPosition", (data) => { var x = ((int) data.Json.Args[0].x.Value); var y = ((int) data.Json.Args[0].y.Value); var point = new System.Drawing.Point(x,y); //Console.WriteLine("external: " + point); SetCursorPos(point.X, point.Y); }); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("\r\nPress 'c' to execute checkin event \r\n\t(view socket.io server console window to verify).\r\nPress 'x' to exit."); Console.ResetColor(); // make the socket.io connection socket.Connect(); _hookID = SetHook(_proc); Application.Run(); UnhookWindowsHookEx(_hookID); socket.Dispose(); //Execute(); }
static void connectSocket() { try { socket = new Client(ConfigParam.Rows[0]["Host"].ToString()); socket.Error += socket_Error; socket.Opened += socket_Opened; socket.ConnectionRetryAttempt += socket_ConnectionRetryAttempt; socket.SocketConnectionClosed += socket_SocketConnectionClosed; myForm.Socket = socket; socket.On("welcome", (message) => { //MessageBox.Show(data.RawMessage); String msg = message.Json.Args[0].ToString(); dynamic json = JObject.Parse(msg); Console.Write(json.message); myForm.ConsoleWriteLine(json.message.ToString()); dynamic respon = JObject.Parse("{AppID: '" + ConfigParam.Rows[0]["AppID"].ToString() + "'}"); socket.Emit("regAppID", respon); //MessageBox.Show(msg, "Received Data"); }); socket.On("time", (data) => { //MessageBox.Show(data.RawMessage); String msg = data.Json.Args[0].ToString(); dynamic json = JObject.Parse(msg); Console.Write(json.time); myForm.ConsoleWriteLine(json.time.ToString()); socket.Emit("i am client", "{data: '" + msg + "'}"); //MessageBox.Show(msg, "Received Data"); }); socket.On("dMessage", (data) => { //MessageBox.Show(data.RawMessage); String msg = data.Json.Args[0].ToString(); dynamic json = JObject.Parse(msg); myForm.ConsoleWriteLine(json.message.ToString()); //socket.Emit("i am client", "{data: '" + msg + "'}"); //MessageBox.Show(msg, "Received Data"); }); socket.On("request_transaction", (data) => { String msg = data.Json.Args[0].ToString(); dynamic json = JObject.Parse(msg); myForm.ConsoleWriteLine("Get transaction on date : " + json.date.ToString()); ExecuteCommand("", "request_transaction", ""); }); socket.On("fdCommand", (data) => { String msg = data.Json.Args[0].ToString(); dynamic json = JObject.Parse(msg); myForm.ConsoleWriteLine("command : " + json.command.ToString() + " ; parameter : " + json.parameter.ToString()); //dynamic parameter = JObject.Parse(json.parameter.ToString()); //myForm.ConsoleWriteLine("device : " + parameter.device.ToString()); //Store command to command datatable AddCommandLine(json.commandID.ToString(), json.command.ToString(), json.parameter.ToString(), "not_exec"); ExecuteCommand(json.commandID.ToString(), json.command.ToString(), json.parameter.ToString()); /*dynamic responJson = new JObject(); responJson.commandID = ""; responJson.appID = myForm.getAppID(); responJson.respons = json.command.ToString(); socket.Emit("fdCommandRespons", responJson);*/ }); socket.Connect(); } catch (Exception e) { MessageBox.Show(e.ToString(), "Something Went Wrong!!"); Application.Exit(); } if (socket.ReadyState == WebSocket4Net.WebSocketState.None) { socket.Dispose(); socket.Error -= socket_Error; socket.Opened -= socket_Opened; socket.ConnectionRetryAttempt -= socket_ConnectionRetryAttempt; socket.SocketConnectionClosed -= socket_SocketConnectionClosed; myForm.Socket.Dispose(); myForm.Socket = null; socket = null; connectSocket(); } }
public void Execute() { Console.WriteLine("Starting TestSocketIOClient Example..."); //socket = new Client("http://192.168.1.2:8080"); // url to the nodejs / socket.io instance //socket = new Client("http://127.0.0.1:8080"); socket = new Client(Utils.LocalIPAddress()); socket.Opened += SocketOpened; socket.Message += SocketMessage; socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; //MESSAGE _ _ BINDINGS // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); //Console.WriteLine("Emit Part object"); // emit Json Serializable object, anonymous types, or strings //Part newPart = new Part() { PartNumber = "K4P2G324EC", Code = "DDR2", Level = 1 }; //socket.Emit("partInfo", newPart); }); socket.On("question", (fn) => { Console.WriteLine("received question"); if (questionCB != null) { questionCB(fn); } }); socket.On("playerMoveAsked", (fn) => { Console.WriteLine("\nreceived playerMoveAsked"); if (playerMoveCB != null) { playerMoveCB(fn); } }); socket.On("battleResult", (fn) => { Console.WriteLine("received battleResult"); if (battleResultCB != null) { battleResultCB(fn); } }); socket.On("questionAnswered", (fn) => { Console.WriteLine("\nreceived answers to question\n"); if (answersReceivedCB != null) { answersReceivedCB(fn); } }); socket.On("requestIdentity", (mes) => { Console.WriteLine("\r\nrequest ID event...\r\n"); socket.Emit("tableIdentity", new { pseudo = "fack yah !" }); }); socket.On("results", (mes) => { Console.WriteLine("\n results received \n"); if (resultCB != null) { resultCB(mes); } }); socket.On("newPlayer", playerConnectCB); socket.On("majPlayerInfo", (data) => { Console.WriteLine("received MajPlayerInfo"); if (majPlayerInfoCB != null) { majPlayerInfoCB(data); } }); socket.On("captureTerritories", (data) => { Console.WriteLine("received captureTerritories"); if (captureZonesCB != null) { captureZonesCB(data); } }); socket.On("placeCommanders", (data) => { Console.WriteLine("received place commanders"); if (placeCommandersCB != null) { placeCommandersCB(data); } }); // register for 'update' events - message is a json 'Part' object socket.On("update", (data) => { Console.WriteLine("recv [socket].[update] event"); //Console.WriteLine(" raw message: {0}", data.RawMessage); //Console.WriteLine(" string message: {0}", data.MessageText); //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); // cast message as Part - use type cast helper //Part part = data.Json.GetFirstArgAs<Part>(); //Console.WriteLine(" Part Level: {0}\r\n", part.Level); }); // make the socket.io connection socket.Connect(); }
void OnGUI() { lobbyname = GUI.TextField(new Rect(180, 30, 250, 30), lobbyname, 40); pseudo = GUI.TextField(new Rect(700, 30, 200, 30), pseudo, 40);; pass = GUI.TextField(new Rect(700, 70, 200, 30), pass, 40);; if (GUI.Button(new Rect(20, 70, 150, 30), "listlobby")) { Debug.Log("listlobby"); Dictionary <string, string> args = new Dictionary <string, string>(); socket.Emit("listlobby", args); } if (GUI.Button(new Rect(180, 70, 150, 30), "createlobby")) { Debug.Log("createlobby"); Dictionary <string, string> args = new Dictionary <string, string>(); if (string.IsNullOrEmpty(lobbyname)) { args.Add("lobbyName", "Test"); } else { args.Add("lobbyName", lobbyname); } socket.Emit("createlobby", args); } if (GUI.Button(new Rect(340, 70, 150, 30), "joinlobby")) { Debug.Log("joinlobby"); Dictionary <string, string> args = new Dictionary <string, string>(); if (string.IsNullOrEmpty(lobbyname)) { args.Add("lobbyName", "Test"); } else { args.Add("lobbyName", lobbyname); } socket.Emit("joinlobby", args); } if (GUI.Button(new Rect(20, 120, 150, 30), "Open Connection")) { Debug.Log("Opening"); CreateSocket(); socket.Connect(); } if (GUI.Button(new Rect(180, 120, 150, 30), "Close Connection")) { Debug.Log("Closing"); socket.Close(); } if (GUI.Button(new Rect(340, 120, 150, 30), "leave lobby")) { Debug.Log("leaving"); Dictionary <string, string> args = new Dictionary <string, string>(); socket.Emit("leavelobby", args); } if (GUI.Button(new Rect(700, 120, 150, 30), "Create user")) { StartCoroutine(UserCreationRequest()); } }
void similar_Example() { var socket = new Client("http://127.0.0.1:3000/"); // url to the nodejs socket.Connect(); socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); }); var logger = socket.Connect("/logger"); // connect to the logger ns logger.On("traceEvent", (eventLog) => { // do something with eventLog }); }
private void InitSocket() { _socket = new Client(txtServerUrl.Text.Trim()); _socket.Message += (s, a) => { }; _socket.On("player:requestRemotePlay", fn => { var trackId = new Regex(@"^spotify:track:", RegexOptions.IgnoreCase).Replace(fn.Json.Args[0].item.url.ToString(), ""); Spotify.SpotifyHelpers.PlaySong(trackId); _currentId = trackId; Console.WriteLine("player:requestRemotePlay"); _counter = 0; }); _socket.On("player:remoteItemStopped", fn => { Console.WriteLine("player:remoteItemStopped"); if (!String.IsNullOrEmpty(_currentId)) { Spotify.SpotifyHelpers.StopPlayback(); _currentId = null; //this.tmrUpdateStatus.Stop(); } }); Action join = () => { _socket.Emit("stream:join", new { stream = txtStreamID.Text.Trim() }); }; //join(); // _socket.On("reconnect", a => join()); _socket.Opened += (s, e) => join(); _socket.Connect(); }
public void StartAuthentifiedConnection(string name, string password) { Debug.Log("Opening"); CreateSocket(name, password); _socket.Connect(); }
public Boolean StartConnection(string Ip) { Lobby lob = new Lobby(); client = new Client(Ip); // maak de on receive handlers client.On("send_broadcast", (data) => { MessageBox.Show(data.ToString()); }); #region add, del and get room client.On("delplayer", (data) => { recentPlayerOffline = data.Json.Args[1]; RecentMessage = recentPlayerOffline + " went offline."; playerlist = new List<string>(); for (int i = 0; i < data.Json.Args[0].Count; i++) { string tmp = data.Json.Args[0][i]; playerlist.Add(tmp); } }); #endregion #region lobby message client.On("newlobbymessage", (data) => { string tmpFrom = data.Json.Args[0]; string tmpMessage = data.Json.Args[1]; Lobby.LobbyMessage = tmpFrom + " - " + tmpMessage; }); #endregion #region add, del and get player client.On("playerlist", (data) => { playerListIsBuild = false; playerlist = new List<string>(); for (int i = 0; i < data.Json.Args[0].Count; i++) { string tmp = data.Json.Args[0][i]; playerlist.Add(tmp); } if (playerlist.Count == 0) { playerlist.Add("a"); } playerListIsBuild = true; }); client.On("delplayer", (data) => { recentPlayerOffline = data.Json.Args[1]; RecentMessage = recentPlayerOffline + " went offline."; playerlist = new List<string>(); for (int i = 0; i < data.Json.Args[0].Count; i++) { string tmp = data.Json.Args[0][i]; playerlist.Add(tmp); } }); client.On("addplayer", (data) => { recentPlayerOnline = data.Json.Args[1]; RecentMessage = recentPlayerOnline + " is online."; playerlist = new List<string>(); for (int i = 0; i < data.Json.Args[0].Count; i++) { string tmp = data.Json.Args[0][i]; playerlist.Add(tmp); } }); #endregion //start de connectie client.Connect(); for (int i = 0; i < 100; i++) { if (client.IsConnected) return true; Thread.Sleep(10); } return false; }
void StatusSubmit_Click(object sender, RoutedEventArgs e) { if (!isValidInput()) { return; } if (StatusSubmit.Content.Equals("Connect")) //Users wants to connect { //Connect to server// string address = "http://" + ServerTextBox.Text + ":" + PortTextBox.Text + "/"; Console.WriteLine("Connecting to: " + address); socket = new Client(address); socket.Connect(); //Debug, check if sensor still exists// Disable for Kinect2 Console.WriteLine("Sensor: " + kinectSensor); /////////////////////////////////////// TimeSpan maxDuration = TimeSpan.FromMilliseconds(1000); Stopwatch sw = Stopwatch.StartNew(); while (sw.Elapsed < maxDuration && !socket.IsConnected) { // wait for connected } if (socket.IsConnected) { StatusSubmit.Content = "Disconnect"; StatusLabel.Text = "Connected"; if (TellServerAboutSensor()) { //sensor registered with server } else { //no sensor was registered with server! } socket.Message += new EventHandler<MessageEventArgs>(socket_Message); SubscribeToRoutes(socket); } else { Console.WriteLine("Device never registered with server!"); } } else //Users wants to disconnect { socket.Close(); if (!socket.IsConnected) //replace true with condition for successful disconnect { //disconnected, cleanup StatusSubmit.Content = "Connect"; StatusLabel.Text = "Disconnected"; } else { MessageBox.Show("Server failed to disconnect properly."); } } }
static void Main(string[] args) { if (args.Length != 2) { Console.WriteLine("Please specify a stream id and base url"); Console.WriteLine(@"e.g. SpotifyLauncher.exe 5089133484bdc27d64000001 ""http://wordpress.rockpool.local:8046"""); return; } string streamId = args[0]; string url = args[1]; var socket = new Client(url); socket.On("player:requestRemotePlay", fn => { Console.WriteLine("player:requestRemotePlay"); if (fn.Json.Args.Length == 0 || fn.Json.Args[0].item == null || fn.Json.Args[0].item.url == null) { return; } string urlParam = fn.Json.Args[0].item.url.ToString(); var trackId = _reTrack.Replace(urlParam, ""); lock (_sync) { Spotify.SpotifyHelpers.PlaySong(trackId); _currentId = trackId; _counter = 0; _timer.Start(); } }); socket.On("player:requestRemoteStop", fn => { Console.WriteLine("player:requestRemoteStop"); lock (_sync) { if (!String.IsNullOrEmpty(_currentId)) { Spotify.SpotifyHelpers.StopPlayback(); _currentId = null; _timer.Stop(); } } }); socket.Opened += (s, e) => socket.Emit("stream:join", new { stream = streamId }); socket.Connect(); _timer = new System.Timers.Timer(200); _timer.Elapsed += (s, e) => { if (_counter++ < 4) { return; } if (_currentId != null) { lock (_sync) { if (_currentId != null) { var status = Spotify.SpotifyHelpers.GetStatus(); // Console.WriteLine("{0},{1},{2}", status.Track, status.TrackID, _currentId); if (String.IsNullOrEmpty(status.TrackID) || !status.TrackID.EndsWith(_currentId)) { //Console.WriteLine("stop detected"); _timer.Stop(); Spotify.SpotifyHelpers.StopPlayback(); socket.Emit("player:remoteItemStopped", new { stream = streamId }); _currentId = null; Console.WriteLine("player:remoteItemStopped"); } } } } }; while (Console.ReadKey().KeyChar != 'q') ; }
public void Start(string nodeServerUrl) { if (log.IsDebugEnabled) { log.Debug("Start"); } Console.WriteLine("Starting SocketIoProxy..."); socket = new Client(nodeServerUrl); // url to the nodejs / socket.io instance socket.Opened += socket_Opened; socket.Message += socket_OnMessage; socket.SocketConnectionClosed +=socket_SocketConnectionClosed; socket.Error += socket_Error; socket.On("connect", (data) => { if (log.IsDebugEnabled) { log.Debug("Start.Connect.data." + (data == null ? "null" : data.JsonEncodedMessage.ToJsonString())); } Console.WriteLine("\r\nSocketIoProxy.connect: {0}", data.JsonEncodedMessage.ToJsonString()); }); socket.On("clientEventInternal", (data) => { ClientEvent clientEvent = null; if (data != null && data.JsonEncodedMessage != null && data.JsonEncodedMessage.Args != null && data.JsonEncodedMessage.Args.Length > 0) { try { clientEvent = ClientEvent.FromJsonString(data.JsonEncodedMessage.Args[0].ToString()); } catch (Exception ex) { throw ex; } } if (clientEvent != null && clientEvent.ClientData != null) { //if it's a connect event, then create the client if (!string.IsNullOrEmpty(clientEvent.ClientData.EventName) && clientEvent.ClientData.EventName.ToLower() == "connect") { if (log.IsDebugEnabled) { log.Debug("Start.clientEventInternal.connect.clientEvent." + (clientEvent == null ? "null" : clientEvent.ToJsonString())); } Business.Entity.Client.CreateFromClientEvent(clientEvent, Business.Entity.Client.ClientStateEnum.Available); //socket.Emit("clientRequestInternal", new { SessionNodeId = clientEvent.SessionNodeId, Color = "Blue" }); } else { if (log.IsDebugEnabled) { log.Debug("Start.clientEventInternal." + clientEvent.ClientData.EventName + ".clientEvent." + (clientEvent == null ? "null" : clientEvent.ToJsonString())); } } } else { if (log.IsDebugEnabled) { log.Debug("Start.clientEventInternal.UnableToDeserialize.data." + (data == null ? "null" : data.JsonEncodedMessage.ToJsonString())); } Console.WriteLine("\r\nSocketIoProxy.clientEvent (unable to deserialize): {0}", data.JsonEncodedMessage.ToJsonString()); } }); socket.On("clientResponseInternal", (data) => { ClientResponse clientResponse = null; if (data != null && data.JsonEncodedMessage != null && data.JsonEncodedMessage.Args != null && data.JsonEncodedMessage.Args.Length > 0) { try { clientResponse = ClientResponse.FromJsonString(data.JsonEncodedMessage.Args[0].ToString()); } catch (Exception ex) { throw ex; } } if (clientResponse != null && clientResponse.ClientData != null) { if (log.IsDebugEnabled) { log.Debug("Start.clientResponseInternal.HandleResponse.clientResponse." + (clientResponse == null ? "null" : clientResponse.ToJsonString())); } clientResponse.HandleResponse(); //socket.Emit("clientRequestInternal", new { SessionNodeId = clientEvent.SessionNodeId, Color = "Blue" }); } else { if (log.IsDebugEnabled) { log.Debug("Start.clientResponseInternal.UnableToDeserialize.data." + (data == null ? "null" : data.JsonEncodedMessage.ToJsonString())); } Console.WriteLine("\r\nSocketIoProxy.clientResponse (unable to deserialize): {0}", data.JsonEncodedMessage.ToJsonString()); } }); socket.On("serverRequestInternal", (data) => { Console.WriteLine("\r\nSocketIoProxy.serverRequest: {0}", data.JsonEncodedMessage.ToJsonString()); ClientEvent clientEvent = null; if (data != null && data.JsonEncodedMessage != null && data.JsonEncodedMessage.Args != null && data.JsonEncodedMessage.Args.Length > 0) { try { clientEvent = ClientEvent.FromJsonString(data.JsonEncodedMessage.Args[0].ToString()); } catch (Exception ex) { throw ex; } } if (clientEvent != null) { if (log.IsDebugEnabled) { log.Debug("Start.serverRequestInternal.EmitServerRequest.clientEvent." + (clientEvent == null ? "null" : clientEvent.ToJsonString())); } socket.Emit("serverRequest", new { SessionNodeId = clientEvent.SessionNodeId, Color = "Red" }); } else { if (log.IsDebugEnabled) { log.Debug("Start.serverRequestInternal.UnableToDeserialize.data." + (data == null ? "null" : data.JsonEncodedMessage.ToJsonString())); } } }); socket.Connect(); }
private static void Target(object parameters) { var options = (ThreadParams)parameters; Random rand = new Random(options.Seed); if (options.State == ThreadState.CreateGame) { Thread.Sleep(rand.Next(0, 500)); } if (options.State == ThreadState.JoinGame) { Thread.Sleep(rand.Next(1500, 2500)); } Console.WriteLine(string.Format("Begin {0}", options.State)); string ip=null; WebClient client = new WebClient(); ip = client.DownloadString("http://50.116.22.241:8844"); var socket = new Client(ip); // url to nodejs socket.Opened += SocketOpened; socket.Message += SocketMessage; socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; string gameServer=null; string roomID = null; // register for 'connect' event with io server Dictionary<string, Action<dynamic>> dct = new Dictionary<string, Action<dynamic>>(); socket.On("Client.Message", (fn) => { var cn = fn.Json.Args[0].channel.Value; var cnt = fn.Json.Args[0].content; dct[cn](cnt); }); dct.Add("Area.Game.AskQuestion", (fn) => { Thread.Sleep(rand.Next(300, 800)); Console.WriteLine("asked: " + " " + options.UserName); if (socket == null) return; try { emit(socket, "Area.Game.AnswerQuestion", new { answer = 1, roomID }, gameServer); }catch(Exception) { Console.WriteLine("failed for some reason"); } }); dct.Add("Area.Game.UpdateState", (fn) => { }); dct.Add("Area.Game.RoomInfo", (fn) => { roomID = fn.roomID.ToString(); gameServer = fn.gameServer; }); bool gameover = false; dct.Add("Area.Game.GameOver", (fn) => { socket.Close(); socket.Dispose(); gameover = true; }); dct.Add("Area.Game.RoomInfos", (data) => { foreach (var room in data.Children()) { var plys = 0; foreach (var child in room["players"].Children()) { plys++; } if (room["started"].Value) { continue; } gameServer = room["gameServer"].Value; switch (options.State) { case ThreadState.JoinGame: roomID = room["roomID"].Value; emit(socket, "Area.Game.Join", new { user = new { userName = options.UserName }, roomID = room["roomID"].Value }, gameServer); if (plys + 1 >= options.MaxUsers) { Thread.Sleep(rand.Next(750, 1250)); emit(socket, "Area.Game.Start", new { roomID = room["roomID"].Value }, gameServer); return; } return; break; default: throw new ArgumentOutOfRangeException(); } } Thread.Sleep(rand.Next(600, 900)); emit(socket, "Area.Game.GetGames", true, gameServer); }); dct.Add("Area.Game.Started", (fn) => { }); // make the socket.io connection socket.Connect(); socket.Emit("Gateway.Login", new {userName = options.UserName + " " + Guid.NewGuid().ToString()}); switch (options.State) { case ThreadState.JoinGame: emit(socket, "Area.Game.GetGames", true, gameServer); break; case ThreadState.CreateGame: Console.WriteLine( "Created"); emit(socket, "Area.Game.Create", new { gameName = "Sevens", name = "game " + Guid.NewGuid().ToString() , user = new { name = options.UserName } }, gameServer); break; default: throw new ArgumentOutOfRangeException(); } while (!gameover) { Thread.Sleep(1000); } }
public void Execute(bool startNovelty = false) { Console.WriteLine("Starting TestSocketIOClient Example..."); socket = new Client("http://localhost:3000/"); // url to the nodejs / socket.io instance socket.Opened += SocketOpened; socket.Message += SocketMessage; socket.SocketConnectionClosed += SocketConnectionClosed; socket.Error += SocketError; // register for 'connect' event with io server socket.On("connect", (fn) => { Console.WriteLine("\r\nConnected event...\r\n"); Console.WriteLine("Connected To Socket Object"); //begin our threaded novelty evaluations on connect if(startNovelty) simpleExperiment.StartNoveltyEvaluations(); }); socket.On("toggleNetwork", (fn) => { print.WriteLine("Incoming select: " + fn.Json.ToJsonString()); //we see an incoming request for selection long selectionID = (long)fn.Json.Args[0]; //we have the ID, now we must do some toggling //we could call the evolution manager directly, but perhaps it's best to separate these objects? In case there are many experiements or someting? //or maybe the experiment wants to not the selection information bool toggle = simpleExperiment.toggleNetwork(selectionID); if (toggle) print.WriteLine("Successful toggle, as suspected"); EvolutionManager eManager = EvolutionManager.SharedEvolutionManager; string isSelected = string.Format("{0}:::{1}+[{2}]", (int)SocketIOMessageTypes.ACK, fn.AckId, JsonConvert.SerializeObject(eManager.isSelected(selectionID))); print.WriteLine("Responding to toggleNetwork with: " + JsonConvert.SerializeObject(eManager.isSelected(selectionID))); socket.Send(isSelected); }); //you simply make a request for the next body, no socket.On("getBodies", (fn) => { if (fn.Json.Args.Length > 0) { //we accept a parameter describing the number of desired bodies int numberOfBodies = (int)fn.Json.Args[0]; //We must generate our collection of bodies and send them back in a JSON object string[] bodies = simpleExperiment.fetchBodies(numberOfBodies); //we have all of our bodies, we must send them back now! string bodiesMessage = formattedSocketMessage(fn.AckId, JsonConvert.SerializeObject(bodies)); //now return information to our socket socket.Send(bodiesMessage); } }); socket.On("getGenomes", (fn) => { if (fn.Json.Args.Length > 0) { //we accept a parameter describing the number of desired bodies JArray con = (JArray)fn.Json.Args[0]; List<long> genomeIDs = new List<long>(); foreach (var idString in con) { long genomeID; if (long.TryParse(idString.ToString(), out genomeID)) { //Console.WriteLine("Genomeid: " + genomeID); genomeIDs.Add(genomeID); } else { throw new Exception("Failure to send appropriate genomeID"); } } try { //We must find our collection of bodies and send them back in a JSON object Dictionary<long, string> bodies = simpleExperiment.fetchBodiesFromIDs(genomeIDs); //we have all of our bodies, we must send them back now! string bodiesMessage = formattedSocketMessage(fn.AckId, JsonConvert.SerializeObject(bodies)); print.WriteLine("Sending bodies: " + JsonConvert.SerializeObject(bodies.Keys)); //now return information to our socket socket.Send(bodiesMessage); } catch (Exception e) { //we failed to fetch the bodies, throw an error, this is some serious stuff! Console.WriteLine("Failed to fetch bodies and send response"); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); throw e; } } }); socket.On("getBest", (fn) => { if (fn.Json.Args.Length > 0) { long lastQueryTime = (long)fn.Json.Args[0]; //long.TryParse(fn.Json.Args[0], out lastQueryTime); //get our best bodies var bodyAndTime = simpleExperiment.fetchBestBodies(lastQueryTime); //we have all of our bodies, we must send them back now! string bodiesMessage = formattedSocketMessage(fn.AckId, JsonConvert.SerializeObject(bodyAndTime)); print.WriteLine("Sending best: " + JsonConvert.SerializeObject(bodyAndTime.Second.Keys)); //now return information to our socket socket.Send(bodiesMessage); } }); socket.On("ping", (fn) => { print.WriteLine("Incoming Ping: " + fn.Json.ToJsonString()); int value = (int)fn.Json.Args[0]; value = value +1; //string jSon = SimpleJson.SimpleJson.SerializeObject(net); string jSon = simpleExperiment.fetchNextBodyJSON(); //Dictionary<string, object> stuff =new Dictionary<string,object>(); //stuff.Add("c#says", "pong"); //stuff.Add("valuePlusOne", value); //string data = SimpleJson.SimpleJson.SerializeObject(stuff); //string.Format("{\"{0}\": \"{1}\", \"{2}\": {3} }", "c#Says", "pong", "value", value); string tosend = string.Format("{0}:::{1}+[{2}]", (int)SocketIOMessageTypes.ACK, fn.AckId, jSon); print.WriteLine("Responding to ping with: " + jSon); socket.Send(tosend);//new AckMessage() { AckId = fn.AckId, MessageText = "pong" }); }); socket.On("runFullPCA", (fn) => { int xBins, yBins, genomeSelector; double topPercent; bool firstBehavior; bool.TryParse(fn.Json.Args[0], out firstBehavior); int.TryParse(fn.Json.Args[1], out xBins); int.TryParse(fn.Json.Args[2], out yBins); int.TryParse(fn.Json.Args[3], out genomeSelector); double.TryParse(fn.Json.Args[4], out topPercent); //want to send in custom params for selecting what method to grab genomes (or to send a genome array) //if (fn.Json.Args.Length > 0) //{ // //we accept a parameter describing the number of desired bodies // JArray con = (JArray)fn.Json.Args[3]; // Create new stopwatch Stopwatch stopwatch = new Stopwatch(); // Begin timing stopwatch.Start(); //grab ALL of our saved genomes, and make sure they are unique individuals //we group them by a genome ID, then we select the first object in the group, voila, distinct! List<NeatGenome> allGenomes; switch(genomeSelector) { case 0: allGenomes = simpleExperiment.fetchAllGenomes().GroupBy(g => g.GenomeId).Select(group => group.First()).ToList(); break; case 1: allGenomes = simpleExperiment.fetchBestGenomes(topPercent).GroupBy(g => g.GenomeId).Select(group => group.First()).ToList(); break; default: allGenomes = simpleExperiment.fetchAllGenomes().GroupBy(g => g.GenomeId).Select(group => group.First()).ToList(); break; } EvolutionManager.SharedEvolutionManager.saveGenomes(allGenomes); // Begin timing stopwatch.Stop(); Console.WriteLine("Fetch Genomes: " + stopwatch.ElapsedMilliseconds); var uidAndPoints = runPCA(allGenomes,firstBehavior, xBins, yBins); try { //we have all of our bodies, we must send them back now! string bodiesMessage = formattedSocketMessage(fn.AckId, JsonConvert.SerializeObject(uidAndPoints)); print.WriteLine("Sending pca analysis for IDs: " + JsonConvert.SerializeObject(uidAndPoints)); //now return information to our socket socket.Send(bodiesMessage); } catch (Exception e) { //we failed to fetch the bodies, throw an error, this is some serious stuff! Console.WriteLine("Failed to fetch bodies and send response"); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); throw e; } }); socket.On("runPCA", (empty) => { //we accept a parameter describing the number of desired bodies //JArray con = (JArray)fn.Json.Args[0]; //grab the best individuals (already having been evaluated, we grab their behavior and PCA //get our best bodies List<NeatGenome> topBodyAndTime = simpleExperiment.fetchBestGenomes(.1); var uidAndPoints = runPCA(topBodyAndTime); try{ //we have all of our bodies, we must send them back now! string bodiesMessage = formattedSocketMessage(empty.AckId, JsonConvert.SerializeObject(uidAndPoints)); print.WriteLine("Sending pca analysis for IDs: " + JsonConvert.SerializeObject(uidAndPoints)); //now return information to our socket socket.Send(bodiesMessage); } catch (Exception e) { //we failed to fetch the bodies, throw an error, this is some serious stuff! Console.WriteLine("Failed to fetch bodies and send response"); Console.WriteLine(e.Message); Console.WriteLine(e.StackTrace); throw e; } }); //socket.On("evaluateGenomes", (data) => //{ // print.WriteLine(data); // //Console.WriteLine(" raw message: {0}", data.RawMessage); // //Console.WriteLine(" string message: {0}", data.MessageText); // //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); // //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); //}); // register for 'update' events - message is a json 'Part' object socket.On("update", (data) => { print.WriteLine("recv [socket].[update] event"); //Console.WriteLine(" raw message: {0}", data.RawMessage); //Console.WriteLine(" string message: {0}", data.MessageText); //Console.WriteLine(" json data string: {0}", data.Json.ToJsonString()); //Console.WriteLine(" json raw: {0}", data.Json.Args[0]); }); // register for 'update' events - message is a json 'Part' object socket.On("getArchiveIDs", (data) => { //let's go fetch our novelty ids! List<long> archiveIDs = simpleExperiment.GetNoveltyArchive(); if (archiveIDs != null) { //we have all of our ids, we must send them back now! string bodiesMessage = formattedSocketMessage(data.AckId, JsonConvert.SerializeObject(archiveIDs)); socket.Send(bodiesMessage); } }); // Grabs the current generation ids for viewing purposes! socket.On("getCurrentIDs", (data) => { //let's go fetch our novelty ids! List<long> currentIDs = simpleExperiment.GetMultiCurrentGeneration(); if (currentIDs != null) { //we have all of our ids, we must send them back now! string bodiesMessage = formattedSocketMessage(data.AckId, JsonConvert.SerializeObject(currentIDs)); socket.Send(bodiesMessage); } }); // make the socket.io connection socket.Connect(); }