私は TwitchTV の Python チャット ボットにしばらく取り組んでいますが、まだ Python に慣れていません。
簡単に思えるかもしれませんが、これは私を混乱させたので、質問することにしました:
現在、Twitch Chat からメッセージをプルしています。data = irc.recv
私がやりたいのは、プルされたデータを使用して文字列に変換することです。これにより、次を使用してメッセージの大文字をチェックできますstr.isupper()
私はすでにいくつかの方法を試しました。
data = irc.recv (4096)
msg = data()
capsTime = "30s"
str = msg
if str.isupper():
message("[-] Woah! Hold back on the caps! (Timeout " + capsTime + ")")
message("/timeout " + user + capsTime)
# variable "user" already defined
これは、残念ながら機能しなかった 1 つのみです。
編集:
これは私の新しいコードです。エラー メッセージなしで実行されますが、思ったように機能しません。
while True:
data = irc.recv (4096)
user = data.split(':')[1]
user = user.split('!')[0]
caps = data.split(':')[0]
capsmsg = str(data)
print data
if data.find('PING') != -1:
irc.send('PONG ' + data.split()[1] + '\r\n')
if capsmsg.isupper():
message("[-] Woah! Hold back on the caps, " + user + "! (Timeout 30s)")
message("/timeout " + user + " 30s")
編集2:
期待される出力: メッセージがすべて大文字で見つかった場合、次のメッセージが出力され、ユーザーがタイムアウトします。
message("[-] Woah! Hold back on the caps, " + user + "! (Timeout 30s)")
現在の出力: ボットはメッセージを取得したり、スクリプト化されたコードを実行したりしません。