async def add_member_first_receive(bot: cqhttp.Bot, event: cqhttp.PrivateMessageEvent, state: typing.T_State): raw_args = str(event.get_message()).strip() if raw_args: arg_list = raw_args.split(plugin_config.separator) state['info'] = arg_list
async def update_member_handler(bot: cqhttp.Bot, event: cqhttp.PrivateMessageEvent, state: typing.T_State): # Request valid confirmation for update while True: if str(event.get_message()).strip() not in InteractionMessage.CONFIRMATION_MESSAGE: await update_member.reject(InteractionMessage.INVALID_ARG) else: break user_confirm = str(event.get_message()).strip() if user_confirm.startswith(InteractionMessage.CONFIRMATION_MESSAGE[1]): # Do not update await update_member.finish(message=InteractionMessage.RECORD_CHANGE_ABORT) else: new_info = { 'member_id': str(state['new_info'][0]).strip(), 'alias': str(state['new_info'][1]).strip(), 'account': str(state['new_info'][2]).strip(), 'password': str(state['new_info'][3]).strip() } update_result = await data_source.mc.update(new_info) if update_result['error'] is None: await update_member.finish(message=InteractionMessage.RECORD_CHANGE_SUCCESS) else: if bot.config.debug: await bot.send_private_msg( user_id=plugin_config.AUTHOR, message=update_result['func_info'] ) await bot.send_private_msg( user_id=plugin_config.AUTHOR, message=update_result['error'] ) await update_member.finish('\n'.join([ InteractionMessage.RECORD_CHANGE_FAIL, InteractionMessage.ERROR_MESSAGE ]))
async def add_member_parser(bot: cqhttp.Bot, event: cqhttp.PrivateMessageEvent, state: typing.T_State): state[state['_current_key']] = str(event.get_message()).strip().split(plugin_config.separator)
async def handle_private(bot: Bot, event: PrivateMessageEvent): await auth.finish("请前往以下链接进行授权:\n" + get_auth_link(event.get_user_id()))