Difference between revisions of "M4 user calls get"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
=Description=
=Description=
Retrieves list of calls in selected time period for specified User/Device.<br><br>
Retrieves a list of calls in the selected time period for specified User/Device.<br><br>


'''Admin''' - can get any user calls
'''Admin''' - can get any user calls
Line 8: Line 8:
=Usage=
=Usage=


* '''M2''' call: '''/api/user_calls_get'''
* '''M4''' call: '''/api/user_calls_get'''
* For Backwards-compatibility old name 'user_calls' is also usable. Call: '''/api/user_calls'''
* For Backwards-compatibility old name 'user_calls' is also usable. Call: '''/api/user_calls'''
* Methods: POST, GET(if allowed, not recomended)
* Methods: POST, GET(if allowed, not recomended)
Line 16: Line 16:
Parameters which are '''included''' into hash:
Parameters which are '''included''' into hash:


* period_start - Unix timestamp of calls period starting date. (Default: Today at 00:00). <!---Nuo MOR 8--->
* period_start - Unix timestamp of calls period starting date. (Default: Today at 00:00).  
* period_end - Unix timestamp of calls period end date. (Default: Today at 23:59). <!---Nuo MOR 8--->
* period_end - Unix timestamp of calls period end date. (Default: Today at 23:59).  
* s_user - User's ID in MOR database. '''Required, if s_reseller is not used'''. <!---Nuo MOR 8. Nuo mor 9 iš user_id tapo s_user--->
* s_user - User's ID in MOR database. '''Required, if s_reseller is not used'''.
* s_call_type - Call type. Possible values [all, answered, no answer, failed, busy]. (Default: all) <!---Nuo MOR 8. Nuo mor 9 s_call_type--->
* s_call_type - Call type. Possible values [all, answered, no answer, failed, busy]. (Default: all)
* s_origination_point - Origination Point ID in MOR database. Possible values [all, numeric value of origination_point_id]. (Default: all). <!---Nuo MOR 8. Nuo mor 9 s_device--->
* s_origination_point - Origination Point ID in MOR database. Possible values [all, numeric value of origination_point_id]. (Default: all).  
* s_termination_point - Termination Point ID in MOR database. Possible values [all, numeric value of termination_point_id]. (Default: all).Only for Admin.  <!---Nuo MOR 9. From mor 10 works with reseller if has own_providers--->
* s_termination_point - Termination Point ID in MOR database. Possible values [all, numeric value of termination_point_id]. (Default: all).Only for Admin.   
* s_hgc - Hangup cause code ID in MOR database. Possible values [all, numeric value of hangup_cause_code_id]. (Default: all). Only for Admin and Reseller if Show HGC for Resellers is ON.  <!---Nuo MOR 9--->
* s_hgc - Hangup cause code ID in MOR database. Possible values [all, numeric value of hangup_cause_code_id]. (Default: all). Only for Admin and Reseller if Show HGC for Resellers is ON.   
* s_destination - prefix.  <!---Nuo MOR 9--->
* s_destination - prefix.   
* order_desc - Possible values [0,1]. (Default: 0).  <!---Nuo MOR 9--->
* order_desc - Possible values [0,1]. (Default: 0).   
* only_did - show calls that only went through did. Possible values [0,1]. (Default: 0).   <!---Nuo MOR 11--->
* only_did - show calls that only went through did. Possible values [0,1]. (Default: 0).


'''Note that parameters are shown in the same order as they have to be when generating the hash. Last parameter in a row is API_Secret_Key'''
'''Note that parameters are shown in the same order as they have to be when generating the hash. The last parameter in a row is API_Secret_Key'''
<br><br>
<br><br>
Parameters which are '''not included''' into hash:
Parameters which are '''not included''' into hash:


* [[MOR API hash construction | hash]] - SHA1 hash constructed using parameters above and API_Secret_Key ([[MOR API hash construction | More described in Constructing hash]]). '''Required''' (if setting '''Disable hash checking''' is not checked).  
* [[MOR API hash construction | hash]] - SHA1 hash constructed using parameters above and API_Secret_Key ([[MOR API hash construction | More described in Constructing hash]]). '''Required''' (if setting '''Disable hash checking''' is not checked).  
* u - username for authentication. '''Required'''. <!---NUO x4 password nereikalaujamas--->
* u - username for authentication. '''Required'''.  
* order_by - Possible values [time, src, dst, prefix, nice_billsec, hgc, server, p_name, p_rate, p_price, r_rate, r_price, user, u_rate, u_price, number, d_provider, d_inc, d_owner]. (Default: time). <!---Nuo MOR 9--->
* order_by - Possible values [time, src, dst, prefix, nice_billsec, hgc, server, p_name, p_rate, p_price, r_rate, r_price, user, u_rate, u_price, number, d_provider, d_inc, d_owner]. (Default: time).  
<br><br><!---Nuo MOR 8 buvo, o nuo MOR 9 nebėra direction---> <!---Iki nuo 11 buvo s_did_pattern, s_reseller_did, vėliau nebeliko--->
<br><br><!---Nuo MOR 8 buvo, o nuo MOR 9 nebėra direction---> <!---Iki nuo 11 buvo s_did_pattern, s_reseller_did, vėliau nebeliko--->


Line 48: Line 48:
===Returns===
===Returns===


'''Success:''' Everything is ok. You get the list of calls if there is any:
'''Success:''' Everything is ok. You get the list of calls if there are any:


  <?xml version="1.0" encoding="UTF-8"?>
  <?xml version="1.0" encoding="UTF-8"?>
Line 93: Line 93:
         <server_id>1</server_id>
         <server_id>1</server_id>
         <src>37046246362</src>
         <src>37046246362</src>
        <terminated_by>terminator</terminated_by>
         <user></user>
         <user></user>
         <user_price>2.0</user_price>
         <user_price>2.0</user_price>
Line 109: Line 110:
* <error>Access Denied</error> – Such username does not exist in the database or it was not specified.
* <error>Access Denied</error> – Such username does not exist in the database or it was not specified.
* <error>Incorrect hash</error> – Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
* <error>Incorrect hash</error> – Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
* <error>User was not found</error> – User was not found using user_id. Use correct user_id.
* <error>User was not found</error> – User was not found using user_id. Use the correct user_id.


Example:
Example:
Line 120: Line 121:
=See also=
=See also=


* [[M2 API]]
* [[M4 API]]

Latest revision as of 12:38, 23 October 2023

Description

Retrieves a list of calls in the selected time period for specified User/Device.

Admin - can get any user calls

User - can get his own calls.

Usage

  • M4 call: /api/user_calls_get
  • For Backwards-compatibility old name 'user_calls' is also usable. Call: /api/user_calls
  • Methods: POST, GET(if allowed, not recomended)



Parameters

Parameters which are included into hash:

  • period_start - Unix timestamp of calls period starting date. (Default: Today at 00:00).
  • period_end - Unix timestamp of calls period end date. (Default: Today at 23:59).
  • s_user - User's ID in MOR database. Required, if s_reseller is not used.
  • s_call_type - Call type. Possible values [all, answered, no answer, failed, busy]. (Default: all)
  • s_origination_point - Origination Point ID in MOR database. Possible values [all, numeric value of origination_point_id]. (Default: all).
  • s_termination_point - Termination Point ID in MOR database. Possible values [all, numeric value of termination_point_id]. (Default: all).Only for Admin.
  • s_hgc - Hangup cause code ID in MOR database. Possible values [all, numeric value of hangup_cause_code_id]. (Default: all). Only for Admin and Reseller if Show HGC for Resellers is ON.
  • s_destination - prefix.
  • order_desc - Possible values [0,1]. (Default: 0).
  • only_did - show calls that only went through did. Possible values [0,1]. (Default: 0).

Note that parameters are shown in the same order as they have to be when generating the hash. The last parameter in a row is API_Secret_Key

Parameters which are not included into hash:

  • hash - SHA1 hash constructed using parameters above and API_Secret_Key ( More described in Constructing hash). Required (if setting Disable hash checking is not checked).
  • u - username for authentication. Required.
  • order_by - Possible values [time, src, dst, prefix, nice_billsec, hgc, server, p_name, p_rate, p_price, r_rate, r_price, user, u_rate, u_price, number, d_provider, d_inc, d_owner]. (Default: time).



Request

If you want find s_call_type=all calls for s_user = 5, through s_device=7 in period from 2011-11-01 23:59:59 till 2011-11-30 23:59:59, and your API Secret Key = 456789

You send:

HTML POST: http://<SERVER_IP>/billing/api/user_calls_get?u=username&s_user=5&period_start=1320191999&period_end=1322697599&s_device=7&s_call_type=all&hash=df2983700ffecb52e6649f0cb3981b66537083a4 

* Note that username is not included in hash

Returns

Success: Everything is ok. You get the list of calls if there are any:

<?xml version="1.0" encoding="UTF-8"?>
<page>
 <pagename>Calls</pagename>
 <language>en</language>
 <error_msg></error_msg>
 <userid>0</userid>
 <username>admin</username>
 <total_calls>1</total_calls>
 <currency>USD</currency>
 <calls_stat>
   <period>
     <period_start>2008-03-07 11:48:18</period_start>
     <period_end>2012-03-07 11:46:01</period_end>
   </period>
   <show_user>all</show_user>
   <show_origination_point>all</show_device>
   <show_status>all</show_status>
   <show_termination_point>4</show_provider>
   <show_hgc>all</show_hgc>
   <show_did>1</show_did>
   <calls>
     <call>
       <calldate2>2009-01-02 00:00:01</calldate2>
       <timezone>GMT+02:00</timezone>
       <clid>37046246362</clid>
       <destination>Lithuania MOB Lithuania mobile</destination>
       <did>37063042438</did>
       <did_inc_price>1.0</did_inc_price>
       <did_price>1.0</did_price>
       <did_prov_price>1.0</did_prov_price>
       <dispod>ANSWERED(16)</dispod>
       <dst>37063042438</dst>
       <nice_billsec>20.0</nice_billsec>
       <nice_reseller> </nice_reseller>
       <prefix>3706</prefix>
       <profit>4</profit>
       <provider_name>Test Provider</provider_name>
       <provider_price>1.0</provider_price>
       <provider_rate>0.0</provider_rate>
       <reseller_price>0.0</reseller_price>
       <reseller_rate>0.0</reseller_rate>
       <server_id>1</server_id>
       <src>37046246362</src>
       <terminated_by>terminator</terminated_by>
       <user></user>
       <user_price>2.0</user_price>
       <user_rate>0.0</user_rate>
       <uniqueid>1232113379.3</uniqueid>
     </call>
   </calls>
 </calls_stat>
</page>

NOTE that calldate is in system(server) Time Zone.

Errors:

  • <error>API Requests are disabled</error> – Allow API globally setting is unchecked.
  • <error>Access Denied</error> – Such username does not exist in the database or it was not specified.
  • <error>Incorrect hash</error> – Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
  • <error>User was not found</error> – User was not found using user_id. Use the correct user_id.

Example:

 <status>
   <error>API Requests are disabled</error>
 </status>



See also