消息通知服务支持的事件有:

UserAudioStreamStart
EventType

UserAudioStreamStart

事件详情

音频流开始推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
UserAudioStreamStop
EventType

UserAudioStreamStop

事件详情

音频流结束推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
ReasonString音频流结束推送原因,参看Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)


Reason

值含义
StreamStop正常流停止
LeaveRoom用户离开房间导致流停止
BannedByAdmin服务端封禁该音频流导致流停止
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Reason": "StreamStop",
    "Timestamp": "1611736812853"
}
json
UserVideoStreamStart
EventType

UserVideoStreamStart

事件详情

视频流开始推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
UserVideoStreamStop
EventType

UserVideoStreamStop

事件详情

视频流结束推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
ReasonString视频流结束推送原因,参看Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)


Reason

值含义
StreamStop正常流停止
LeaveRoom用户离开房间导致流停止
BannedByAdmin服务端封禁该视频流导致流停止
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Reason": "StreamStop",
    "Timestamp": "1611736812853"
}
json
UserScreenAudioStreamStart
EventType

UserScreenAudioStreamStart

事件详情

屏幕音频流开始推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
UserScreenAudioStreamStop
EventType

UserScreenAudioStreamStop

事件详情

屏幕音频流结束推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
ReasonString屏幕音频流结束推送原因,参看Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)


Reason

值含义
StreamStop正常流停止
LeaveRoom用户离开房间导致流停止
BannedByAdmin服务端封禁该屏幕音频流导致流停止
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Reason": "StreamStop",
    "Timestamp": "1611736812853"
}
json
UserScreenVideoStreamStart
EventType

UserScreenVideoStreamStart

事件详情

屏幕视频流开始推送。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
UserScreenVideoStreamStop
EventType

UserScreenVideoStreamStop

事件详情

屏幕视频流结束推送。

注:在 Elcetron 1.4.0 版本中结束屏幕视频流推送时,不会触发此回调。

EventData
参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID
UserIdStringYour_UserId用户 ID
DeviceTypeStringandroid、ios、web、mac、windows终端类型
ReasonString屏幕视频流结束推送原因,参看Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)


Reason

值含义
StreamStop正常流停止
LeaveRoom用户离开房间导致流停止
BannedByAdmin服务端封禁该屏幕视频流导致流停止
参数示例
{
    "RoomId": "Your_RoomId",
    "UserId": "Your_UserId",
    "DeviceType": "android",
    "Reason": "StreamStop",
    "Timestamp": "1611736812853"
}
json
RecordStarted
EventType

RecordStarted

事件详情

录制任务开始。

无论录制任务是通过何种方式启动的(调用 OpenAPI 启动/在控制台上配置自动录制),在录制任务开始时,你都会收到录制任务开始的消息通知。

EventData
参数名类型描述
AppIdString音视频应用的唯一标识
BusinessIdString业务标识
RoomIdString用户创建的房间 Id,房间的唯一标识
TaskIdString任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeInt 32任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 0,
    "ErrorMessage": ""
}
json
任务异常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
RecordStopped(2020-12-01)
EventType

RecordStopped

事件详情

录制任务结束。

无论录制任务是通过何种方式启动的(调用 OpenAPI 启动/在控制台上配置自动录制),在录制任务结束时,你都会收到录制任务结束的消息通知。

EventData
参数名类型描述
AppIdString音视频应用的唯一标识
BusinessIdString业务标识
RoomIdString用户创建的房间 Id,房间的唯一标识
TaskIdString任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeInt 32任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
RecordFileListArray of RecordFile录制生成的音视频文件列表

注意:如果录制结束回调 Code=0,但是 RecordFileList 为空,没有生成录制文件,请联系技术支持排查具体原因。

