रिच नोटिफ़िकेशन एपीआई

प्लैटफ़ॉर्म के हिसाब से अंतर: Chrome के वर्शन 59 में, Mac OS X का इस्तेमाल करने वाले लोगों को सूचनाएं अलग तरीके से दिखती हैं. लोगों को Chrome की सूचनाओं के बजाय, Mac OS X की सूचनाएं दिखती हैं. ज़्यादा जानने के लिए, यह लेख पढ़ें.

रिच सूचनाएं API की मदद से, टेंप्लेट का इस्तेमाल करके सूचनाएं बनाई जा सकती हैं. साथ ही, इन सूचनाओं को लोगों के सिस्टम ट्रे में दिखाया जा सकता है:

सिस्टम ट्रे में सूचनाएं

ये सूचनाएं कैसी दिखती हैं

रिच सूचनाएं चार तरह की होती हैं: सामान्य, इमेज, सूची, और प्रोग्रेस. सभी सूचनाओं में टाइटल, मैसेज, सूचना मैसेज के बाईं ओर दिखने वाला छोटा आइकॉन, और contextMessage फ़ील्ड शामिल होता है. contextMessage फ़ील्ड, हल्के रंग के फ़ॉन्ट में तीसरे टेक्स्ट फ़ील्ड के तौर पर दिखता है.

सामान्य सूचना:

बुनियादी सूचना

सूची वाली सूचनाओं में, सूची के कई आइटम दिखाए जा सकते हैं:

सूचनाओं की सूची

इमेज वाली सूचनाओं में, इमेज का प्रीव्यू दिखता है:

इमेज वाली सूचना

प्रोग्रेस वाली सूचनाओं में, प्रोग्रेस बार दिखता है:

प्रोग्रेस की सूचना

इनका व्यवहार कैसा होता है

ChromeOS पर, सूचनाएं लोगों की सिस्टम ट्रे में दिखती हैं. ये सूचनाएं, सिस्टम ट्रे में तब तक दिखती हैं, जब तक लोग इन्हें खारिज नहीं कर देते. सिस्टम ट्रे में, सभी नई सूचनाओं की संख्या दिखती है. जब लोग सिस्टम ट्रे में सूचनाएं देख लेते हैं, तो संख्या रीसेट होकर शून्य हो जाती है.

सूचनाओं को -2 से 2 के बीच प्राथमिकता दी जा सकती है. 0 से कम प्राथमिकता वाली सूचनाएं, ChromeOS के सूचना केंद्र में दिखती हैं. वहीं, अन्य प्लैटफ़ॉर्म पर ये सूचनाएं, गड़बड़ी का मैसेज दिखाती हैं. डिफ़ॉल्ट प्राथमिकता 0 होती है. 0 से ज़्यादा प्राथमिकता वाली सूचनाएं, ज़्यादा समय तक दिखती हैं. साथ ही, सिस्टम ट्रे में ज़्यादा प्राथमिकता वाली सूचनाएं दिखाई जा सकती हैं.

सूचनाएं दिखाने के अलावा, सभी तरह की सूचनाओं में ज़्यादा से ज़्यादा दो ऐक्शन आइटम शामिल किए जा सकते हैं. जब लोग किसी ऐक्शन आइटम पर क्लिक करते हैं, तो आपका ऐप्लिकेशन सही कार्रवाई कर सकता है. उदाहरण के लिए, जब कोई व्यक्ति "जवाब दें" पर क्लिक करता है, तो ईमेल ऐप्लिकेशन खुल जाता है और वह जवाब दे सकता है:

सूचना में कार्रवाई

इन्हें कैसे डेवलप करें

इस API का इस्तेमाल करने के लिए, notifications.create तरीके को कॉल करें. इसके लिए, सूचना की जानकारी options पैरामीटर के ज़रिए पास करें:

chrome.notifications.create(id, options, creationCallback);

notifications.NotificationOptions में notifications.TemplateType शामिल होना चाहिए. इससे, सूचना की उपलब्ध जानकारी और वह जानकारी कैसे दिखती है, यह तय होता है.

