zoukankan      html  css  js  c++  java
  • MQTT简记2

    之前用的2.8.5版本的,后来想升级一下,发现已经是3.0以上的,程序有所改动

    如下:

    (1)服务器端启动服务:

    // 配置一个mqtt服务.
    var optionsBuilder = new MqttServerOptionsBuilder()
    //连接记录数,默认 一般为2000
    .WithConnectionBacklog(2000)
    //服务器连接端口
    .WithDefaultEndpointPort(port)
    //连接验证器

    .WithConnectionValidator(e => ConnectionValidationHandler(e))
    ////持续会话
    .WithPersistentSessions()

    .WithDefaultCommunicationTimeout(TimeSpan.FromMilliseconds(60000))

    //每个客户端主题存1千万条数据
    .WithMaxPendingMessagesPerClient(1000000)
    ;
    //创建Mqtt服务器
    mqttServer = new MqttFactory().CreateMqttServer();

    ////开启订阅事件
    mqttServer.ClientSubscribedTopicHandler= new MqttServerClientSubscribedHandlerDelegate(MqttNetServer_SubscribedTopic);

    //取消订阅事件
    mqttServer.ClientUnsubscribedTopicHandler = new MqttServerClientUnsubscribedTopicHandlerDelegate(MqttNetServer_UnSubscribedTopic);

    //客户端消息事件
    mqttServer.UseApplicationMessageReceivedHandler(MqttServe_ApplicationMessageReceived);

    //客户端连接事件
    mqttServer.UseClientConnectedHandler(MqttNetServer_ClientConnected);

    //客户端断开事件
    mqttServer.UseClientDisconnectedHandler(MqttNetServer_ClientDisConnected);

    //启动服务
    await Task.Run(async () => { await mqttServer.StartAsync(optionsBuilder.Build()); });

    各个方法:连接断开订阅那些也类似

    /// <summary>
    /// 数据接收
    /// </summary>

    private static async Task MqttServe_ApplicationMessageReceived(MqttApplicationMessageReceivedEventArgs arg)
    {

    }

    /// <summary>
    /// mqtt客户端连接方法
    /// </summary>
    /// <returns></returns>

    private static void ConnectionValidationHandler(MqttConnectionValidatorContext eventArgs)
    {

    }

    更多的可以在github看    mqttnet开源库,https://github.com/chkr1011/MQTTnet        wiki

  • 相关阅读:
    教你三招打入App Store推荐目录!
    APP下载量低 如何显著提高APP下载量?
    导致APP排名下跌的主要因素
    如何提高APP关键词覆盖率?先熟悉套路!
    如何让你的ASO优化效果提升10倍?
    有效的移动应用推广策略
    APP运营推广不得不看的6种数据指标
    如何为你的APP选出“最好”的关键词
    手机应用开发宝典:如何养成一款畅销APP
    Linux下设置定期执行脚本
  • 原文地址:https://www.cnblogs.com/lypstudy/p/13279715.html
Copyright © 2011-2022 走看看