参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 0,
    "ErrorMessage": "",
    "RecordFileList": [
        {
            "Vid": "Your_Vid",
            "Duration": 57472,
            "Size": 5018305,
            "StartTime": 1611736812853,
            "StreamList": [
                {
                    "UserId": "TestUserId",
                    "StreamType": 0
                }
            ],
            "VideoCodec": "h264",
            "AudioCodec": "aac",
            "VideoWidth": 640,
            "VideoHeight": 360
        }
    ]
}
json
任务异常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
RecordStopped(2022-06-01)
EventType

RecordStopped

事件详情

录制任务结束。

无论录制任务是通过何种方式启动的(调用 OpenAPI 启动/在控制台上配置自动录制),在录制任务结束时,你都会收到录制任务结束的消息通知。

EventData
参数名类型描述
AppIdString音视频应用的唯一标识
BusinessIdString业务标识
RoomIdString用户创建的房间 Id,房间的唯一标识
TaskIdString任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeInt 32任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
RecordFileListArray of RecordFile录制生成的音视频文件列表

注意:如果录制结束回调 Code=0,但是 RecordFileList 为空,没有生成录制文件,请联系技术支持排查具体原因。

参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 0,
    "ErrorMessage": "",
    "RecordFileList": [
        {
            "Vid": "Your_Vid",
            "ObjectKey": "TestObjectKey",
            "Duration": 57472,
            "Size": 5018305,
            "StartTime": 1611736812853,
            "StreamList": [
                {
                    "UserId": "TestUserId",
                    "StreamType": 0
                }
            ],
            "VideoCodec": "h264",
            "AudioCodec": "aac",
            "VideoWidth": 640,
            "VideoHeight": 360
        }
    ]
}
json
任务异常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
RecordUploadStarted
EventType

RecordUploadStarted

事件详情

上传任务启动。

EventData
参数名类型示例值描述
AppIdStringYour_AppId音视频应用的唯一标识
BusinessIdStringYour_BuisnessId业务标识
RoomIdStringYour_RoomId用户创建的房间 Id,房间的唯一标识
TaskIdStringYour_TaskId任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeCode320任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": ""
}
json
任务失败示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
RecordUploadProcessing
EventType

RecordUploadProcessing

事件详情

上传任务进度。

上传进程持续一分钟及以上,才会有此回调。每隔一分钟上传一次。

EventData
参数名类型示例值描述
AppIdStringYour_AppId音视频应用的唯一标识
BusinessIdStringYour_BuisnessId业务标识
RoomIdStringYour_RoomId用户创建的房间 Id,房间的唯一标识
TaskIdStringYour_TaskId任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeCode320任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
progressint1000 到 10000 之间的数字,当前已上传文件与已录制的文件的比例乘以 10000。这个数字是不断变动的,录制完成后,到达 10000 表示上传完成。
参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "",
    "progress" : 100
}
json
任务失败示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
    "progress" : 100
}
json
RecordUploadDone
EventType

RecordUploadDone

事件详情

录制文件已上传至存储平台。

EventData
参数名类型示例值描述
AppIdStringYour_AppId音视频应用的唯一标识
BusinessIdStringYour_BuisnessId业务标识
RoomIdStringYour_RoomId用户创建的房间 Id,房间的唯一标识
TaskIdStringYour_TaskId任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeCode320任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": ""
}
json
任务失败示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
RecordUploadBackuped
EventType

RecordUploadBackuped

事件详情

录制文件上传失败转存备份

备份使用的 Tos Bucket 需要开启版本控制,防止文件名重复导致文件被覆盖。

EventData
参数名类型示例值描述
AppIdStringYour_AppId音视频应用的唯一标识
BusinessIdStringYour_BuisnessId业务标识
RoomIdStringYour_RoomId用户创建的房间 Id,房间的唯一标识
TaskIdStringYour_TaskId任务 Id,同一房间内的录制任务通过 TaskId 来区分
CodeCode320任务状态,值的集合为{0,1}。其中,0 表示成功, 1 表示失败
ErrorMessageString具体的错误信息。当 Code 不为 0 时,ErrorMessage 会显示具体的错误
参数示例
任务正常示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": ""
}
json
任务失败示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",    
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Code": 1,
    "ErrorMessage": "ErrorMessage"
}
json
UserJoinRoom
EventType

