首页 > 解决方案 > YouTube API 未从已结束的广播事件中检索 liveChatId

问题描述

我正在尝试检索我从已经结束的直播中获得的所有聊天消息。但是使用下面的请求,它不会检索谷歌文档中提到的任何 snippet.liveChatId:https ://developers.google.com/youtube/v3/live/docs/liveBroadcasts#snippet.liveChatId

如果我尝试即将到来的流媒体,它确实可以正常工作。

如果我无法获得正确的 liveChatId,在这种情况下如何获得聊天消息?

MY_XPTO 替换了一些值

要求:

    GET https://www.googleapis.com/youtube/v3/liveBroadcasts?part=snippet&id=MY_ID&key=[YOUR_API_KEY] HTTP/1.1

    Authorization: Bearer [YOUR_ACCESS_TOKEN]
    Accept: application/json

回复:

    {
     "kind": "youtube#liveBroadcastListResponse",
     "etag": "MY_ETAG",
     "pageInfo": {
      "totalResults": 0,
      "resultsPerPage": 5
     },
     "items": [
      {
       "kind": "youtube#liveBroadcast",
       "etag": "MY_ETAG,
       "id": "MY_ID",
       "snippet": {
        "publishedAt": "2020-04-03T21:23:06.000Z",
        "channelId": "MY_CHANNEL_ID",
        "title": "MY_TITLE",
        "description": "MY_DESCRIPTION",
        "thumbnails": {
         "default": {
          "url": "MYURL",
          "width": 120,
          "height": 90
         },
         "medium": {
          "url": "MY_URL",
          "width": 320,
          "height": 180
         },
         "high": {
          "url": "MY_URL",
          "width": 480,
          "height": 360
         },
         "standard": {
          "url": "MY_URL",
          "width": 640,
          "height": 480
         },
         "maxres": {
          "url": "MY_URL",
          "width": 1280,
          "height": 720
         }
        },
        "scheduledStartTime": "2020-04-07T20:00:00.000Z",
        "actualStartTime": "2020-04-07T20:01:00.326Z",
        "actualEndTime": "2020-04-07T21:43:52.000Z",
        "isDefaultBroadcast": false
       }
      }
     ]
    }

标签: apiyoutuberequestyoutube-apilivechat

解决方案


该文件指出:

字符串(返回类型)附加到此视频的当前活动实时聊天的 ID。仅当视频是具有实时聊天功能的当前直播时才填写此字段。一旦广播转换完成,此字段将被删除并且实时聊天关闭。对于持续性广播,实时聊天 ID 将不再与此视频相关联,而是与在持续性页面上显示的新视频相关联。

强调我的。

这意味着 YouTube 会销毁liveChatId完成后(更准确地说,在流或首映结束后约 400 秒),因此通过合法方式获取它liveChatId是不可能的。此外,即使您设法获得该 ID,您也无法使用该 ID 来修改之前直播的聊天内容。


推荐阅读