public override void ViewDidLoad() { base.ViewDidLoad(); lblConnected.Text = "Disconnected"; _mqttClient = MqttClientFactory.CreateClient("tcp://m11.cloudmqtt.com:12360", Guid.NewGuid().ToString(), "mike", "cloudmqtt"); _mqttClient.Connected += (object sender, EventArgs e) => { InvokeOnMainThread(() => { var subscription = new Subscription("mqttdotnet/pubtest", QoS.BestEfforts); _mqttClient.Subscribe(subscription); setConneectedState(); }); }; _mqttClient.ConnectionLost += (object sender, EventArgs e) => { InvokeOnMainThread(() => { setDisconnectedState(); }); }; _mqttClient.Subscribed += _mqttClient_Subscribed; _mqttClient.Unsubscribed += _mqttClient_Unsubscribed; _mqttClient.PublishArrived += _mqttClient_PublishArrived; _mqttClient.Connect(); }
/// <summary> /// Subscribe to multiple topics /// </summary> /// <param name="subscriptions">Array of Subscription objects</param> public MqttSubscribeMessage(ulong messageID, Subscription[] subscriptions) : base(MessageType.SUBSCRIBE) { _messageID = messageID; _subscriptions = subscriptions; base.msgQos = QoS.AtLeastOnce; // Work out the length of the payload int payloadLength = 0; foreach (Subscription s in _subscriptions) { payloadLength += (2 + GetUTF8StringLength(s.Topic) + 1); } this.variableHeaderLength = ( 8 + // Length of message ID payloadLength // Length of the payload ); }
public void Subscribe(Subscription subscription, PublishArrivedDelegate subscriber) { if (topicTree == null) { topicTree = new TopicTree<PublishArrivedDelegate>(); } topicTree.Add( subscription.Topic, subscriber); // TODO: Check if we're already subscribed. Subscribe(subscription); }
public int Subscribe(Subscription subscription) { return Subscribe(new Subscription[] { subscription }); }
public int Subscribe(Subscription[] subscriptions) { if (manager.IsConnected) { ushort messID = MessageID; manager.SendMessage(new MqttSubscribeMessage(messID, subscriptions)); return messID; } else { throw new MqttNotConnectedException("You need to connect to a broker before trying to Publish"); } }
public ulong Subscribe(Subscription subscription) { return Subscribe(new Subscription[] { subscription }); }