एक वेब एप्लिकेशन iOS उपकरणों को पुश सूचनाएं कैसे भेज सकता है? [बन्द है]


121

मैं एक वेब ऐप पर काम कर रहा हूं। नई सामग्री होने पर मैं iOS उपयोगकर्ताओं को पुश सूचनाएं कैसे भेज सकता हूं?


क्या एक अधिसूचना अब?


क्या आप ध्वनि के साथ खोज रहे हैं? फिर अगर आपको मोबाइल फोन लॉक मोड में साउंड नोटिफिकेशन चाहिए; इसका नाम स्पेसिफिक पुश है।
mrbengi

जवाबों:


93

अधिक विशिष्ट होने के लिए, वेब एप्लिकेशन के लिए मोबाइल डिवाइस पर पुश नोटिफिकेशन भेजने के लिए, जैसे कि iPhone, मोबाइल डिवाइस को किसी विशेष एप्लिकेशन के लिए पुश नोटिफिकेशन प्राप्त करने के लिए पंजीकृत होना चाहिए। पुश नोटिफिकेशन के लिए पंजीकरण एक मूल ऐप के माध्यम से किया जाता है और केवल एक मूल ऐप के माध्यम से किया जा सकता है। एक बार जब देशी ऐप को पुश नोटिफिकेशन के लिए पंजीकृत किया जाता है, तो यह सर्वर को ऑथराइजेशन टोकन भेज सकता है, जिसका उपयोग मूल क्लाइंट को प्रोवाइड करने के लिए उपयोग किए जाने वाले सर्टिफिकेट के साथ किया जा सकता है, जिससे मोबाइल डिवाइस को पुश नोटिफिकेशन भेजा जा सके।

जैसा कि एक अन्य उत्तर में कहा गया है, एक विकल्प एक मूल एप्लिकेशन में आपके वेब एप्लिकेशन को 'रैप' करना है। इसका मतलब है कि आप एक मूल एप्लिकेशन बनाएंगे जो मूल रूप से आपके वेब एप्लिकेशन को दिखाने वाले उपयोगकर्ता को UIWebView (iPhone देव के लिए) प्रस्तुत करता है। जबकि देशी ब्राउज़र के समान यह बहुत अधिक कार्य करता है, आप देशी नियंत्रणों का उपयोग करके पुश सूचनाओं के लिए पंजीकरण करने की क्षमता को जोड़ने में सक्षम होंगे।

एप्पल के पुश नोटिफिकेशन डॉक्यूमेंट की समीक्षा करना आपके लिए फायदेमंद होगा क्योंकि यह आईफोन पर मैसेजिंग फंक्शन्स के बारे में कुछ बहुत अच्छी जानकारी देता है।

पीटर होसी द्वारा दिए गए इन लिंक को देखें:


इस उत्तर के लिए धन्यवाद, मैं उसी की तलाश में था। क्या यह तब भी लागू होता है जब आपने मेटा टैग 'ऐप्पल-मोबाइल-वेब-ऐप-सक्षम' जोड़ा हो?
मार्क नॉल

1
यह बदल रहा है कैसे पुश नोटिफिकेशन होने developers.google.com/web/updates/2015/03/...
डैनियल लुका CleanUnicorn

1
02/2016 तक, एफएफ, क्रोम और सफारी वेबएप से पुश के लिए पंजीकरण कर सकते हैं।
यवॉन हुआन

9
यह अब 2016 में सच नहीं है, आप वेब एप्लिकेशन से सूचनाएं भेज सकते हैं। नीचे मेरा जवाब पढ़ें।
कोलीमारको

लेकिन वेबव्यू बढ़िया काम नहीं कर रहा है, यह कुछ विशेषताओं को याद करता है और इसमें सफारी की तुलना में अधिक कीड़े हैं
ब्लैक

46

नहीं, केवल मूल iOS एप्लिकेशन पुश सूचनाओं का समर्थन करते हैं।

अद्यतन:
मैक ओएस एक्स 10.9 और सफारी 7 वेबसाइट अब पुश सूचनाएं भी भेज सकते हैं, लेकिन यह अभी भी आईओएस पर लागू नहीं होता है। वेबसाइटों के लिए अधिसूचना प्रोग्रामिंग गाइड पढ़ें । इसके अलावा बाहर की जाँच WWDC 2013 सत्र 614


