问题描述
我按照视频教程编写了一个简单的 Python twitch bot,但该教程不包括耳语功能。 它目前可以连接到我指定的频道的聊天,但是当我尝试让它发送耳语时没有任何反应。 这是相关的代码位:
import socket
def openSocket():
s = socket.socket()
s.connect((HOST, PORT))
message = "PASS " + PASS + "\r\n"
s.send(message.encode('utf-8'))
message = "NICK " + USER + "\r\n"
s.send(message.encode('utf-8'))
message = "JOIN #" + CHAN + "\r\n"
s.send(message.encode('utf-8'))
return s
def sendMessage(s, message):
messageTemp = "PRIVMSG #" + CHAN + " :" + message + "\r\n"
s.send(messageTemp.encode('utf-8'))
print("Sent:" + messageTemp)
def sendWhisper(s, user, message):
messageTemp = "PRIVMSG #jtv :/w " + user + " " + message
s.send(messageTemp.encode('utf-8'))
import string
from Socket import sendMessage
def joinRoom(s):
readbuffer = ""
Loading = True
while Loading:
readbuffer = readbuffer + s.recv(1024).decode()
temp = readbuffer.split('\n')
readbuffer = temp.pop()
for line in temp:
print(line)
Loading = loadingComplete(line)
def loadingComplete(line):
if("End of /NAMES list" in line):
return False;
else: return True
我一直在阅读一些关于连接到某种群聊以完成这项工作的内容,但我很困惑,还没有找到我要找的东西。 看起来它应该是一个简单的修复。 任何帮助表示赞赏。
1楼
你很亲近
搞砸的地方在jtv
前面不应有#
:
def sendWhisper(s, user, message):
messageTemp = "PRIVMSG jtv :/w " + user + " " + message
s.send(messageTemp.encode('utf-8'))
2楼
要发送IRC专用消息,请将PRIVMSG
发送到用户的昵称,而不是发送到频道,例如
PRIVMSG username :here is a message