我正在使用skype4py为skype制作一个小机器人。机器人连接到我的skype客户端,我想要的是机器人接受我自己或与我聊天的人的输入,并从输入处输出到聊天窗口。
为此,我使用sendMessage(消息文本,handle_of_person_im_chatting_with)。
当我收到与我聊天的人发出的命令时,这很容易实现,因为RECEIVED事件带有一个包含他们用户名的"fromHandle"属性,所以我可以将sendMessage定向到该句柄。但我一辈子都不知道如何从SENT事件中获得用户句柄。
在导入后将其放在首位
def commands(Message, Status):
if Status == 'RECEIVED' or (Status == 'SENT'):
if Message.Body.startswith(".help"):
cmd_help(Message)
然后让它在什么时候有一个输出。帮助被用来放置这个
def cmd_commandhere(Message):
Message.Chat.SendMessage("Hello, " + Message.Sender.Handle)
print "commandhere command received from: " + Message.Sender.Handle
然后把这个放在底部
skype = Skype4Py.Skype()
client = Skype4Py.client.Client(skype)
skype.OnMessageStatus = commands
Skype.Attach()
while True:
raw_input('')