Sending all fields data with Mqtt

조회 수: 4 (최근 30일)
Marc Hanssens
Marc Hanssens 2024년 2월 6일
댓글: Christopher Stapels 2024년 3월 5일
When using Rest api there is a neat feature whereby you can send data to fields of a channel by doing this in the thingspeakwrite ....[11,12,13,14,15,16,17,18] //where the field1 = 1, field2= 2 etc.
It appears that in Mqtt , the syntaxt must be field1= 1, filed2 etc which seems verbose. Can the data be sent using Mqtt in a syntax like PublishString= ...... ChannelID,[11,12,13,14,15,16,17,18], API_Key=mychannelkey;

답변 (1개)

Christopher Stapels
Christopher Stapels 2024년 2월 13일
Yes, there is a multiple field syntax. See the publish to channel field doc.
In the Payload pane, use the following settings:
Topic: channels/33301/publish
Payload: field1=45&field2=60&status=MQTTPUBLISH
  댓글 수: 2
Marc Hanssens
Marc Hanssens 2024년 3월 4일
Hi Christopher,
Thanks for the reply. I think that I didn't phase my question correctly.
In your example :Payload: field1=45&field2=60&status=MQTTPUBLISH you are passing the values 45 and 60 to fields 1 & 2 respectively.
I would like to pass the values in less verbose way and do something similar to thingspeakwrite, like: Payload: [45,60]&status=MQTTPUBLISH
is this possible with MQTT?
Christopher Stapels
Christopher Stapels 2024년 3월 5일
thingSpeakWrite is a function in MATLAB, though it does use the REST API in the background.. You can definitely write MATLAB functions to simplify your code, but you will need to keep them in your MATLAB analysis or visualizations code (you cant yet call custom functions in your ThingSpeak code, though you can in MATLAB online). You can use MATLAB to communicate with ThingSpeak via MQTT. The syntax you use inside your functions will still need to be what is shown above.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Write Data to Channel에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by