UserJoinRoom

事件详情

可见用户进入房间。

注:关于可见用户和不可见用户,参看 setUserVisibility。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
DeviceTypeStringandroid/ios/web/mac/windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
UserLeaveRoom
EventType

UserLeaveRoom

事件详情

可见用户退出房间。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
DeviceTypeStringandroid/ios/web/mac/windows终端类型
ReasonString原因。参看 Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)

Reason:

值含义
userLeave正常退房
connectionLost因断网、杀进程等异常原因离开房间。用户离开房间 30 s 后触发此回调。
kickedByAdmin使用 OpenAPI 接口将某用户踢出房间
roomDismissByAdmin使用 OpenAPI 接口解散房间,将房间内所有用户踢出房间
onUserTokenDidExpireToken 过期被踢出房间
other其他原因(如重复登录、房间过期等)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "DeviceType": "android",
    "Reason": "userLeave",
    "Timestamp": "1611736812853"
}
json
InvisibleUserJoinRoom
EventType

InvisibleUserJoinRoom

事件详情

不可见用户进入房间。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
DeviceTypeStringandroid/ios/web/mac/windows终端类型
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "DeviceType": "android",
    "Timestamp": "1611736812853"
}
json
InvisibleUserLeaveRoom
EventType

InvisibleUserLeaveRoom

事件详情

不可见用户退出房间。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
DeviceTypeStringandroid/ios/web/mac/windows终端类型
ReasonString原因。参看 Reason
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)

Reason:

值含义
userLeave正常退房
connectionLost因断网、杀进程等异常原因离开房间。用户离开房间 30 s 后触发此回调。
kickedByAdmin使用 OpenAPI 接口将某用户踢出房间
roomDismissByAdmin使用 OpenAPI 接口解散房间,将房间内所有用户踢出房间
onUserTokenDidExpireToken 过期被踢出房间
other其他原因(如重复登录、房间过期等)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "DeviceType": "android",
    "Reason": "userLeave",
    "Timestamp": "1611736812853"
}
json
RoleChangeInvisible2Visible
EventType

RoleChangeInvisible2Visible

事件详情

可见用户调用 setUserVisibility ,不可见 -> 可见。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "Timestamp": "1611736812853"
}
json
RoleChangeVisible2Invisible
EventType

RoleChangeVisible2Invisible

事件详情

可见用户调用 setUserVisibility ,可见 -> 不可见。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
UserIdString4398491447867063用户 ID
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "UserId": "4398491447867063",
    "Timestamp": "1611736812853"
}
json
RoomCreate
EventType

RoomCreate

事件详情

RTC 房间创建。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "Timestamp": "1611736812853"
}
json
RoomDestroy
EventType

RoomDestroy

事件详情

RTC 房间销毁,房间中所有可见用户全部离开房间。

EventData
参数类型示例值说明
RoomIdString6992870232038591758房间 ID
TimestampInt641611736812853该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
参数示例
{
    "RoomId": "6992870232038591758",
    "Timestamp": "1611736812853"
}
json
SegmentRealTimeData(2020-12-01)
EventType

SegmentRealTimeData

事件详情

指定音频流切片结果。

EventData
参数名类型描述
AppIdString应用的唯一标志
BusinessIdString业务标识
RoomIdString房间 ID,是房间的唯一标志
TaskIdString切片任务 ID。
TosBucketString储存切片的 tos bucket
Dataarray of AudioData
IdentifierString切片任务标志。默认切片名时为UUID,自定义切片名时为自定义名

AudioData

