From 52405e6b56218f49063db878c3283d349dd02c7c Mon Sep 17 00:00:00 2001 From: Vlad Paiu Date: Mon, 4 Nov 2013 20:34:09 +0200 Subject: [PATCH] Added mi_json module README --- modules/mi_json/README | 125 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 125 insertions(+) create mode 100644 modules/mi_json/README diff --git a/modules/mi_json/README b/modules/mi_json/README new file mode 100644 index 00000000000..2618687f416 --- /dev/null +++ b/modules/mi_json/README @@ -0,0 +1,125 @@ +mi_json Module + +StA(c)phane Alnet + + + +Edited by + +StA(c)phane Alnet + + Copyright (c) 2013 shimaore.net + Revision History + Revision $Rev$ $Date$ + __________________________________________________________ + + Table of Contents + + 1. Admin Guide + + 1.1. Overview + 1.2. Dependencies + + 1.2.1. External Libraries or Applications + 1.2.2. OpenSIPS Modules + + 1.3. Exported Parameters + + 1.3.1. mi_json_root(string) + + 1.4. Exported Functions + 1.5. Known issues + 1.6. Examples + + List of Examples + + 1.1. Set mi_json_root parameter + 1.2. JSON request + 1.3. JSON request + +Chapter 1. Admin Guide + +1.1. Overview + + This module implements a JSON server that handles GET requests + and generates JSON responses. + +1.2. Dependencies + +1.2.1. External Libraries or Applications + + None + +1.2.2. OpenSIPS Modules + + The following modules must be loaded before this module: + * httpd module. + +1.3. Exported Parameters + +1.3.1. mi_json_root(string) + + Specifies the root path for JSON requests: + http://[opensips_IP]:[opensips_httpd_port]/[mi_json_root] + + The default value is "json". + + Example 1.1. Set mi_json_root parameter +... +modparam("mi_xmlrpc_ng", "mi_json_root", "opensips_mi_json") +... + +1.4. Exported Functions + + No function exported to be used from configuration file. + +1.5. Known issues + + Commands with large responses (like ul_dump) will fail if the + configured size of the httpd buffer is to small (or if there + isn't enough pkg memory configured). + + Future realeases of the httpd and mi_json modules will address + this issue. + +1.6. Examples + + This is an example showing the JSON format for the + "get_statistics net: uri:" MI command. Notice how the + paramaters are comma-separated then URI-encoded. + + Example 1.2. JSON request + +GET /json/get_statistics?params==net%3A%2Curi%3A HTTP/1.1 +Accept: application/json +Host: example.net + +HTTP/1.1 200 OK +Content-Length: 49 +Content-Type: application/json +Date: Fri, 01 Nov 2013 12:00:00 GMT + +["net:waiting_udp = 0", "net:waiting_tcp = 0", "uri:positive checks = 0" +, "uri:negative_checks = 0"] + + + Here is another example showing the JSON format for the "ps" MI + command. + + Example 1.3. JSON request + +GET /json/ps HTTP/1.1 +Accept: application/json +Host: example.net + +HTTP/1.1 200 OK +Content-Length: 428 +Content-Type: application/json +Date: Fri, 01 Nov 2013 12:00:00 GMT + +[{"name":"Process", "value":null, "attributes":{"ID": "0", "PID": "7400" +, "Type": "stand-alone SIP receiver udp:127.0.0.1:5060"}}, {"name":"Proc +ess", "value":null, "attributes":{"ID": "1", "PID": "7402", "Type": "HTT +PD INADDR_ANY:8888"}}, {"name":"Process", "value":null, "attributes":{"I +D": "2", "PID": "7403", "Type": "time_keeper"}}, {"name":"Process", "val +ue":null, "attributes":{"ID": "3", "PID": "7404", "Type": "timer"}}]