When i set a received payload to a variable in mqtt blocks, and try to do something with it,
it gives me this error
"Expecting a (thing), but getting an undefined"
When i set a received payload to a variable in mqtt blocks, and try to do something with it,
it gives me this error
"Expecting a (thing), but getting an undefined"
Can you post a script that isn't working for you please
Well this has happened every time ive used mqtt in the last month but ok
which ones giving the error?
And you are sure it's not your code?
The error you explained didn't include "inside a custom block:" which (assuming you copied the error exactly) means you have an error in your code.
can you send both projects so i can have a look please
click the flag in both, in the first one, enter this in the prompt: broker:emqx.examplesite.io
in the second one, in the editor, wait until (no) doesnt equal 0. then run the split (no) by [letter]
You can dump the variable content with
Response is not a plain text but Object (Uint8Array). You can try
"Join" tries to create something readable from anything.
Or maybe Jens expanded the "join" to work with the binary data
The reason is simple:according to my experiements,you can only use empty slots to get stuff from response
I wonder if you come up with something a bit simpler that gives an error that you think is due to a problem with the MQTT library - your 1st script is too complicated for me to follow
The second one is not really valid.
The idea behind the subscribe is that you call it once and then use the on each message callback to action any incoming messages. You don't put the block itself into an infinite loop
I know whats happening, I experienced it yesterday when building an mqtt program. Using ring variables for the response gives an object for some reason.
@mr_owlssssnap2 use this block to change the response to text:
Can you post a simple example of the issue?
Notice I'm using the request
ring variable.
Publish something to the topic, and look at what the sprite says.
Thank you - I finally understand
I would say that is a bug and will have to look into a bit further
(We changed the way the payload is returned by default but since it looks like text - it never occurred to me that Snap! might not think it's text
The workaround for the moment is to just stick a true into the options and the payload will be returned in the same manner as it was prior to V8.1
Paging @xavierpi - we might need to tweak something
I think I've fixed it - just going to make sure Xavier is happy with it before making a PR to Jens
@mr_owlssssnap2
The block is now fixed in latest dev version - thanks for the report
Thanks to @joecooldoo for explaining it to me
thanks
@here thanks for all the answers!
I thought this was a feature!