参数名类型示例值描述
StreamStream/音频切片对应的流的信息。
ObjectKeyStringYour_ObjectKey音频切片的文件名。
SampleRateInt44100音频采样率,单位 Hz。
BitsPerSampleInt16每个音频采样的比特数。
ChannelsInt2音频声道数。
SizeUint64256044音频切片大小,单位为 byte。
TimeStampInt641647317680214音频文件生成时对应的UNIX时间戳。单位为毫秒
DurationUint328000音频的时长,单位为毫秒。
参数示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "TosBucket": "Your_TosBucket",
    "Data": [
        {
            "Stream": {
                "UserId": "Your_UserId",
                "StreamType": 0
            },
            "ObjectKey": "Your_ObjectKey",
            "SampleRate": "44100",
            "BitsPerSample": "16",
            "Channels": "2",
            "Size": 256044,
            "TimeStamp": 1647317680214,
            "Duration": 8000
        }
    ], 
    "Identifier": "Your_Identifier" }
json
SegmentRealTimeData(2022-06-01)
EventType

SegmentRealTimeData

事件详情

指定音频流切片结果。

EventData
参数名类型描述
AppIdString应用的唯一标志
BusinessIdString业务标识
RoomIdString房间 ID,是房间的唯一标志
TaskIdString切片任务 ID。
BucketString存储音频切片的桶名称
Dataarray of AudioData
IdentifierString切片任务标志。默认切片名时为UUID,自定义切片名时为自定义名

AudioData

参数名类型示例值描述
StreamStream/音频切片对应的流的信息。
ObjectKeyStringYour_ObjectKey音频切片的对象键。
SampleRateInt44100音频采样率,单位 Hz。
BitsPerSampleInt16每个音频采样的比特数。
ChannelsInt2音频声道数。
SizeUint64256044音频切片大小,单位为 byte。
TimeStampInt641647317680214音频文件生成时对应的UNIX时间戳。单位为毫秒
DurationUint328000音频的时长,单位为毫秒。
参数示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Bucket": "Your_Bucket",
    "Data": [
        {
            "Stream": {
                "UserId": "Your_UserId",
                "StreamType": 0
            },
            "ObjectKey": "Your_ObjectKey",
            "SampleRate": "44100",
            "BitsPerSample": "16",
            "Channels": "2",
            "Size": 256044,
            "TimeStamp": 1647317680214,
            "Duration": 8000
        }
    ], 
    "Identifier": "Your_Identifier" }
json
SnapshotRealTimeData(2020-12-01)
EventType

SnapshotRealTimeData

事件详情

指定视频流截图结果。

EventData
参数名类型描述
AppIdString应用的唯一标志
BusinessIdString业务标识
RoomIdString房间 ID,是房间的唯一标志
TaskIdString截图任务 ID
TosBucketString储存截图的 Tos bucket
Dataarray of ImageData

ImageData

参数名类型描述
StreamStream截图对应的流的信息。
ObjectKeyString截图对应的 TOS key。
FormatUint32截图的格式, jpeg 或 png。
WidthUint32截图宽度,单位为 px。
HeightUint32截图高度,单位为 px。
SizeUint64截图大小,单位为 byte。
TimeStampUint64截图生成时对应的UNIX时间戳。
参数示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "TosBucket": "Your_TosBucket",
    "Data": [
        {
            "Stream": {
                "UserId": "Your_UserId",
                "StreamType": 0
            },
            "ObjectKey": "Your_ObjectKey",
            "Format": 0,
            "Width": 640,
            "Height": 360,
            "Size": 28802,
            "TimeStamp": 1647316896085
        }
    ]
}
json
SnapshotRealTimeData(2022-06-01)
EventType

SnapshotRealTimeData

事件详情

指定视频流截图结果。

EventData
参数名类型描述
AppIdString应用的唯一标志
BusinessIdString业务标识
RoomIdString房间 ID,是房间的唯一标志
TaskIdString截图任务 ID
BucketString存储截图的桶名称。当存储平台为 TOS,或者支持 S3 协议的第三方存储平台时此字段才会生效。
VeImageXServiceIdStringVeImageX 的服务 ID。当存储平台为 VeImageX 时此字段才会生效。
Dataarray of ImageData

