public void Subscribe(string[] topics, MqttMsgPublishEventHandler eventHandler) { var mqttClient = new MqttClient(_server); mqttClient.MqttMsgPublishReceived += eventHandler; mqttClient.Subscribe(topics, _qosLevels); Connect(mqttClient); }
public static void Subscribe(string[] topics, MqttMsgPublishEventHandler eventHandler) { var qosLevels = new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE }; var mqttClient = new MqttClient(_server); mqttClient.MqttMsgPublishReceived += eventHandler; mqttClient.Subscribe(topics, qosLevels); mqttClient.Connect(Guid.NewGuid().ToString()); }
public static void configFunctionMosquitto(MqttClient mClient, MqttMsgPublishEventHandler client_MqttMsgPublishReceived) { if (mClient != null && mClient.IsConnected) { mClient.MqttMsgPublishReceived += client_MqttMsgPublishReceived; mClient.MqttMsgSubscribed += client_MqttMsgSubscribed; mClient.MqttMsgUnsubscribed += client_MqttMsgUnsubscribed; Console.WriteLine("Config functions with success!"); } else { Console.WriteLine("Mosquitto is not connected!"); } }
/** * \fn Unsubscribe * \brief unsubscribe from mqtt flow * \param [in] mqttSubscribeInfo : mqtt subscribe informations * \param [in] us_topics : target topics for unsubscription * \return success or failed */ public bool Unsubscribe(MqttSubscribeInfo mqttSubscribeInfo, MqttMsgPublishEventHandler callBack) { try { //unsubscribe if (null != callBack) { MqttMsgPublishReceived -= callBack; } Unsubscribe(mqttSubscribeInfo.Topics); return(true); } catch (Exception ex) { throw new Exception($"Exception while trying to unsubscribe from broker (host={BrokerInfo.broker_address}, port={BrokerInfo.broker_port}) : {ex.Message}", ex); } }
/** * \fn Subscribe * \brief subscribe to mqtt flow * \param [in] subscribeInfo : mqtt subscribe informations * \param [in] callBack : callback for event association * \return success or failed */ public bool Subscribe(MqttSubscribeInfo subscribeInfo, MqttMsgPublishEventHandler callBack) { try { // register to message received if (null != callBack) { MqttMsgPublishReceived += callBack; } // subscribe to the topic Subscribe(subscribeInfo.Topics, subscribeInfo.QoS); return(true); } catch (Exception ex) { throw new Exception($"[ElaMqttSubscriber]\t[Subscribe]\tException while subscribing to broker (host={BrokerInfo.broker_address}, port={BrokerInfo.broker_port}): {ex.Message}", ex); } }
public void SubscribeEventHandler(MqttMsgPublishEventHandler MqttMsgPublishReceived) { _client.MqttMsgPublishReceived += MqttMsgPublishReceived; }
public void MessagePublishReceived(MqttMsgPublishEventHandler eventHandler) { _client.MqttMsgPublishReceived += eventHandler; }