private void Subscribe(RtTagMqtt tag) { if (IsConnected) { mqttClient.Client.Subscribe(new[] { tag.Topic }, new[] { (byte)tag.Options.qosLevels }); } }
public override IRtTag AddTag(string tagName, string topic, IRtTagOptions options) { var tag = GetTag(tagName); if (tag != null) { return(tag); } RtTagMqtt t = new RtTagMqtt(this, tagName, $"{prefix}{topic}", (options as RtTagMqttOptions)); lock (rtTags) { rtTags.Add(t); } Subscribe(t); logger?.LogInformation("AddTag TagName:{0} prefix:{1}", t.TagName, prefix); return(t); }