Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:protocole_json [2014/05/20 08:44]
admin [Wget Example]
en:protocole_json [2021/09/16 21:39] (current)
mifrey [In url with HTTP GET]
Line 11: Line 11:
 ===== Testing ===== ===== Testing =====
  
 +==== Wget ====
 It is possible to test the API using command line tools like [[http://en.wikipedia.org/wiki/Wget|Wget]] or [[http://en.wikipedia.org/wiki/CURL|cURL]] It is possible to test the API using command line tools like [[http://en.wikipedia.org/wiki/Wget|Wget]] or [[http://en.wikipedia.org/wiki/CURL|cURL]]
- 
-==== Wget Example ==== 
  
 Data in JSON format are placed in the file //query.json//. The resulting file will then be //result.json//. Data in JSON format are placed in the file //query.json//. The resulting file will then be //result.json//.
  
-  wget --no-check-certificate --post-file query.json --output-document result.json https://ip_address/api.php+  wget --no-check-certificate --post-file query.json --output-document result.json https://calaos_server_ip/api.php 
 +   
 +==== In url with HTTP GET ==== 
 + 
 +The requests must be made with HTTP POST with Calaos v2.  Calaos v3 also supports HTTP GET and it is therefore possible to send a request directly in the url. 
 + 
 +Examples: 
 +  * Get the config: https://calaos_server_ip/api?cn_user=XXX&cn_pass=XXX&action=get_home 
 +  * Get a picture from a camera: https://calaos_server_ip/api?cn_user=XXX&cn_pass=XXX&action=camera&type=get_picture&id=input_57_output_32 
 +  * Set an output: https://calaos_server_ip/api?cn_user=XXX&cn_pass=XXX&action=set_state&id=output_7&value=true 
 +  * Set an intern variable: https://calaos_server_ip/api?cn_user=XXX&cn_pass=XXX&action=set_state&id=intern_4&value=true 
 +  * Read a variable : https://calaos_server_ip/api?cn_user=XXX&cn_pass=XXX&action=get_state&items=output_21,output_25 
 + 
 +That allows an external system that only supports HTTP GET to easily communicate to Calaos. 
 + 
 +==== HTML Page ==== 
 + 
 +Calaos v3 includes a debug web page to test the POST and Websocket requests.  It allows to easily verify the format of the JSON data to send. 
 + 
 +We need first to activate the debug mode with following command: 
 +<code> 
 +calaos_config set debug_enabled true 
 +</code> 
 +or directly add it in the file ///etc/calaos/local_config.xml//
 + 
 +The page is then accessible from https://calaos_server_ip/debug or http://calaos_server_ip:5454/debug . 
 + 
 +{{ :fr:api_debug_html.png?nolink&600 |}} 
 + 
 +==== Use the API with other languages ====
  
 +  * [[json_python2|Python 2]]
 +  * [[json_python3|Python 3]]
  
 ===== API Calaos Network ===== ===== API Calaos Network =====