Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于回调机制的一些设想 #520

Open
2 tasks done
Szzrain opened this issue Jan 3, 2024 · 0 comments
Open
2 tasks done

关于回调机制的一些设想 #520

Szzrain opened this issue Jan 3, 2024 · 0 comments
Labels
enhancement New feature or request important 重要提案/设计相关的pr和issue,用于技术和动机考古

Comments

@Szzrain
Copy link
Contributor

Szzrain commented Jan 3, 2024

在提问之前...

  • 我填写了简短且清晰明确的标题,以便开发者在翻阅 issue 列表时能快速确定大致问题。而不是“一个建议”、“卡住了”等
  • 我基本确定这是一个新功能/建议,而不是遇到了 bug(不确定的话请附上日志)

说说你遇到的问题?

discord tg kook 等平台都支持 bot 发送带回调机制的按钮消息,如果海豹能够接入这些 api 并能够在 Js 环境中使用就好了

有什么好的想法?

我还没有详细去看平台侧 api 的文档,目前的粗略设想是在海豹内部设计一个统一的回调事件管理器,Js 插件通过注册 EventHandler 函数的方式处理事件,但是如何发送出去按钮消息成了一个问题。
目前我有两个想法

  1. 调用 RegisterEventHandler 函数返回一个 CallBackID 然后定义一个 CQ 码 例如 CQ:button 用于将其转换为富文本消息发送出去,这种实现方式不需要大改 Adapter 方面的接口,但有屎山拉屎的嫌疑
  2. 大改 Adapter 方面的接口,定义一个新的富文本消息的发送接口,该接口发送消息时传入 MessageElement 数组,Js 发送带按钮等回调功能的消息时可以直接传入 EventHandler 函数,省去注册时步骤

其他内容

上面的构思是上厕所的时候想出来的,可能没过脑子,开一个 issue 讨论一下

@Szzrain Szzrain added the enhancement New feature or request label Jan 3, 2024
@fy0 fy0 added the important 重要提案/设计相关的pr和issue,用于技术和动机考古 label Mar 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request important 重要提案/设计相关的pr和issue,用于技术和动机考古
Projects
None yet
Development

No branches or pull requests

2 participants