ImageData

参数名类型描述
StreamStream截图对应的流的信息。
ObjectKeyString对象键名称。当存储平台为 TOS,或者支持 S3 协议的第三方存储平台时此字段才会生效,你可以根据 ObjecetKey 找到对应的图片文件。
VeImageXUriStringVeImageX 的统一资源标识符。当存储平台为 VeImageX 时此字段才会生效,你可以根据 VeImageXUri找到对应的图片文件。
FormatUint32截图的格式, jpeg 或 png。
WidthUint32截图宽度,单位为 px。
HeightUint32截图高度,单位为 px。
SizeUint64截图大小,单位为 byte。
TimeStampUint64截图生成时对应的UNIX时间戳。
参数示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Bucket": "Your_Bucket",
    "Data": [
        {
            "Stream": {
                "UserId": "Your_UserId",
                "StreamType": 0
            },
            "ObjectKey": "Your_ObjectKey",
            "Format": 0,
            "Width": 640,
            "Height": 360,
            "Size": 28802,
            "TimeStamp": 1647316896085
        }
    ]
}
json
WebRecordResult
EventType

WebRecordResult

事件详情

云录屏录制任务状态变化。

Body
参数名类型示例值描述
EventTypeStringWebRecordResult事件类型
EventDataString具体的事件内容
EventTimeString2021-08-19T11:47:28+08:00事件产生时间,格式为 RFC3339
EventIdString6110e5394f69bb00ca885806_bc_test1234567_bc_1111_1629344822736_img_doc事件 ID,具有唯一性,可用于去重
VersionString2020-12-01回调版本,本接口取值:2020-12-01
AppIdStringYour_AppId应用的唯一标志
SignatureStringYour_Signature回调签名
NoceString9091签名随机数 4位
Eventdata
参数名类型示例值描述
TaskIdStringYour_TaskId任务 ID,是任务的唯一标志。
TypeInt1回调类型:
1: 任务启动成功
2:生成分片
3:任务失败
4:任务完成
StatusInt4任务状态:
1:启动中
2:运行中
3:任务失败
4:任务成功
MessageStringhttp url error具体的错误信息
VidStringxxxxvvv文件在点播平台的唯一标识。你可以根据 vid 可以在点播平台上找到对应的文件。
CreateTimeInt1629183877用户录制发起时间戳,unix 时间,单位为秒。
FinishTimeInt1629573877用户录制结束时间戳,unix 时间,单位为秒。
FinalFileFile{"Bucket":"Your\_Bucket","ObjectKey":"1.mp4"}所有切片文件拼接而成的最终文件。
Files[]File[{"Bucket":"Your\_Bucket","ObjectKey":"1\_00001.mp4"} ,{"Bucket":"Your\_Bucket","ObjectKey":"1\_00002.mp4"}]切片文件列表
参数示例
任务启动成功
{
        "EventType": "WebRecordResult",
        "EventData": "{
                "TaskId": "Your_TaskId",
                "Message": "running",
                "Status": 2,
                "Type": 1
        }",
        "EventTime": "2021-08-17T19:22:02+08:00",
        "EventId": "Your_EventId",
        "Version": "2020-12-01",
        "AppId": "Your_AppId",
        "Signature": "Your_Signature",
        "Noce": "7733"
}
json
生成切片
{
        "EventType": "WebRecordResult",
        "EventData": "{
                "TaskId": "Your_TaskId",
                "Message": "running",
                "Status": 2,
                "Type": 2,
                "FinalFile": {
                "Bucket": "cloud-record-test-2",
                "ObjectKey": "test-long-t4.mp4"
            },
            "Files": [
                {
                    "Bucket": "cloud-record-test-2",
                    "ObjectKey": "test-long-t4_000001.ts",
                    "Index": 1
                },
                {
                    "Bucket": "cloud-record-test-2",
                    "ObjectKey": "test-long-t4_000002.ts",
                    "Index": 2
                },
                {
                    "Bucket": "cloud-record-test-2",
                    "ObjectKey": "test-long-t4_000003.ts",
                    "Index": 3
                }
            ],
                "CreateTime": 0, 
                "FinishTime": 0    
        }",
        "EventTime": "2021-08-17T19:22:02+08:00",
        "EventId": "Your_EventId",
        "Version": "2020-12-01",
        "AppId": "Your_AppId",
        "Signature": "Your_Signature",
        "Noce": "7733"
}
json
任务失败
{
        "EventType": "WebRecordResult",
        "EventData": "{
                "TaskId": "Your_TaskId",
                "Message": "Tos upload error",
                "Status": 3,
                "Type": 3,
                "Vid": "xxxxvvv",
                "CreateTime": 1629181831, 
                "FinishTime": 1629183877    
        }",
        "EventTime": "2021-08-17T19:22:02+08:00",
        "EventId": "Your_EventId",
        "Version": "2020-12-01",
        "AppId": "Your_AppId",
        "Signature": "Your_Signature",
        "Noce": "7733"
}
json
任务完成
{
        "EventType": "WebRecordResult",
        "EventData": "{
                "TaskId": "Your_TaskId",
                "Message": "success",
                "Status": 4,
                "Type": 4,
                "Vid": "xxxxvvv",
                "FinalFile": {
                "Bucket": "cloud-record-test-2",
                "ObjectKey": "test-long-t4.mp4"
            },
                "CreateTime": 1629181831, 
                "FinishTime": 1629183877    
        }",
        "EventTime": "2021-08-17T19:22:02+08:00",
        "EventId": "Your_EventId",
        "Version": "2020-12-01",
        "AppId": "Your_AppId",
        "Signature": "Your_Signature",
        "Noce": "7733"
}

