主端¶
主端是 EFB 框架直接或间接与用户交互的界面。尽管 EFB 的第一个主端(EFB Telegram 主端)是用 Telegram Bot 的形式展现的,但主端的展现形式可能多重多样:
Web App
提供 API 给专有桌面和移动客户端程序的服务端程序
面向现有 IM 的 bot
使用泛用型 IM 协议的服务器程序
CLI 客户端
其他任何你能想到的形式…
设计指南¶
当主端在现有的协议或平台上实现时,在尽可能在考虑用户体验的同时也应当(SHOULD):
为每一个会话提供一个专属的聊天串,标注其名称、来源信道和类型;
尽可能支持框架所定义的所有消息类型,在用户和从端之间处理并传递消息;
尽可能支持所有消息特性,包括直接回复消息、消息指向替换(通常用于 @ 引用用户)、消息指令等。主端应当(SHOULD)能够处理来自从端的具有此类特性的消息,并在适当的情况允许用户发送具有这些特性的消息到从端;
能够调用和处理从端提供的「附加功能」。
另外,主端可以选择支持一些从端提供的「供应商特定」数据。
取决于实现方式,主端可能需要维护一个完整的会话和消息列表,以展示给用户或用作其他用途。
消息传递¶
注意:有时用户可能在 EFB 进程之外发送消息,因此从端有可能传递发件人为「self」类型的消息到主端。
实现细节¶
参见 MasterChannel
。