Model 模块
Model模块提供了钉钉机器人开发中常用的数据模型类。
基础类
Group
群组类,用于表示钉钉群组。
属性
id: 群组IDname: 群组名称openConversationId: 群组会话IDwebhook: 群组Webhook对象member: 当前操作成员对象traceId: 消息追踪ID
方法
__str__(): 返回群组ID__int__(): 返回群组ID的整数形式
Member
成员类,用于表示钉钉用户。
属性
id: 用户IDname: 用户名称staffId: 员工IDunionId: 用户唯一标识mobile: 手机号码avatar: 头像URLgroup: 所属群组对象traceId: 消息追踪ID
方法
__str__(): 返回用户ID__int__(): 返回用户ID的整数形式
OpenConversationId
群组会话ID类。
属性
openConversationId: 会话IDname: 会话名称group_id: 群组IDtraceId: 消息追踪ID
方法
__str__(): 返回会话ID__int__(): 返回会话ID的整数形式
Webhook
Webhook类,用于处理钉钉的Webhook回调。
属性
url: Webhook URLexpired_time: 过期时间_type: Webhook类型
方法
__str__(): 返回Webhook URL
TraceId
消息追踪ID类。
属性
id: 追踪ID
方法
__str__(): 返回追踪ID
Bot
机器人类。
属性
id: 机器人IDname: 机器人名称origin_id: 原始IDtrace_id: 追踪ID
方法
__str__(): 返回机器人ID
使用示例
from dingraia.model import Group, Member, OpenConversationId
# 创建群组对象
group = Group()
group.id = "123456"
group.name = "测试群"
# 创建成员对象
member = Member()
member.id = "user123"
member.name = "张三"
member.staffId = "staff123"
# 设置关联关系
member.group = group
group.member = member
# 创建会话ID对象
conv_id = OpenConversationId("cid123456")
conv_id.name = "测试会话"
注意事项
模型对象通常由框架自动创建和填充,一般不需要手动创建
模型对象的属性可能不会全部填充,使用前需要判断
模型对象之间可以建立关联关系,但要注意避免循环引用
某些属性(如traceId)在异步操作中特别重要,需要正确传递