Beispiel #1
0
 private void mqttApplicationMessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
 {
     try
     {
         /*
          * for example
          * topic:
          *      none/FORMOSA00001/70bed5fffe040001/rx
          *
          * message payload:
          *      { "applicationID":"2","applicationName":"Formosa-Farm","deviceName":"RM1-IC01","devEUI":"70bed5fffe040001","txInfo":{ "frequency":903900000,"dr":0},"adr":true,"fCnt":29367,"fPort":6,"data":"AAA=","object":{ "Irrigation":{ "channel1":false,"channel2":false,"channel3":false,"channel4":false},"report":"Data"} }
          */
         string topic          = e.ApplicationMessage.Topic;
         string strUtf8Payload = Encoding.UTF8.GetString(e.ApplicationMessage.Payload);
         var    payload        = JsonConvert.DeserializeObject <rxEvent>(strUtf8Payload);
         for (int i = 0; i < 3; i++)
         {
             if (0 == String.Compare(compareRxTopic[i], topic, true))
             {
                 Invoke(new Action(() =>
                 {
                     settingBlubLed(i, ref payload);
                 }));
             }
         }
         debugOutput(e.ApplicationMessage.Topic, strUtf8Payload);
     }
     catch (Exception ex)
     {
         debugOutput("Rx", ex.Message);
     }
 }
Beispiel #2
0
        private void MqttClient_MessageReceivedEvent(MQTTnet.MqttApplicationMessageReceivedEventArgs eventArgs)
        {
            var messageAsJson = Encoding.UTF8.GetString(eventArgs.ApplicationMessage.Payload);

            var topic = eventArgs.ApplicationMessage.Topic.Split('/').Last();

            switch (topic)
            {
            case "start":
                StartTimer();
                break;

            case "update":
                _model = JsonConvert.DeserializeObject <ScoreBoardModel>(messageAsJson);
                Dispatcher.Invoke(() => DataContext = _model);
                break;

            case "stop":
                if (!string.IsNullOrWhiteSpace(messageAsJson) && messageAsJson != "empty")
                {
                    var offset = JsonConvert.DeserializeObject <TimeSpan>(messageAsJson);
                    StopTimer(offset);
                }
                else
                {
                    StopTimer();
                }
                break;

                //case "pause":
                //    break;
            }
        }
Beispiel #3
0
        private void MqttClient_MessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
        {
            StringBuilder str = new StringBuilder();

            str.AppendLine("MQTT MessageReceived!");
            str.AppendLine($"Content Type : {e.ApplicationMessage.ContentType}");
            str.AppendLine($"Payload : {Encoding.UTF8.GetString(e.ApplicationMessage.Payload)}");
            WriteLog(str.ToString());
        }
 private void DaegunSubscriberWorker_MessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
 {
     try
     {
         DaegunPacket packet = PacketParser.ByteToStruct <DaegunPacket>(e.ApplicationMessage.Payload);
         queue.QueueBackgroundWorkItem(packet);
     }
     catch (Exception ex)
     {
         logger.LogError(ex, ex.Message);
     }
 }
        private void DaegunSubscriberWorker_MessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
        {
            DaegunPacket packet = PacketParser.ByteToStruct <DaegunPacket>(e.ApplicationMessage.Payload);

            queue.QueueBackgroundWorkItem(packet);
        }
Beispiel #6
0
        private void _mqttClient_MessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
        {
            var payload = System.Text.Encoding.UTF8.GetString(e.ApplicationMessage.Payload);

            NewDataFromServerEvent?.Invoke(this, new JsonStringEventArgs(payload));
        }
 private void Mqtt_ApplicationMessageReceived(object sender, MQTTnet.MqttApplicationMessageReceivedEventArgs e)
 {
     _logger.LogInformation($"Received  : {e.ApplicationMessage.Topic}");
 }