Как найти идентификатор запрета чата YouTube, чтобы удалить его

#youtube-livestreaming-api

#youtube-прямая трансляция-api

Вопрос:

API потокового вещания YouTube имеет возможность запрещать и отменять запрет пользователя на чат и предоставляет следующий метод специально для выполнения отмены запрета:

https://developers.google.com/youtube/v3/live/docs/liveChatBans/delete

API требует, чтобы вы передали параметр id, который идентифицирует запрет чата для удаления, и указывает, что значение однозначно идентифицирует как запрет, так и чат. Однако не существует никакого способа поиска запретов на чат для канала, кроме как когда вы получаете идентификатор обратно изначально, когда происходит запрет.

Итак, нет ли способа отменить запрет пользователя через API спустя долгое время после того, как запрет произошел, и у вас больше нет идентификатора запрета?

Ответ №1:

На самом деле, LiveChatBanId — это строка в кодировке base64, содержащая

  • идентификатор канала запрещенного пользователя
  • идентификатор канала владельца
  • несколько случайных байтов?

Вот некоторый код python, который сгенерирует его для вас

 import base64
banned_user_id = 'banned user id'
owner_channel_id = 'channel owner id'

decoded = f"x08x01x12x18{banned_user_id}x1a8nrnx0b7cHT2DHCA7s*'nx18{owner_channel_id}x12x0b7cHT2DHCA7s".encode('utf-8')
encoded = base64.b64encode(decoded)
print(encoded)
 

Заполните banned_user_id и owner_channel_id

Возможно, вам потребуется дважды вызвать метод «LiveChatBans: удалить», вот как работает Google