Exemplo n.º 1
0
        private void _ipcClient_MessageReceived(object sender, IpcMessageEventArgs e)
        {
            switch (e.Message.MessageCode)
            {
            case IpcMessageCode.Unset:
                Trace.TraceError("Received IpcMessage with unset code.\n{0}", e.Message.Data.ToDataString());
                break;

            case IpcMessageCode.Debug:
                OnMessage(new DebugAnperiMessage(e.Message.Data));
                break;

            case IpcMessageCode.Error:
                OnMessage(new ErrorAnperiMessage(e.Message.Data));
                break;

            case IpcMessageCode.PeripheralEventFired:
                OnMessage(new EventFiredAnperiMessage(e.Message.Data));
                break;

            case IpcMessageCode.PeripheralDisconnected:
                IsPeripheralConnected = false;
                OnPeripheralDisconnected();
                break;

            case IpcMessageCode.PeripheralConnected:
                IsPeripheralConnected = true;
                var pCon = new PeripheralConnectedAnperiMessage(e.Message.Data);
                PeripheralInfo = pCon.PeripheralInfo;
                if (pCon.PeripheralInfo.Version != ApiVersion)
                {
                    OnIncompatibleDeviceConnected(pCon.PeripheralInfo);
                }
                else
                {
                    OnPeripheralConnected(new PeripheralConnectedAnperiMessage(e.Message.Data).PeripheralInfo);
                }
                break;

            case IpcMessageCode.ControlLost:
                HasControl = false;
                OnControlLost();
                break;

            case IpcMessageCode.NotClaimed:
                OnHostNotClaimed();
                break;

            case IpcMessageCode.ClaimControl:
            case IpcMessageCode.FreeControl:
            case IpcMessageCode.SetPeripheralLayout:
            case IpcMessageCode.SetPeripheralElementParam:
            default:
                Trace.TraceError("Message {0} not implemented, data:\n{1}", e.Message.MessageCode.ToString(), e.Message.Data.ToDataString());
                break;
            }
        }
Exemplo n.º 2
0
        private void OnIpcMessageReceived(object sender, IpcMessageEventArgs e)
        {
            if (e.Channel == "getWeatherForecasts")
            {
                var args = e.Message.ToObject <WeatherForecastArgs>();

                e.Result = GetWeatherForecasts(args.City, args.UseCelsius);
            }
        }