Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.
|
Forum Index : Microcontroller and PC projects : Webmite (Picomite Web) mqtt statement
Author | Message | ||||
gghh Newbie Joined: 07/03/2023 Location: United StatesPosts: 13 |
This "payload" accomplishes what I need to send to my mqtt broker or server. I have not been able to accomplish this with much much trial and error. Is it possible and how do I create this as a string to send in MMBASIC? {"channel": "cabinm","resource": "tank","write": true,"data": 51} Thank you. By the way, I read the new topics every day. I can't tell you how impressed I am with the brilliant work and kind, compassionate support that goes on here. |
||||
Turbo46 Guru Joined: 24/12/2017 Location: AustraliaPosts: 1611 |
Without doing the whole lot. Is this the sort of thing you want?: a$ ="{"+chr$(34)+"channel"+chr$(34)+","+chr$(34)+"resource"+chr$(34)+":" print a$ Result: The new /n codes may help you to shorten it (see the manual) but I don't use them and this was done in MMBascic for DOS. To add more without making the line too long use: a$=a$+blah blah blah Bill Keep safe. Live long and prosper. |
||||
gghh Newbie Joined: 07/03/2023 Location: United StatesPosts: 13 |
Thank you Bill. That was the perfect suggestion. I had been using all versions of escape characters (pg. 35 of the WebMite manual) and none worked. But using Chr%(nn) codes did work and I could fashion the kind of string I wanted. Hopefully this will help others in the future. Also, one can define constants (or strings) similar to "Const q$=Chr$(34)" and "Const L$=Chr$(13)+Chr$(10)". This lets you use q$ and L$ for "double quotes" and CRLF. Unfortunately, when I went back to the WEB MQTT PUBLISH command, I realized that it's format only allows one "topic" and "data value" pair to be sent. If someone knows how to send several topic/value pairs together with MMBASIC, I would like to know how. It appears that a common format is a payload like {"topic1": "value1", "topic2": "value2", "topic3": 51} Thanks again Bill. |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
Had you entered "OPTION ESCAPE" at the start of the program (also on page 35)? PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
gghh Newbie Joined: 07/03/2023 Location: United StatesPosts: 13 |
So I went back and tried more variations. I had incorrectly been using the codes by not using them within quotes. When used within quotes all forms work. Printing the following: "\q" "\&22" "\034" all produce double quotes as does Chr$(34) without quotes. So "operator error". Thanks for your response. Do you have any insight into MMBASIC's mqtt commands? |
||||
lizby Guru Joined: 17/05/2016 Location: United StatesPosts: 3150 |
'Fraid not, sorry. I've tested mqtt using R-Pi-zero and PC, but it's been several years, and I don't remember anything. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
gghh Newbie Joined: 07/03/2023 Location: United StatesPosts: 13 |
Thanks again. I'm sure if there is a way, it will show up here. If not, no complaints. This is just a marvel as it is. |
||||
Turbo46 Guru Joined: 24/12/2017 Location: AustraliaPosts: 1611 |
I'm glad I was able to help a bit. I know nothing about mqtt, don't even know what it stands for and am not interested at the moment. Was afraid my answer would be rubbish in that context. Bill Keep safe. Live long and prosper. |
||||
Print this page |