"""Generated reviewed adapter for dice.""" from jwebot_sdk import Event, ExtensionResult, ReplyPlan, SingleGroupContext PROFILE = 'dice' AUTHOR = 'jwebot' DESCRIPTION = '骰子和多人骰子挑战' HELP_ENTRIES = ('/丢骰子 [NdM]', '/丢骰子挑战 [5d6|5d20|状态|结算|战绩|结束]') 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))