json
RelayStreamStateChanged
EventType

RelayStreamStateChanged

事件详情

输入在线媒体流状态发生变化。

Body
参数类型示例值说明
AppIdStringYour_AppId应用的唯一标志
EventIdStringYour_EventId事件 ID,具有唯一性,可用于去重
EventTimeString2021-08-19T11:47:28+08:00事件产生时间,格式为 RFC3339
EventTypeStringRelayStreamStateChanged事件类型
EventDataString具体的事件内容


Eventdata

参数名类型示例值描述
RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
TaskIdStringYour_TaskId任务 ID
UserIdStringYour_UserId在线媒体流对应的的 UserId
StreamUrlStringrtmp://xxx在线流媒体地址
StatusInt1任务状态:
1:待机中
2:连接中
3:运行中
4:已停止
StartTimeStampInt0任务起始时间戳,用于定时播放,Unix时间,单位为秒。默认为 0,表示立即启动。
MsgString/描述信息
ReasonInt1任务停止原因:
1:空闲超时
2:停止接口调用
3:流播放结束
4:内部错误
5:url地址异常
6:编码格式不支持
7:token 错误
8:没有发布权限
9:被移除房间
仅当 status=4 时,Reason 有值。
参数示例
   {
        "AppId": "Your_AppId",
        "EventId": "Your_eventId",
        "EventTime": "2021-08-17T19:22:02+08:00",
        "EventType": "RelayStreamStateChanged",
        "EventData": {
                "RoomId": "Your_RoomId",
                "TaskId": "Your_TaskId",  
                "UserId": "Your_UserId",    
                "StreamUrl": "rtmp://xxx",        
                "Status": 1,
                "StartTimeStamp": 0,       
                "Msg": "",
                "Vid": "xxxxvvv",
                "Reason": 4
        },
}
json
Webcast
EventType

Webcast

事件详情

页面转推任务状态发生变化

