Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

iPhone ignores MDM command request

Hi,


I've been developing an MDM server, and I'm able to make an mdm push to my iPhone, and the server is receiving the Status "Idle" message in plist format delivered by the device.

The problem comes after my server replies with a .plist which contains the command to be executed by the device. I tried with the DeviceInformation command. Looking at the console in iPCU, the iPhone shows the message "MDM: Transaction completed. Status: 200".

But the next time the device contacts the server, it has no body, it contains no .plist with the device information I requested. It only appears the 'Content-Type: application/x-apple-aspen-mdm; charset=UTF-8' and that's it.

It's like the device doesn't read, or ignores the command I just sent. Up to the point that I changed the contents of the .plist sent to the device, making the format incorrect; the iPhone wouldn't even launch an exception upon a format error. It keeps saying Transaction Completed. Status: 200.


I'm working in c#, using an HttpHandler, where inside the ProcessRequest(HttpContext context) method I have the following code that replies to the device:


XDocument resp = XDocument.Load(new StreamReader(".../DeviceInfo.plist"));

context.Response.Write(resp);

context.Response.ContentType = "application/xml";


Is something wrong about the way my server replies? What am I missing? I've been trying to follow the MDM Protocol pdf, but I'm stuck here.


Any help would be greatly appreciated,


Thanks

iPhone 4, iOS 6.1

Posted on Feb 11, 2013 1:21 PM

Reply
8 replies

Feb 12, 2013 5:56 AM in response to xnav

No, enrollment works fine. I'm actually looking for some advice about my c# implementation regarding how an MDM server should send the device the .plist with the command to be performed, since that's my main suspect for now.

Another update: when I send the device a message like context.Response.Write("asdasda"); the console log in iPCU will throw an error. But if I write the following (XML format): context.Response.Write("<asd></asd>"); the console log will show the "Transaction Completed. Status 200" message. Shouldn't the device throw an exception due to the reception of a non .plist file?

Apr 8, 2013 9:41 AM in response to RIMIOnLine

I would suggest you start by reading the following, they have a sample server you can check out. Once you are able to sign CSR's, you're ready to enroll a device and use the iOS mdm. For that, you must sign with your Enterprise account and take a look at the mobile device management protocol document. It may also help for the development of .plist files to take a look at plutil and download and use iPhone Configuration Utility.


Hope it helps. Good luck.

iPhone ignores MDM command request

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.