1
अब आप Maverix और Safari 7 पर कर सकते हैं!
थीमीहाई


Safari 7 सुनिश्चित करें कि ये पुश सूचना प्राप्त कर सकते हैं और आपके वेब ऐप के बैकएंड के आधार पर, ऐसी कुछ सेवाएँ हैं जो इसकी अनुमति देती हैं: pushwoosh.com , pushmonkey.launchrock.com या आप अपने स्वयं के सर्वर को तैनात कर सकते हैं, जो बहुत ही समान है iOS पुश सूचनाएँ।
ट्यूडर

मैंने सुना है कि इसे विशिष्ट धक्का कहा जाता है।
mrbengi

3
ओपी सवाल विशेष रूप से आईओएस के बारे में है। इसके लिए OSX / macOS सपोर्ट अच्छा है, लेकिन पुश नोटिफिकेशन अभी भी केवल देशी ऐप से ही iOS पर काम करता है।
स्क्वायरकैंडी

44

हालांकि अभी तक iOS पर समर्थित नहीं है (iOS 10 के रूप में), वेबसाइट पुश एपीआई के साथ फ़ायरफ़ॉक्स और क्रोम (डेस्कटॉप / एंड्रॉइड) को पुश सूचनाएं भेज सकते हैं ।

पुश एपीआई का उपयोग पुराने वेब सूचनाओं के साथ संदेश प्रदर्शित करने के लिए किया जाता है। लाभ यह है कि पुश एपीआई अधिसूचना को तब भी वितरित करने की अनुमति देता है जब उपयोगकर्ता आपकी वेबसाइट पर सर्फिंग नहीं कर रहा है, क्योंकि वे सेवा कार्यकर्ता (स्क्रिप्ट जो ब्राउज़र द्वारा पंजीकृत हैं और बाद में भी बाद में भी पृष्ठभूमि में निष्पादित की जा सकती हैं) पर बनाई गई हैं। आपके उपयोगकर्ता ने आपकी वेबसाइट छोड़ दी है)।

एक अधिसूचना भेजने की प्रक्रिया में निम्नलिखित शामिल हैं:

  1. एक उपयोगकर्ता आपकी वेबसाइट पर जाता है (HTTPS से अधिक सुरक्षित होना चाहिए): आप पुश सूचनाओं को प्रदर्शित करने की अनुमति मांगते हैं और आप एक सेवा कार्यकर्ता (एक स्क्रिप्ट जिसे एक पुश सूचना प्राप्त होने पर निष्पादित किया जाएगा) को पंजीकृत करते हैं।
  2. यदि उपयोगकर्ता ने अनुमति दी है, तो आप डिवाइस टोकन (समापन बिंदु) पढ़ सकते हैं जिसे सर्वर को भेजा जाना चाहिए और संग्रहीत किया जाना चाहिए
  3. अब आप उपयोगकर्ता को सूचनाएं भेज सकते हैं: आपका सर्वर एंडपॉइंट के लिए एक HTTP POST अनुरोध करता है (जो एक URL है जिसमें डिवाइस टोकन शामिल है)। सर्वर जो अनुरोध प्राप्त करता है, वह ब्राउज़र निर्माता (जैसे Google, मोज़िला) का होता है: ब्राउज़र लगातार इससे जुड़ा रहता है और आने वाली सूचनाओं को पढ़ सकता है।
  4. जब उपयोगकर्ता ब्राउज़र एक सूचना प्राप्त करता है, सेवा कार्यकर्ता को निष्पादित करता है, जो कि घटना के प्रबंधन के लिए जिम्मेदार है, सर्वर से अधिसूचना डेटा को पुनर्प्राप्त करता है और उपयोगकर्ता को अधिसूचना प्रदर्शित करता है।

पुश एपीआई वर्तमान में क्रोम , फ़ायरफ़ॉक्स और ओपेरा द्वारा डेस्कटॉप और एंड्रॉइड पर समर्थित है ।

