M4 user calls get

From Kolmisoft Wiki
(Redirected from M2 user calls get)
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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