SipSettingsApi » History » Revision 34
Revision 33 (Adrian Georgescu, 09/28/2009 03:46 PM) → Revision 34/68 (Adrian Georgescu, 09/28/2009 10:22 PM)
= SIP Settings API =
[[TOC(WikiStart, Sip*, depth=3)]]
== 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 calls ==
You can test all 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_account
}}}
The following actions are supported:
1. Create a new SIP account
{{{
https://enrollment.sipthor.net/enrollment.phtml?email=user@example.com&password=xyz
}}}
1. Return the account information:
{{{
https://enrollment.sipthor.net/settings.phtml?action=get_account
}}}
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 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 prepaid 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 list of diversions:
{{{
https://enrollment.sipthor.net/settings.phtml?action=get_diversions
}}}
1. Return the list of accept rules:
{{{
https://enrollment.sipthor.net/settings.phtml?action=get_accept
}}}
1. Return the list of reject rules:
{{{
https://enrollment.sipthor.net/settings.phtml?action=get_reject
}}}
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 diversions
{{{
https://enrollment.sipthor.net/settings.phtml?action=set_diversions&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>
}}}