In order to configure/control PRODUCT, please use URL: http://ip-of-server-where-PRODUCT-is-installed/api.php
Request: query_stats
Retrieve node statistics for the equipment. It is mandatory to provide the desired node type.
Requests
{ "request": "query_stats", "node": "hss" }
Responses
{ "code": 0, "stats": { "engine": { "version": "6.1.1", "revision": 2187, "nodename": "mobile-devel5", "runid": 1575883910, "plugins": 6, "inuse": 0, "handlers": 115, "hooks": 4, "messages": 0, "maxqueue": 3, "messageage": 190, "messagerate": 1, "maxmsgrate": 256, "enqueued": 629495, "dequeued": 629495, "dispatched": 655245, "supervised": true, "runattempt": 1, "lastsignal": 0, "threads": 16, "workers": 1, "mutexes": 65, "semaphores": 14, "acceptcalls": "accept", "congestion": 0, "node_version": "unknown" }, "uptime": { "wall": 605662, "user": 7882, "kernel": 55996 }, "hss_cli": { "sims": 940, "subscribers": 832, "cs_total": 755, "cs_active": 0, "ps_total": 756, "ps_active": 0, "ims_total": 89, "ims_active": 0, "operational": "(standalone)" }, "auc_map": { "auth2g": 0, "auth3g": 0, "auth4g": 0, "resyncs": 0, "unknowns": 0, "illegals": 0, "inactives": 0, "reports": 0 }, "hss_gtt": { "local": 0, "imsi": 0, "msisdn": 0, "stp": 0, "back": 0, "fail": 0 }, "auc_diam": { "auth2g": 0, "auth3g": 0, "auth4g": 0, "resyncs": 0, "unknowns": 0, "illegals": 0, "inactives": 0 }, "hss_cluster": { "nodename": "mobile-devel5", "remote": 0, "state": "standalone" }, "mysqldb": { "conns": 1, "failed": 0 } } }
Errors
{ "code": 200, "message": "Internal retrieval error." }
Examples: query_stats
Get hss node status.
Request
{ "request": "query_stats", "node": "hss" }
Response
{ "code": 0, "stats": { "engine": { "version": "6.1.1", "revision": 2187, "nodename": "mobile-devel5", "runid": 1575883910, "plugins": 6, "inuse": 0, "handlers": 115, "hooks": 4, "messages": 0, "maxqueue": 3, "messageage": 21, "messagerate": 1, "maxmsgrate": 256, "enqueued": 183022, "dequeued": 183022, "dispatched": 191536, "supervised": true, "runattempt": 1, "lastsignal": 0, "threads": 16, "workers": 1, "mutexes": 65, "semaphores": 14, "acceptcalls": "accept", "congestion": 0, "node_version": "unknown" }, "uptime": { "wall": 175920, "user": 2256, "kernel": 15907 }, "hss_cli": { "sims": 940, "subscribers": 832, "cs_total": 755, "cs_active": 0, "ps_total": 756, "ps_active": 0, "ims_total": 88, "ims_active": 0, "operational": "(standalone)" }, "auc_map": { "auth2g": 0, "auth3g": 0, "auth4g": 0, "resyncs": 0, "unknowns": 0, "illegals": 0, "inactives": 0, "reports": 0 }, "hss_gtt": { "local": 0, "imsi": 0, "msisdn": 0, "stp": 0, "back": 0, "fail": 0 }, "auc_diam": { "auth2g": 0, "auth3g": 0, "auth4g": 0, "resyncs": 0, "unknowns": 0, "illegals": 0, "inactives": 0 }, "hss_cluster": { "nodename": "mobile-devel5", "remote": 0, "state": "standalone" }, "mysqldb": { "conns": 1, "failed": 0 } } }
Request: query_cs_reg
Retrieve current Circuit Switched registration status for a subscriber. The subscriber can be identified by 'subscriber_id', 'msisdn' (assigned or set in its SIM's multi imsi) or 'imsi' (primary, alternative or multi imsi). Optionally the VLR can be queried (via ProvideSubscriberInfo) for more details.
Requests
This request has multiple formats in which it can be sent:
{ "request": "query_cs_reg", "params": { "subscriber_id": "String. Identify registration by subscriber id", "query": "Boolean. Optional." } }
{ "request": "query_cs_reg", "params": { "msisdn": "String. Identify registration by MSISDN", "query": "Boolean. Optional." } }
{ "request": "query_cs_reg", "params": { "imsi": "String. Identify registration by IMSI", "query": "Boolean. Optional." } }
Responses
{ "code": 0, "cs_reg": { "subscriber_id": "Subscriber ID", "msisdn": "Phone number associated to this subsciber", "registration": { "imsi": "IMSI used on last registration", "msisdn": "MSISDN used when last registered", "imeisv": "Ex: 3594670766703801", "visited_net": "Ex: 8820016", "area": "Ex: 0016803e8", "protocol": "Ex: MAP", "roaming": "Ex: true", "vlr": "Ex: 8820016", "msc": "Ex: 8820016" } } }
Errors
{ "code": 402, "message": "Missing all parameters. / Missing all of 'subscriber_id', 'msisdn' and 'imsi'." }
{ "code": 502, "message": "Database error." }
{ "code": 404, "message": "No such subscriber." }
Examples: query_cs_reg
User not registered
Registred user
Request
{ "request": "query_cs_reg", "params": { "msisdn": "88270017", "query": true } }
Response
{ "code": 0, "cs_reg": { "subscriber_id": 174, "msisdn": "88270017", "registration": { "imsi": "001010000000007", "msisdn": "88270017", "imeisv": "3594670766703801", "visited_net": "8820016", "area": "0016803e8", "protocol": "MAP", "roaming": true, "vlr": "8820016", "msc": "8820016" } } }
Request: query_ps_reg
Retrieve current Packet Switched registration status for a subscriber. The subscriber can be identified by 'subscriber_id', 'msisdn' (assigned or set in its SIM’s multi imsi) or 'imsi' (primary, alternative or multi imsi). Optionally the SGSN/MME can be queried (via ProvideSubscriberInfo) for more details.
Requests
This request has multiple formats in which it can be sent:
{ "request": "query_ps_reg", "params": { "subscriber_id": "String. Identify registration by subscriber id", "query": "Boolean. Optional." } }
{ "request": "query_ps_reg", "params": { "msisdn": "String. Identify registration by MSISDN", "query": "Boolean. Optional." } }
{ "request": "query_ps_reg", "params": { "imsi": "String. Identify registration by IMSI", "query": "Boolean. Optional." } }
Responses
{ "code": 0, "ps_reg": { "subscriber_id": "Number. Ex: 174", "msisdn": "String. Ex: 88270017", "registration": { "imsi": "String. Ex: IMSI used on last registration", "msisdn": "String. Ex: MSISDN used when last registered", "imeisv": "String. Ex: 3594670766703801", "rat_type": "String. Ex: e-utran", "visited_net": "String. Ex: 8820016", "protocol": "String. Ex: MAP", "roaming": "Bool. EX: true", "sgsn_num": "String. Ex: 8820016", "sgsn_addr": "String. Ex: 192.168.0.2" } } }
Errors
{ "code": 402, "message": "Missing all parameters. / Missing all of 'subscriber_id', 'msisdn' and 'imsi'." }
{ "code": 502, "message": "Database error." }
{ "code": 404, "message": "No such subscriber." }
Examples: query_ps_reg
Subscriber having diameter active
Request
{ "request": "query_ps_reg", "params": { "msisdn": "88270017", "query": true } }
Response
{ "code": 0, "ps_reg": { "subscriber_id": 174, "msisdn": "88270017", "registration": { "imsi": "001010000000007", "msisdn": "88270017", "imeisv": "3594670766703801", "rat_type": "e-utran", "visited_net": "8820016", "protocol": "MAP", "roaming": true, "sgsn_num": "8820016", "sgsn_addr": "192.168.0.2" } } }
Subscriber having diameter active
Request
{ "request": "query_ps_reg", "params": { "msisdn": "88270017", "query": true } }
Response
{ "code": 0, "ps_reg": { "subscriber_id": 174, "msisdn": "88270017", "registration": { "imsi": "001010000000007", "msisdn": "88270017", "imeisv": "3594670766703801", "rat_type": "e-utran", "visited_net": "yatebts.com", "protocol": "DIAMETER", "roaming": true, "diam_host": "ucn.yatebts.com", "diam_realm": "yatebts.com" } } }
Request: query_nontgpp_reg
Retrieve current Non-3GPP registration status for a subscriber. The subscriber can be identified by 'subscriber_id', 'msisdn' (assigned or set in its SIM’s multi imsi) or 'imsi' (primary, alternative or multi imsi).
Requests
This request has multiple formats in which it can be sent:
{ "request": "query_nontgpp_reg", "params": { "subscriber_id": "String. Identify registration by subscriber id" } }
{ "request": "query_nontgpp_reg", "params": { "msisdn": "String. Identify registration by MSISDN" } }
{ "request": "query_nontgpp_reg", "params": { "imsi": "String. Identify registration by IMSI" } }
Responses
{ "code": 0, "nontgpp_reg": { "subscriber_id": "Number. Ex: 314", "msisdn": "String. Ex: 88270055", "registration": { "imsi": "String. Ex: IMSI used on last registration", "msisdn": "String. Ex: MSISDN used when last registered", "rat_type": "String. Ex: wlan", "visited_net": "String. Ex: yatebts.com", "protocol": "String. Ex: DIAMETER", "roaming": "Bool. EX: false", "diam_host": "String. Ex: ucn.yatebts.com", "diam_realm": "String. Ex: yatebts.com" } } }
Errors
{ "code": 402, "message": "Missing all parameters. / Missing all of 'subscriber_id', 'msisdn' and 'imsi'." }
{ "code": 502, "message": "Database error." }
{ "code": 404, "message": "No such subscriber." }
Examples: query_nontgpp_reg
Subscriber registered on WiFi
Request
{ "request": "query_nontgpp_reg", "params": { "imsi": "001019901000025" } }
Response
{ "code": 0, "nontgpp_reg": { "subscriber_id": 314, "msisdn": "88270055", "registration": { "imsi": "001019901000025", "msisdn": "88270055", "rat_type": "wlan", "visited_net": "yatebts.com", "status": "registered", "time_reg": 1586548094, "protocol": "DIAMETER", "roaming": false, "diam_host": "ucn.yatebts.com", "diam_realm": "yatebts.com" } } }
Subscriber deregistered
Request
{ "request": "query_nontgpp_reg", "params": { "msisdn": "88270055" } }
Response
{ "code": 0, "nontgpp_reg": { "subscriber_id": 314, "msisdn": "88270055", "registration": { "imsi": "001019901000025", "msisdn": "88270055", "rat_type": "wlan", "visited_net": "yatebts.com", "reason": "unregistered", "time_purge": 1586548336 } } }
Request: query_ims_reg
Retrieve current IP Multimedia Subsystem registration status for a subscriber. The subscriber can be identified by 'subscriber_id', 'msisdn', 'imsi' (primary or alternative) or 'private_ident' (IMPI).
Requests
This request has multiple formats in which it can be sent:
{ "request": "query_ims_reg", "params": { "subscriber_id": "String. Identify registration by subscriber id", "query": "Boolean. Optional." } }
{ "request": "query_ims_reg", "params": { "msisdn": "String. Identify registration by MSISDN", "query": "Boolean. Optional." } }
{ "request": "query_ims_reg", "params": { "imsi": "String. Identify registration by IMSI", "query": "Boolean. Optional." } }
{ "request": "query_ims_reg", "params": { "private_ident": "String. Identify registration by Private Indent", "query": "Boolean. Optional." } }
Responses
Response has multiple formats depending on the sent request:
{ "code": 0, "ims_reg": { "subscriber_id": "Number. Ex: 7", "msisdn": "String. Ex: 88270022", "registration": { "private_ident": "String. Ex: 001019902000019@ims-test.lan", "public_ident": "String. Ex: sip:+88279019@ims-test.lan", "public_ident_alt": "String. Ex: tel:+88270022", "status": "String. Ex: registered", "reason": "String. Ex: register", "time_reg": "Number. Ex: 1497262940", "protocol": "String. Ex: DIAMETER", "roaming": "Bool. Ex: false", "server_name": "String. Ex: sip:ucn.example.com", "diam_realm": "String. Ex: example.com", "diam_host": "String. Ex: ucn.example.com" } } }
{ "code": 0, "ims_reg": { "subscriber_id": "Number. Ex: 7", "msisdn": "String. Ex: 88270022", "registration": { "private_ident": "String. Ex: 001019902000019@ims-test.lan", "public_ident": "String. Ex: sip:+88279019@ims-test.lan", "public_ident_alt": "String. Ex: tel:+88270022", "status": "String. Ex: registered", "reason": "String. Ex: register", "time_purge": "Number. Ex: 1497262940", "protocol": "String. Ex: DIAMETER", "roaming": "Bool. Ex: false", "server_name": "String. Ex: sip:ucn.example.com", "diam_realm": "String. Ex: example.com", "diam_host": "String. Ex: ucn.example.com" } } }
Errors
{ "code": 402, "message": "Missing all parameters. / Missing all of 'subscriber_id', 'msisdn' and 'imsi'." }
{ "code": 502, "message": "Database error." }
{ "code": 404, "message": "No such subscriber." }
Examples: query_ims_reg
User not registered, S-CSCF name stored (assigned)
Request
{ "request": "query_ims_reg", "params": { "subscriber_id": "1" } }
Response
{ "code": 0, "ims_reg": { "subscriber_id": 7, "msisdn": "88270022", "registration": { "private_ident": "001019902000019@ims-test.lan", "public_ident": "sip:+88279019@ims-test.lan", "public_ident_alt": "tel:+88270022", "status": "unregistered", "reason": "timeout-unregister-store-server", "time_purge": 1497266121, "protocol": "DIAMETER", "roaming": false, "server_name": "sip:ucn.example.com", "diam_realm": "example.com", "diam_host": "ucn.example.com" } } }
User registered
Request
{ "request": "query_ims_reg", "params": { "subscriber_id": "1" } }
Response
{ "code": 0, "ims_reg": { "subscriber_id": 7, "msisdn": "88270022", "registration": { "private_ident": "001019902000019@ims-test.lan", "public_ident": "sip:+88279019@ims-test.lan", "public_ident_alt": "tel:+88270022", "status": "registered", "reason": "register", "time_reg": 1497262940, "protocol": "DIAMETER", "roaming": false, "server_name": "sip:ucn.example.com", "diam_realm": "example.com", "diam_host": "ucn.example.com" } } }
User not registered, no S-CSCF stored
Request
{ "request": "query_ims_reg", "params": { "subscriber_id": "1" } }
Response
{ "code": 0, "ims_reg": { "subscriber_id": 7, "msisdn": "88270022", "registration": { "private_ident": "001019902000019@ims-test.lan", "public_ident": "sip:+88279019@ims-test.lan", "public_ident_alt": "tel:+88270022", "reason": "unregistered", "time_purge": 1497266193 } } }
This documentation was generated on 09 June 2023