आप Apple / Safari को पुश नोटिफिकेशन भी भेज सकते हैं APN का उपयोग करके डेस्कटॉप । दृष्टिकोण समान है, लेकिन कई जटिलताओं के साथ (ऐप्पल डेवलपर सर्टिफिकेट, पुश पैकेज, एपीएन के लिए निम्न-स्तरीय टीसीपी कनेक्शन)।

यदि आप अपने द्वारा शुरू किए गए पुश नोटिफिकेशन को इन ट्यूटोरियल्स के साथ लागू करना चाहते हैं:

यदि आप समाधान में गिरावट की तलाश कर रहे हैं, तो मैं पुष्पद का सुझाव दूंगा , जो कि एक सेवा है जिसे मैंने बनाया है।

अद्यतन (सितंबर 2017): Apple ने वेबकिट ( स्थिति ) के लिए सेवा कर्मचारियों का विकास शुरू कर दिया है । चूंकि सेवा कर्मचारी वेब पुश के लिए एक मूलभूत तकनीक है, इसलिए यह एक बड़ा कदम है।


3
IOS 10 (सार्वजनिक बीटा) के रूप में, मोबाइल सफारी पुश नोटिफिकेशन का समर्थन नहीं करता है।
रॉबिन डौबर्टी

1
यह आपके उत्तर का सुधार नहीं था, मैं सफारी मोबाइल समर्थन की तलाश कर रहे लोगों के लिए जानकारी प्रदान कर रहा था। किसी दिन शायद वे पुश सूचनाओं का समर्थन करेंगे, लेकिन वे मेरे द्वारा जारी की गई रिलीज के अनुसार नहीं हैं।
रॉबिन डॉटरटी जूल

14
सफारी नया इंटरनेट एक्सप्लोरर है। Apple नया Microsoft है। ऊग ....
कोस्टा

1
@ केविनकोर नहीं, दुर्भाग्य से कोई अपडेट नहीं है। IOS पर सफारी फिलहाल (मई 2017) वेब पुश का समर्थन नहीं करता है।
कोलीमारको

1
आइए, Apple पर कुछ दबाव डालें: मैंने कुछ पैराग्राफ लिखे हैं जिन्हें आप Apple बग ट्रैकर को कॉपी करके सबमिट कर सकते हैं और Apple को iOS में वेब पुश जोड़ने के लिए कह सकते हैं।
कोलीमारको

10

Google Chrome अब पुश सूचनाओं के लिए W3C मानक का समर्थन करता है।

http://www.w3.org/TR/push-api/


यहाँ एक संपूर्ण ट्यूटोरियल है: Developers.google.com/web/updates/2015/03/…
ayke

1
क्या इसमें iOS के लिए Chrome शामिल है? (मूल प्रश्न आईओएस के लिए विशिष्ट था)
साइमन ईस्ट

अभी तक कुछ भी पर कोई iOS नहीं। एक मूल ऐप का उपयोग करना होगा: \
rogerdpack

9

यदि आप अपना स्वयं का मूल एप्लिकेशन नहीं बनाना चाहते हैं तो आप पुशओवर का उपयोग कर सकते हैं: https://pushover.net/


9

ACTUALLY .. यह बिलकुल नया दिमाग है आप .. OS X (Mavericks) के नवीनतम संस्करण पर आप वेबपृष्ठ से डेस्कटॉप पर पुश सूचनाएँ भेज सकते हैं । लेकिन प्रलेखन के अनुसार, iPhones नहीं:

Note: This document pertains to OS X only. Notifications for websites do not appear on iOS.

वर्तमान में Apple की 2 प्रकार की पुश सूचनाओं की अनुमति देने की योजना है: OS X वेबसाइट पुश सूचनाएं और स्थानीय सूचनाएं।

यहां स्पष्ट बाधा यह है कि यह पीसी पर काम नहीं करेगा, और न ही यह आपको एंड्रॉइड पुश नोटिफिकेशन करने की अनुमति देगा।

इसके अलावा, आप वास्तव में स्नो लेपर्ड के रूप में पुराने संस्करणों के साथ, किसी वेबसाइट से पुश सूचनाएं भेज सकते हैं जब तक कि वेबसाइट खुली और सक्रिय हो। नई Mavericks OS साइट को खोलने पर भी पुश नोटिफिकेशन की अनुमति देगा, यह मानते हुए कि आपने पहले ही साइट को पुश नोटिफिकेशन भेजने की अनुमति दे दी है।

