static public void InitMachinations() { L.Level = LogLevel.Debug; L.LogFilePath = Application.dataPath + "//MachinationsService-Error.log"; //Since Application.dataPath cannot be accessed from other threads (and we need that), storing it in MDL. MnDataLayer.AssetsPath = Application.dataPath; //Cannot operate until settings have been defined for Machinations. if (!MnConfig.LoadSettings()) { MnConfig.HasSettings = false; L.W("Machinations Settings do not exist. Please configure Machinations using Tools -> Machinations -> Open Machinations.io Control Panel."); return; } //Bootstrap. _mnService = MnDataLayer.Service = new MnService(); _socketClient = new SocketIOClient( _mnService, MnConfig.Instance.APIURL, MnConfig.Instance.UserKey, MnConfig.Instance.DiagramToken, MnConfig.Instance.GameName); _mnService.UseSocket(_socketClient); }
private void OnCardPlayComplete() { enabled = false; Card tempCard = potentialCard; potentialCard.OnHoverExit(); cardsInHand.Remove(potentialCard); potentialCard = null; UpdateCardsPosition(); cardPlayInProgress = false; DrawCard(); //test remote card NetworkCardPlay networkCard = new NetworkCardPlay(); if (tempCard.GetType() == typeof(ChampionCard)) { networkCard.cardChampionId = ((ChampionCard)tempCard).championData.Id; } else { networkCard.cardChampionId = -1; } networkCard.variables = tempCard.onPlayActionChain.ExtractVariables(); SocketIOClient.Send(JsonUtility.ToJson(networkCard)); }
private void OnGameDataFirstTimeRecived() { GameObject go = GameObject.Find("Canvas"); SocketIOClient socketClient = go.GetComponent <SocketIOClient>(); socketClient.StartExchange(); }
private void initClient() { this.setConnectionState("연결중..."); client = new SocketIOClient(SocketIOClient.Scheme.ws, host, port, false); initCallbacks(); client.Connect(); }
/// <summary> /// Normal constructor : Create the game for one or two players /// </summary> /// <param name="log">Activate logs (non activated by default)</param> public Game(bool log = false) { logMode = log; isPinging = false; Int32.TryParse(ConfigurationManager.AppSettings["socketIO_port"], out int port); socketIO = new SocketIOClient(ConfigurationManager.AppSettings["socketIO_url"], port); kinectMotor = new KinectCaptorV1(this); StartNewGame(); }
private void RollDiceForFirst() { if (myRoll != -1) { return; } //roll numbers between 0-1000 to decide who goes first NetworkRollFirst roll = new NetworkRollFirst(); roll.rollAmount = UnityEngine.Random.Range(0, 1000); myRoll = roll.rollAmount; SocketIOClient.Send(JsonUtility.ToJson(roll)); }
private static async Task TestCore(bool directConnection) { using var client = new SocketIOClient("http://localhost:10000/", _httpClient); await client.ConnectAsync(new ConnectionOptions() { NoLongPollingConnection = directConnection }); Assert.True(client.IsConnected); await client.CloseAsync(); Assert.False(client.IsConnected); }
void SetupServer() { socket = new SocketIOClient(SocketIOClient.Scheme.ws, configData.getString("host"), configData.getInt("port"), false, true, false); socket.Connect(); socket.On("socketConnected", socketConnected); socket.On("getRequests", getRequests); socket.On("newRequest", newRequest); socket.On("editRequest", editRequest); socket.On("removeRequest", removeRequest); socket.On("clearDeliverymanData", clearDeliverymanData); socket.On("newDeliveryman", newDeliveryman); socket.On("clearClientsData", clearClientsData); socket.On("newClient", newClient); socket.On("disconnect", disconnect); socket.On("disconnected", disconnect); }
static void Main(string[] args) { SocketIOClient client = new SocketIOClient(SocketIOClient.Scheme.ws, "127.0.0.1", 9001); InitEventHandlers(client); client.Connect(); Console.WriteLine("Input /exit to close connection."); string line; while (!(line = Console.ReadLine()).Equals("/exit")) { client.Emit("input", line); client.Emit("input array", line, line); } client.Close(); Console.WriteLine("Press any key to continue..."); Console.Read(); }
// Use this for initialization IEnumerator Start() { statusText.text = "Getting data from Riot api"; yield return(StartCoroutine(SetupApiData())); yield return(StartCoroutine(SetupMap())); yield return(StartCoroutine(SetupChampions())); yield return(StartCoroutine(SetupPlayers())); if (error) { statusText.text = "An error has occurred during api requests.\nPlease try again later."; DOTween.To(() => loadingIndicator.color, x => loadingIndicator.color = x, new Color(1, 1, 1, 0), 1); } else { statusText.text = "Finding random match"; SocketIOClient.Connect(); } }
static void Main() { var io = new SocketIOClient(); var socket = io.Connect("http://localhost:3000/"); socket.On("data", (args, callback) => { Console.WriteLine("Server sent:"); for (int i = 0; i < args.Length; i++) { Console.WriteLine("[" + i + "] => " + args[i]); } }); string line; while ((line = Console.ReadLine()) != "q") { socket.Emit("data", line); } }
public void InitEventHandlers(SocketIOClient client) { client.On(SocketIOEvent.CONNECTION, () => { Console.WriteLine("Connected!"); }); client.On(SocketIOEvent.DISCONNECT, () => { Console.WriteLine(); Console.WriteLine("Disconnected!"); }); client.On("chat message", (Data) => { Console.WriteLine("Echo : " + (Data[0].Type == JTokenType.Bytes ? BitConverter.ToString(Data[0].ToObject <byte[]>()) : Data[0])); Console.WriteLine("This is me " + Data[0]); // Delegate 사용 -> 폼에 메시지 추가 setText_Control((Control)txtBoxMsg, (string)Data[0]); }); }
static void InitEventHandlers(SocketIOClient client) { client.On(SocketIOEvent.CONNECTION, () => { Console.WriteLine("Connected!"); }); client.On(SocketIOEvent.DISCONNECT, () => { Console.WriteLine(); Console.WriteLine("Disconnected!"); }); client.On("echo", (Data) => { Console.WriteLine("Echo : " + (Data[0].Type == JTokenType.Bytes ? BitConverter.ToString(Data[0].ToObject <byte[]>()) : Data[0])); }); client.On("echo array", (Data) => { Console.WriteLine("Echo1 : " + Data[0]); Console.WriteLine("Echo2 : " + Data[1]); }); }
static void InitEventHandlers(SocketIOClient client) { client.On(SocketIOClient.Event.CONNECTION, (Data) => { Console.WriteLine("Connected!"); }); client.On(SocketIOClient.Event.DISCONNECT, (Data) => { Console.WriteLine(); Console.WriteLine("Disconnected!"); }); client.On("echo", (Data) => { Console.WriteLine("Echo : " + Data[0]); }); client.On("echo array", (Data) => { Console.WriteLine("Echo1 : " + Data[0]); Console.WriteLine("Echo2 : " + Data[1]); }); }
//Connection error event. private void SocketError(object sender, SocketIOClient.ErrorEventArgs e) { Console.WriteLine("socket client error:"); Console.WriteLine(e.Message); }
private void SocketMessage(object sender, SocketIOClient.MessageEventArgs e) { //Debug.Log ("Message: " + e.Message.Event + "-" + e.Message.MessageText); }
/* -------------------- */ /* - Socket handler - */ /* -------------------- */ private void SocketError(object sender, SocketIOClient.ErrorEventArgs e) { Debug.Log ("Error: " + e.Message); }
public CurrentBoard() { BoardChessOffline = new Board(); Socket = new SocketIOClient(); }
private void socket_MessageReceived(object sender, SocketIOClient.MessageEventArgs e) { if (e.Message.MessageType == SocketIOMessageTypes.JSONMessage) { Logger.LogTrace(e.Message.MessageText); var json = JObject.Parse(e.Message.MessageText); var noun = json.SelectToken("noun").Value<string>(); var verb = json.SelectToken("verb").Value<string>(); var creatorUuid = json.SelectToken("creator").SelectToken("uuid").Value<string>(); switch (noun) { case "Comment": { var comment = json.SelectToken("comment"); var commentId = comment.SelectToken("id").Value<long>(); var fileId = comment.SelectToken("file_id").Value<int>(); var versionNumber = comment.SelectToken("file_version").Value<int>(); var body = comment.SelectToken("body").Value<string>(); switch (verb) { case "Create": Events.GetEvent<FileCommentAddedEvent>().Publish(new CommentEventArgs() { CommentId = commentId, FileId = fileId, VersionNumber = versionNumber, UserUuId = creatorUuid }); break; case "Delete": Events.GetEvent<FileCommentRemovedEvent>().Publish(new CommentEventArgs() { CommentId = commentId, FileId = fileId, VersionNumber = versionNumber, UserUuId = creatorUuid }); break; case "Update": Events.GetEvent<FileCommentEditedEvent>().Publish(new CommentEventArgs() { CommentId = commentId, FileId = fileId, VersionNumber = versionNumber, Body = body, UserUuId = creatorUuid }); break; } break; } case "Visit": { var userId = json.SelectToken("visit").SelectToken("user_id").Value<string>(); var fileId = json.SelectToken("visit").SelectToken("file_id").Value<int?>().GetValueOrDefault(); var folderid = json.SelectToken("visit").SelectToken("folder_id").Value<int?>().GetValueOrDefault(); Events.GetEvent<UserVisitEvent>().Publish(new UserEventArgs() { UserId = userId, UserUuid = creatorUuid, FolderId = folderid, FileId = fileId }); break; } case "FileVersion": { switch (verb) { case "Update": { var newStatus = json.SelectToken("changes").SelectToken("status").SelectToken("new"); if (newStatus.Type == JTokenType.String && string.Equals(newStatus.Value<string>(), "applied")) { var creatorToken = json.SelectToken("file_version").SelectToken("creator"); var creator = new PlatformUser(Session, creatorToken); var version = new PlatformVersion(Session, User, json.SelectToken("file_version"), -1); Events.GetEvent<FileVersionAddedEvent>().Publish(new VersionEventArgs() { VersionNumber = version.Number, FileId = version.FileId, Creator = creator, Version = version }); } break; } } } break; case "Member": { var memberToken = json.SelectToken("member"); var user = new PlatformUser(Session, memberToken); var folderId = json.SelectToken("folder_id").Value<int?>().GetValueOrDefault(); switch (verb) { case "Create": { Events.GetEvent<MemberAddedEvent>().Publish(new MemberActionEventArgs() { FolderId = folderId, Member = user, MemverUuid = user.Uuid }); break; } case "Delete": { Events.GetEvent<MemberRemovedvent>().Publish(new MemberActionEventArgs() { FolderId = folderId, Member = user, MemverUuid = user.Uuid }); break; } } break; } case "File" : { var fileId = json.SelectToken("file_id").Value<int>(); switch (verb) { case "Download": { Events.GetEvent<FileDownloadedEvent>().Publish(new FileActionArgs() { FileId = fileId, UserUuid = creatorUuid }); break; } } break; } } } else if (e.Message.MessageType == SocketIOMessageTypes.Event) { switch (e.Message.Event) { case "file:openedByUser" : { var jsom = JObject.Parse(e.Message.MessageText); var data = jsom.SelectToken("args").First; var userUuid = data.SelectToken("uuid").Value<string>(); var fileid = data.SelectToken("file_id").Value<int>(); var currentEditors = data.SelectToken("current_editors").Value<int>(); Events.GetEvent<FileOpenedEvent>().Publish(new FileOpenCloseArgs() { FileId = fileid, UserUuid = userUuid, CurrentEdotorsCount = currentEditors }); break; } case "file:closedByUser": { var jsom = JObject.Parse(e.Message.MessageText); var data = jsom.SelectToken("args").First; var userUuid = data.SelectToken("uuid").Value<string>(); var fileid = data.SelectToken("file_id").Value<int>(); var currentEditors = data.SelectToken("current_editors").Value<int>(); Events.GetEvent<FileClosedEvent>().Publish(new FileOpenCloseArgs() { FileId = fileid, UserUuid = userUuid, CurrentEdotorsCount = currentEditors }); break; } } } }
private void onBattleResult(SocketIOClient.Messages.IMessage data, Commander command, int fightZone) { Console.WriteLine("\nonBattleResult\n"); Console.WriteLine("\n" + data.Json.ToJsonString() + "\n"); BattleResult br; BattleResultRoot root = Newtonsoft.Json.JsonConvert.DeserializeObject<BattleResultRoot>(data.Json.ToJsonString()); br = root.args[0]; Console.WriteLine("winner : " + br.winner + " looser : " + br.loser + " attacker : " + command.Owner + " fightzone : " + fightZone); //Display answers List<OrderedAnswer> answers = new List<OrderedAnswer>(); OrderedAnswer answerWin = new OrderedAnswer(); answerWin.id = br.winner; answerWin.time = 0f; answerWin.value = br.winVal; OrderedAnswer answerLoss = new OrderedAnswer(); answerLoss.id = br.loser; answerLoss.time = 0f; answerLoss.value = br.lossVal; answers.Add(answerWin); answers.Add(answerLoss); _radialUI = null; initAnswerUI(answers); clearProgressAndDialog(); Action endCallback = delegate() { processBattleResults(br.winner, br.loser, fightZone, command); }; _timeSinceAnswerDisplayStart = 0f; UpdateAction = delegate(float dt) {answersDisplayUpdate(dt, endCallback);}; }
public void SocketConnect() { SocketIOClientOption option = new SocketIOClientOption(EngineIOScheme.https, "militant-socket-server.herokuapp.com", 443); // SocketIOClientOption option = new SocketIOClientOption(EngineIOScheme.http, "localhost", 8080); socket = new SocketIOClient(option); socket.On("connection", () => { WriteToFile("Socket Connected!"); socket.Emit("subscribe", "test"); /*socket.Emit("ping", new Dictionary<String, String> { * { "anu", "una" } * });*/ }); socket.On("disconnect", () => { WriteToFile("Socket Disconnected!"); }); socket.On("error", (JToken[] Data) => // Type of argument is JToken[]. { if (Data != null && Data.Length > 0 && Data[0] != null) { WriteToFile("Socket Error: " + Data[0]); } else { WriteToFile("Socket Error: Unkown Error"); } }); socket.On("message", (Data) => // Argument can be used without type. { if (Data != null && Data.Length > 0 && Data[0] != null) { WriteToFile("Socket Message: " + Data[0]); } }); /*socket.On("ping", (Data) => // Argument can be used without type. * { * if (Data != null && Data.Length > 0 && Data[0] != null) * { * WriteToFile("Message : " + Data[0]); * } * });*/ socket.On("user", (Data) => // Argument can be used without type. { if (Data != null && Data.Length > 0 && Data[0] != null) { WriteToFile("Socket Message: " + Data[0]); if (File.Exists(exePath)) { string exeConsolePath = AppDomain.CurrentDomain.BaseDirectory + "ConsoleApp.exe"; WriteToFile("Execute: " + exePath + " " + Data[0]["event"].ToString()); WriteToFile("Execute: " + exeConsolePath); // Process.Start(exePath, Data[0]["event"].ToString()); ProcessExtensions.StartProcessAsCurrentUser(exePath, Data[0]["event"].ToString()); ProcessExtensions.StartProcessAsCurrentUser(exeConsolePath); /*ProcessStartInfo info = new ProcessStartInfo(exeConsolePath); * info.UseShellExecute = false; * info.RedirectStandardError = true; * info.RedirectStandardInput = true; * info.RedirectStandardOutput = true; * info.CreateNoWindow = true; * info.ErrorDialog = false; * info.WindowStyle = ProcessWindowStyle.Hidden; * * Process process = Process.Start(info);*/ } } }); /*socket.On("CustomEvent", CustomEventHandler); // Handler can be method. * socket.On(9001, ItsOverNineThousands); // Type of event is JToken. So, it can be a number. * socket.Off(9001, ItsOverNineThousands);*/// Remove 9001 event handler. ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12; try { socket.Connect(); } catch (Exception ex) { WriteToFile($"{ex.Message}"); } }
/// <summary> /// Sets up the Socket to use for communicating with the Machinations back-end. /// Gets called by <see cref="MnEntryPoint"/>. /// </summary> /// <param name="socketClient">SocketIOClient to use.</param> public void UseSocket(SocketIOClient socketClient) { _socketClient = socketClient; }
private void SocketError(object sender, SocketIOClient.ErrorEventArgs e) { if ( e!= null) { string msg = e.Message; uiMessage += System.DateTime.Now.ToString("HH:mm : ")+ "Error: "+msg+"\n"; } }
private void onQuestion(SocketIOClient.Messages.IMessage data) { Console.WriteLine("\nonQuestion\n"); Console.WriteLine("\n\n"); Console.WriteLine(data.Json.ToJsonString()); Console.WriteLine("\n\n"); initProgressBar(); QuestionDataRoot root = Newtonsoft.Json.JsonConvert.DeserializeObject<QuestionDataRoot>(data.Json.ToJsonString()); //QuestionData questionData = root.args[0]; _lastQestionText = root.args[0]; UpdateAction = questionWaitUpdate; }
private void onPlaceCommanders(SocketIOClient.Messages.IMessage data) { _updateAction = placeCommanderUpdate; }
//Wait for the player X to make a move //Scan for other players moves //Scan for illegual player moves private void onMoveRequested(SocketIOClient.Messages.IMessage data) { clearProgressAndDialog(); Console.WriteLine("\nmessage : \n" + data.Json.ToJsonString() + "\n"); //do stuff MoveData move; MoveRoot root = Newtonsoft.Json.JsonConvert.DeserializeObject<MoveRoot>(data.Json.ToJsonString()); move = root.args[0]; Console.WriteLine(" \n player to move is : " + move.id + "\n"); initMove(move.id); }
private void onCaptureTerritories(SocketIOClient.Messages.IMessage data) { Console.WriteLine("\n oncaptureteritories \n" + data.Json.ToJsonString()); //Switch update to pick zone List<int> players; List<int> nbZones = new List<int>() { 2, 1, 1, 0 }; CaptureInfo capInfo; CaptureInfoRoot obj = Newtonsoft.Json.JsonConvert.DeserializeObject<CaptureInfoRoot>(data.Json.ToJsonString()); capInfo = obj.args[0]; players = capInfo.orderedPlayers; _updateAction = delegate(float delta) { pickZonesForPLayers(players, nbZones, delta); }; clearProgressAndDialog(); }
public SODMessage(SocketIOClient.Messages.JsonEncodedEventMessage msg) { this.eventName = msg.Name; //name of event received this.data = msg.Args[0]; //content of message if (msg.Args[0] is Dictionary<String, dynamic>) { this.data = (Dictionary<String, dynamic>)data; } this.data = JsonConvert.DeserializeObject(this.data); this.PID = -1; //Do not return a valid PID, because you should not be able to reply to a callback }
private void onResults(SocketIOClient.Messages.IMessage data) { Console.WriteLine("\n on results \n"); Console.WriteLine(data.Json.ToJsonString()); for (int i = 0; i < MyGame.NUMBER_OF_PLAYER; ++i) { PlayerData.Instance[i].Score = _map.getNbOfZonesForOwner(i); Console.WriteLine("\n\n player " + i + " score :" + PlayerData.Instance[i].Score + "\n"); } //ResultRoot res = Newtonsoft.Json.JsonConvert.DeserializeObject<ResultRoot>(data.Json.ToJsonString()); endGameCallback(); }
private void MajPlayerInfo(SocketIOClient.Messages.IMessage data) { Console.WriteLine("\n \n " + data.Json.ToJsonString() + "\n \n"); Console.WriteLine("in maj player info"); PlayerInfo player = null; //player = PlayerInfo.Deserialize(message.Json.ToJsonString());//(PlayerInfo)message.Json.GetFirstArgAs<PlayerInfo>(); PlayerInfoRoot obj = Newtonsoft.Json.JsonConvert.DeserializeObject<PlayerInfoRoot>(data.Json.ToJsonString()); player = obj.args[0]; for (int i = 0; i < player.territories.Count; ++i) { Console.WriteLine(" setting zone : " + (player.territories[i] + 1) + " owner to " + player.gameID); _map.setZoneOwner(player.territories[i] + 1, player.gameID); } }
public WebSocket(string url) { Client = SocketIOClient.Connect(url); }
private void socket_Error(object sender, SocketIOClient.ErrorEventArgs e) { Logger.LogTrace("socket error " + e.Message); Logger.LogError(e.Exception); Debug.Assert(false); }
public SODMessage(SocketIOClient.Messages.IMessage msg) { this.eventName = msg.Json.Name; //name of event received if (msg.Json.Args != null) this.data = msg.Json.Args[0]; //content of message //Console.WriteLine("->Before regexing this.data: "+this.data); //try to get the PID using regex and matching with the raw message received Regex r = new Regex(@"\d:(?<ack>\d+)\+::", RegexOptions.None); Match m = r.Match(msg.RawMessage); if (m.Success) { this.PID = Convert.ToInt32(m.Groups["ack"].Value); //Console.WriteLine("message with request - PID: " + this.PID); } else{ // Console.WriteLine("message without request."); this.PID = -1; //No ackID found, most likely because the sender of the message is not expecting a reply } }
private void OnPlayerConnect(SocketIOClient.Messages.IMessage message) { Console.WriteLine("OnPlayerConnect"); //Get info from message Console.WriteLine("\n message : " + message.Json.ToJsonString() + "\n"); PlayerInfo player = null; PlayerInfoRoot obj = Newtonsoft.Json.JsonConvert.DeserializeObject<PlayerInfoRoot>(message.Json.ToJsonString()); player = obj.args[0]; Console.WriteLine("player name " + player.pseudo); if (PlayerData.Instance[player.gameID].Name == null || PlayerData.Instance[player.gameID].Name.Length == 0) { PlayerData.Instance[player.gameID].Name = player.pseudo; InitPlayerUI(player.gameID); } }
private void onQuestionAnswered(SocketIOClient.Messages.IMessage data) { Console.WriteLine(" on question answer message : \n" + data.Json.ToJsonString()); AnswerList answers; AnswersRoot obj = Newtonsoft.Json.JsonConvert.DeserializeObject<AnswersRoot>(data.Json.ToJsonString()); answers = obj.args[0]; initAnswerUI(answers.orderedAnswers); clearProgressAndDialog(); /*ServerCom.Instance.Socket.Emit("timeout", new { id = 0//_questionId });*/ _timeSinceAnswerDisplayStart = 0f; UpdateAction = delegate(float dt) { answersDisplayUpdate(dt, afterAnswerDisplayPhase1); }; }
private void SocketMessage(object sender, SocketIOClient.MessageEventArgs e) { if ( e!= null && e.Message.Event == "message") { string msg = e.Message.MessageText; //uiMessage += "Success: "+msg+"\n"; if (!tryLogin) return; var node = SimpleJSON.JSON.Parse(msg); if (node["type"].Value=="PlayerJoin") { var data = node["data"]; string[] position = data["position"].ToString().Replace("\"","").Split(';'); Player tmpPlayer = new Player(data["name"], new Vector3( float.Parse(position[0]), float.Parse(position[1]), float.Parse(position[2])) ); playersToAdd.Add(tmpPlayer); } if (node["type"].Value=="PlayerLogin") { var data = node["data"]; string[] position = data["position"].ToString().Replace("\"","").Split(';'); Player tmpPlayer = new Player(data["name"], new Vector3( float.Parse(position[0]), float.Parse(position[1]), float.Parse(position[2])) ); updatePosition = tmpPlayer.Position; moveToPosition = updatePosition; JSONArray otherPLayers = data["players"].AsArray; foreach (var objJSON in otherPLayers.Childs) { string[] othPosition = objJSON["position"].ToString().Replace("\"","").Split(';'); Player othPlayer = new Player(objJSON["name"], new Vector3( float.Parse(othPosition[0]), float.Parse(othPosition[1]), float.Parse(othPosition[2])) ); playersToAdd.Add(othPlayer); } playersToAdd.Add(tmpPlayer); return; } if (node["type"].Value=="PlayerUpdate") { var data = node["data"]; if (allPlayers.ContainsKey(data["name"])) { string[] position = data["position"].Value.Split(';'); updatePosition = new Vector3( float.Parse(position[0]), float.Parse(position[1]), float.Parse(position[2]) ); moveToPosition = updatePosition; } } if (node["type"].Value=="PlayerDisconnect") { var data = node["data"]; if (allPlayers.ContainsKey(data["name"])) { allPlayers[data["name"]].canKill=true; } } } }