Я использовал клиент Paho MQTT в Android для подключения к службе быстрого запуска IBM Bluemix Quickstart IoT. Компонент соединения работает хорошо, но когда я публикую, облачное приложение отображает, что я отключен, но в клиенте я не получаю исключения.Quickstart от Bluemix отключается при публикации с клиентом Paho MQTT
Я использую это разрешение:
<uses-permission android:name="android.permission.INTERNET"/>
Connect:
String broker = "tcp://quickstart.messaging.internetofthings.ibmcloud.com:1883";
String clientId = "d:quickstart:iotqs-sensor:myDeviceID";
try {
client = new MqttClient(broker, clientId, null);
MqttConnectOptions connOpts = new MqttConnectOptions();
client.connect(connOpts);
} catch(MqttException me) {
публикации:
String topic = "iot-2/evt/iotsensor/fmt/jon";
String content = "{ \"d\" : { \"data\" : 5 } }";
try {
MqttMessage message = new MqttMessage(content.getBytes());
message.setQos(0);
client.publish(topic, message);
} catch(MqttException me) {
Странная вещь: этот код работал вчера. В чем может быть проблема? Следующим шагом будет подключение и публикация в моем собственном сервисе Bluemix IoT, но если я не могу отправлять сообщения на демо, я не могу надеяться на большее.
UPDATE: Если я подключаюсь и публикую приложение quickstart, это показывает, что я отключен, но клиент все еще разрешает мне публиковать около 3 секунд, после чего я получаю исключение:4 (клиент не подключен).
Вы зарегистрировали устройство как iotqs-sensor? Если да, сообщите мне свою организацию. – ValerieLampkin
Нет, я просто попытался издеваться над симулятором симулятора bluemix, я видел, что он использует датчик iotqs. Но я зарегистрировал устройство как: type = myDevice, id = myDeviceID, org = ijlqtn –