Python 从slack bot接收消息
我对slackbot使用Python感到非常困惑。我希望能够接收通过bot发送到的消息:Python 从slack bot接收消息,python,slack,Python,Slack,我对slackbot使用Python感到非常困惑。我希望能够接收通过bot发送到的消息: client = SlackClient(API_TOKEN) if client.rtm_connect(): while True: print client.rtm_read() time.sleep(1) else: print "Connection Failed, invalid token?" 然后我向我的机器人发送一条消息。但我不明白。如何
client = SlackClient(API_TOKEN)
if client.rtm_connect():
while True:
print client.rtm_read()
time.sleep(1)
else:
print "Connection Failed, invalid token?"
然后我向我的机器人发送一条消息。但我不明白。如何开始向我的用户发送消息
此外,是否可以在所有渠道中包括机器人?因此,如果我在任何通道中,我希望能够说
@myBot args 123
Slack只向加入通道的机器人发送事件,默认情况下,它们不加入任何通道,只接收私人消息的事件。如果您邀请您的机器人到频道,那么Slack应该开始将事件从频道路由到它
至于问题的第二部分,提及(例如,
@bot
)不是特殊事件,您必须检查每个传入事件,以确定它是否是指向您的bot的消息(见此。一个问题是你需要知道你的机器人的ID,因为事件将包含类似于args 123
的内容。查找你的机器人的ID和其他构建python slack机器人的有用提示可以在中找到。slack中有许多类型的事件,如果你的机器人订阅了这些事件,那么你的机器人肯定会得到响应请求URL上的相关流量
所以,如果您想接收直接发送到BOT的任何消息,您必须订阅direct message事件
如果你想让你的机器人由@BOT.类消息触发,那么你需要订阅app_-nite事件。如果你的机器人在任何组中被提及,它将接收流量,但它可以将消息发布到唯一允许它发布的组