Windows Mobile 6.0 based devices

Windows Mobile 6.0 based devices SearchSearch
Author Message
Andrea Marcolini
New member
Username: Andreamarcolini

Post Number: 1
Registered: 09-2008
Posted on Thursday, September 11, 2008 - 05:39 pm:   

Dear all, is it possible to get a lineguide step by step in order to send XML settings to a Windows Mobile 6.0 based smartphone with NowSMS software?

Thanks in advance.
Andrea
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 95
Registered: 08-2008
Posted on Thursday, September 11, 2008 - 09:22 pm:   

Sorry Andrea,

I don't have that information.

Windows Mobile devices are a pain for OTA because of the security settings that are implemented in the device.

If you have an unlocked device, the device OEM has decided on default security settings for OTA and WAP push messages.

If you have a device that was branded for a mobile operator, the mobile operator has decided on default security settings for OTA and WAP push messages.

Microsoft has a lot of information about this on MSDN. But I'll give you a few pointers. I'm paraphrasing based upon memory, so you'll find different terminology in the MS documentation, but you should be able to translate.

Different security settings can exist on the device for determining whether or not the device is allowed to accept any OTA settings.

Generally speaking, you're not going to be able to receive any OTA settings without specifying a PIN to sign the OTA. (There is 1 way, if your OTA server has been pre-authorised to send OTA, which I'll talk about shortly.)

