请选择 进入手机版 | 继续访问电脑版
帖子
帖子
用户
博客
课程
显示全部楼层
发表于 2022-11-23 11:29:58
10
未解决

avm中使用mqtt链接 [复制链接]

  • 发表于:2022-11-23 11:29:58
import './crypto-js.js'
import Paho from './mqttws31.js'
let INSTANCEID = '***************';
let host = '***************';
let port = 443;
let TOPIC = '';
let USETLS = true;
let ACCESSKEY = '***************';
let SECRETKEY = '***************';
let CLEANSESSION = true;
let GROUPID = 'GID_XOADOMQ_01';
var mqtt = null;
var clientId = '';
let RECONNECTTIMEOUT = 2000;
let onConnectionLostT = false;
var ClientPaho = {
    init: function (userid) {
        clientId = `${GROUPID}@@@abcderf`;
        var username = 'Signature|' + ACCESSKEY + '|' + INSTANCEID;
        var password = CryptoJS.HmacSHA1(clientId, SECRETKEY).toString(CryptoJS.enc.Base64);
        console.log(password);
        console.log(username);
        console.log(clientId);
        mqtt = new Paho.MQTT.Client(
            host, //MQTT 域名
            port, //WebSocket 端口,如果使用 HTTPS 加密则配置为443,否则配置80
            clientId //客户端 ClientId
        );
        var options = {
            timeout: 3,
            onSuccess: ClientPaho.onConnect,
            mqttVersion: 4,
            cleanSession: CLEANSESSION,
            onFailure: function (message) {
                console.log(JSON.stringify(message));
                // setTimeout(ClientPaho.init, RECONNECTTIMEOUT);
            }
        };
        mqtt.onConnectionLost = ClientPaho.onConnectionLost;
        mqtt.onMessageArrived = ClientPaho.onMessageArrived;
        if (username != null) {
            options.userName = username;
            options.password = password;
            options.useSSL = USETLS;//如果使用 HTTPS 加密则配置为 true
        }
        mqtt.connect(options);
    },
    onConnect: function () {
        mqtt.subscribe('test', { qos: 0 });





    },
    onConnectionLost: function (response) {
        if (!onConnectionLostT) {
            // setTimeout(ClientPaho.opreconnect(), RECONNECTTIMEOUT);
        }

    },
    onMessageArrived: function (message) {
        var payload = message.payloadString;

    },
}
export default ClientPaho





[2022-11-23 11:27:4][WARN] WebSocket send data aborted. at main.js:0
[2022-11-23 11:27:7][INFO] {"errorCode":1,"errorMessage":"AMQJSC0001E Connect timed out."} at main/main.js:9739:14
[2022-11-23 11:27:7][INFO] {"errorCode":8,"errorMessage":"AMQJS0008I Socket closed."} at main/main.js:9739:14




链接不上 有谁使用过 帮忙看一下





avm无法使用html的js 都得使用ts的版本 例如下面的crypto-ts


本帖子中包含更多资源,您需要 登录 才可以下载或查看,没有帐号?立即注册

X
勇可可 · 2022-11-23 15:59avm无法使用html的js 都得使用ts的版本 例如下面的crypto-ts

  clientId = `${GROUPID}@@@abcderf`;
        var username = 'Signature|' + ACCESSKEY + '|' + INSTANCEID;
        var password = CryptoJS.HmacSHA1(clientId, SECRETKEY).toString(CryptoJS.enc.Base64);
        console.log(password);
        console.log(username);
        console.log(clientId);




[2022-11-23 16:1:38][INFO] dfIIw2KhY5VdlSgyIpx6x5pVxb0= at main/main.js:9725:12
[2022-11-23 16:1:38][INFO] Signature|LTAI5tH72HsMffHeuFDuzQQa|mqtt-cn-zmb2yb9qc01 at main/main.js:9726:12
[2022-11-23 16:1:38][INFO] GID_XOADOMQ_01@@@abcderf at main/main.js:9727:12
这个是用你给我发的文件打印的


[2022-11-23 16:3:28][INFO] dfIIw2KhY5VdlSgyIpx6x5pVxb0= at main/main.js:9725:12
[2022-11-23 16:3:28][INFO] Signature|LTAI5tH72HsMffHeuFDuzQQa|mqtt-cn-zmb2yb9qc01 at main/main.js:9726:12
[2022-11-23 16:3:28][INFO] GID_XOADOMQ_01@@@abcderf at main/main.js:9727:12
这是我源文件打印的  有什么区别
不知道起什么名字 · 2022-11-23 16:04clientId = `${GROUPID}@@@abcderf`;
        var username = 'Signature|' + ACCESSKEY + '|' + INSTANCEID;
        var password = CryptoJS.HmacSHA1(clientId, SECRETKEY).toString(CryptoJS.enc.Base64);

把那个mqtt 也换成ts的版本 再试试呢  

https://**.**/

jdiamond/MQTT.ts
您需要登录后才可以回帖 登录

本版积分规则