Send WAP OTA settings screen

Send WAP OTA settings screen SearchSearch
Author Message
Anonymous
Posted on Tuesday, July 15, 2003 - 06:52 pm:   

I am able to send what I want via NowSMS WAP OTA screen filling in parameters. However when trying to send the same settings via XML file (saving it in OTA directory), not all the parameters from that file seem to arrive to the phone. For example any attempt to use
<parm> in OTA file fail but when I use WAP Gateway IP field, it works. Also some of the configuration files with GPRS settings dont arrive at all whereas if I use the same set of settings through WAP OTA Settings screen they arrive ok. Is there any lookup help on associations between OTA XML file params and OTA settings screen?
Anonymous
Posted on Tuesday, July 15, 2003 - 06:54 pm:   

above i was referring to param proxy.

<PARM NAME="PROXY" VALUE="1.2.3.4"/>
Bryce Norwood - NowSMS Support
Posted on Tuesday, July 15, 2003 - 07:22 pm:   

The OTA form on the web page actually generates an XML file for the settings ... and a parser converts that XML settings file into WBXML, just as it would with a manually created XML settings file.

Unfortunately, that XML file is created as a temporary file and is automatically deleted, so you never see it.

I can tell you that the PARM NAME="PROXY" setting needs to be inside of a CHARACTERISTIC TYPE="ADDRESS" element. My guess is that you're probably setting PARMs outside of the CHARACTERISTIC type that they belong to.

The basic hierarchy of the document looks like this, so make sure you have PARM elements inside the appopriate CHARACTERISTIC TYPE:

(Note: I'm showing many settings that you will not use, just to illustrate where they would appear in the document.)

<CHARACTERISTIC-LIST>
<CHARACTERISTIC TYPE="ADDRESS">
<PARM NAME="BEARER" VALUE="..."/>
<PARM NAME="PROXY" VALUE="..."/>
<PARM NAME="PORT" VALUE="..."/>
<PARM NAME="PPP_LOGINTYPE" VALUE="..."/>
<PARM NAME="PROXY_TYPE" VALUE="..."/>
<PARM NAME="PROXY_AUTHNAME" VALUE="..."/>
<PARM NAME="PROXY_AUTHSECRET" VALUE="..."/>
<PARM NAME="PROXY_LOGINTYPE" VALUE="..."/>
<PARM NAME="CSD_DIALSTRING" VALUE="..."/>
<PARM NAME="CSD_CALLTYPE" VALUE="..."/>
<PARM NAME="CSD_CALLSPEED" VALUE="..."/>
<PARM NAME="SMS_SMSC_ADDRESS" VALUE="..."/>
<PARM NAME="USSD_SERVICE_CODE" VALUE="..."/>
<PARM NAME="GPRS_ACCESSPOINTNAME" VALUE="..."/>
<PARM NAME="PPP_AUTHTYPE" VALUE="..."/>
<PARM NAME="PPP_AUTHNAME" VALUE="..."/>
<PARM NAME="PPP_AUTHSECRET" VALUE="..."/>
<PARM NAME="ISP_NAME" VALUE="..."/>
</CHARACTERISTIC> (TYPE="ADDRESS")
<CHARACTERISTIC TYPE="URL" VALUE="..."/>
<CHARACTERISTIC TYPE="MMSURL" VALUE="..."/>
<CHARACTERISTIC TYPE="NAME">
<PARM NAME="NAME" VALUE="..."/>
</CHARACTERISTIC> (TYPE="NAME")
<CHARACTERISTIC TYPE="BOOKMARK">
<PARM NAME="NAME" VALUE="..."/>
<PARM NAME="URL" VALUE="..."/>
</CHARACTERISTIC> (TYPE="BOOKMARK")
<CHARACTERISTIC TYPE="ID">
<PARM NAME="NAME" VALUE="..."/>
</CHARACTERISTIC> (TYPE="ID")
</CHARACTERISTIC-LIST>

The web interface does a few tricks, like if OTA_ISP_NAME is not set it copies OTA_NAME for that value. Also if OTA_URL is set, it automatically creates the bookmark settings as some phones will not accept the home page in the CHARACTERISTIC TYPE="URL" setting.

-bn
Bryce Norwood - NowSMS Support
Posted on Tuesday, July 15, 2003 - 07:23 pm:   

Oh ... and to answer your question more directly ... here is a link that explains how our "OTA_" parameters are mapped to the XML document:

WAP Configuration OTA Messages
Anonymous
Posted on Tuesday, July 15, 2003 - 11:09 pm:   

well i have been battling with this file. it looks ok to me. it never arrives to the phone while if i provide the same params through NowSMS interface they work. This is mms service config.

<?xml version="1.0" encoding="UTF-8"?>
<CHARACTERISTIC-LIST>
<CHARACTERISTIC TYPE="ADDRESS">
<PARM NAME="BEARER" VALUE="GPRS"/>
<PARM NAME="PROXY" VALUE="1.2.3.4"/>
<PARM NAME="PORT" VALUE="9201”/>
<PARM NAME="GPRS_ACCESSPOINTNAME" VALUE="server.com"/>
<PARM NAME="PPP_AUTHTYPE" VALUE="PAP"/>
</CHARACTERISTIC>

<CHARACTERISTIC TYPE="MMSURL" VALUE="http://ser.com/url"/>
<CHARACTERISTIC TYPE="NAME">
<PARM NAME="NAME" VALUE="My settings"/>
</CHARACTERISTIC>
</CHARACTERISTIC-LIST>


It is also my understanding that I can send params by executing URL with params such as OTA_BEARER, OTA_PPP_AUTHTYPE etc. i just cant figure out how to form the URL to pass those params. that should be something like
http://server:8800/?PhoneNumber=123& ???

I want to see if I have better luck this way.

Also is there any way to see binary XML created by the application when I send through OTA Configuration screen of NowSMS?
Kent Williams
Posted on Wednesday, July 16, 2003 - 06:06 am:   

Hi,

At a glance your settings look fine. Either Bryce or I will take try the above settings example later today to see if we notice any problems with it.

Unfortunately, I'm not aware of any way to trap the XML document that the web form causes the gateway to automatically create. I've had access to some debug versions over the past few months which didn't automatically delete the files, but every version that we have let out to the public has deleted the automatically generated XML file.

I can give you a tip however ... on how to determine exactly what settings the web form is generating in the URL request.

Bring up the web interface ... and right click on "Send WAP OTA Settings" ... and select "Open in New Window". Enter your settings, and submit them. As you are no longer in a frames interface, you should see the actual URL generated in the "Address" line in your browser.

We'll take a look at the simple document that you posted here a little later ... but I thought this tip about trapping the URL outside of the frame might be useful information for you in the interim.

--
Kent Williams
Now Wireless Support
Bryce Norwood - NowSMS Support
Posted on Wednesday, July 16, 2003 - 02:25 pm:   

Hi,

I cut-and-pasted the OTA data above into a ".ota" file in the OTA subdirectory of my NowSMS server.

When I sent the message /?PhoneNumber=xxxx&OTA=filename ... I noticed in the SMSDEBUG.LOG that the following statement occurred:

OTACompile: Closing incomplete tag -- CHARACTERISTIC (did not expect CHARACTERISTIC-LIST)

Normally that error only occurs if you open a tag, and do not properly close it.

So I took a closer look at the data, and it appears that the problem is that the closing quote on one of the attribute values is not valid.

This ...

<PARM NAME="PORT" VALUE="9201”/>

... should be ...

<PARM NAME="PORT" VALUE="9201"/>

Fix that and it should sort the problem.

-bn