예제 #1
0
def text_reply(msg):
    """ 监听用户消息,用于自动回复 """
    try:
        # print(json.dumps(msg, ensure_ascii=False))

        uuid = msg.fromUserName  # 获取发送者的用户id
        # 如果用户id是自动回复列表的人员或者文件传输助手,则进行下一步的操作
        if uuid in reply_user_name_uuid_list or msg['ToUserName'] == FILEHELPER:
            receive_text = msg.text  # 好友发送来的消息内容
            # 通过图灵 api 获取要回复的内容。
            reply_text = get_bot_info(receive_text, uuid)
            time.sleep(1)  # 休眠一秒,保安全,想更快的,可以直接用。
            if reply_text:  # 如内容不为空,回复消息
                if msg['ToUserName'] == FILEHELPER:
                    reply_text = '机器人自动回复:{}'.format(reply_text)
                    itchat.send(reply_text, toUserName=FILEHELPER)
                    print('\n我发出信息:{}\n回复{}:'.format(receive_text, reply_text))
                else:
                    msg.user.send(reply_text)
                    print('\n{}发来信息:{}\n回复{}:{}'.format(
                        msg.user.nickName, receive_text, msg.user.nickName,
                        reply_text))
            else:
                if msg['ToUserName'] == FILEHELPER:
                    print('我发来信息:{} 自动回复失败'.format(receive_text))
                else:
                    print('{}发来信息:{} 自动回复失败'.format(msg.user.nickName,
                                                    receive_text))
    except Exception as e:
        print(str(e))
예제 #2
0
def text_reply(msg):
    """ 监听用户消息 """
    try:
        # print(msg)
        uuid = msg.fromUserName
        if uuid in reply_name_uuid_list:
            receive_text = msg.text  # 好友发送来的消息
            # 通过图灵 api 获取要回复的内容。
            reply_text = get_bot_info(receive_text)
            time.sleep(1)  # 休眠一秒,保安全,想更快的,可以直接用。
            if reply_text:  # 如内容不为空,回复消息
                msg.user.send(reply_text)  # 发送回复
                print('\n{}发来信息:{}\n回复{}:{}'
                      .format(msg.user.nickName, receive_text, msg.user.nickName, reply_text))
            else:
                print('{}发来信息:{}\t自动回复失败'
                      .format(msg.user.nickName, receive_text))
    except Exception as e:
        print(str(e))
예제 #3
0
def text_reply(msg):
    """ 监听用户消息,用于自动回复 """
    try:
        print(json.dumps(msg, ensure_ascii=False))
        print(reply_userNames)
        # 获取发送者的用户id
        uuid = FILEHELPER if msg['ToUserName'] == FILEHELPER else msg.fromUserName
        # 如果用户id是自动回复列表的人员
        if uuid in reply_userNames:
            receive_text = msg.text  # 好友发送来的消息内容
            # 好友叫啥
            nickName = FILEHELPER if uuid == FILEHELPER else msg.user.nickName
            print('\n{}发来信息:{}'.format(nickName, receive_text))
            reply_text = get_bot_info(receive_text, uuid)  # 获取自动回复
            time.sleep(1)  # 休眠一秒,保安全。想更快的,可以直接注释。
            if reply_text:  # 如内容不为空,回复消息
                reply_text = reply_text if not uuid == FILEHELPER else '机器人回复:' + reply_text
                itchat.send(reply_text, toUserName=uuid)
                print('回复{}:{}\n'.format(nickName, reply_text))
            else:
                print('自动回复失败\n'.format(receive_text))
    except Exception as e:
        print(str(e))