Sending several SyncML configurations to Windows Phone at once fail

Sending several SyncML configurations to Windows Phone at once fail

After enrollment my WP8 device to Company Apps I want to configure Exchange, Autolock settings and Encryption settings in it. When I send any of those separately then it works OK. But when I send for example both Autolock configuration and Encryption settings then device just hangs and doesn't send back any reply.

I wonder is this some known limitation or bug of the system or am I doing something wrong here?

Multiple Get commands work just fine.

   <Add>
   <CmdID>2</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MaxDevicePasswordFailedAttempts</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>99</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>3</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MaxDevicePasswordFailedAttempts</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>99</Data>
     </Item>
   </Replace>
   <Add>
   <CmdID>4</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/DevicePasswordEnabled</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>0</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>5</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/DevicePasswordEnabled</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>0</Data>
     </Item>
   </Replace>
   <Add>
   <CmdID>6</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/AllowSimpleDevicePassword</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>1</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>7</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/AllowSimpleDevicePassword</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>1</Data>
     </Item>
   </Replace>
   <Add>
   <CmdID>8</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MinDevicePasswordLength</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>5</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>9</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MinDevicePasswordLength</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>5</Data>
     </Item>
   </Replace>
   <Delete>
   <CmdID>10</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/AlphanumericDevicePasswordRequired</LocURI>
   </Target>
   </Item>
   </Delete>
   <Delete>
   <CmdID>11</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/DevicePasswordExpiration</LocURI>
   </Target>
   </Item>
   </Delete>
   <Delete>
   <CmdID>12</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/DevicePasswordHistory</LocURI>
   </Target>
   </Item>
   </Delete>
   <Add>
   <CmdID>13</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MaxInactivityTimeDeviceLock</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>60</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>14</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MaxInactivityTimeDeviceLock</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>60</Data>
     </Item>
   </Replace>
   <Add>
   <CmdID>15</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MinDevicePasswordComplexCharacters</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>1</Data>
     </Item>
   </Add>
   <Replace>
   <CmdID>16</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/DeviceLock/Provider/7PMDMServer/MinDevicePasswordComplexCharacters</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>1</Data>
     </Item>
   </Replace>
   <Replace>
   <CmdID>17</CmdID>
   <Item><Target>
    <LocURI>./Vendor/MSFT/Registry/HKLM/Software/Microsoft/Provisioning/DeviceEncryption/Enabled</LocURI>
   </Target>
   <Meta>
     <Format xmlns="syncml:metinf">int</Format>
    </Meta>
    <Data>1</Data>
     </Item>
   </Replace>
   <Get>
   <CmdID>18</CmdID>
   <Item><Target>
    <LocURI>./DevDetail/SwV</LocURI>
   </Target>
   </Item>
   </Get>

The duplicated commands used to cover the cases where certain parameters might exist or not exist in device, so I send in both <Add> and <Replace>.
Currently I got the problem fixed by sending configurations to the phone one by one. As device doesn't report any error logs or messages, it is impossible to know what exactly is causing this problem.

Now I even got my IMAP/POP Email configration working because before sending Email conf. and some Get device info queries ath the same time caused similar behaviour. Now, when sending only Email conf. everything works.

Copyright © 2007-2012 www.chuibin.com Chuibin Copyright