public SCADAAnalogChangedNotificationResponse SCADAAnalogChangedNotification(SCADAAnalogChangedNotificationRequest request) { LogInfo("SCADAAnalogChangedNotification() Entered"); String message = String.Empty; SCADAAnalogChangedNotificationResponse response = new SCADAAnalogChangedNotificationResponse(); try { if (_UdpClient == null) { String path = @"C:\\DCSystems\Logs\"; ConfigurationList cl = new ConfigurationList(); cl.Add("Process Name", "MockNotServerService"); cl.Add("Log Output Directory", path); _Logger = new Logger(cl); LogInfo("()"); _UdpClient = new UdpClient(); _UdpClient.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 7373)); } for (int i = 0; i < request.scadaAnalogs.Length; i++) { if (i == 0) { message += String.Format("{0},{1:0.000} {2} {3} GMT", request.scadaAnalogs[i].objectID, request.scadaAnalogs[i].value.Value, request.scadaAnalogs[i].value.units, request.scadaAnalogs[i].timeStamp); } else { message += String.Format(";{0},{1:0.000} {2} {3} GMT", request.scadaAnalogs[i].objectID, request.scadaAnalogs[i].value.Value, request.scadaAnalogs[i].value.units, request.scadaAnalogs[i].timeStamp); } } Byte[] sendBytes = Encoding.ASCII.GetBytes(message); _UdpClient.Send(sendBytes, sendBytes.Length); response.MultiSpeakMsgHeader = new MultiSpeakMsgHeader(); response.MultiSpeakMsgHeader.TimeStampSpecified = true; response.MultiSpeakMsgHeader.TimeStamp = DateTime.Now; response.SCADAAnalogChangedNotificationResult = null; return(response); } catch (Exception ex) { LogError(String.Format("SCADAAnalogChangedNotification() ex:{0}", ex)); response.SCADAAnalogChangedNotificationResult = new errorObject[1]; response.SCADAAnalogChangedNotificationResult[0] = new errorObject(); response.SCADAAnalogChangedNotificationResult[0].Value = ex.Message; return(response); } }
private void buttonScadaAnalogChangedNotification_Click(object sender, RoutedEventArgs e) { const int MAX_NUM_ANALOGS = 21; Int32 numAnalogs = 0; try { Random rand = new Random(); SCADAAnalogChangedNotificationRequest request = new SCADAAnalogChangedNotificationRequest(); request.MultiSpeakMsgHeader = new MultiSpeakMsgHeader(); request.MultiSpeakMsgHeader.UserID = "dcs"; request.MultiSpeakMsgHeader.Pwd = "dcs1"; //request.MultiSpeakMsgHeader.TimeStamp = DateTime.Now; //request.MultiSpeakMsgHeader.TimeStampSpecified = true; //numAnalogs = rand.Next(1, MAX_NUM_ANALOGS); //request.scadaAnalogs = new scadaAnalog[numAnalogs]; //for (int i = 0; i < numAnalogs; i++) { // request.scadaAnalogs[i] = new scadaAnalog(); // request.scadaAnalogs[i].objectID = "SCADAPoint"; ; // request.scadaAnalogs[i].objectName = String.Format("Analog{0:0000}", i); // request.scadaAnalogs[i].unitID = String.Format("An{0:0000}", i); // request.scadaAnalogs[i].quality = new qualityDescription1(); // request.scadaAnalogs[i].quality = qualityDescription1.Measured; // request.scadaAnalogs[i].value = new value(); // request.scadaAnalogs[i].value.Value = 0.1F; // request.scadaAnalogs[i].value.units = uom.Amps; // request.scadaAnalogs[i].value.unitsSpecified = true; // request.scadaAnalogs[i].timeStamp = DateTime.Now; // request.scadaAnalogs[i].timeStampSpecified = true; //} numAnalogs = 1; request.scadaAnalogs = new scadaAnalog[numAnalogs]; for (int i = 0; i < numAnalogs; i++) { request.scadaAnalogs[i] = new scadaAnalog(); request.scadaAnalogs[i].objectID = "LR1234";; //request.scadaAnalogs[i].objectName = String.Format("Analog{0:0000}", i); //request.scadaAnalogs[i].unitID = String.Format("An{0:0000}", i); //request.scadaAnalogs[i].quality = new qualityDescription1(); //request.scadaAnalogs[i].quality = qualityDescription1.Measured; request.scadaAnalogs[i].value = new value(); request.scadaAnalogs[i].value.Value = 0.1F; request.scadaAnalogs[i].value.units = uom.Amps; request.scadaAnalogs[i].value.unitsSpecified = true; request.scadaAnalogs[i].timeStamp = DateTime.Now; request.scadaAnalogs[i].timeStampSpecified = true; } SCADAAnalogChangedNotificationResponse response = _Proxy.SCADAAnalogChangedNotification(request); if (response == null) { DisplayMsg("response is null - SUCCESS"); return; } if (response.SCADAAnalogChangedNotificationResult == null) { DisplayMsg("response.SCADAAnalogChangedNotificationResult is null - SUCCESS"); return; } for (int i = 0; i < response.SCADAAnalogChangedNotificationResult.Length; i++) { DisplayMsg(String.Format("{0} {1}", response.SCADAAnalogChangedNotificationResult[i].objectID, response.SCADAAnalogChangedNotificationResult[i].Value)); } } catch (Exception ex) { DisplayMsg(String.Format("ex: {0}", ex.Message)); } }