iOS Question iMQTT - Example MQTTCanvas Error

Status
Not open for further replies.

MarkInAZ

Member
Licensed User
Longtime User
Hello,

I am using the B4i Build Server, Version: 3.6, iMQTT: 1.0 on my MAC.

I am using the MQTTBroker as my Broker with the example files from:

B4i -- B4i-MQTTCanvas.zip
https://www.b4x.com/android/forum/threads/imqtt-official-ios-mqtt-client.59516/#content

B4j -- MQTTExample.zip
https://www.b4x.com/android/forum/threads/iot-mqtt-protocol.59471/#content

The code is straight from the example zip files except for, username, password and Broker IP address for MQTTBroker.

=============================================================================

I am getting the following two errors:

-- From B4i-MQTTCanvas iPhone app:

This error references the line:
LINE 72: Dim obj As Object = serializator.ConvertBytesToObject(Payload)


Error occurred on line: 72 (Main)
Error decompressing data

Stack Trace: (
CoreFoundation <redacted> + 154
libobjc.A.dylib objc_exception_throw + 38
CoreFoundation <redacted> + 0
MQTT Canvas -[B4ICompressedStreams DecompressBytes::] + 478
MQTT Canvas -[B4ISerializator ReadObject::] + 90
MQTT Canvas -[b4i_main _mqtt_messagearrived::] + 782
CoreFoundation <redacted> + 68
CoreFoundation <redacted> + 294
MQTT Canvas +[B4I runDynamicMethod:method:throwErrorIfMissing:args:] + 1784
MQTT Canvas -[B4IShell runMethod:] + 574
MQTT Canvas -[B4IShell raiseEventImpl:method:args::] + 1998
MQTT Canvas -[B4IShellBI raiseEvent:event:params:] + 1442
MQTT Canvas +[B4IObjectWrapper raiseEvent:::] + 220
MQTT Canvas -[MQTTClient handleMessage:eek:nTopic:retained:] + 194
MQTT Canvas -[MQTTSessionManager newMessage:data:eek:nTopic:qos:retained:mid:] + 104
MQTT Canvas -[MQTTSession handlePublish:] + 890
MQTT Canvas -[MQTTSession decoder:newMessage:] + 1130
MQTT Canvas -[MQTTDecoder stream:handleEvent:] + 1952
CoreFoundation <redacted> + 152
CoreFoundation <redacted> + 204
CoreFoundation <redacted> + 334
CFNetwork <redacted> + 38
CFNetwork <redacted> + 200
CFNetwork <redacted> + 62
CoreFoundation <redacted> + 788
CoreFoundation <redacted> + 12
CoreFoundation <redacted> + 438
CoreFoundation <redacted> + 762
CoreFoundation CFRunLoopRunSpecific + 486
CoreFoundation CFRunLoopRunInMode + 104
GraphicsServices GSEventRunModal + 156
UIKit <redacted> + 574
UIKit UIApplicationMain + 150
MQTT Canvas main + 106
libdyld.dylib <redacted> + 2
)


From the B4j MQTTExample.zip app:

main._mqtt_messagearrived (java line: 200)
java.io.EOFException: Unexpected end of ZLIB input stream
at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:240)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:122)
at java.io.DataInputStream.readByte(DataInputStream.java:265)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.readByte(B4XSerializator.java:131)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.readObject(B4XSerializator.java:299)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.ReadObject(B4XSerializator.java:110)
at anywheresoftware.b4a.randomaccessfile.B4XSerializator.ConvertBytesToObject(B4XSerializator.java:81)
at b4j.example.main._mqtt_messagearrived(main.java:200)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:93)
at anywheresoftware.b4a.BA$4.run(BA.java:196)
at com.sun.javafx.application.PlatformImpl.lambda$null$173(PlatformImpl.java:295)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl.lambda$runLater$174(PlatformImpl.java:294)
at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.lambda$null$148(WinApplication.java:191)
at java.lang.Thread.run(Thread.java:745)

=============================================================================

Your help with this is greatly appreciated, Mark
 

MarkInAZ

Member
Licensed User
Longtime User
Awesome, tried it out, works perfect! Thank you :)

Makes sense with the Apple rules for https, was using an IP with no https, would generate an error/issue!
 
Upvote 0

Aidan Ruff

Member
Licensed User
Longtime User
Hi
I'm using the latest b4i (V6.50) and I'm getting the same error - "Error decompressing data" on MQTT receive.

I have changed to #ATSEnabled: False" (it was set to True).

Pulling my hair out here!

BTW, is there ant documentation on the iMQTT lib - I'm just using your canvass code and the Force to work it all out (also, slightly distracted by watching the Dragon 2 Creed mission to the ISS)

Thanks
Aidan
 
Upvote 0
Status
Not open for further replies.
Top