There are 3 types of OTA PIN (actually 4, but NowSMS only supports 3 ... and I don't think the other type is relevant to this dicussion anyway).

The first type is USERPIN ... this is where you include a simple PIN code. When the recipient tries to open the settings, they are prompted for this PIN, and they must supply this PIN in order to validate the settings. (Obviously, this makes it difficult to send settings without the user having some involvment in the process.) Based on my experience, I would NOT expect the default security settings in the device to allow USERPIN.

The next type is NETWPIN (network pin). In this case, the IMSI number of the SIM card (this is NOT the phone number) is the PIN. You send the settings and sign them with the IMSI as the network PIN. In this case, the user does not need to supply any PIN to open the settings message. Based on my experience, I would NOT expect the default security settings in the device to allow NETWPIN.

The next type is USERNETWPIN (combination of user and network PIN). In this case, the OTA message is signed with a combination of the IMSI number and a user PIN. The device rejects the message if the IMSI is incorrect. If the IMSI is correct, the user must supply the user PIN part in order to open the message.

NowSMS supports USERNETWPIN encoding, but in the web interface (or your HTTP submission), you must specify "NETWPIN" as the PIN type, and then the format of the PIN should be IMSI:USERPIN, where IMSI is the actual IMSI, and USERPIN is the USERPIN value. (If NowSMS gets a NETWPIN request, and it sees a ":" in the PIN value, it automatically formats it as USERNETWPIN.)

Based on my experience, the default security settings on many Windows Mobile devices allow USERNETWPIN. However, as you will have most likely ascertained, this is very awkward for most applications.

The final type is a "trusted push proxy". In this case, the sender address (short code or phone number) associated with the push proxy (in this case NowSMS) must be defined in Windows Mobile as a "trusted push proxy". In this case, OTA messages can be sent without any PIN signing, because the phone considers all messages received from the push proxy to be trusted.

Obviously, this requires some pre-provisioning on the device ... and I do not know how to do this. It is just something that based upon the documentation, should be possible.

In the end, we don't do too much with OTA provisioning for Windows Mobile because of the fact that sending the messages is too awkward for most intended applications.

To be honest, I think it is only practical for a mobile operator who can have their devices pre-provisioned with a trusted push proxy address that they can use for future provisioning requirements. Without that, the business of USERNETWPIN signing is too awkward to be practical for most applications.

I did a quick search, and I did find some other interesting information in the following thread:

http://support.nowsms.com/discus/messages/132/16969.html

That thread mentions setting the X-Wap-Initiator-Uri and Push-Flag headers. These headers can be set with NowSMS, but they are not frequently used.

To set default values for these headers, it is possible to edit SMSGW.INI, and under the [SMSGW header, add settings for:

WAPPushInitiatorURI=someURI
WAPPushFlag=1

"&WAPPushInitiatorURI=someURI&WAPPushFlag=1" can also be included in a URL request string to specify these values in a submission.

If you find anything out that seems interesting, we would be interested in exploring this further.


--
Des
NowSMS Support
Andrea Marcolini
New member
Username: Andreamarcolini

Post Number: 2
Registered: 09-2008
Posted on Thursday, September 11, 2008 - 11:12 pm:   

Dear Des,

I am lcky, since I am in direct contact with the OEM.
I'll try to ask for setting the USERPIN security on the device I am testing.
Anyway i think it should be possible also with some registry modifications, but the problem is to find out which ones need to be modified and which values are needed.

Anyway I think your post will be useful.
Thank you very much.

Andrea
Andrea Marcolini
New member
Username: Andreamarcolini

Post Number: 3
Registered: 09-2008
Posted on Friday, September 12, 2008 - 11:53 am:   

t.y.k.
The trick is this:

[HKLM\Security\Plolicies\Policies\1033] value: 1
[HKLM\Security\Plolicies\Policies\1017] value: 148
[HKLM\Security\Plolicies\Policies\102f] value: 7296

then use USERNETWPIN and it works.
Andrea Marcolini
New member
Username: Andreamarcolini

Post Number: 4
Registered: 09-2008
Posted on Friday, September 19, 2008 - 03:52 pm:   

To use USERPIN only the folowing setting is needed:

[HKLM\Security\Plolicies\Policies\102e] value: 7296
Stefano Serra
New member
Username: Digitaleit

Post Number: 1
Registered: 09-2008
Posted on Monday, September 29, 2008 - 09:19 am:   

Hi,
I'm trying to send the MMS configuration but the phone (HTC Diamond) after inserted the pin (OTA user pin) doesn't install the MMS configuration.

Consider that I can install correctly the email settings, wap...

Here the xml:
<wap-provisioningdoc>
<nocharacteristic type="CM_Networks" />
<nocharacteristic type="CM_GPRSEntries" />
<nocharacteristic type="CM_ProxyEntries" />
<characteristic type="CM_Networks">
<characteristic type="Wind MMS ">
<parm name="DestId" value="{F750E26F-81D9-4379-8567-318C129CA736}" />
</characteristic>
<characteristic type="Wind Internet">
<parm name="DestId" value="{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}" />
</characteristic><characteristic type="My Work Network">
<parm name="DestId" value="{18AD9FBD-F716-ACB6-FD8A-1965DB95B814}" />
</characteristic>
<characteristic type="Work">
<parm name="DestId" value="{A1182988-0D73-439E-87AD-2A5B369F808B}" />
</characteristic>
<characteristic type="Secure WAP Network">
<parm name="DestId" value="{F28D1F74-72BE-4394-A4A7-4E296219390C}" />
</characteristic>
<characteristic type="The WAP Network">
<parm name="DestId" value="{7022E968-5A97-4051-BC1C-C578E2FBA5D9}" />
</characteristic>
<characteristic type="The Internet">
<parm name="DestId" value="{436EF144-B4FB-4863-A041-8F905A62C572}" />
</characteristic>
</characteristic>

<characteristic type="CM_GPRSEntries">

<characteristic type="Wind MMS ">
<parm name="DestId" value="{F750E26F-81D9-4379-8567-318C129CA736}" />
<parm name="Enabled" value="1" />
<parm name="UserName" value="" />
<parm name="Password" value="" />
<parm name="Domain" value="" />
<characteristic type="DevSpecificCellular">
<parm name="BearerInfoValid" value="1" />
<parm name="GPRSInfoValid" value="1" />
<parm name="GPRSInfoProtocolType" value="2" />
<parm name="GPRSInfoL2ProtocolType" value="PPP" />
<parm name="GPRSInfoAccessPointName" value="mms.wind" />
<parm name="GPRSInfoDataCompression" value="1" />
<parm name="GPRSInfoHeaderCompression" value="1" />
</characteristic>
</characteristic>

<characteristic type="Wind Internet">
<parm name="DestId" value="{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}" />
<parm name="Enabled" value="1" />
<parm name="UserName" value="" />
<parm name="Password" value="" />
<parm name="Domain" value="" />

<characteristic type="DevSpecificCellular">
<parm name="BearerInfoValid" value="1" />
<parm name="GPRSInfoValid" value="1" />
<parm name="GPRSInfoProtocolType" value="2" />
<parm name="GPRSInfoL2ProtocolType" value="PPP" />
<parm name="GPRSInfoAccessPointName" value="internet.wind" />
<parm name="GPRSInfoDataCompression" value="1" />
<parm name="GPRSInfoHeaderCompression" value="1" />
</characteristic>
</characteristic>
</characteristic>
<characteristic type="CM_ProxyEntries">
<characteristic type="NULL-HTTP-{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}">
<parm name="SrcId" value="{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}" />
<parm name="DestId" value="{436EF144-B4FB-4863-A041-8F905A62C572}" />
<parm name="Proxy" value="" />
<parm name="Type" value="0" />
<parm name="Enable" value="1" />
</characteristic>
<characteristic type="null-corp-{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}">
<parm name="SrcId" value="{FF445A54-ADF8-4fab-86B7-E31482BEE8BE}" />
<parm name="DestId" value="{A1182988-0D73-439E-87AD-2A5B369F808B}" />
<parm name="Type" value="0" />
<parm name="Enable" value="1" />
</characteristic>
</characteristic>
<characteristic type="CM_Planner">
<nocharacteristic type="PreferredConnections" />
<characteristic type="PreferredConnections">
<parm name="{436EF144-B4FB-4863-A041-8F905A62C572}" value="Wind Internet" />
</characteristic>
</characteristic>
<characteristic type="Registry">
<characteristic type="HKLM\SOFTWARE\ArcSoft\ArcSoft MMS UA\Config\UI">
<parm name="ConnectviaMatchById" value="1" datatype="integer" />
</characteristic>

<characteristic type="HKLM\Software\ArcSoft\ArcSoft MMS UA\Config\mm1">
<parm name="TotalSettings" value="1" datatype="integer" />
<parm name="SendDelayedNotifyResp" value="0" datatype="integer" />
<parm name="DefaultSetting" value="Wind MMS " datatype="string" />
<parm name="ReportAllowed" value="1" datatype="integer" />
</characteristic>

<nocharacteristic type="HKLM\SOFTWARE\ArcSoft\ArcSoft MMS UA\Config\mm1\MMSCSetting" />
<characteristic type="HKLM\SOFTWARE\ArcSoft\ArcSoft MMS UA\Config\mm1\MMSCSetting\Wind MMS ">
<parm name="WAP1DefaultSize" value="102400" datatype="integer" />
<parm name="WAP2DefaultSize" value="307200" datatype="integer" />
<parm name="WAP1SendDefaultSize" value="307200" datatype="integer" />
<parm name="WAP2SendDefaultSize" value="307200" datatype="integer" />
<parm name="ConnectionVia" value="{F750E26F-81D9-4379-8567-318C129CA736}" datatype="string" />
<parm name="Name" value="Wind MMS " datatype="string" />
<parm name="Gateway" value="212.245.244.1" datatype="string" />
<parm name="MmscURI" value="http://mms.wind.it" datatype="string" />
<parm name="GatewayPort" value="8080" datatype="integer" />
<parm name="SendDefault" value="307200" datatype="integer" />
<parm name="RecvDefault" value="512000" datatype="integer" />
<parm name="WAPType" value="1" datatype="integer" />
</characteristic>
<characteristic type="HKLM\Software\ArcSoft\ArcSoft MMS UA\Config\UI\SizeLimit">
<parm name="SendCount" value="3" datatype="integer" />
<parm name="SendLimit1" value="30720" datatype="integer" />
<parm name="SendLimit2" value="102400" datatype="integer" />
<parm name="SendLimit3" value="307200" datatype="integer" />
</characteristic>
</characteristic>
</wap-provisioningdoc>

--------
Please help!!!
Des - NowSMS Support
Board Administrator
Username: Desosms

Post Number: 129
Registered: 08-2008
Posted on Tuesday, October 07, 2008 - 06:27 pm:   

Hi,

I wish I could help. But I don't understand the Windows Mobile provisioning architecture all that well.

I understand OMA provisioning, but from what I see above, while Windows Mobile provisioning is built upon the OMA provisioning specification, it does not use the same standard application settings.

So I'm a bit lost.

But, I've got an unlocked HTC Diamond, and if someone can give me pointers on how to get started, I'll try to help.

--
Des
NowSMS Support