サブスクライバーとしてのプッシュエージェント

デフォルトでは、プッシュエージェントはクラウドにデータを送信できます。プッシュエージェントコードを編集して、クラウドからデータを受信できます。

データ受信関数

次の例の関数は、メッセージを受信するたびに呼び出されます。この関数は、受信したメッセージを関数で定義されたロジックに従って処理し、
messageVariable
変数値を更新します。
private Task SubscribeClientMqttMsgPublishReceived(MqttApplicationMessageReceivedEventArgs e) { var message = e.ApplicationMessage.ConvertPayloadToString(); var messageVariable = Project.Current.GetVariable("Model/Message"); messageVariable.Value = Newtonsoft.Json.Linq.JObject.Parse(message)["Rows"][0]["Variables"][0]["Value"].ToString(); return Task.CompletedTask; }

サブスクライバー構成パラメータ

以下の例は、サブスクライバーの構成パラメータとして渡されるデータ受信関数を示しています。公開者の基本構成に加えて、
Start()
メソッドではサブスクライバー メソッドが構成されます。
public override void Start() { // PushAgent Default configuration // Add subscriber mqttClientConnector.AddSubscriberAsync("my_custom_subscriber_topic", 1, SubscribeClientMqttMsgPublishReceived); } public async void AddSubscriberAsync(string topic, int qosLevel, Func<MqttApplicationMessageReceivedEventArgs, Task> subscribeClientMqttMsgPublishReceived) { mqttClient.ApplicationMessageReceivedAsync += subscribeClientMqttMsgPublishReceived; await mqttClient.SubscribeAsync(topic, GetQoSLevel(qosLevel)).ConfigureAwait(false); }
ご質問やご意見
このドキュメントに関するご質問やご意見は、こちらまでお寄せください。 こちらからご意見をお寄せください。
Normal