The Things Network: невозможно опубликовать / подписаться на темы со ссылками вверх / вниз на моем устройстве - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь быстро протестировать механизм pub / sub для моего зарегистрированного устройства в TTN, чтобы я мог создать свое полное приложение-решение на основе данных, поступающих к брокеру TTN.

В настоящий момент я ожидая прибытия моего модуля loRa, поэтому я хочу использовать простой сценарий nodeJS для публикации фиктивных данных sh, а другой - для подписки и создания приложения с использованием фиктивных данных. Я использую для этого следующий код:

var mqtt = require('mqtt')
    var options = {
port: 1883,
host: ‘mqtt://eu.thethings.network’,
username: ‘xxxx’, // here I wrote my app id
password: ‘xxxx’ // here I wrote the access key
};

var client = mqtt.connect(‘mqtt://eu.thethings.network’,options)

client.on(‘connect’, function () {
client.subscribe(‘appID/devices/MyDeviceName/down’, function (err) {
if (!err) {
client.publish(‘appID/devices/MyDeviceName/down’, ‘Hello mqtt’)
}
})
})

client.on(‘message’, function (topic, message) {
// message is Buffer
console.log(message.toString())
// client.end()
})

Это, однако, ничего не делает, я смотрел данные по TTN, ничего не поступало.

Я также пробовал использовать mqtt explorer, но он не сработало.

Оба метода работали нормально, когда я играл через брокера на моем компьютере, eclipse и mosquittoo в облаке.

Ваша помощь очень признательна.

Спасибо! Ахмед

1 Ответ

1 голос
/ 23 июля 2020

Я сталкивался с подобной проблемой в прошлом. Я считаю, что проблема заключается в попытке использовать «mqtt» вместо «https». Для меня это сработало, когда я позвонил

mqtt.connect('https://thethings.network:1883', {
    "username": username,
    "password": password
}

. Однако я не использовал версию сайта сообщества (The Things Stack V3), поэтому может быть небольшая разница. Например, вместо «My-App-Id» мне пришлось использовать «My-App-Id@My-Company-Name».

Пожалуйста, попробуйте описанное выше и дайте мне знать, работает ли оно.

...