You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@edgent.apache.org by James Cancilla <ca...@gmail.com> on 2016/04/06 17:39:06 UTC
MqttException when receiving commands via IotDevice
Hello,
I have Quarks running on an Android application. The application is setup
similar to the following:
DirectProvider dp = new DirectProvider();
Topology t = dp.newTopology("Monitor");
TStream<MyData> jsonStream = ...
IotDevice device = new IotfDevice(t, getIotfOptions());
device.events(jsonStream, IOTF_EVENT_ID, QoS.FIRE_AND_FORGET);
device.commands("viz").print();
dp.submit(t);
When I run the Android app, the events are successfully published to IoT
but I am unable to receive any commands from IoT. The Android logcat is
filled the following messages/exception:
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
MqttException
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Connecting client d:my_org_id:my_device_type:my_device_id to ssl://
my_org_id.messaging.internetofthings.ibmcloud.com:8883 (attempt #1)...
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Successfully connected to the IBM Watson IoT Platform
I/art: Rejecting re-init on previously-failed class
java.lang.Class<com.ibm.iotf.client.device.Command>
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Successfully connected to the IBM Watson IoT Platform
I/art: Rejecting re-init on previously-failed class
java.lang.Class<com.ibm.iotf.client.device.Command>
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
MqttException
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Connecting client d:my_org_id:my_device_type:my_device_id to ssl://
my_org_id.messaging.internetofthings.ibmcloud.com:8883 (attempt #1)...
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Successfully connected to the IBM Watson IoT Platform
I/art: Rejecting re-init on previously-failed class
java.lang.Class<com.ibm.iotf.client.device.Command>
I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
Successfully connected to the IBM Watson IoT Platform
...
Any thoughts as to what the problem may be?
Thanks,
James
Re: MqttException when receiving commands via IotDevice
Posted by Dale LaBossiere <dm...@gmail.com>.
It’s not an area I’m particularly familiar with but in hopes of gaining a toehold I tried a simple search of the current Watson IoT Platform code and couldn’t find any of those messages.
I see that quarks has version 0.0.9 of the library (connectors/iotf/ext/com.ibm.iotf.client-0.0.9.jar) and it’s now up to 0.0.11 (https://github.com/ibm-messaging/iot-java/releases <https://github.com/ibm-messaging/iot-java/releases>). maybe try pulling and using that to quickly see if it helps? if not maybe the post a question/issue to that project to see if they can provide some clues.
@djd has all of the experience with this connector.
> On Apr 6, 2016, at 11:39 AM, James Cancilla <ca...@gmail.com> wrote:
>
> Hello,
>
>
> I have Quarks running on an Android application. The application is setup
> similar to the following:
>
> DirectProvider dp = new DirectProvider();
> Topology t = dp.newTopology("Monitor");
>
> TStream<MyData> jsonStream = ...
>
> IotDevice device = new IotfDevice(t, getIotfOptions());
> device.events(jsonStream, IOTF_EVENT_ID, QoS.FIRE_AND_FORGET);
>
> device.commands("viz").print();
>
> dp.submit(t);
>
>
> When I run the Android app, the events are successfully published to IoT
> but I am unable to receive any commands from IoT. The Android logcat is
> filled the following messages/exception:
>
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> MqttException
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Connecting client d:my_org_id:my_device_type:my_device_id to ssl://
> my_org_id.messaging.internetofthings.ibmcloud.com:8883 (attempt #1)...
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Successfully connected to the IBM Watson IoT Platform
> I/art: Rejecting re-init on previously-failed class
> java.lang.Class<com.ibm.iotf.client.device.Command>
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Successfully connected to the IBM Watson IoT Platform
> I/art: Rejecting re-init on previously-failed class
> java.lang.Class<com.ibm.iotf.client.device.Command>
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> MqttException
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Connecting client d:my_org_id:my_device_type:my_device_id to ssl://
> my_org_id.messaging.internetofthings.ibmcloud.com:8883 (attempt #1)...
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Successfully connected to the IBM Watson IoT Platform
> I/art: Rejecting re-init on previously-failed class
> java.lang.Class<com.ibm.iotf.client.device.Command>
> I/LoggerUtility: MQTT Call: d:my_org_id:my_device_type:my_device_id:
> Successfully connected to the IBM Watson IoT Platform
> ...
>
>
> Any thoughts as to what the problem may be?
>
> Thanks,
> James