获取会话消息2(按照消息时间逆序)
GET
/open-api/chat/message/list/v2
由于数据条数总量可能很多,暂不提供总量字段,请在抓取时判断返回列表长度。如果列表长度不足设置的 limit 值(默认30),则说明没有更多数据。
注:下列定义均来自企业微信文档,微伴只对其进行存储
class TextMsgData(TypedDict):
""" 文字消息体 """
content: str # 消息内容
class ImageMsgData(TypedDict):
""" 图片消息体 """
sdkfileid: str # 媒体资源的id信息
md5sum: str # 图片资源的md5值
filesize: str # 图片资源的文件大小
class RevokeMsgData(TypedDict):
""" 撤回消息体 """
pre_msgid: str # 标识撤回的原消息的msgid
class AgreeMsgData(TypedDict):
""" 同意消息体 """
userid: str # 同意协议者的userid,外部企业默认为openid
agree_time: int # 同意协议的时间,utc时间,ms单位
class VoiceMsgData(TypedDict):
""" 语音消息体 """
voice_size: int # 语音消息大小
play_length: int # 播放长度
sdkfileid: str # 媒体资源的id信息
md5sum: str # 图片资源的md5值
class VideoMsgData(TypedDict):
""" 视频消息体 """
sdkfileid: str # 媒体资源的id信息
md5sum: str # 图片资源的md5值
filesize: str # 图片资源的文件大小
play_length: int # 视频播放长度
class CardMsgData(TypedDict):
""" 名片消息体 """
corpname: str # 名片所有者所在的公司名称
Userid: str # 名片所有者的id,同一公司是userid,不同公司是openid
class LocationMsgData(TypedDict):
""" 位置消息体 """
longitude: float # 精度,单位double
latitude: float # 维度,单位double
address: str # 地址信息
title: str # 位置信息的title
zoom: int # 缩放比例
class EmotionMsgData(TypedDict):
""" 表情消息体 """
type: int # 表情类型,png或者gif.1表示gif 2表示png
width: int # 表情图片宽度
height: int # 表情图片高度
sdkfileid: str # 媒体资源的id信息
md5sum: str # 图片资源的md5值
imagesize: int # 资源的文件大小。Uint32类型
class FileMsgData(TypedDict):
""" 文件消息体 """
sdkfileid: str # 媒体资源的id信息
md5sum: str # 图片资源的md5值
filename: str # 文件名称
fileext: str # 文件类型后缀
filesize: int # 文件大小
class LinkMsgData(TypedDict):
""" 链接消息体 """
title: str # 消息标题
description: str # 消息描述
link_url: str # 链接url地址
image_url: str # 链接图片url
class WeappMsgData(TypedDict):
""" 小程序消息体 """
title: str # 消息标题
description: str # 消息描述
username: str # 用户名称
Displayname: str # 小程序名称
class ChatrecordItem(TypedDict):
""" 聊天记录单条内容 """
type: str # 消息记录类型,和 ChagMsg.mstype 类似
msgtime: int # 消息时间,utc时间,单位是秒
content: str # 消息内容。Json串,内容为对应类型的json
from_chatroom: bool # 是否来自群会话
class ChatrecordMsgData(TypedDict):
""" 聊天记录消息体 """
title: str # 聊天记录标题
item: List[ChatrecordItem] # 消息记录内的消息内容,批量数据
class RedpacketMsgData(TypedDict):
""" 红包消息体 """
type: int # 类型 1:一对一红包, 2:群聊拼手气红包,3:群聊专属红包
wish: str # 留言
totalcnt: int # 总个数
totalamount: int # 总金额,单位分
class TodoMsgData(TypedDict):
""" 待办消息体 """
title: str # 代办的来源文本
content: str # 代办的具体内容
class VoteMsgData(TypedDict):
""" 投票消息体 """
votetitle: str # 投票主题
voteitem: str # 投票选项
votetype: int # 投票类型.101发起投票、102参与投票
voteid: str # 投票id,方便将参与投票消息与发起投票消息进行前后对照
class CollectMsgDataDetailItem(TypedDict):
""" 填表消息填写项目 """
id: int # 表项id
ques: str # 表项名称
type: str # 值类型,可能为 "Text"|"Number"|"Date"|"Time"
class CollectMsgData(TypedDict):
""" 填表消息体 """
room_name: str # 填表消息所在的群名称
creator: str # 创建者在群中的名字
create_time: str # 创建的时间
title: str # 表名
details: List[str] # 表内容。json数组,值为 CollectMsgDataDetailItem
class MeetingMsgData(TypedDict):
""" 会议邀请消息体 """
topic: str #会议主题
starttime: int # 会议开始时间。Utc时间
endtime: int # 会议结束时间。Utc时间
address: str # 会议地址
remarks: str # 会议备注
meetingtype: int # 会议消息类型。101发起会议邀请消息、102处理会议邀请消息
meetingid: int # 会议id。方便将发起、处理消息进行对照。
status: int # 会议邀请处理状态。1 参加会议、2 拒绝会议、3 待定
class DocmsgMsgData(TypedDict):
""" 会议邀请消息体 """
title: str # 在线文档名称
link_url: str # 在线文档链接
doc_creator: str # 在线文档创建者。为企业员工id或外部联系人id
class MarkdownMsgData(TypedDict):
""" Markdown格式消息体 """
content: str # markdown消息内容,目前为机器人发出的消息
class NewsMsgData(TypedDict):
""" 图文消息体 """
title: str # 图文消息标题
description: str # 图文消息描述
url: str # 图文消息点击跳转地址
picurl: str # 图文消息配图的url
class CalendarMsgData(TypedDict):
""" 日程消息体 """
title: str # 日程主题
creatorname: str # 日程组织者
attendeename: str # 日程参与人
starttime: int # 日程开始时间。Utc时间,单位秒
endtime: int # 日程结束时间。Utc时间,单位秒
place: str # 日程地点
remarks: str # 日程备注
请求参数
Query 参数
staff_id
string
必需
示例值:
WuYaJun
session_id
string
必需
limit
integer
可选
示例值:
30
start_time
integer
可选
end_time
integer
可选
offset
string
偏移量
access_token
string
调用接口凭证
默认值:
{{access_token}}
示例代码
返回响应
修改于 2025-02-19 08:25:17