アリクラウド物事.NETのコアクライアント| CZGL.AliIoTClient :. 9カスタムデリゲートイベントメソッド

Documentsディレクトリ:


 

CZGL.AliIoTClientは、デフォルトの設定方法、7つのイベントを委託しています。あなたは、デリゲートのイベントにバインドされた以下の方法でデフォルトを使用することができます。

public void UseDefaultEventHandler() 

1)デフォルトの方法

サーバーの下で受信するプロパティを送信します。

public void Default_PubPropertyEventHandler(object sender, MqttMsgPublishEventArgs e) 

サーバーを受信すると、サービスコマンドを呼び出します。

public void Default_PubServiceEventHandler(object sender, MqttMsgPublishEventArgs e) 

その他の一般的な例は、に応じて、トピック、アップロードデータなどを受信しました:

public void Default_PubCommonEventHandler(object sender, MqttMsgPublishEventArgs e) 

プッシュ1を受信するためのQoSサーバ

public void Default_PubedEventHandler(object sender, MqttMsgPublishedEventArgs e) 

メッセージが正常にサーバーに送信された場合:

public void Default_SubedEventHandler(object sender, MqttMsgSubscribedEventArgs e) 

メッセージは、サーバーをプッシュすることができませんでした。

public void Default_UnSubedEventHandler(object sender, MqttMsgUnsubscribedEventArgs e) 

取り外すときは

public void Default_ConnectionClosedEventHandler(object sender, 
                                                 System.EventArgs e)

2)メソッドを書きます

別のデリゲート異なるパラメータは、著者の引数を参照して、いくつかの種類、方法があります。

     /// 一般的推送
        /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_PubCommonEventHandler(object sender, MqttMsgPublishEventArgs e) { // handle message received string topic = e.Topic; string message = Encoding.ASCII.GetString(e.Message); Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("get topic message,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("topic: " + topic); Console.WriteLine("get messgae :\n" + message); } /// <summary> /// 收到属性设置 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_PubPropertyEventHandler(object sender, MqttMsgPublishEventArgs e) { // handle message received string topic = e.Topic; string message = Encoding.ASCII.GetString(e.Message); Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("get topic message,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("topic: " + topic); Console.WriteLine("get messgae :\n" + message); } /// <summary> /// 收到服务调用 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_PubServiceEventHandler(object sender, MqttMsgPublishEventArgs e) { // handle message received string topic = e.Topic; string message = Encoding.ASCII.GetString(e.Message); Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("get topic message,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("topic: " + topic); Console.WriteLine("get messgae :\n" + message); } /// <summary> /// 收到服务器QOS为1的推送 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_PubedEventHandler(object sender, MqttMsgPublishedEventArgs e) { Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("published,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("MessageId: " + e.MessageId + " Is Published: " + e.IsPublished); } /// <summary> /// 向服务器推送成功 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_SubedEventHandler(object sender, MqttMsgSubscribedEventArgs e) { Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("Sub topic,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("MessageId: " + e.MessageId); Console.WriteLine("List of granted QOS Levels: " + Encoding.UTF8.GetString(e.GrantedQoSLevels)); } /// <summary> /// 推送失败 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_UnSubedEventHandler(object sender, MqttMsgUnsubscribedEventArgs e) { Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("Sub topic error,Date: " + DateTime.Now.ToLongTimeString()); Console.WriteLine("MessageId: " + e.MessageId); } /// <summary> /// 连接发生异常,断网等 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public void Default_ConnectionClosedEventHandler(object sender, EventArgs e) { Console.WriteLine("- - - - - - - - - - "); Console.WriteLine("Connect Closed error,Date: " + DateTime.Now.ToLongTimeString()); }

おすすめ

転載: www.cnblogs.com/whuanle/p/10994720.html