"""Generated reviewed adapter for draw-lot.""" from jwebot_sdk import Event, ExtensionResult, ReplyPlan, SingleGroupContext PROFILE = 'draw-lot' AUTHOR = 'jwebot' DESCRIPTION = '抽取一条本地签文' HELP_ENTRIES = ('/抽签',) COMMANDS = ('/抽签',) def _handler(context: SingleGroupContext, command: str): def handle(event: Event, arguments: str) -> ExtensionResult: response = context.services.call( PROFILE, operation="execute", payload={ "command": command, "arguments": arguments, "event": event.to_mapping(), }, ) texts = response.get("texts") if isinstance(texts, list) and texts and all( isinstance(item, str) and item.strip() for item in texts ): return ExtensionResult( reply=ReplyPlan.multi_text(texts), metadata={"local_extension": PROFILE, "author": AUTHOR}, ) text = response.get("text") if not isinstance(text, str) or not text.strip(): raise ValueError("local service returned invalid text") return ExtensionResult( reply=ReplyPlan.text(text), metadata={"local_extension": PROFILE, "author": AUTHOR}, ) return handle def plugin(context: SingleGroupContext) -> None: for command in COMMANDS: context.commands.register(command, _handler(context, command))