YouTube Data API (v3), PubSubHubbub के ज़रिए पुश नोटिफ़िकेशन पाने की सुविधा देता है. यह वेब पर ऐक्सेस की जा सकने वाली सुविधाओं के लिए, सर्वर-टू-सर्वर पब्लिश/सब्सक्राइब प्रोटोकॉल है. सूचनाएं, सदस्यों को एचटीटीपी वेबहुक के ज़रिए भेजी जाती हैं. यह पोलिंग पर आधारित समाधानों की तुलना में ज़्यादा असरदार है. PubSubHubbub की मदद से, आपका सर्वर इवेंट के बारे में लगभग रीयल-टाइम में पता लगाता है. इसके लिए, उसे सबसे सही पोलिंग इंटरवल तय करने या बार-बार ऐसे डेटा को फ़ेच करने की ज़रूरत नहीं होती जिसमें कोई बदलाव नहीं हुआ है.
जब कोई चैनल इनमें से कोई भी गतिविधि करता है, तब आपके PubSubHubbub कॉलबैक सर्वर को ऐटम फ़ीड की सूचनाएं मिलती हैं:
- वीडियो अपलोड करता है
- वीडियो का टाइटल अपडेट करता है
- वीडियो की जानकारी अपडेट करता है
सूचनाएं पाने के लिए ऑप्ट-इन करने का तरीका यहां बताया गया है:
-
एक ऐसा कॉलबैक सर्वर सेट अप करें जो Atom फ़ीड की सूचनाएं मैनेज कर सके.
-
पुश नोटिफ़िकेशन पाने के लिए, Google हब का इस्तेमाल करें:
-
mode को
subscribeपर सेट करें. (इसके अलावा, सदस्यता रद्द करने के लिए मोड कोunsubscribeपर सेट करें.) -
कॉलबैक यूआरएल को उस यूआरएल पर सेट करें जिसे आपने पहले चरण में सेट अप किया था.
-
विषय के यूआरएल को
https://www.youtube.com/xml/feeds/videos.xml?channel_id=CHANNEL_IDपर सेट करें. यहांCHANNEL_ID, उस YouTube चैनल का आईडी है जिसके लिए आपको पुश नोटिफ़िकेशन पाने हैं.
-
-
आपके कॉलबैक सर्वर को भेजी गई सूचनाओं को प्रोसेस करता है. सूचना का फ़ॉर्मैट यहां दिखाया गया है. ध्यान दें कि
<yt:videoId>एलिमेंट की वैल्यू का इस्तेमाल करके, जोड़े गए या अपडेट किए गए वीडियो की पहचान की जा सकती है.<yt:channelId>एलिमेंट की वैल्यू का इस्तेमाल करके, उस चैनल की पहचान भी की जा सकती है जिसके पास वीडियो का मालिकाना हक है.<feed xmlns:yt="http://www.youtube.com/xml/schemas/2015" xmlns="http://www.w3.org/2005/Atom"> <link rel="hub" href="https://pubsubhubbub.appspot.com"/> <link rel="self" href="https://www.youtube.com/xml/feeds/videos.xml?channel_id=CHANNEL_ID"/> <title>YouTube video feed</title> <updated>2015-04-01T19:05:24.552394234+00:00</updated> <entry> <id>yt:video:VIDEO_ID</id> <yt:videoId>VIDEO_ID</yt:videoId> <yt:channelId>CHANNEL_ID</yt:channelId> <title>Video title</title> <link rel="alternate" href="http://www.youtube.com/watch?v=VIDEO_ID"/> <author> <name>Channel title</name> <uri>http://www.youtube.com/channel/CHANNEL_ID</uri> </author> <published>2015-03-06T21:40:57+00:00</published> <updated>2015-03-09T19:05:24.552394234+00:00</updated> </entry> </feed>