Apple के मुंह से:

OS X v10.9 में और बाद में, आप Apple पुश अधिसूचना सेवा (APNs) का उपयोग करके अपने वेब सर्वर से OS X उपयोगकर्ताओं को सीधे OS X वेबसाइट पुश सूचनाएँ भेज सकते हैं। स्थानीय सूचनाओं के साथ भ्रमित न होने के लिए, पुश सूचनाएँ आपके उपयोगकर्ताओं तक पहुँच सकती हैं, भले ही आपकी वेबसाइट या उनका वेब ब्राउज़र खुला हो ...

अपनी वेबसाइट में पुश सूचनाओं को एकीकृत करने के लिए, आप पहले एक इंटरफ़ेस प्रस्तुत करते हैं जो उपयोगकर्ता को सूचनाएं प्राप्त करने का विकल्प चुनने की अनुमति देता है। यदि उपयोगकर्ता सहमति देता है, तो सफारी आपकी वेबसाइट से एक संपर्क पैकेज के रूप में अपनी साख का अनुरोध करने वाली वेबसाइट से संपर्क करती है। पुश पैकेज में OS X भर में उपयोग की जाने वाली अधिसूचना संपत्तियां और आपके द्वारा कॉन्फ़िगर की गई वेब सेवा से संवाद करने के लिए उपयोग किए जाने वाले डेटा शामिल हैं। यदि पुश पैकेज मान्य है, तो आपको डिवाइस टोकन के रूप में ज्ञात डिवाइस पर उपयोगकर्ता के लिए एक विशिष्ट पहचानकर्ता प्राप्त होता है। जब आप इस डिवाइस टोकन और अपने संदेश, या पेलोड के संयोजन को APNs को भेजते हैं, तो उपयोगकर्ता सूचना प्राप्त करता है।

अधिसूचना प्राप्त होने पर, उपयोगकर्ता उस पर क्लिक करके उपयोगकर्ता के डिफ़ॉल्ट ब्राउज़र में आपके चयन का वेबपृष्ठ खोल सकता है।

नोट: यदि आपको APN पर रिफ्रेशर की आवश्यकता है, तो स्थानीय और पुश सूचना प्रोग्रामिंग गाइड में "Apple पुश अधिसूचना सेवा" अध्याय पढ़ें। हालाँकि यह दस्तावेज़ iOS और OS X पुश सूचनाओं के लिए विशिष्ट है, फिर भी पुश सूचना सेवा के प्रतिमान लागू होते हैं।


5
यह, उम्मीद है, इसका मतलब है कि हम आईओएस 8 या 9. द्वारा वेब-आधारित पुश सूचनाएं देखेंगे, मेरी उंगलियों को पार करेंगे।
ट्रैविस

5
डेवलपर डॉक्स स्पष्ट रूप से कहते हैं कि वेब सूचनाएं वर्तमान में iOS पर लागू नहीं होती हैं। बस अपने पहले पैराग्राफ के स्पष्टीकरण के रूप में।
डैनियल सेलर्स

1
सेब को जानकर वे इसे आईओएस के एक संस्करण के लिए अनुमति देंगे और अगले के लिए इसे हटा
देंगे

6

नहीं, पुश नोटिफिकेशन प्राप्त करने के लिए वेबएप का कोई तरीका नहीं है। आप जो कुछ भी कर सकते हैं, वह है कि आप अपने वेबऐप को एक देशी ऐप में लपेटें, जिसमें पुश नोटिफिकेशन हो।


आपका क्या मतलब है जब आप कहते हैं "अपने वेब ऐप को एक मूल ऐप में लपेटें"?
फ्रेंकी

1
फ्रेंकी: ठीक है, बस एक देशी ऐप जो UIWebView प्रदर्शित करता है जो आपकी साइट को लोड करता है। यह आपको फोन पर मूल ऐप के रूप में अपने वेबएप की अनुमति देता है।
JustSid

तो मुझे लगता है कि xcode में यह देशी एप्लिकेशन के लिए "विंडोबेस अप्लायन्सेज" होगा, है ना?
फ्रेंकी

