I'm a web developer (PHP). I would like to searching for push notification to windows phone 7 using PHP but the result is always .NET.
Please someone can help me.
UPDATE : How to send multi-devices at once? because the delay time is around 1 second, so if I have 1000 devices to push, I may need 1000 seconds to wait.
The following is the PHP code to send a toast notification to the URL "_URL_TO_SEND_TO_" which is the token received from the MPNS:
<?php
// Create the toast message
$toastMessage = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" .
"<wp:Notification xmlns:wp=\"WPNotification\">" .
"<wp:Toast>" .
"<wp:Text1>" . "SendToast" . "</wp:Text1>" .
"<wp:Text2>" . "Text Message" . "</wp:Text2>" .
"</wp:Toast> " .
"</wp:Notification>";
// Create request to send
$r = curl_init();
curl_setopt($r, CURLOPT_URL,_URL_TO_SEND_TO_);
curl_setopt($r, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($r, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, true);
// add headers
$httpHeaders=array('Content-type: text/xml; charset=utf-8', 'X-WindowsPhone-Target: toast',
'Accept: application/*', 'X-NotificationClass: 2','Content-Length:'.strlen($toastMessage));
curl_setopt($r, CURLOPT_HTTPHEADER, $httpHeaders);
// add message
curl_setopt($r, CURLOPT_POSTFIELDS, $toastMessage);
// execute request
$output = curl_exec($r);
curl_close($r);
?>
If this is the code you need, please check this answer.
You don't need to implement it in .NET. You just need to send the correct XML payload to the URL given by the phone.
Take a look at this article on implementing push notifications on Windows Phone 7.
The basic steps are:
- Obtain PUSH Notification end point URL (this is done via your app on
the phone).
- Send that URL to your web service (this web service be in PHP,
.NET, whatever you like).
- Send your XML payload to the URL obtained
in Step 1 and the user will get a PUSH notification.
Try this ready solution http://phpwindowsphonepush.codeplex.com/SourceControl/changeset/view/18482#58320. Very easy.