liveChatMessage रिसॉर्स, YouTube लाइव चैट में चैट मैसेज को दिखाता है. इस संसाधन में कई तरह के मैसेज के बारे में जानकारी हो सकती है. जैसे, नया पोस्ट किया गया टेक्स्ट मैसेज या फ़ैन फ़ंडिंग इवेंट.
लाइव ब्रॉडकास्ट के लिए, लाइव चैट की सुविधा डिफ़ॉल्ट रूप से चालू होती है. यह सुविधा, लाइव इवेंट के चालू रहने के दौरान उपलब्ध होती है. (इवेंट खत्म होने के बाद, लाइव चैट की सुविधा उपलब्ध नहीं होती.)
तरीके
एपीआई, liveChatMessages संसाधनों के लिए इन तरीकों का इस्तेमाल करता है:
- list
- इसमें किसी चैट के लाइव चैट मैसेज की सूची होती है. इसे अभी आज़माएं.
- streamList
- यह कुकी, सर्वर-स्ट्रीमिंग कनेक्शन चालू करती है. इससे कम इंतज़ार के समय में, किसी खास चैट के लिए लाइव चैट मैसेज पाए जा सकते हैं. इसे अभी आज़माएं.
- insert
- लाइव चैट में कोई मैसेज या पोल जोड़ता है. इसे अभी आज़माएं.
- transition
- लाइव मैसेज की स्थिति बदलता है. इसे अभी आज़माएं.
- मिटाएं
- चैट मैसेज मिटाता है. एपीआई अनुरोध को चैनल के मालिक या लाइव चैट के मॉडरेटर से अनुमति मिली होनी चाहिए. इसे अभी आज़माएं.
संसाधन का प्रतिनिधित्व
यहां दिए गए JSON स्ट्रक्चर में, liveChatMessages संसाधन का फ़ॉर्मैट दिखाया गया है:
{
  "kind": "youtube#liveChatMessage",
  "etag": etag,
  "id": string,
  "snippet": {
    "type": string,
    "liveChatId": string,
    "authorChannelId": string,
    "publishedAt": datetime,
    "hasDisplayContent": boolean,
    "displayMessage": string,
    "fanFundingEventDetails": {
      "amountMicros": unsigned long,
      "currency": string,
      "amountDisplayString": string,
      "userComment": string
    },
    "textMessageDetails": {
      "messageText": string
    },
    "messageDeletedDetails": {
      "deletedMessageId": string
    },
    "userBannedDetails": {
      "bannedUserDetails": {
        "channelId": string,
        "channelUrl": string,
        "displayName": string,
        "profileImageUrl": string
      },
      "banType": string,
      "banDurationSeconds": unsigned long
    },
    "memberMilestoneChatDetails": {
      "userComment": string,
      "memberMonth": unsigned integer,
      "memberLevelName": string
    },
    "newSponsorDetails": {
      "memberLevelName": string,
      "isUpgrade": bool
    },
    "superChatDetails": {
      "amountMicros": unsigned long,
      "currency": string,
      "amountDisplayString": string,
      "userComment": string,
      "tier": unsigned integer
    },
    "superStickerDetails": {
      "superStickerMetadata": {
        "stickerId": string,
        "altText": string,
        "language": string
      },
      "amountMicros": unsigned long,
      "currency": string,
      "amountDisplayString": string,
      "tier": unsigned integer
    },
    "pollDetails": {
      "metadata": {
        "options": {
          "optionText": string,
          "tally": string,
        },
        "questionText": string,
        "status": enum
      },
    },
    "membershipGiftingDetails": {
      "giftMembershipsCount": integer,
      "giftMembershipsLevelName": string
    },
    "giftMembershipReceivedDetails": {
      "memberLevelName": string,
      "gifterChannelId": string,
      "associatedMembershipGiftingMessageId": string
    },
  },
  "authorDetails": {
    "channelId": string,
    "channelUrl": string,
    "displayName": string,
    "profileImageUrl": string,
    "isVerified": boolean,
    "isChatOwner": boolean,
    "isChatSponsor": boolean,
    "isChatModerator": boolean
  },
}प्रॉपर्टी
यहां दी गई टेबल में, इस संसाधन में दिखने वाली प्रॉपर्टी के बारे में बताया गया है:
| प्रॉपर्टी | |
|---|---|
| kind | stringइससे एपीआई संसाधन के टाइप की पहचान होती है. वैल्यू youtube#liveChatMessageहोगी. | 
| etag | etagइस संसाधन का ETag. | 
| id | stringयह वह आईडी है जो YouTube, मैसेज की खास तौर पर पहचान करने के लिए असाइन करता है. | 
| snippet | objectsnippetऑब्जेक्ट में चैट मैसेज के बारे में मुख्य जानकारी होती है. | 
| snippet.type | stringमैसेज का टाइप. यह प्रॉपर्टी हमेशा मौजूद होती है. इसकी वैल्यू से यह तय होता है कि संसाधन में कौनसे फ़ील्ड मौजूद हैं. इस प्रॉपर्टी की मान्य वैल्यू ये हैं: 
 | 
