开发文档

MTProto 服务消息、确认与会话恢复

理解 RPC 结果关联、消息确认、salt 与重发,避免将取消接收结果误解为撤销业务操作。

GetTGAPI 编辑团队更新于
文档解读核对日期

依据官方资料整理,由 GetTGAPI 独立维护。 文档目录与术语表 →

本页内容
  1. 消息确认有协议语义
  2. 取消等待不等于撤销执行
  3. 恢复建议

消息确认有协议语义

RPC 返回通过请求消息标识关联;结果本身也可能需要确认。其他服务消息处理会话、salt、时间和消息状态等问题,不应作为用户聊天正文显示。

取消等待不等于撤销执行

丢弃 RPC 回应的机制并不保证已经提交的业务操作停止。断开网络同样不能可靠撤销发送或付款。业务系统必须把“没有收到结果”和“明确失败”分开。

恢复建议

记录操作身份和已知结果,在恢复连接后先核对状态。校正时间、salt 或序号应由协议实现按错误类型处理,不能对所有异常统一立即重试。

测试已处理但回应丢失、回应重复、旧消息重发与客户端重启。对资金、消息发送或授权等动作,幂等和结果核验比单纯增加重试次数更重要。