private void websocketclient_OnDataIn(object sender, nsoftware.IPWorksWS.WebsocketclientDataInEventArgs e) { try { dataReceived = e.Text; log.Info(dataReceived); isDataReceived = false; this.websocketclientToServer.SendText(dataReceived); } catch (Exception ext) { log.Error(ext.Message, ext); } }
private async void websocketclientToServer_OnDataIn(object sender, nsoftware.IPWorksWS.WebsocketclientDataInEventArgs e) { try { log.Info("Received Data From AutoPix backend server:" + e.Text); var AutoInspexID = ConfigurationManager.AppSettings["AutoInspexID"] + ""; var AutoInspexWebServiceUrl = ConfigurationManager.AppSettings["AutoInspexWebServiceUrl"] + ""; List <int> camerasSequecences = null; var dataObj = JObject.Parse(e.Text); var sequenceNums = (string)dataObj["sequenceNo"]; if (sequenceNums.ToLower() == "all") { camerasSequecences = Enumerable.Range(1, 72).ToList(); } else { var sequenceNoArray = sequenceNums.Split(','); var list = new List <int>(); foreach (var i in sequenceNoArray) { try { list.Add(Convert.ToInt32(i)); } catch (Exception ext) { log.Error(ext.Message, ext); } } camerasSequecences = list; } if (dataObj != null && (string)dataObj["autoInspexID"] == AutoInspexID) { string serviceType = (string)dataObj["serviceType"]; string sellingMethod = (string)dataObj["sellingMethod"]; string vinCode = (string)dataObj["vinCode"]; string vehicleId = (string)dataObj["vehicleId"]; string autoInspexID = (string)dataObj["autoInspexID"]; string uuid = (string)dataObj["uuid"]; string imageType = (string)dataObj["imageType"]; string sequenceNo = (string)dataObj["sequenceNo"]; string inspexIQConnectionId = (string)dataObj["inspexIQConnectionId"]; var client = new RestClient(AutoInspexWebServiceUrl); var request = new RestRequest("/api/PICameras/" + autoInspexID, DataFormat.Json); var piCameras = await client.GetAsync <List <PICamera> >(request); int countCamera = 0; if (piCameras != null && piCameras.Any()) { foreach (var p in piCameras.Where(p => camerasSequecences.Contains(Convert.ToInt32(p.RingPosition)))) { countCamera++; try { string piIPAddress = (string)dataObj["piIPAddress"]; this.components = new System.ComponentModel.Container(); var websocketclient = new nsoftware.IPWorksWS.Websocketclient(this.components); websocketclient.Firewall.Port = 1080; websocketclient.OnLog += Websocketclient_OnLog; websocketclient.Firewall.FirewallType = nsoftware.IPWorksWS.FirewallTypes.fwNone; websocketclient.OnDataIn += new nsoftware.IPWorksWS.Websocketclient.OnDataInHandler(this.websocketclient_OnDataIn); websocketclient.OnConnected += Websocketclient_OnConnected; websocketclient.OnError += Websocketclient_OnError; websocketclient.Connect($"ws://{p.IPAddress}:5001"); var message = new { serviceType = serviceType, sellingMethod = sellingMethod, vinCode = vinCode, vehicleId = vehicleId, autoInspexID = autoInspexID, uuid = uuid, imageType = imageType, sequenceNo = p.RingPosition, inspexIQConnectionId = inspexIQConnectionId, }; var json = JsonConvert.SerializeObject(message); websocketclient.DataToSend = json; websocketclient.Timeout = 120; } catch (IPWorksWSException ipwse) { log.Error(ipwse.Message + "\r\n" + ipwse.StackTrace); var message = new { serviceType = serviceType, sellingMethod = sellingMethod, vinCode = vinCode, vehicleId = vehicleId, autoInspexID = autoInspexID, uuid = uuid, imageType = imageType, sequenceNo = sequenceNo, inspexIQConnectionId = inspexIQConnectionId, error = "Unable to connect to the camera at postion " + p.RingPosition }; var json = JsonConvert.SerializeObject(message); this.websocketclientToServer.SendText(json); } catch (Exception ext) { log.Error(ext.Message, ext); } } if (countCamera == 0) { log.Error("countCamera=0"); var message = new { serviceType = serviceType, sellingMethod = sellingMethod, vinCode = vinCode, vehicleId = vehicleId, autoInspexID = autoInspexID, uuid = uuid, imageType = imageType, sequenceNo = sequenceNo, inspexIQConnectionId = inspexIQConnectionId, error = "No camera found to take pictures. Please check the sequenceNo" }; var json = JsonConvert.SerializeObject(message); this.websocketclientToServer.SendText(json); } } else { var message = new { serviceType = serviceType, sellingMethod = sellingMethod, vinCode = vinCode, vehicleId = vehicleId, autoInspexID = autoInspexID, uuid = uuid, imageType = imageType, sequenceNo = sequenceNo, inspexIQConnectionId = inspexIQConnectionId, error = "No camera configured for autoInspexID" + autoInspexID }; var json = JsonConvert.SerializeObject(message); this.websocketclientToServer.SendText(json); } } } catch (Exception ext) { log.Error(ext.Message, ext); } }
private void websocketclient1_OnDataIn(object sender, nsoftware.IPWorksWS.WebsocketclientDataInEventArgs e) { tbEcho.AppendText(e.Text.Replace("\r\n", "").Replace("\n", "") + "\r\n" + "\r\n"); }