| snippet.liveChatId | stringयह वह आईडी है जो उस लाइव चैट की खास तौर पर पहचान करता है जिससे मैसेज जुड़ा है. ब्रॉडकास्ट से जुड़ा लाइव चैट आईडी, liveBroadcastसंसाधन कीsnippet.liveChatIdप्रॉपर्टी में दिखता है. | 
| snippet.authorChannelId | stringमैसेज लिखने वाले उपयोगकर्ता का आईडी. यह फ़ील्ड सिर्फ़ इन मैसेज टाइप के लिए भरा जाता है: 
 | 
| snippet.publishedAt | datetimeमैसेज को पहली बार पब्लिश करने की तारीख और समय. वैल्यू को ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) फ़ॉर्मैट में तय किया जाता है. | 
| snippet.hasDisplayContent | booleanइससे पता चलता है कि मैसेज में ऐसा कॉन्टेंट है जिसे उपयोगकर्ताओं को दिखाया जाना चाहिए. | 
| snippet.displayMessage | stringइसमें एक स्ट्रिंग होती है, जो उपयोगकर्ताओं को दिखती है. अगर मैसेज का टाइप chatEndedEventयाtombstoneहै, तो यह फ़ील्ड मौजूद नहीं होता. | 
| snippet.fanFundingEventDetails | objectध्यान दें: इस ऑब्जेक्ट और इसकी चाइल्ड प्रॉपर्टी का इस्तेमाल अब नहीं किया जा सकेगा. liveChatMessageसंसाधन, 28 फ़रवरी, 2017 से फ़ैन फ़ंडिंग इवेंट की जानकारी नहीं दिखाएंगे.इस ऑब्जेक्ट में फ़ंडिंग इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप fanFundingEventहो. | 
| snippet.fanFundingEventDetails.amountMicros | unsigned longध्यान दें: इस प्रॉपर्टी का इस्तेमाल अब नहीं किया जा सकेगा. फ़ंड की रकम. | 
| snippet.fanFundingEventDetails.currency | stringध्यान दें: इस प्रॉपर्टी का इस्तेमाल अब नहीं किया जा सकेगा. वह मुद्रा जिसमें फ़ंड बनाया गया था. | 
| snippet.fanFundingEventDetails.amountDisplayString | stringध्यान दें: इस प्रॉपर्टी को बंद कर दिया गया है. यह रेंडर की गई स्ट्रिंग है. इससे उपयोगकर्ता को फ़ंड की रकम और मुद्रा दिखती है. | 
| snippet.fanFundingEventDetails.userComment | stringध्यान दें: इस प्रॉपर्टी का इस्तेमाल अब नहीं किया जा सकता. इस प्रॉपर्टी में, उपयोगकर्ता ने फ़ैन फ़ंडिंग वाले इवेंट के लिए टिप्पणी जोड़ी है. | 
| snippet.textMessageDetails | objectइस ऑब्जेक्ट में टेक्स्ट मैसेज के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप textMessageEventहो. | 
| snippet.textMessageDetails.messageText | stringउपयोगकर्ता का मैसेज. | 
| snippet.messageDeletedDetails | objectइस ऑब्जेक्ट में, चैट मॉडरेटर या लाइव ब्रॉडकास्ट के चैनल के मालिक की ओर से मिटाए गए मैसेज के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप messageDeletedEventहो. | 
| snippet.messageDeletedDetails.deletedMessageId | stringयह आईडी, मिटाए गए मैसेज की खास तौर पर पहचान करता है. इसकी वैल्यू, ओरिजनल टेक्स्ट मैसेज की idप्रॉपर्टी वैल्यू के बराबर होती है. उदाहरण के लिए, अगर किसीtextMessageEventमेंidप्रॉपर्टी की वैल्यू123है और बाद में उस मैसेज को मिटा दिया जाता है, तो उस मैसेज के लिएsnippet.messageDeletedDetails.deletedMessageIdकी वैल्यू123होगी.अगर चैट मैसेज को वापस पाने के बाद उन्हें कैश मेमोरी में सेव किया जाता है, तो इस प्रॉपर्टी की वैल्यू का इस्तेमाल करके उस मैसेज की पहचान करें जिसे अब नहीं दिखाया जाना चाहिए. | 
| snippet.userBannedDetails | objectइस ऑब्जेक्ट में उस उपयोगकर्ता के बारे में जानकारी होती है जिसे चैट से बैन कर दिया गया है. इसमें खाते पर लगे प्रतिबंध के बारे में भी जानकारी होती है. उपयोगकर्ताओं को चैट से हमेशा के लिए या कुछ समय के लिए बैन किया जा सकता है. | 
| snippet.userBannedDetails.bannedUserDetails | objectइस ऑब्जेक्ट में, पाबंदी लगाए गए उपयोगकर्ता के बारे में जानकारी होती है. | 
| snippet.userBannedDetails.bannedUserDetails.channelId | stringपाबंदी वाले उपयोगकर्ता का YouTube चैनल आईडी. | 
| snippet.userBannedDetails.bannedUserDetails.channelUrl | stringपाबंदी वाले उपयोगकर्ता के YouTube चैनल का यूआरएल. | 
| snippet.userBannedDetails.bannedUserDetails.displayName | stringप्रतिबंधित किए गए व्यक्ति के YouTube चैनल का डिसप्ले नेम. | 
| snippet.userBannedDetails.bannedUserDetails.profileImageUrl | stringपाबंदी वाले उपयोगकर्ता के YouTube चैनल का अवतार. | 
| snippet.userBannedDetails.banType | stringप्रतिबंध का टाइप. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| snippet.userBannedDetails.banDurationSeconds | unsigned longप्रतिबंध की अवधि. यह प्रॉपर्टी सिर्फ़ तब मौजूद होती है, जब snippet.userBannedDetails.banTypeप्रॉपर्टी की वैल्यूtemporaryहो. | 
| snippet.memberMilestoneChatDetails | objectइस ऑब्जेक्ट में, सदस्यता से जुड़े माइलस्टोन इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप memberMilestoneChatEventहो. | 
| snippet.memberMilestoneChatDetails.userComment | stringसदस्य ने इस लॉयल्टी मैसेज में जो टिप्पणी जोड़ी है. अगर सदस्य ने कोई टिप्पणी नहीं की है, तो यह फ़ील्ड खाली रहेगा. | 
| snippet.memberMilestoneChatDetails.memberMonth | unsigned integerदर्शक ने जितने महीनों तक सदस्यता ली है उसकी कुल संख्या. अगर दर्शक ने 1.5 महीने तक सदस्यता ली है, तो इसे दो महीने माना जाएगा. यह उतने ही महीनों की अवधि होती है जितनी YouTube उपयोगकर्ताओं को दिखाई जाती है. | 
| snippet.memberMilestoneChatDetails.memberLevelName | stringयह उस लेवल का नाम है जिस पर दर्शक सदस्य है. लेवल के नाम, पैसे चुकाकर ली जाने वाली सदस्यता की सुविधा देने वाला YouTube चैनल तय करता है. कुछ स्थितियों में, यह फ़ील्ड नहीं भरा जाता. | 
| snippet.newSponsorDetails | objectइस ऑब्जेक्ट में, नए सदस्य के शामिल होने की सूचना वाले इवेंट के बारे में जानकारी होती है. यह वैल्यू सिर्फ़ तब सेट की जाती है, जब टाइप newSponsorEventहो. "सदस्य" शब्द का इस्तेमाल "स्पॉन्सर" के लिए किया जाता है. | 
| snippet.newSponsorDetails.memberLevelName | stringयह उस लेवल का नाम है जिस पर दर्शक सदस्य है. लेवल के नाम, पैसे चुकाकर ली जाने वाली सदस्यता की सुविधा देने वाला YouTube चैनल तय करता है. कुछ मामलों में, यह फ़ील्ड नहीं भरा जाता. | 
| snippet.newSponsorDetails.isUpgrade | boolइससे पता चलता है कि दर्शक ने अभी-अभी किसी निचले लेवल से अपग्रेड किया है या नहीं. खरीदारी के समय सदस्य नहीं रहे दर्शकों के लिए, फ़ील्ड की वैल्यू falseहोती है. | 
| snippet.superChatDetails | objectइस ऑब्जेक्ट में सुपर चैट इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप superChatEventहो. | 
| snippet.superChatDetails.amountMicros | unsigned longखरीदारी की मुद्रा के माइक्रोज़ में खरीदारी की रकम. उदाहरण के लिए, अगर खरीदारी की रकम एक डॉलर है, तो snippet.amountMicrosप्रॉपर्टी की वैल्यू1000000होगी. | 
| snippet.superChatDetails.currency | stringवह मुद्रा जिसमें खरीदारी की गई थी. वैल्यू, ISO 4217 मुद्रा कोड है. | 
| snippet.superChatDetails.amountDisplayString | stringयह एक स्ट्रिंग होती है, जैसे कि $1.00. इसमें खरीदारी की रकम और मुद्रा की जानकारी होती है. इस स्ट्रिंग को उपयोगकर्ता को दिखाने के लिए बनाया गया है. | 
| snippet.superChatDetails.userComment | stringइस सुपर चैट इवेंट में उपयोगकर्ता ने यह टिप्पणी जोड़ी है. | 
| snippet.superChatDetails.tier | unsigned integerपैसे चुकाकर भेजे गए मैसेज का टियर. ध्यान दें कि superChatEventसंसाधन में,snippet.messageTypeप्रॉपर्टी में यह वैल्यू शामिल होती है.टियर, मैसेज खरीदने के लिए खर्च की गई रकम के आधार पर तय होता है. इससे यह भी तय होता है कि लाइव चैट के यूज़र इंटरफ़ेस (यूआई) में मैसेज को हाइलाइट करने के लिए किस रंग का इस्तेमाल किया जाएगा, मैसेज की ज़्यादा से ज़्यादा लंबाई कितनी होगी, और मैसेज को टिकर में कितने समय तक पिन किया जाएगा. सुपर चैट के टियर के बारे में जानकारी, YouTube के सहायता केंद्र में दी गई है. (सुपर चैट खरीदने के बारे में जानकारी देने वाला सेक्शन बड़ा करके देखें.) उस सूची में, खरीदारी के लिए सबसे कम कीमत वाला टियर 1 है. इसके बाद, टियर 2 में खरीदारी के लिए कीमत थोड़ी ज़्यादा है. इसी तरह, अन्य टियर में खरीदारी के लिए कीमत बढ़ती जाती है. | 
| snippet.superStickerDetails | objectइस ऑब्जेक्ट में, सुपर स्टिकर इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप superStickerEventहो. | 
| snippet.superStickerDetails.superStickerMetadata | objectSuper Sticker के बारे में जानकारी. | 
| snippet.superStickerDetails.superStickerMetadata.stickerId | stringयह एक यूनीक आईडी है, जो स्टिकर इमेज की पहचान करता है. ध्यान दें कि यह इमेज, Super Sticker के मैसेज के साथ ही दिखती है. ऐसा तब होता है, जब लोग YouTube पर चैट विंडो देखते हैं. हालांकि, एपीआई का इस्तेमाल करके इमेज का यूआरएल नहीं देखा जा सकता. सिर्फ़ जानकारी के लिए, इस CSV फ़ाइल में देखें कि कौनसे स्टिकर आईडी, किन सुपर स्टिकर से जुड़े हैं. | 
| snippet.superStickerDetails.superStickerMetadata.altText | stringयह एक टेक्स्ट स्ट्रिंग है, जिसमें स्टिकर के बारे में जानकारी दी गई है. snippet.superStickerDetails.superStickerMetadata.languageफ़ील्ड, टेक्स्ट की भाषा की पहचान करता है.liveChatMessages.listतरीके को कॉल करते समय, hl पैरामीटर की वैल्यू को टेक्स्ट के लिए चुनी गई भाषा पर सेट करें. | 
| snippet.superStickerDetails.superStickerMetadata.language | stringsnippet.superStickerDetails.superStickerMetadata.altTextप्रॉपर्टी वैल्यू की भाषा. | 
| snippet.superStickerDetails.amountMicros | unsigned longखरीदारी की मुद्रा के माइक्रोज़ में खरीदारी की रकम. उदाहरण के लिए, अगर खरीदारी की रकम एक डॉलर है, तो snippet.amountMicrosप्रॉपर्टी की वैल्यू1000000होगी. | 
| snippet.superStickerDetails.currency | stringवह मुद्रा जिसमें खरीदारी की गई थी. वैल्यू, ISO 4217 मुद्रा कोड है. | 
| snippet.superStickerDetails.amountDisplayString | stringयह एक स्ट्रिंग होती है, जैसे कि $1.00. इसमें खरीदारी की रकम और मुद्रा की जानकारी होती है. इस स्ट्रिंग को उपयोगकर्ता को दिखाने के लिए बनाया गया है. | 
| snippet.superStickerDetails.tier | unsigned integerपैसे चुकाकर भेजे गए मैसेज का टियर. ध्यान दें कि superChatEventसंसाधन में,snippet.messageTypeप्रॉपर्टी में यह वैल्यू शामिल होती है.टियर, मैसेज खरीदने के लिए खर्च की गई रकम के आधार पर तय होता है. इससे यह भी तय होता है कि लाइव चैट के यूज़र इंटरफ़ेस (यूआई) में मैसेज को हाइलाइट करने के लिए किस रंग का इस्तेमाल किया जाएगा, मैसेज की ज़्यादा से ज़्यादा लंबाई कितनी होगी, और मैसेज को टिकर में कितने समय तक पिन किया जाएगा. सुपर चैट के टियर, सुपर स्टिकर्स को भी कवर करते हैं. इनके बारे में YouTube के सहायता केंद्र में बताया गया है. (सुपर चैट खरीदने के बारे में जानकारी देने वाला सेक्शन बड़ा करके देखें.) उस सूची में, खरीदारी के लिए सबसे कम कीमत वाला टियर 1 है. इसके बाद, टियर 2 में खरीदारी के लिए कीमत थोड़ी ज़्यादा है. इसी तरह, अन्य टियर में खरीदारी के लिए कीमत बढ़ती जाती है. | 
| snippet.pollDetails | objectइस ऑब्जेक्ट में पोल इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब मैसेज टाइप pollEventहो. | 
| snippet.pollDetails.metadata | objectपोल इवेंट के बारे में जानकारी. | 
| snippet.pollDetails.metadata.options | objectलाइव पोल में मौजूद विकल्प. | 
| snippet.pollDetails.metadata.options.optionText | stringलाइव पोल के विकल्प का टेक्स्ट. | 
| snippet.pollDetails.metadata.options.tally | stringलाइव पोल के विकल्प के लिए मिले वोट की संख्या. यह टैली सिर्फ़ तब दिखती है, जब चैनल का मालिक एपीआई के अनुरोध को अनुमति देता है. | 
| snippet.pollDetails.metadata.questionText | stringलाइव पोल में पूछे गए सवाल का टेक्स्ट. | 
| snippet.pollDetails.metadata.status | enumलाइव पोल इवेंट की स्थिति. इस प्रॉपर्टी के लिए मान्य वैल्यू ये हैं: 
 | 
