аполлон установки и инструменты для проверки связи клиента MQTT

После загрузки аполлон распакованы на диске C

Выполнение кд / d C: \ Apache-аполлон-1.7.1 \ Bin

Папка больше mybroker.

Введите mybroker \ Bin \ каталог, введите следующую команду в CMD:

CD C: \ Apache-аполлон-1.7.1 \ Bin \ mybroker \ Bin

аполлон-broker.cmd перспективе

 

 

 Фоновый вход интерфейсы: https://127.0.0.1:61681/ или http://127.0.0.1:61680/

 

Администратор аккаунта

пароль Пароль

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mqttbox

 

 

 

 

 

 

 

 

Mqttlens

 

 

MQTT.fx

 

пароль учетной записи Apollo является пароль учетной записи

 

package com.litian.iot.ammeter.mqtt;

import com.litian.iot.ammeter.model.Ammeter;
import org.eclipse.paho.client.mqttv3.*;
import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;

/**
 * ServerMQTT class
 *
 * @author 孙林业 @Description: 服务器向多个客户端推送主题,即不同客户端可向服务端订阅相同的主题
 * @date 2019/3/28
 */
public class ServerMQTT {
  // tcp://MQTT安装的服务器地址:MQTT定义的端口号
  public static final String HOST = "tcp://127.0.0.1:61613";
  // 定义一个主题
  public static final String TOPIC = "mytopic";
  // 定义MQTT的ID,可以在MQTT服务配置中指定
  private static final String clientid = "server11";

  private MqttClient client;
  private MqttTopic topic11;
  private String userName = "admin";
  private String passWord = "password";

  private MqttMessage message;

  /** @throws */
  public ServerMQTT() throws MqttException {
    // MemoryPersistence设置clientid的保存形式,默认为以内存保存
    client = new MqttClient(HOST, clientid, new MemoryPersistence());
    connect();
  }

  /** 用来连接服务器 */
  private void connect() {
    MqttConnectOptions options = new MqttConnectOptions();
    options.setCleanSession(false);
    options.setUserName(userName);
    options.setPassword(passWord.toCharArray());
    // 设置超时时间
    options.setConnectionTimeout(10);
    // 设置会话心跳时间
    options.setKeepAliveInterval(20);
    try {
      client.setCallback(new PushCallback());
      client.connect(options);

      topic11 = client.getTopic(TOPIC);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  /**
   * @param topic
   * @param message
   */
  public void publish(MqttTopic topic, MqttMessage message) throws MqttException {
    MqttDeliveryToken token = topic.publish(message);
    token.waitForCompletion();
    System.out.println("message is published completely! " + token.isComplete());
  }

  /**
   * 启动入口
   *
   * @param args
   */
  public static void main(String[] args) throws MqttException {
    ServerMQTT server = new ServerMQTT();

    Ammeter ammeter =
        new Ammeter(
            17.83,
            2.67,
            0.0,
            0.05,
            103.9,
            103.9,
            0.0,
            0.314,
            0.0,
            0.314,
            0.053,
            0.0274,
            0.0,
            0.0254,
            -0.0012,
            0.0146,
            0.0,
            -0.0158,
            100.0,
            87.7,
            100.0,
            84.9,
            0.0,
            0.0,
            300.1,
            25.3,
            0.0,
            205.1,
            0.0,
            1547691840,
            0.0,
            1547691840,
            0.0,
            1547691840,
            0.0,
            1547691840,
            0.0,
            1547691840,
            16.5802,
            3.5872,
            4.4641,
            4.3115,
            4.2174);

    System.out.println(ammeter.toJSONString());

    server.message = new MqttMessage();
    server.message.setQos(1);
    server.message.setRetained(true);
    server.message.setPayload(ammeter.toJSONString().getBytes());
    server.publish(server.topic11, server.message);
    System.out.println(server.message.isRetained() + "------ratained状态");
  }
}

 

Опубликовано 20 оригинальных статей · вона похвала 0 · просмотров 10000 +

рекомендация

отblog.csdn.net/qq_41969813/article/details/92774457