SipSettingsApi » History » Revision 42
Revision 41 (Adrian Georgescu, 10/04/2009 03:25 PM) → Revision 42/68 (Adrian Georgescu, 10/04/2009 03:34 PM)
= Settings API = 
 
 [[TOC(WikiStart, Sip*, depth=3)]] 
 This API can be used from third party applications that wish to interact with the SIP account settings. Data can be read or modified by calling various functions. 
 == API Address == 
 To access the API, a client must connect using HTTP protocol to the following address:  
 https://enrollment.sipthor.net/settings.phtml 
 To be authorized, the client must use a TLS client certificate, this certificate can be retrieved in the Info tab of the web page for the SIP account settings. 
 The return is encoded using [http://json.org json]. 
 == TLS Certificate == 
 Use the web settings page and navigate to the Info tab. Download the TLS certificate in the format supported by your HTTP client.  
  * !user@domain.crt format can be use by command line tools like curl  
  * !user@domain.p12 format can be imported in web browsers 
 The .p12 file contains the same certificate stored in a way that can be loaded by web browsers like Safari on MacOSX or Firefox.    To unlock the .p12 file you must use the password for your SIP account. 
 == API Functions == 
 You can test the following API commands by using the '''curl''' command line utility as follows: 
 {{{ 
 curl -k -E user@domain.crt https://enrollment.sipthor.net/settings.phtml?action=get_identity 
 }}} 
 The following actions are supported: 
  1. Return identity information: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_identity 
 }}} 
  1. Return the SIP aliases: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_aliases 
 }}} 
  1. Return the ENUM numbers: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_enum 
 }}} 
  1. Return the list of last incoming and outgoing calls: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_calls 
 }}} 
  1. Return the list of registered devices 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_devices 
 }}} 
  1. Return the prepaid balance and active calls: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_prepaid 
 }}} 
  1. Return the history of prepaid balance: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_balance_history 
 }}} 
  1. Return the curent monthly usage: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_monthly_usage 
 }}} 
  1. Return the call forwarding settings: list of diversions: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_call_forwarding 
 }}} 
  1. Return the list of accept rules: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_accept_rules 
 }}} 
  1. Return the list of reject rules: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_reject_rules 
 }}} 
  1. Return the voicemail settings: 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=get_voicemail 
 }}} 
  1. Enabled Do Not Disturb 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_dnd_on 
 }}} 
  1. Disable Do Not Disturb 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_dnd_off 
 }}} 
  1. Enable Do Not Disturb for 60 minutes 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_dnd_on&duration=60 
 }}} 
  1. Enabled privacy (hide Caller Id for outgoing calls) 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_privacy_on 
 }}} 
  1. Disable privacy 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_privacy_off 
 }}} 
  1. Add an alias to our own account  
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=add_alias&username=alice 
 }}} 
  1. Set call forwarding diversions 
 {{{ 
 https://enrollment.sipthor.net/settings.phtml?action=set_call_forwarding&FUNC=target&FBUS=target&... 
 }}} 
 {{{ 
 FUNC = Forward unconditional all calls 
 FBUS = Forward on Busy 
 FNOL = Forward on Not Online 
 FNOA = Forward on No Answer 
 FUNV = Forward when Not Available based on Accept rules 
 Pre-defined keywords for diversion targets: 
 <voice-mailbox> 
 <mobile-number> 
 }}}