| # 杂项 |
|
|
| ## 获取消息平台实例 |
|
|
| > v3.4.34 后 |
|
|
| ```python |
| from astrbot.api.event import filter, AstrMessageEvent |
| |
| @filter.command("test") |
| async def test_(self, event: AstrMessageEvent): |
| from astrbot.api.platform import AiocqhttpAdapter # 其他平台同理 |
| platform = self.context.get_platform(filter.PlatformAdapterType.AIOCQHTTP) |
| assert isinstance(platform, AiocqhttpAdapter) |
| # platform.get_client().api.call_action() |
| ``` |
|
|
| ## 调用 QQ 协议端 API |
|
|
| ```py |
| @filter.command("helloworld") |
| async def helloworld(self, event: AstrMessageEvent): |
| if event.get_platform_name() == "aiocqhttp": |
| # qq |
| from astrbot.core.platform.sources.aiocqhttp.aiocqhttp_message_event import AiocqhttpMessageEvent |
| assert isinstance(event, AiocqhttpMessageEvent) |
| client = event.bot # 得到 client |
| payloads = { |
| "message_id": event.message_obj.message_id, |
| } |
| ret = await client.api.call_action('delete_msg', **payloads) # 调用 协议端 API |
| logger.info(f"delete_msg: {ret}") |
| ``` |
|
|
| 关于 CQHTTP API,请参考如下文档: |
|
|
| Napcat API 文档:<https://napcat.apifox.cn/> |
|
|
| Lagrange API 文档:<https://lagrange-onebot.apifox.cn/> |
|
|
| ## 获取载入的所有插件 |
|
|
| ```py |
| plugins = self.context.get_all_stars() # 返回 StarMetadata 包含了插件类实例、配置等等 |
| ``` |
|
|
| ## 获取加载的所有平台 |
|
|
| ```py |
| from astrbot.api.platform import Platform |
| platforms = self.context.platform_manager.get_insts() # List[Platform] |
| ``` |
|
|