To send an XML Settings Document via a menu driven interface, please see the help section titled Web Menu Interface. This section describes how to send a OMA Provisioning Content message programmatically via HTTP POST.
The “Send XML Settings Document” interface supports the following types of XML settings documents:
Nokia/Ericsson Over The Air Settings (OTA) Specification up to and including v7.1
Browser and MMS settings use the root XML element <CHARACTERISTIC-LIST>
SyncML settings use the root XML element <SyncSettings>
Wireless Village/IMPS settings use the root XML element <WVSettings>
Examples of this format can be generated using the Send WAP OTA Settings web form.
Copies of the specification that documents these settings can be downloaded from either the Nokia or SonyEricsson developer web sites.
OMA (Open Mobile Alliance) Provisioning Content
All settings use the root XML element <wap-provisioningdoc>
Examples of this format can be generated using the Send OMA Settings web form.
The OMA Provisioning Content Specification is available for download from the Open Mobile Alliance web site at http://www.openmobilealliance.org.
OMA (Open Mobile Alliance) DRM Rights Objects
The objects use the root XML element <o-ex:rights>.
The DRMCOMP utility can be used to generate DRM rights objects. For additional information, refer to Digital Rights Management.
The OMA DRM Right Expression Language specification can be downloaded from the Open Mobile Alliance web site at http://www.openmobilealliance.org.
WAP Push Service Indication, Service Load and Cache Operation
The operations use the root XML element <si>, <sl> or <co>.
These formats are defined in the WAP Service Indication (WAP-167), Service Load (WAP-168), and Cache Operation (WAP-175) specifications respectively.
These specifications can all be downloaded from the Open Mobile Alliance web site at http://www.openmobilealliance.org.
OMA (Open Mobile Alliance) E-Mail Notification (EMN)
This format uses the root XML element <emn>.
The OMA E-Mail Notification specification can be downloaded from the Open Mobile Alliance web site at http://www.openmobilealliance.org.
HTTP POST Format
It is possible to send any of the supported XML Settings Documents or Objects by submitting an HTTP POST request to the NowSMS gateway with the content of the POST message being the XML document. This document can either be sent programmatically, or it can be sent via the “Send XML Settings” option in the web menu interface. To submit the document via HTTP POST, it should be submitted to a URL of:
http://127.0.0.1:8800/?PhoneNumber=xxxxxxxx&OTA=POST
When submitting an OTA request in this manner, the HTTP POST request must include a “Content-Length:” header.
To provide a more complete example, to perform this HTTP POST, an application can open an HTTP connection to the port for the NowSMS web interface, and send the following data:
POST /?PhoneNumber=xxxxxxxx&user=username&password=password&OTA=POST HTTP/1.0
Content-Length: yyyyyy
(*blank line*)
<xml settings document>
When sending an XML document in this manner, the HTTP POST request must include a “Content-Length:” header. This should match the length of your XML document. This is how the server detects that the HTTP POST is complete. The “&user=” and “&password=” parameters specify an “SMS Users” account that is allowed to submit messages via NowSMS.
NowSMS will scan the XML content to automatically determine what the content type is, so that it can be encoded properly for sending over the air.
The URL request can also include an OTAPIN parameter specifying the PIN associated with the request, and an OTAPINTYPE parameter specifying the type of PIN associated with the request (USERPIN or NETWPIN).
OTA PIN and OTA PIN Type
An “OTA PIN” can be associated with an OMA Provisioning Content message, in addition to some other settings message types, to provide a layer of authentication to the message. Many devices will allow you to send OTA settings without a PIN, but some will require a PIN to be present before the settings will be accepted.
There are three different types of OTA PINs, depending on the “OTA PIN Type” setting.
- The simplest “OTA PIN Type” is “User PIN” (USERPIN). This setting indicates that a short PIN code (often 4 digits) is supplied as the “OTA PIN”. When the user receives the OTA settings message, they will need to supply this PIN code in order to be able to open the message and apply the settings.
- “Network PIN” (NETWPIN) indicates the PIN is a network PIN code. In the GSM environment, this is the IMSI number associated with the SIM card in the device. (Hint, if you want to experiment with determining the PIN card associated with a SIM, you can put the SIM into a GSM modem and the AT+CIMI command to return the IMSI. However, not all GSM modems support the AT+CIMI command.) When the device receives the settings, if the NETWPIN does not match the IMSI, the settings will be discarded.
- An additional type of PIN, known as “USERNETWPIN” also exists, which indicates a combination of the USERPIN and NETWPIN types. To use this OTA PIN type, select “Network PIN”, and define the OTA PIN as the IMSI number associated with the SIM card in the device, followed by a “:” character, followed by a USERPIN (e.g., 1234567889012345:1234). When the device receives the settings, the user will be prompted for a PIN. This user supplied PIN, and the SIM card IMSI, must match in order for the settings to be accepted.
The URL request can include an OTAPIN parameter specifying the PIN associated with the request, and an OTAPINTYPE parameter specifying the type of PIN associated with the request (USERPIN, NETWPIN or USERNETWPIN). For example:
http://127.0.0.1:8800/?PhoneNumber=xxxxxxxx&OTA=POST&OTAPIN=1234&OTAPINTYPE=USERPIN