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:eventarams:] + 1442
MQTT Canvas +[B4IObjectWrapper raiseEvent:::] + 220
MQTT Canvas -[MQTTClient handleMessagenTopic:retained:] + 194
MQTT Canvas -[MQTTSessionManager newMessage:datanTopic: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.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…