REST API. Proxicast Controlling the MSNSwitch
Proxicast Controlling the MSNSwitch is a reliable and versatile device designed to automate power cycling and remote management of AC-powered devices connected to its outlets. With options for manual control, scheduled actions, and integration with various platforms, it offers a range of possibilities for diverse use cases.
Реклама
Реклама
MSNTN01: Controlling the MSNSwitch
6. REST API
Basic functions of the MSNSwitch can be controlled through a series of HTTP Packet Requests.
Control an Outlet
Packet Request:
"GET" <target> "HTTP/1.1"CRLF
"Host:" <host ip>CRLF
"Keep-Alive: 300"CRLF
"Connection: keep-alive"CRLF
"Authorization:Base" <auth>CRLFCRLF ;auth:encoded account(username:password) with base-64
Request Description:
Target: “/cgi-bin/control.cgi?<action>”
Action: target=<0/1/2/3>;
0 means UIS,
1 means outlet 1,
2 means outlet 2,
3 means outlet all control=<0/1/2/3>;
0 means off,
1 means on,
2 means switch (i.e. from On
→ Off, or from Off → On),
3 means reset (Outlet only)
Packet Response:
XML format:
"<?xml version='1.0'?>"
"<request>"
“<outlet_status>”{OUTLET1_STATUS}”,”{OUTLET2_STATUS}”</outlet_status>”
"<uis_status>”{UIS_STATUS}”</uis_status>”
"</request>"
XML Description:
OUTLET1_STATUS / OUTLET2_STATUS / UIS_STATUS
0 means off
1 means on
The action can also be initiated via a simple HTTP URL using control2.cgi:
URL: http://<IP-of-MSNSwitch>/cgi-bin/control2.cgi?<action>&user=admin&passwd=1234
Page 11
MSNTN01: Controlling the MSNSwitch
Example:
To force outlet #1 to reset: http://<ip-of-MSNSwitch>/cgi-bin/control.cgi?target=1&control=3&user=admin&passwd=1234
XML Result:
<request>
<outlet_status>1,1</outlet_status>
<uis_status>0</uis_status>
</request>
Get the Status of the MSNSwitch
Request:
Target: “/xml/outlet_status.xml”
XML format:
"<?xml version='1.0'?>"
"<request>"
“<site_ip>”{SITE1}”,”{SITE2}”,”{SITE3}”,”{SITE4}”,”{SITE5}”</site_ip>”
“<connect_status>”{C1_S}","{C2_S}","{C3_S}","{C4_T}","{C5_S}”</connect_status>”
“<outlet_status>”{O1_S}","{O2_S}”</outlet_status>”
“<site_lost>”{S1_L}”,”{S2_L}”,”{S3_L}”,”{S4_L}”,”{S5_L}”</site_lost>”
“<uis_fun>”{U_S}”</uis_fun>”
“<g_target1>”{G_T1}”</g_target1>”
“<g_target2>”{G_T2}”</g_target2>”
“</request>”
XML Description:
SITE<n>: (n:number) string: Site <n> IP Address.
C<n>_S: (n:number) digit(unit: millisecond): Site <n> response timing.
O<n>_S: (n:number) digit: 0 means off, 1 means on.
S<n>_L: (n:number) digit: Percent of ping lost. uis_fun: digit: 0 means off, 1 means on.
G_T<n>: (n:number) digit: 0 means None, 3 means All, 1 means Outlet1, 2 means Outlet2
Page 12
MSNTN01: Controlling the MSNSwitch
Example:
To get system status: http://admin:1234@<ip-of-MSNSwitch>/xml/outlet_status.xml
XML Result:
<request>
<site_label>Google,Yahoo,Bing,Ask.com,Router,,</site_label>
<site_ip>
172.217.15.68,98.138.219.232,204.79.197.200,151.101.2.114,192.168.0.1,null,null
</site_ip>
<connect_status>30,46,29,29,5,-1,-1</connect_status>
<site_lost>1,1,0,0,0,0,0</site_lost>
<lost_times>3,3,2,0,0,0,0</lost_times>
<outlet_status>1,1</outlet_status>
<uis_fun>0</uis_fun>
<reset_only>0,0</reset_only>
<assign>3,3,3,3,3,3,3</assign>
</request>
Get Last Heartbeat Time
URL: http://<IP-of-MSNSwitch>/cgi-bin/heartbeat.cgi?user=admin&passwd=1234
Response:
XML format:
"<?xml version='1.0'?>"
"<request>"
“<heartbeat>”YYYY/MM/DD HH:MM”</heartbeat>”
“</request>"
Example: http://<IP-of-MSNSwitch>/cgi-bin/heartbeat.cgi?user=admin&passwd=1234
XML Result:
<request>
<heartbeat>2019/08/01 04:45</heartbeat>
</request>
Page 13
Изтегляне
Реклама