सामान्य सूचना बनाना

सभी तरह के टेंप्लेट (basic, image, list, और progress) में, सूचना का title और message शामिल होना चाहिए. साथ ही, iconUrl भी शामिल होना चाहिए. यह एक छोटे आइकॉन का लिंक होता है, जो सूचना मैसेज के बाईं ओर दिखता है.

basic टेंप्लेट का उदाहरण यहां दिया गया है:

var opt = {
  type: "basic",
  title: "Primary Title",
  message: "Primary message to display",
  iconUrl: "url_to_small_icon"
}

इमेज वाली सूचना बनाना

image टेंप्लेट टाइप में imageUrl भी शामिल होता है. यह एक इमेज का लिंक होता है, जिसका प्रीव्यू सूचना में दिखता है:

प्लैटफ़ॉर्म के हिसाब से अंतर: Mac OS X पर Chrome के वर्शन 59 और इसके बाद के वर्शन का इस्तेमाल करने वाले लोगों को इमेज नहीं दिखेंगी.
var opt = {
  type: "basic",
  title: "Primary Title",
  message: "Primary message to display",
  iconUrl: "url_to_small_icon",
  imageUrl: "url_to_preview_image"
}

Chrome ऐप्लिकेशन में, कॉन्टेंट की सुरक्षा से जुड़ी सख्त नीति की वजह से, इन यूआरएल को किसी स्थानीय संसाधन पर ले जाना होगा या blob या डेटा यूआरएल का इस्तेमाल करना होगा. अपनी इमेज के लिए 3:2 का रेशियो इस्तेमाल करें. ऐसा न करने पर, इमेज के चारों ओर काली बॉर्डर दिखेगी.

सूची वाली सूचना बनाना

list टेंप्लेट में, items सूची के फ़ॉर्मैट में दिखते हैं:

प्लैटफ़ॉर्म के हिसाब से अंतर: Mac OS X पर Chrome के वर्शन 59 और इसके बाद के वर्शन का इस्तेमाल करने वाले लोगों को, सूची का सिर्फ़ पहला आइटम दिखता है.
var opt = {
  type: "list",
  title: "Primary Title",
  message: "Primary message to display",
  iconUrl: "url_to_small_icon",
  items: [{ title: "Item1", message: "This is item 1."},
          { title: "Item2", message: "This is item 2."},
          { title: "Item3", message: "This is item 3."}]
}

प्रोग्रेस वाली सूचना बनाना

progress टेंप्लेट में, प्रोग्रेस बार दिखता है. इसमें मौजूदा प्रोग्रेस 0 से 100 तक होती है:

प्लैटफ़ॉर्म के हिसाब से अंतर: Mac OS X पर Chrome के वर्शन 59 और इसके बाद के वर्शन में, प्रोग्रेस बार के बजाय सूचना के टाइटल में, प्रोग्रेस की वैल्यू प्रतिशत में दिखती है.
var opt = {
  type: "progress",
  title: "Primary Title",
  message: "Primary message to display",
  iconUrl: "url_to_small_icon",
  progress: 42
}

इवेंट लिसनर का इस्तेमाल करना और इवेंट के जवाब देना

सभी सूचनाओं में, इवेंट लिसनर और इवेंट हैंडलर शामिल किए जा सकते हैं. ये, लोगों की कार्रवाइयों के जवाब देते हैं. ज़्यादा जानकारी के लिए, chrome.events देखें. notifications.onButtonClicked

इवेंट लिसनर:

chrome.notifications.onButtonClicked.addListener(replyBtnClick);

इवेंट हैंडलर:

function replyBtnClick {
    //Write function to respond to user action.
}

इवेंट पेज में, इवेंट लिसनर और हैंडलर शामिल करने के बारे में सोचें. इससे, ऐप्लिकेशन या एक्सटेंशन के चालू न होने पर भी सूचनाएं दिख सकती हैं.