अब आप Maverix & Safari 7 पर कर सकते हैं!
थीमीहाई

1
@DanDascalescu मैं क्यों करूँगा? यह अभी भी iOS पर संभव नहीं है, यही सवाल था। उत्तर गलत नहीं है।
JustSid

2

W3C ने 2010 में सूचनाओं को लागू करने के लिए एक कार्यकारी समूह शुरू किया:
http://www.w3.org/2010/web-notifications/

यह वर्किंग ग्रुप एपीआई को विकसित करता है जो वेब एप्लिकेशन के लिए उन तंत्रों को उजागर करता है - ताकि वेब डेवलपर, उदाहरण के लिए, वेब-आधारित ई-मेल क्लाइंट और इंस्टेंट-मैसेजिंग क्लाइंट ऑपरेटिंग सिस्टम की अधिसूचना सुविधाओं के साथ अपने वेब एप्लिकेशन व्यवहार को अधिक बारीकी से एकीकृत कर सकें। उनके अंतिम उपयोगकर्ताओं के लिए।

अंत में परिणाम एक बुरे मजाक की तरह है क्योंकि यह केवल तभी काम करता है जब विशिष्ट वेबसाइट खुली हो: http://alxgbsn.co.uk/notify.js/

मुझे लगता है कि वे पुश यूआरएल जोड़ने की संभावना को लागू करने से चूक गए थे, इसलिए ब्राउज़र पृष्ठभूमि में चलने के दौरान सूचनाएं मांगने में सक्षम है - और सबसे ऊपर - यदि सभी टैब बंद हो गए हैं।


2

अपने स्वयं के पुश संदेशों को प्रस्तुत करने के लिए आप HTML5 वेबसोकेट का उपयोग कर सकते हैं। से विकिपीडिया :

"क्लाइंट पक्ष के लिए, वेबसॉकेट को फ़ायरफ़ॉक्स 4, Google क्रोम 4, ओपेरा 11 और सफारी 5 में लागू किया जाना था, साथ ही आईओएस 4.2 में सफारी का मोबाइल संस्करण। इसके अलावा ओएस 7 में ब्लैकबेरी ब्राउज़र वेबस्केट का समर्थन करता है।"

ऐसा करने के लिए, आपको क्लाइंट को संदेश भेजने के लिए अपने स्वयं के प्रदाता सर्वर की आवश्यकता होगी।
यदि आप APN (Apple Push Notification) या C2DM (क्लाउड टू डिवाइस मैसेज) का उपयोग करना चाहते हैं, तो आपके पास एक मूल एप्लिकेशन होना चाहिए जिसे ऑनलाइन स्टोर के माध्यम से डाउनलोड किया जाना चाहिए।


6
ठीक है, यह केवल तभी काम करेगा जब ब्राउज़र खोला जाए और वेब पेज में। पुश नोटिफिकेशन के विपरीत, जो कि एप्‍लिकेशन बंद होने पर भी काम करता है।
हगाई एल

2

Pushbullet एक बेहतरीन विकल्प है।

हालाँकि उपयोगकर्ता के पास एक पुशबुलेट खाता और इंस्टॉल किए गए एप्लिकेशन (iOS, Android) या प्लगइन स्थापित होना चाहिए (Chrome, Opera, Firefox और Windows)।

आप एपीआई का उपयोग कर सकते हैं Pushbullet ऐप बनाकर , और अपने एप्लिकेशन के उपयोगकर्ता को oAuth2 का उपयोग करके Pushbullet उपयोगकर्ता से कनेक्ट कर सकते हैं।

लाइब्रेरी का उपयोग करना बहुत आसान होगा, PHP के लिए मैं ivkos / Pushbullet-for-PHP की सिफारिश कर सकता हूं ।


1

वेब पुश सूचनाओं को देखें। http://getreactor.xtify.com/ यह उपकरण आपको वेबपृष्ठ पर सामग्री को पुश करने और आगंतुकों को लक्षित करने के साथ ही ब्राउज़र डोम घटनाओं के आधार पर संदेशों को ट्रिगर करने की अनुमति देता है। इसे खासतौर पर मोबाइल को ध्यान में रखकर बनाया गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.