https://xxxxxx/v4/open_msg_svc/get_history?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json
参数 | 说明 |
xxxxxx | SDKAppID 所在国家/地区对应的专属域名: 中国: console.tim.qq.com 新加坡: adminapisgp.im.qcloud.com 首尔: adminapikr.im.qcloud.com 法兰克福: adminapiger.im.qcloud.com 硅谷: adminapiusa.im.qcloud.com 雅加达: adminapiidn.im.qcloud.com |
v4/open_msg_svc/get_history | 请求接口 |
sdkappid | 创建应用时即时通信 IM 控制台分配的 SDKAppID |
identifier | |
usersig | |
random | 请输入随机的32位无符号整数,取值范围0 - 4294967295 |
contenttype | 请求格式固定值为 json |
{"ChatType": "C2C","MsgTime": "2015120121"}
字段 | 类型 | 属性 | 说明 |
ChatType | String | 必填 | 消息类型,C2C 表示单发消息 Group 表示群组消息 |
MsgTime | String | 必填 | 需要下载的消息记录的时间段,MsgTime 使用的是北京时间,不支持其他时区。2015120121表示获取北京时间2015年12月1日21:00 - 21:59的消息的下载地址。该字段需精确到小时。每次请求只能获取某天某小时的所有单发或群组消息记录 |
{"File": [{"URL": "https://download.tim.qq.com/msg_history/2/9b8f8f063b73f61698ce11e58207e89ade40.gz","ExpireTime": "2015-12-02 16:45:23","FileSize": 65207,"FileMD5": "cceece008bb7f469a47cf8c4b7acb84e","GzipSize": 1815,"GzipMD5": "c3a0269dde393fd7a8bb18bfdeaeee2e"}],"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0}
字段 | 类型 | 说明 |
ActionStatus | String | 请求处理的结果,“OK” 表示处理成功,“FAIL” 表示失败 |
ErrorCode | Integer | 错误码,0表示成功,非0表示失败 |
ErrorInfo | String | 错误信息 |
File | Array | 消息记录文件下载信息 |
URL | String | 消息记录文件下载地址 |
ExpireTime | String | 下载地址过期时间,请在过期前进行下载,若地址失效,请通过该接口重新获取 |
FileSize | Integer | GZip 压缩前的文件大小(单位 Byte) |
FileMD5 | String | GZip 压缩前的文件 MD5 |
GzipSize | Integer | GZip 压缩后的文件大小(单位 Byte) |
GzipMD5 | String | GZip 压缩后的文件 MD5 |
错误码 | 含义说明 |
1001 | 请求非法;请检查“请求 URL”是否正确。 |
1002 | 参数非法;请检查是否管理员账号,必填字段是否填充,或者字段的填充是否满足协议要求。 |
1003 | 系统错误。 |
1004 | 文件尚未生成,或者请求时段内没有消息。 |
1005 | 文件已过期。 |
//单发消息{"SdkAppId":1104620500,"ChatType":"C2C","MsgTime":"2015120121","MsgList":[{"From_Account":"peakerdong","To_Account":"qiyueliuhuo2018","MsgTimestamp":1448974806,"MsgSeq":3452069198,"MsgRandom":45838,"MsgBody":[{"MsgType":"TIMTextElem","MsgContent":{"Text":"四等分"}}]},{"From_Account":"group_root","To_Account":"group_test4","MsgTimestamp":1448974808,"MsgSeq":462709847,"MsgRandom":19196437,"MsgBody":[{"MsgType":"TIMTextElem","MsgContent":{"Text":"hi, beauty"}}]}]}//群组消息{"SdkAppId":1104620500,"ChatType":"Group","MsgTime":"2015120121","MsgList":[{"From_Account":"Test_1","GroupId":"@TGS#1FDFVPAE2","MsgTimestamp":1448975384,"MsgSeq":1,"MsgBody":[{"MsgType":"TIMTextElem","MsgContent":{"Text":"Private activate"}}]},{"From_Account":"Test_1","GroupId":"@TGS#1FDFVPAE2","MsgTimestamp":1448975384,"MsgSeq":1,"MsgBody":[{"MsgType":"TIMTextElem","MsgContent":{"Text":"Private activate"}}]}]}
# Python 示例代码import gzip, jsonwith gzip.open('1104620500_Group_2015120121.gz', 'rb') as fp:info = json.load(fp)for msg in info['MsgList']:pass #do sth with msg
# Python 示例代码import gzip, jsonwith gzip.open('1104620500_Group_2015120121.gz', 'rb') as fp:cnt = -1for line in fp:line = line.strip().rstrip(b',')if line == b']}': breakif cnt < 0:info = json.loads(line + b']}')else:msg = json.loads(line)#do sth with msgcnt += 1
本页内容是否解决了您的问题?