Опитвам се да накарам Push известията да работят в моето приложение Sencha Touch, което ще бъде насочено към Windows Phone, iOS и Android. В момента се фокусирам върху това да накарам регистрацията на устройството да работи в приложението Windows Phone.
Моля, обърнете внимание: Имаме съществуващ бекенд на ASP.NET в облачна услуга на Windows Azure.
Инсталирах Sencha Touch Extensions за Windows Azure и Инсталирах PhoneGap PushPlugin в моето приложение Sencha
Следвах всички инструкции на уебсайта на Windows Azure относно настройката на приставката Ext.Azure.
Разбирам, че регистрацията на устройството няма да се случи, когато се изпълнява в настолен браузър, така че стартирах приложението си на моето устройство с Windows Phone... обаче нищо не се случва... не се извършва регистрация на устройство.
Ето съответния код на Sencha Controller:
init: function () {
Ext.Azure.on({
scope: this,
'pushregistrationsuccess': this.onPushRegistrationSuccess,
'pushregistrationfailure': this.onPushRegistrationFailure,
'pushnotification': this.onPushNotification
});
},
onPushRegistrationFailure: function (event, opts) {
alert("The push registration failed");
},
onPushRegistrationSuccess: function (event) {
alert("onPushRegistrationSuccess: " + event);
},
onPushNotification: function (event) {
Ext.Msg.alert('Notification', event.message);
},
launch: function (app) {
//debugger;
Ext.Azure.init({
appKey: 'xxxxxxxxxxxxxxxxxx',
appUrl: 'xxxxxxxxx.azure-mobile.net',
pushConfig : {
windowsphone : 'channel_name',
android : 'sender_id',
ios : true
}
});
}
Прегледах целия код и не мога да разбера как се извършва регистрацията на устройството в Windows Phone. Изглежда, че няма никакъв собствен код в WP8, който да се равнява на нещата на PhoneGap PushPlugin от страна на iOS и Android. Тогава предполагам, че регистрацията се извършва чрез REST извикване директно към MPNS в рамките на приставката за javascript Ext.Azure (въпреки че не мога да намеря това извикване в изходния код).
Така или иначе не мога да разбера как да направя регистрация на WP устройство в приложение Sencha. Освен това вероятно няма да използвам мобилните услуги на Azure, тъй като вече имаме бекенд и смятаме, че би било по-разумно да използваме център за уведомяване на Service Bus от облачната услуга, използвайки Azure SDK. Така че наистина използвам Ext.Azure само за нормализиране на регистрацията на устройството.
Като се има предвид, че вече имам бекенд на облачна услуга, имам ли нужда от мобилни услуги на Azure? Единствената причина, за която се сещам да се нуждая от това, е ако регистрацията на устройството за WP8 става през мобилна услуга.
Много съм объркан от цялото това нещо. В push конфигурацията за моето приложение Sencha има „име на канала“, нямам представа откъде да го взема? Но хей, предполагам, че ако не е наред, пак би трябвало да мога да направя повикване за регистрация на устройството.
Така че ще съм много благодарен за всякакви съвети за това как най-добре да настроите насочени известия за приложение Sencha в WP8, Android и iPhone, където има съществуваща облачна услуга.
Благодаря за вашата помощ