Как получить liveChatID без аутентификации владельца с помощью YouTube Live API?

Я пытаюсь получить живой чат для данной прямой трансляции на YouTube с целью модерации чата (что да, потребуется авторизация мода).

Хотя в данный момент я работаю только над тем, чтобы получить чат, как я могу получить liveChatId из liveBroadcasts/list, используя идентификатор трансляции (это просто идентификатор видео, верно?). Каждый ресурс, который я нашел до сих пор, делает это для своего собственного чата, хотя я хотел бы получить чат другого пользователя.

Поскольку запрос требует аутентификации, я просто использую учетную запись, которая не является владельцем и не имеет полномочий мода.

При попытке получить фрагмент широковещательной рассылки (atm) он повторяется с кодом 200, но элементов нет.

e.g.

{
    kind: youtube#liveBroadCastListResponse,
    etag: "{string of random num & chars}",
    pageInfo: {
        totalResults: 0,
        resultsPerPage: 5
    },
    items: []
}


Изменить — пример запроса (Node.js)

/* auth = {oauth2 token credentials} | google = require('googleapis')
   eventID not used, hardcoded atm.
 */


function getEventDetails(auth, eventID) {
    let service = google.youtube('v3');

    service.liveBroadcasts.list({
        auth: auth,
        part: 'snippet',
        id: 'ChlYPack5Jc' // eventID
    }, (err, res) => {
        if(err) {
            return console.log('API returned error: ' + err);
        }

        console.log(res);
    });
}

person sparcut    schedule 24.05.2017    source источник


Ответы (1)


Если вы получаете ответ 200 ok, но пустой ответ, попробуйте указать конкретные параметры поля, которые вы хотите включить в результат. Список полей можно найти здесь.

person noogui    schedule 24.05.2017
comment
Правильно, все, что у меня есть, пока я тестирую и получаю это, это snippet и contentDetails. Пробовал собирать их по отдельности и вместе. Это то, что ты имеешь в виду? Я использую JavaScript (узел), поэтому я обновил исходный вопрос примером. - person sparcut; 26.05.2017