Eventdata
参数名类型示例值描述
AppIdStringYour_AppId应用的唯一标志
RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
BusinessIdStringYour_BusinessId业务标识
TaskIdStringYour_TaskId任务 ID
StatusInt1任务状态:
1:开始转推
2:正常结束
3:异常结束
4:页面刷新
5:任务重调度(推流用户重新进房)
ReasonString/异常结束描述信息,当 Status = {3,4,5} 时才有值,可取值为:AudioCaptureModuleError、 WebRenderModuleError、SourceURLInaccessible、StartEventTimeout、PageBlank、PageCrash、PageFreeze 。
参数示例
{
    "AppId": "Your_AppId",
    "BusinessId": "Your_BusinessId",
    "RoomId": "Your_RoomId",
    "TaskId": "Your_TaskId",
    "Status": 1
}
json
TranscodeStarted
EventType

TranscodeStarted

事件详情

转推直播任务开始

Eventdata
参数名类型示例值描述
AppIdStringYour_AppId应用的唯一标志
BusinessIdStringYour_BusinessId业务标识
RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
TaskIdStringYour_TaskId转推直播任务 ID
TimestampInt641661150097044该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
CodeInt0错误码。可取值为{0,1,2,3,4,9999}。
  • 0表示请求处理成功。
  • 1表示参数校验发生错误。
  • 2表示订阅不到合流用户的输入流或输入流没有音视频数据。
  • 3表示任务执行过程出现错误。
  • 4表示更新 av 参数后重推失败 或者 CDN 服务异常、请求连接失败。
  • 9999表示其他系统异常。
  • ErrorMessageString具体错误信息,当 Code为1时,ErrorMessage 会显示具体的错误信息
    TaskStateInt2任务状态,可取值为{1,2,3,4}。
  • 1表示尚未开始推流或已停止推流。
  • 2表示正在连接 CDN 服务。
  • 3表示正在推流
  • 4表示正在重连 CDN 服务。
  • 参数示例
    {
     		"AppId":"Your_AppID",
     		"BusinessId":"Your_BusinessId",   
        "RoomId":"Your_RoomID",
        "TaskId":"Your_TaskID",
        "Timestamp":1661150097044,
        "Code":0,
        "ErrorMessage":"",
        "TaskState":1
    }
    
    json
    TranscodeStopped
    EventType

    TranscodeStopped

    事件详情

    转推直播任务结束

    Eventdata
    参数名类型示例值描述
    AppIdStringYour_AppId应用的唯一标志
    BusinessIdStringYour_BusinessId业务标识
    RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
    TaskIdStringYour_TaskId转推直播任务 ID
    TimestampInt641661150097044该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
    CodeInt0错误码。可取值为{0,1,2,3,4,9999}。
  • 0表示请求处理成功。
  • 1表示参数校验发生错误。
  • 2表示订阅不到合流用户的输入流或输入流没有音视频数据。
  • 3表示任务执行过程出现错误。
  • 4表示更新 av 参数后重推失败 或者 CDN 服务异常、请求连接失败。
  • 9999表示其他系统异常。
  • ErrorMessageString具体错误信息,当 Code为1时,ErrorMessage 会显示具体的错误信息
    TaskStateInt2任务状态,可取值为{1,2,3,4}。
  • 1表示尚未开始推流或已停止推流。
  • 2表示正在连接 CDN 服务。
  • 3表示正在推流
  • 4表示正在重连 CDN 服务。
  • 参数示例
    {
     		"AppId":"Your_AppID",
     		"BusinessId":"Your_BusinessId",   
        "RoomId":"Your_RoomID",
        "TaskId":"Your_TaskID",
        "Timestamp":1661150097044,
        "Code":0,
        "ErrorMessage":"",
        "TaskState":1
    }
    
    json
    TranscodeUpdated
    EventType

    TranscodeUpdated

    事件详情

    转推直播任务更新

    此回调事件仅对合流转推生效

    Eventdata
    参数名类型示例值描述
    AppIdStringYour_AppId应用的唯一标志
    BusinessIdStringYour_BusinessId业务标识
    RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
    TaskIdStringYour_TaskId转推直播任务 ID
    TimestampInt641661150097044该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
    CodeInt0错误码。可取值为{0,1,2,3,4,9999}。
  • 0表示请求处理成功。
  • 1表示参数校验发生错误。
  • 2表示订阅不到合流用户的输入流或输入流没有音视频数据。
  • 3表示任务执行过程出现错误。
  • 4表示更新 av 参数后重推失败 或者 CDN 服务异常、请求连接失败。
  • 9999表示其他系统异常。
  • ErrorMessageString具体错误信息,当 Code为1时,ErrorMessage 会显示具体的错误信息
    TaskStateInt2任务状态,可取值为{1,2,3,4}。
  • 1表示尚未开始推流或已停止推流。
  • 2表示正在连接 CDN 服务。
  • 3表示正在推流
  • 4表示正在重连 CDN 服务。
  • 参数示例
    {
        "AppId":"Your_AppID",
        "BusinessId":"Your_BusinessId", 
        "RoomId":"Your_RoomID", 
        "TaskId":"Your_TaskID",  
        "Timestamp":1661150055041,   
        "Code":0,
        "ErrorMessage":"",
        "TaskState":1,
        "StartTime":1661150054990
    }
    
    json
    TranscodeStateChanged
    EventType

    TranscodeStateChanged

    事件详情

    转推直播任务状态变化

    Eventdata
    参数名类型示例值描述
    AppIdStringYour_AppId应用的唯一标志
    BusinessIdStringYour_BusinessId业务标识
    RoomIdStringYour_RoomId房间 ID,是房间的唯一标志
    TaskIdStringYour_TaskId转推直播任务 ID
    TimestampInt641661150097044该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
    StartTimeInt641661150054990转推直播任务创建的 Unix 时间戳(ms)
    FinishTimeInt640转推直播任务结束的 Unix 时间戳(ms)
    TaskStateInt2任务状态,可取值为{1,2,3,4}。
  • 1表示尚未开始推流或已停止推流。
  • 2表示正在连接 CDN 服务。
  • 3表示正在推流
  • 4表示正在重连 CDN 服务。
  • CodeInt0错误码。可取值为{0,1,2,3,4,9999}。
  • 0表示请求处理成功。
  • 1表示参数校验发生错误。
  • 2表示订阅不到合流用户的输入流或输入流没有音视频数据。
  • 3表示任务执行过程出现错误。
  • 4表示更新 av 参数后重推失败 或者 CDN 服务异常、请求连接失败。
  • 9999表示其他系统异常。
  • ErrorMessageString具体错误信息。
    参数示例
    {
        "AppId":"Your_AppID",
        "BusinessId":"Your_BusinessId", 
        "RoomId":"Your_RoomID", 
        "TaskId":"Your_TaskID",  
        "Timestamp":1661150097044, 
        "StartTime":1661150054990,
        "FinishTime":0,   
        "TaskState":3,    
        "Code":0,
        "ErrorMessage":""
    }
    
    json
    PushPublicStream
    EventType

    PushPublicStream

    事件详情

    公共流推送异常或推送结束

    Eventdata
    参数名类型示例值描述
    AppIdStringYour_AppId应用的唯一标志
    BusinessIdStringYour_BusinessId业务标识
    PublicStreamIdStringYour_PublicStreamId公共流对应的流 Id
    TimestampInt641661150097044该事件在 RTC 服务器上发生的 Unix 时间戳 (ms)
    StatusInt2公共流任务状态。取值为2和3。
  • 2:公共流推送结束
  • 3:公共流推送异常
  • MsgString具体的错误信息
    CodeInt2错误码。取值为1,2,3。
  • 1:空闲超时结束。
  • 2:OpenAPI 调用结束。
  • 3:内部错误结束。
  • 参数示例
    {
        "AppId":"Your_AppID", 
        "BusinessId":"Your_BusinessId",    
        "PublicStreamId":"Your_PublicStreamId", 
        "Timestamp":1661150097044, 
        "Status":2, 
        "Msg":"call api stop",     
        "Code":2
    }
    
    json