Используя IRC API twitches, я пытаюсь получить всех текущих зрителей моего потока, когда бот запускается, однако on_names никогда не запускается, даже несмотря на то, что когда бот подключается, он должен получать сообщения JOIN, 353 и 366, но выполняется только on_join. (pubmsg, добро пожаловать и присоединяйтесь ко всем работам)
import irc.client
def on_connect(connection, event):
logging.info(f"Connected to {connection.server}")
connection.join(channel)
def on_join(connection, event):
logging.info(f"Joined {channel}")
logging.info(f"event: {event}")
def on_names(connection, event):
logging.info(f"Received raw message: {event} - Type: {event.type}")
# Check for NAMES response
if event.type == "353": # NAMES reply
# Format: :tmi.twitch.tv 353 = :
channel = event.arguments[1]
names = event.arguments[2].split()
global viewers
viewers = names
logging.info(f"Updated list of viewers in {channel}: {viewers}")
elif event.type == "366": # End of NAMES reply
logging.info(f"End of NAMES list for {event.arguments[1]}.")
def run_irc_bot(server, port, nickname, token):
reactor = irc.client.Reactor()
factory = irc.connection.Factory(wrapper=ssl.wrap_socket)
try:
logging.info("Connecting to chat...")
connection = reactor.server().connect(server, port, nickname, token, connect_factory=factory)
logging.info(f"Connected to {server} as {nickname}")
except irc.client.ServerConnectionError as e:
logging.error(f"Could not connect to server: {e}")
return
connection.add_global_handler('welcome', on_connect)
connection.add_global_handler('join', on_join)
connection.add_global_handler('pubmsg', on_pubmsg)
connection.add_global_handler(353, on_names)
connection.add_global_handler(366, on_names)
try:
reactor.process_forever()
except KeyboardInterrupt:
logging.info("Shutting down...")
finally:
connection.close()
logging.info("Bot disconnected.")
Я тоже пробовал
connection.add_global_handler('names', on_names)
connection.add_global_handler('353', on_names)
connection.add_global_handler('366', on_names)
Подробнее здесь: https://stackoverflow.com/questions/791 ... tch-stream
Как с помощью IRC я могу получить список текущих зрителей моего потока на Twitch? ⇐ Python
Программы на Python
1730828470
Anonymous
Используя IRC API twitches, я пытаюсь получить всех текущих зрителей моего потока, когда бот запускается, однако on_names никогда не запускается, даже несмотря на то, что когда бот подключается, он должен получать сообщения JOIN, 353 и 366, но выполняется только on_join. (pubmsg, добро пожаловать и присоединяйтесь ко всем работам)
import irc.client
def on_connect(connection, event):
logging.info(f"Connected to {connection.server}")
connection.join(channel)
def on_join(connection, event):
logging.info(f"Joined {channel}")
logging.info(f"event: {event}")
def on_names(connection, event):
logging.info(f"Received raw message: {event} - Type: {event.type}")
# Check for NAMES response
if event.type == "353": # NAMES reply
# Format: :tmi.twitch.tv 353 = :
channel = event.arguments[1]
names = event.arguments[2].split()
global viewers
viewers = names
logging.info(f"Updated list of viewers in {channel}: {viewers}")
elif event.type == "366": # End of NAMES reply
logging.info(f"End of NAMES list for {event.arguments[1]}.")
def run_irc_bot(server, port, nickname, token):
reactor = irc.client.Reactor()
factory = irc.connection.Factory(wrapper=ssl.wrap_socket)
try:
logging.info("Connecting to chat...")
connection = reactor.server().connect(server, port, nickname, token, connect_factory=factory)
logging.info(f"Connected to {server} as {nickname}")
except irc.client.ServerConnectionError as e:
logging.error(f"Could not connect to server: {e}")
return
connection.add_global_handler('welcome', on_connect)
connection.add_global_handler('join', on_join)
connection.add_global_handler('pubmsg', on_pubmsg)
connection.add_global_handler(353, on_names)
connection.add_global_handler(366, on_names)
try:
reactor.process_forever()
except KeyboardInterrupt:
logging.info("Shutting down...")
finally:
connection.close()
logging.info("Bot disconnected.")
Я тоже пробовал
connection.add_global_handler('names', on_names)
connection.add_global_handler('353', on_names)
connection.add_global_handler('366', on_names)
Подробнее здесь: [url]https://stackoverflow.com/questions/79155930/using-irc-how-can-i-get-a-list-of-current-viewers-of-my-twitch-stream[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия