Skip to content

Commit

Permalink
Added mi_json module README
Browse files Browse the repository at this point in the history
  • Loading branch information
vladpaiu committed Nov 4, 2013
1 parent afa15e3 commit 52405e6
Showing 1 changed file with 125 additions and 0 deletions.
125 changes: 125 additions & 0 deletions modules/mi_json/README
@@ -0,0 +1,125 @@
mi_json Module

StA(c)phane Alnet

<stephane@shimaore.net>

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"}}]

0 comments on commit 52405e6

Please sign in to comment.