How to force data bi-direction between HTTP Sender and HTTP Receiver
-
I'm using Mango Automation V3.3.2
so My project have 2 mango, the first run in raspberry pi (IP address:10.62.41.189) and another one run in PC (IP adress:10.62.41.121).
It is every well to send data point from raspberry pi by HTTP Sender (Publish) and the PC using HTTP Receiver (Data Source) to get the data point into it. The picture below are some setting of mango run in raspberry pi. Screenshot 1 Screenshot 2
and this picture below are some setting of mango run in PC.
p1 p3
p2
I'm got the data by check in the watch list as show below
p4
for now i can settable data name SW1 only 1 way raspberry pi (sender) -> to PC (receiver) as show in below the left hand side is PC and the right hand side is raspberry pi
sender4
I need help i want to settable data name SW1 force back from PC to raspberry pi, but for now i can't do. it have no response. i will show in below
sender5
something wrong
Q1: Set point URL setting correct or not?
Q2: Set point name setting correct or not?PS. apologize for very long post.
-
Hi thirawad,
No worries, thanks for providing so much detail.
The reason it's not working is that the Sender doesn't listen for any kind of set, so it's currently not possible. You can use an HTTP Receiver on both ends, with both having the /httpds setpoint URL, though.
I will mention the idea of having the Sender receive sets, though, as I can understand why one may want the publishing queue with still having some way to go back upstream. In the mean time, you can have another HTTP receiver on your publishing side, then create points to receive your sets. In some ways this is more configurable, since you can then do anything with the received point (point link back to the edge device's point, etc.).
-
Thank you very much for your support reply.
Good idea for settable binary 2-way (PC and raspberry) by set
Raspberry : HTTP sender and receiver by HTTP receiver + Point Link
PC : HTTP receiver
from my experiment in the HTTP receiver getting the data to the data point have only one format http://<ip arress:port>/httpds?param1=value1
yes it is enough. as show below.
0_1510830530331_d2_2.png
i have set point url and set point name and i can set a binary data back from our PC to Raspberry, that having HTTP receiver waiting for data. Let me show you for another experiment.
0_1510830580645_d2_3.png
It mean impossible to get correct binary data with another name except value for now is name. bad idea for use this.
forget the HTTP for 2 way settable (i'm give up)the best solution for 2 way settable data by using Modbus I/P set (Modbus server) on PC (Data source -> Modbus I/P) and (Modbus Client) on Raspberry (Publisher -> Modbus Publisher) but need some modbus protocol skill for setting like a port , slave id etc..
0_1510832063981_d2_4.pngHope this post help, who need to settable binary data by 2 way (mango1 and mango2)
Thank. -
Ah, yeah the format is slightly different it seems. You could have a script that does the mapping from those parameters to the source points. This script could be on context update so it was prompt. I'll take a look on what it would take to offer the publisher's format at the data source's format.
Modbus is definitely able to do it, but one downside is that there is no authorization or whitelisting built into the Modbus publisher, and its traffic would be unencrypted over TCP/IP, so you'd have to secure it as required.
-
Thank you for your advice and checking about publisher's format.
yes, i'm worry about the secure too.
Thank you again Mr. Phildunlap