| snippet.membershipGiftingDetails | objectइस ऑब्जेक्ट में, सदस्यता तोहफ़े में देने से जुड़े इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब message typemembershipGiftingEventहो. | 
| snippet.membershipGiftingDetails.giftMembershipsCount | integerउपयोगकर्ता ने उपहार में दी जाने वाली सदस्यताओं को कितनी बार खरीदा. | 
| snippet.membershipGiftingDetails.giftMembershipsLevelName | stringउपयोगकर्ता ने सदस्यता के उपहार के जिस लेवल को खरीदा है उसका नाम. लेवल के नाम, पैसे चुकाकर ली जाने वाली सदस्यता की सुविधा देने वाला YouTube चैनल तय करता है. कुछ मामलों में, यह फ़ील्ड नहीं भरा जाता. | 
| snippet.giftMembershipReceivedDetails | objectइस ऑब्जेक्ट में, उपहार के तौर पर मिली सदस्यता से जुड़े इवेंट के बारे में जानकारी होती है. यह सिर्फ़ तब मौजूद होता है, जब message typegiftMembershipReceivedEventहो. | 
| snippet.giftMembershipReceivedDetails.memberLevelName | stringयह उस लेवल का नाम है जिस पर दर्शक सदस्य है. यह, सदस्यता का उपहार देने से जुड़े मैसेज के snippet.membershipGiftingDetails.giftMembershipsLevelNameसे मेल खाता है. लेवल के नाम, पैसे चुकाकर ली जाने वाली सदस्यता की सुविधा देने वाला YouTube चैनल तय करता है. कुछ मामलों में, यह फ़ील्ड नहीं भरा जाता. | 
| snippet.giftMembershipReceivedDetails.gifterChannelId | stringसदस्यता का तोहफ़ा देने के लिए खरीदारी करने वाले उपयोगकर्ता का आईडी. यह, सदस्यता का उपहार देने से जुड़े मैसेज के snippet.authorChannelIdसे मेल खाता है. | 
| snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId | stringयह गिफ़्ट की गई मेंबरशिप से जुड़ा, मेंबरशिप गिफ़्ट करने का मैसेज आईडी है. यह आईडी हमेशा ऐसे मैसेज को रेफ़र करेगा जिसका typemembershipGiftingEventहै. | 
| authorDetails | objectauthorDetailsऑब्जेक्ट में, मैसेज पोस्ट करने वाले उपयोगकर्ता के बारे में ज़्यादा जानकारी होती है. | 
| authorDetails.channelId | stringलेखक के YouTube चैनल का आईडी. | 
| authorDetails.channelUrl | stringलेखक के YouTube चैनल का यूआरएल. | 
| authorDetails.displayName | stringलेखक के YouTube चैनल का डिसप्ले नेम. | 
| authorDetails.profileImageUrl | stringलेखक के YouTube चैनल के अवतार का यूआरएल. | 
| authorDetails.isVerified | booleanइस वैल्यू से पता चलता है कि YouTube ने लेखक की पहचान की पुष्टि की है या नहीं. | 
| authorDetails.isChatOwner | booleanइस वैल्यू से पता चलता है कि लेखक, लाइव चैट का मालिक है या नहीं. | 
| authorDetails.isChatSponsor | booleanइस वैल्यू से पता चलता है कि लेखक ने लाइव चैट को स्पॉन्सर किया है या नहीं. | 
| authorDetails.isChatModerator | booleanइस वैल्यू से पता चलता है कि लेखक, लाइव चैट का मॉडरेटर है या नहीं. |