polyv-live-api-sdk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth/index.d.ts +9 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/signature.d.ts +67 -0
- package/dist/auth/signature.d.ts.map +1 -0
- package/dist/client.d.ts +209 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/constants/error-codes.d.ts +134 -0
- package/dist/constants/error-codes.d.ts.map +1 -0
- package/dist/constants/index.d.ts +8 -0
- package/dist/constants/index.d.ts.map +1 -0
- package/dist/errors/index.d.ts +11 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/polyv-api-error.d.ts +71 -0
- package/dist/errors/polyv-api-error.d.ts.map +1 -0
- package/dist/errors/polyv-error.d.ts +31 -0
- package/dist/errors/polyv-error.d.ts.map +1 -0
- package/dist/errors/polyv-validation-error.d.ts +72 -0
- package/dist/errors/polyv-validation-error.d.ts.map +1 -0
- package/dist/errors/type-guards.d.ts +19 -0
- package/dist/errors/type-guards.d.ts.map +1 -0
- package/dist/errors/types.d.ts +13 -0
- package/dist/errors/types.d.ts.map +1 -0
- package/dist/index.cjs +15295 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +19501 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15258 -0
- package/dist/index.js.map +1 -0
- package/dist/services/account.service.d.ts +402 -0
- package/dist/services/account.service.d.ts.map +1 -0
- package/dist/services/channel.service.d.ts +2033 -0
- package/dist/services/channel.service.d.ts.map +1 -0
- package/dist/services/chat.service.d.ts +592 -0
- package/dist/services/chat.service.d.ts.map +1 -0
- package/dist/services/finance.service.d.ts +160 -0
- package/dist/services/finance.service.d.ts.map +1 -0
- package/dist/services/group.service.d.ts +191 -0
- package/dist/services/group.service.d.ts.map +1 -0
- package/dist/services/index.d.ts +27 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/live-interaction.service.d.ts +474 -0
- package/dist/services/live-interaction.service.d.ts.map +1 -0
- package/dist/services/other.service.d.ts +687 -0
- package/dist/services/other.service.d.ts.map +1 -0
- package/dist/services/platform.service.d.ts +190 -0
- package/dist/services/platform.service.d.ts.map +1 -0
- package/dist/services/player.service.d.ts +195 -0
- package/dist/services/player.service.d.ts.map +1 -0
- package/dist/services/v4/ai.service.d.ts +205 -0
- package/dist/services/v4/ai.service.d.ts.map +1 -0
- package/dist/services/v4/channel.service.d.ts +854 -0
- package/dist/services/v4/channel.service.d.ts.map +1 -0
- package/dist/services/v4/chat.service.d.ts +199 -0
- package/dist/services/v4/chat.service.d.ts.map +1 -0
- package/dist/services/v4/global.service.d.ts +86 -0
- package/dist/services/v4/global.service.d.ts.map +1 -0
- package/dist/services/v4/group.service.d.ts +132 -0
- package/dist/services/v4/group.service.d.ts.map +1 -0
- package/dist/services/v4/material.service.d.ts +85 -0
- package/dist/services/v4/material.service.d.ts.map +1 -0
- package/dist/services/v4/platform.service.d.ts +148 -0
- package/dist/services/v4/platform.service.d.ts.map +1 -0
- package/dist/services/v4/robot.service.d.ts +144 -0
- package/dist/services/v4/robot.service.d.ts.map +1 -0
- package/dist/services/v4/statistics.service.d.ts +61 -0
- package/dist/services/v4/statistics.service.d.ts.map +1 -0
- package/dist/services/v4/user.service.d.ts +1014 -0
- package/dist/services/v4/user.service.d.ts.map +1 -0
- package/dist/services/v4/webapp.service.d.ts +131 -0
- package/dist/services/v4/webapp.service.d.ts.map +1 -0
- package/dist/services/web.service.d.ts +758 -0
- package/dist/services/web.service.d.ts.map +1 -0
- package/dist/types/account.d.ts +287 -0
- package/dist/types/account.d.ts.map +1 -0
- package/dist/types/auth.d.ts +31 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/callback.d.ts +156 -0
- package/dist/types/callback.d.ts.map +1 -0
- package/dist/types/channel.d.ts +2263 -0
- package/dist/types/channel.d.ts.map +1 -0
- package/dist/types/chat-banned.d.ts +366 -0
- package/dist/types/chat-banned.d.ts.map +1 -0
- package/dist/types/chat-censor-role.d.ts +190 -0
- package/dist/types/chat-censor-role.d.ts.map +1 -0
- package/dist/types/chat.d.ts +142 -0
- package/dist/types/chat.d.ts.map +1 -0
- package/dist/types/client.d.ts +43 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/common.d.ts +52 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/finance.d.ts +252 -0
- package/dist/types/finance.d.ts.map +1 -0
- package/dist/types/group.d.ts +129 -0
- package/dist/types/group.d.ts.map +1 -0
- package/dist/types/index.d.ts +50 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/live-interaction.d.ts +301 -0
- package/dist/types/live-interaction.d.ts.map +1 -0
- package/dist/types/pagination.d.ts +37 -0
- package/dist/types/pagination.d.ts.map +1 -0
- package/dist/types/platform.d.ts +178 -0
- package/dist/types/platform.d.ts.map +1 -0
- package/dist/types/player.d.ts +177 -0
- package/dist/types/player.d.ts.map +1 -0
- package/dist/types/request.d.ts +45 -0
- package/dist/types/request.d.ts.map +1 -0
- package/dist/types/response.d.ts +58 -0
- package/dist/types/response.d.ts.map +1 -0
- package/dist/types/signature.d.ts +50 -0
- package/dist/types/signature.d.ts.map +1 -0
- package/dist/types/upload.d.ts +32 -0
- package/dist/types/upload.d.ts.map +1 -0
- package/dist/types/v4-ai.d.ts +379 -0
- package/dist/types/v4-ai.d.ts.map +1 -0
- package/dist/types/v4-channel.d.ts +2400 -0
- package/dist/types/v4-channel.d.ts.map +1 -0
- package/dist/types/v4-chat.d.ts +190 -0
- package/dist/types/v4-chat.d.ts.map +1 -0
- package/dist/types/v4-global.d.ts +150 -0
- package/dist/types/v4-global.d.ts.map +1 -0
- package/dist/types/v4-group.d.ts +212 -0
- package/dist/types/v4-group.d.ts.map +1 -0
- package/dist/types/v4-material.d.ts +141 -0
- package/dist/types/v4-material.d.ts.map +1 -0
- package/dist/types/v4-platform.d.ts +223 -0
- package/dist/types/v4-platform.d.ts.map +1 -0
- package/dist/types/v4-robot.d.ts +149 -0
- package/dist/types/v4-robot.d.ts.map +1 -0
- package/dist/types/v4-statistics.d.ts +87 -0
- package/dist/types/v4-statistics.d.ts.map +1 -0
- package/dist/types/v4-user.d.ts +1021 -0
- package/dist/types/v4-user.d.ts.map +1 -0
- package/dist/types/v4-webapp.d.ts +161 -0
- package/dist/types/v4-webapp.d.ts.map +1 -0
- package/dist/types/version.d.ts +21 -0
- package/dist/types/version.d.ts.map +1 -0
- package/dist/types/web.d.ts +868 -0
- package/dist/types/web.d.ts.map +1 -0
- package/dist/utils/env.d.ts +54 -0
- package/dist/utils/env.d.ts.map +1 -0
- package/dist/utils/index.d.ts +11 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/pagination.d.ts +62 -0
- package/dist/utils/pagination.d.ts.map +1 -0
- package/dist/utils/signature.d.ts +67 -0
- package/dist/utils/signature.d.ts.map +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1,2263 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Channel Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for PolyV Live Channel operations.
|
|
5
|
+
* This file is intentionally minimal - types will be properly defined during implementation.
|
|
6
|
+
*
|
|
7
|
+
* @module types/channel
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Channel Scene Types (V2 API)
|
|
11
|
+
*/
|
|
12
|
+
export type ChannelScene = 'alone' | 'ppt' | 'topclass' | 'seminar';
|
|
13
|
+
/**
|
|
14
|
+
* Channel New Scene Types (V4 API)
|
|
15
|
+
* 直播场景
|
|
16
|
+
*/
|
|
17
|
+
export type NewScene = 'topclass' | 'double' | 'train' | 'alone' | 'seminar' | 'guide';
|
|
18
|
+
/**
|
|
19
|
+
* Channel Template Types (V4 API)
|
|
20
|
+
* 直播模板
|
|
21
|
+
*/
|
|
22
|
+
export type Template = 'ppt' | 'portrait_ppt' | 'alone' | 'portrait_alone' | 'topclass' | 'portrait_topclass' | 'seminar';
|
|
23
|
+
/**
|
|
24
|
+
* Channel Broadcast Type (V4 API)
|
|
25
|
+
* 转播类型
|
|
26
|
+
*/
|
|
27
|
+
export type BroadcastType = 'normal' | 'transmit' | 'receive';
|
|
28
|
+
/**
|
|
29
|
+
* Double Teacher Type (V4 API)
|
|
30
|
+
* 线上双师类型
|
|
31
|
+
*/
|
|
32
|
+
export type DoubleTeacherType = 'transmit' | 'receive';
|
|
33
|
+
/**
|
|
34
|
+
* Channel Stream Types
|
|
35
|
+
*/
|
|
36
|
+
export type ChannelStreamType = 'client' | 'pull' | 'thirdpull' | 'disk' | 'audio';
|
|
37
|
+
/**
|
|
38
|
+
* Y/N Flag Type
|
|
39
|
+
*/
|
|
40
|
+
export type YNFlag = 'Y' | 'N';
|
|
41
|
+
/**
|
|
42
|
+
* Channel Model
|
|
43
|
+
*
|
|
44
|
+
* Basic channel information returned from API operations.
|
|
45
|
+
*/
|
|
46
|
+
export interface ChannelModel {
|
|
47
|
+
channelId: string;
|
|
48
|
+
userId: string;
|
|
49
|
+
name: string;
|
|
50
|
+
publisher?: string;
|
|
51
|
+
description?: string;
|
|
52
|
+
url: string;
|
|
53
|
+
stream: string;
|
|
54
|
+
scene: ChannelScene;
|
|
55
|
+
channelPasswd: string;
|
|
56
|
+
streamType: ChannelStreamType;
|
|
57
|
+
pureRtcEnabled: YNFlag;
|
|
58
|
+
status?: string;
|
|
59
|
+
createdTime?: number;
|
|
60
|
+
lastModified?: number;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Channel Detail
|
|
64
|
+
*
|
|
65
|
+
* Complete channel details including all configuration options.
|
|
66
|
+
*/
|
|
67
|
+
export interface ChannelDetail extends ChannelModel {
|
|
68
|
+
categoryId?: string;
|
|
69
|
+
maxViewer?: number;
|
|
70
|
+
linkMicLimit?: number;
|
|
71
|
+
playerColor?: string;
|
|
72
|
+
autoPlay?: number;
|
|
73
|
+
logoImage?: string;
|
|
74
|
+
logoOpacity?: number;
|
|
75
|
+
logoPosition?: string;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Create Channel Request
|
|
79
|
+
*
|
|
80
|
+
* Parameters required for creating a new channel.
|
|
81
|
+
*/
|
|
82
|
+
export interface CreateChannelRequest {
|
|
83
|
+
/** Channel name (max 60 characters) - REQUIRED */
|
|
84
|
+
name: string;
|
|
85
|
+
/** Channel password (max 16 characters) - REQUIRED */
|
|
86
|
+
channelPasswd: string;
|
|
87
|
+
/** PolyV user ID - REQUIRED */
|
|
88
|
+
userId: string;
|
|
89
|
+
/** Live stream scene - OPTIONAL */
|
|
90
|
+
scene?: ChannelScene;
|
|
91
|
+
/** Real-time communication enabled - OPTIONAL */
|
|
92
|
+
pureRtcEnabled?: YNFlag;
|
|
93
|
+
/** Category ID - OPTIONAL */
|
|
94
|
+
categoryId?: string;
|
|
95
|
+
/** Maximum online viewers - OPTIONAL */
|
|
96
|
+
maxViewer?: number;
|
|
97
|
+
/** Link mic limit (-1 to 16) - OPTIONAL */
|
|
98
|
+
linkMicLimit?: number;
|
|
99
|
+
/** Player color (hex) - OPTIONAL */
|
|
100
|
+
playerColor?: string;
|
|
101
|
+
/** Auto play (0/1) - OPTIONAL */
|
|
102
|
+
autoPlay?: number;
|
|
103
|
+
/** Stream type - OPTIONAL */
|
|
104
|
+
streamType?: ChannelStreamType;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Create Channel V4 Request
|
|
108
|
+
*
|
|
109
|
+
* Parameters required for creating a new channel using V4 API.
|
|
110
|
+
* V4 API uses JSON body for request parameters.
|
|
111
|
+
*
|
|
112
|
+
* @see docs/api/v4/channel/create.md
|
|
113
|
+
*/
|
|
114
|
+
export interface CreateChannelV4Request {
|
|
115
|
+
/** 直播名称,最大长度100 - REQUIRED */
|
|
116
|
+
name: string;
|
|
117
|
+
/** 直播场景 - REQUIRED */
|
|
118
|
+
newScene: NewScene;
|
|
119
|
+
/** 直播模板 - REQUIRED */
|
|
120
|
+
template: Template;
|
|
121
|
+
/** 讲师登录密码,长度6-16位,不传则由系统随机生成 */
|
|
122
|
+
channelPasswd?: string;
|
|
123
|
+
/** 研讨会主持人密码,仅直播场景是研讨会时有效,长度6-16位 */
|
|
124
|
+
seminarHostPassword?: string;
|
|
125
|
+
/** 研讨会参会人密码,仅直播场景是研讨会时有效,长度6-16位 */
|
|
126
|
+
seminarAttendeePassword?: string;
|
|
127
|
+
/** 直播延迟 Y无延时 N普通延迟 */
|
|
128
|
+
pureRtcEnabled?: YNFlag;
|
|
129
|
+
/** 转播类型 normal不开启、transmit发起转播、receive接收转播 */
|
|
130
|
+
type?: BroadcastType;
|
|
131
|
+
/** 线上双师 transmit大房间、receive小房间 */
|
|
132
|
+
doubleTeacherType?: DoubleTeacherType;
|
|
133
|
+
/** 中英双语直播开关 Y开、N关 */
|
|
134
|
+
cnAndEnLiveEnabled?: YNFlag;
|
|
135
|
+
/** 引导页图片地址 */
|
|
136
|
+
splashImg?: string;
|
|
137
|
+
/** 连麦人数限制,最多16人 */
|
|
138
|
+
linkMicLimit?: number;
|
|
139
|
+
/** 分类ID */
|
|
140
|
+
categoryId?: number;
|
|
141
|
+
/** 开始时间,时间戳 */
|
|
142
|
+
startTime?: number;
|
|
143
|
+
/** 结束时间,时间戳 */
|
|
144
|
+
endTime?: number;
|
|
145
|
+
/** 子账号邮箱 */
|
|
146
|
+
subAccount?: string;
|
|
147
|
+
/** 自定义讲师ID,32个以内ASCII码可见字符 */
|
|
148
|
+
customTeacherId?: string;
|
|
149
|
+
/** 标签id数组 */
|
|
150
|
+
labelData?: number[];
|
|
151
|
+
/** 客户端模版背景图URL */
|
|
152
|
+
clientAloneTemplateBackgroundUrl?: string;
|
|
153
|
+
/** 视频混流背景图URL */
|
|
154
|
+
liveCdnBackgroundUrl?: string;
|
|
155
|
+
/** 手机H5观看页低延迟开关 Y开启 N关闭 */
|
|
156
|
+
h5LowLatencyFlvEnabled?: YNFlag;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Create Channel V4 Response
|
|
160
|
+
*
|
|
161
|
+
* Response from V4 channel creation API.
|
|
162
|
+
*/
|
|
163
|
+
export interface CreateChannelV4Response {
|
|
164
|
+
/** 频道ID */
|
|
165
|
+
channelId: number;
|
|
166
|
+
/** POLYV用户ID */
|
|
167
|
+
userId: string;
|
|
168
|
+
/** 讲师登录密码,直播场景不是研讨会时不为null */
|
|
169
|
+
channelPasswd?: string;
|
|
170
|
+
/** 研讨会主持人密码 */
|
|
171
|
+
seminarHostPassword?: string;
|
|
172
|
+
/** 研讨会参会人密码 */
|
|
173
|
+
seminarAttendeePassword?: string;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Watch condition auth type
|
|
177
|
+
* 观看条件类型
|
|
178
|
+
*/
|
|
179
|
+
export type WatchAuthType = 'public' | 'pay' | 'code' | 'phone' | 'info' | 'custom' | 'external' | 'direct' | 'wx';
|
|
180
|
+
/**
|
|
181
|
+
* Auth setting for watch condition
|
|
182
|
+
* 观看条件设置项
|
|
183
|
+
*/
|
|
184
|
+
export interface AuthSetting {
|
|
185
|
+
/** 主要观看条件为1,次要观看条件为2 */
|
|
186
|
+
rank: 1 | 2;
|
|
187
|
+
/** 是否开启条件观看 Y/N */
|
|
188
|
+
enabled: YNFlag;
|
|
189
|
+
/** 观看条件类型 */
|
|
190
|
+
authType?: WatchAuthType;
|
|
191
|
+
/** 付费观看 - 欢迎语标题 */
|
|
192
|
+
payAuthTips?: string;
|
|
193
|
+
/** 付费观看 - 入口文本 */
|
|
194
|
+
payEntryText?: string;
|
|
195
|
+
/** 付费观看 - 价格(元) */
|
|
196
|
+
price?: number;
|
|
197
|
+
/** 付费观看 - 有效截止日期 yyyy-MM-dd HH:mm */
|
|
198
|
+
watchEndTime?: string;
|
|
199
|
+
/** 付费观看 - 有效时长(天) */
|
|
200
|
+
validTimePeriod?: number;
|
|
201
|
+
/** 验证码观看 - 验证码 */
|
|
202
|
+
authCode?: string;
|
|
203
|
+
/** 验证码观看 - 提示文案 */
|
|
204
|
+
qcodeTips?: string;
|
|
205
|
+
/** 验证码观看 - 公众号二维码地址 */
|
|
206
|
+
qcodeImg?: string;
|
|
207
|
+
/** 登记观看 - 信息字段 */
|
|
208
|
+
infoFields?: InfoField[];
|
|
209
|
+
/** 外部授权 - SecretKey */
|
|
210
|
+
externalKey?: string;
|
|
211
|
+
/** 外部授权 - 自定义URL */
|
|
212
|
+
externalUri?: string;
|
|
213
|
+
/** 外部授权 - 跳转地址 */
|
|
214
|
+
externalRedirectUri?: string;
|
|
215
|
+
/** 自定义授权 - SecretKey */
|
|
216
|
+
customKey?: string;
|
|
217
|
+
/** 自定义授权 - 自定义URL */
|
|
218
|
+
customUri?: string;
|
|
219
|
+
/** 独立授权 - SecretKey */
|
|
220
|
+
directKey?: string;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Update Watch Condition Request
|
|
224
|
+
* 修改频道观看条件请求
|
|
225
|
+
*
|
|
226
|
+
* @see docs/api/web/watch_condition/set_watch_condition.md
|
|
227
|
+
*/
|
|
228
|
+
export interface UpdateWatchConditionRequest {
|
|
229
|
+
/** 频道号,不传为通用设置 */
|
|
230
|
+
channelId?: string;
|
|
231
|
+
/** 观看条件设置 */
|
|
232
|
+
authSettings: AuthSetting[];
|
|
233
|
+
}
|
|
234
|
+
/**
|
|
235
|
+
* Update Channel Request
|
|
236
|
+
*
|
|
237
|
+
* Parameters for updating an existing channel.
|
|
238
|
+
* All fields are optional for partial updates.
|
|
239
|
+
*/
|
|
240
|
+
export interface UpdateChannelRequest {
|
|
241
|
+
/** Channel name (max 60 characters) */
|
|
242
|
+
name?: string;
|
|
243
|
+
/** Publisher name */
|
|
244
|
+
publisher?: string;
|
|
245
|
+
/** Channel description */
|
|
246
|
+
description?: string;
|
|
247
|
+
/** Category ID */
|
|
248
|
+
categoryId?: string;
|
|
249
|
+
/** Maximum online viewers */
|
|
250
|
+
maxViewer?: number;
|
|
251
|
+
/** Link mic limit (-1 to 16) */
|
|
252
|
+
linkMicLimit?: number;
|
|
253
|
+
/** Player color (hex) */
|
|
254
|
+
playerColor?: string;
|
|
255
|
+
/** Auto play (0/1) */
|
|
256
|
+
autoPlay?: number;
|
|
257
|
+
/** Logo image URL */
|
|
258
|
+
logoImage?: string;
|
|
259
|
+
/** Logo opacity (0-100) */
|
|
260
|
+
logoOpacity?: number;
|
|
261
|
+
/** Logo position */
|
|
262
|
+
logoPosition?: string;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Channel API Token Response
|
|
266
|
+
*/
|
|
267
|
+
export interface ChannelApiTokenResponse {
|
|
268
|
+
channelToken: string;
|
|
269
|
+
expireTime: number;
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Get Channel API Token Request
|
|
273
|
+
*/
|
|
274
|
+
export interface GetChannelApiTokenRequest {
|
|
275
|
+
disposable?: boolean;
|
|
276
|
+
expireSeconds?: number;
|
|
277
|
+
}
|
|
278
|
+
/**
|
|
279
|
+
* Get Test Mode Token Request
|
|
280
|
+
*/
|
|
281
|
+
export interface GetTestModeTokenRequest {
|
|
282
|
+
expireTime?: number;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Document Status
|
|
286
|
+
*/
|
|
287
|
+
export type DocStatus = 'normal' | 'waitUpload' | 'failUpload' | 'waitConvert' | 'failConvert';
|
|
288
|
+
/**
|
|
289
|
+
* Document Convert Type
|
|
290
|
+
*/
|
|
291
|
+
export type DocConvertType = 'common' | 'animate';
|
|
292
|
+
/**
|
|
293
|
+
* Document Type (new/old)
|
|
294
|
+
*/
|
|
295
|
+
export type DocType = 'old' | 'new';
|
|
296
|
+
/**
|
|
297
|
+
* Get Doc List Request
|
|
298
|
+
*/
|
|
299
|
+
export interface GetDocListRequest {
|
|
300
|
+
channelId?: string;
|
|
301
|
+
teacherId?: string;
|
|
302
|
+
status?: DocStatus;
|
|
303
|
+
page?: number;
|
|
304
|
+
limit?: number;
|
|
305
|
+
isShowUrl?: number;
|
|
306
|
+
}
|
|
307
|
+
/**
|
|
308
|
+
* Document Model
|
|
309
|
+
*/
|
|
310
|
+
export interface DocModel {
|
|
311
|
+
fileId: string;
|
|
312
|
+
fileName: string;
|
|
313
|
+
fileUrl?: string;
|
|
314
|
+
fileType: string;
|
|
315
|
+
totalPage: number;
|
|
316
|
+
channelId?: string;
|
|
317
|
+
status: DocStatus;
|
|
318
|
+
createTime: number;
|
|
319
|
+
convertType: DocConvertType;
|
|
320
|
+
type: DocType;
|
|
321
|
+
previewImage?: string;
|
|
322
|
+
previewBigImage?: string;
|
|
323
|
+
autoId?: number;
|
|
324
|
+
teacherId?: string;
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Doc List Response
|
|
328
|
+
*/
|
|
329
|
+
export interface DocListResponse {
|
|
330
|
+
contents: DocModel[];
|
|
331
|
+
total: number;
|
|
332
|
+
page?: number;
|
|
333
|
+
/** Requested page size (max items per page) */
|
|
334
|
+
pageSize?: number;
|
|
335
|
+
/** Actual number of items returned on this page */
|
|
336
|
+
limit?: number;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* Upload Doc Request
|
|
340
|
+
*/
|
|
341
|
+
export interface UploadDocRequest {
|
|
342
|
+
file?: File | Blob | Buffer;
|
|
343
|
+
url?: string;
|
|
344
|
+
type?: DocType;
|
|
345
|
+
docName?: string;
|
|
346
|
+
callbackUrl?: string;
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Upload Doc Response
|
|
350
|
+
*/
|
|
351
|
+
export interface UploadDocResponse {
|
|
352
|
+
type: DocType;
|
|
353
|
+
fileId: string;
|
|
354
|
+
status: DocStatus;
|
|
355
|
+
}
|
|
356
|
+
/**
|
|
357
|
+
* Document Convert Status Item
|
|
358
|
+
*/
|
|
359
|
+
export interface DocConvertStatusItem {
|
|
360
|
+
fileId: string;
|
|
361
|
+
convertStatus: string;
|
|
362
|
+
type: DocType;
|
|
363
|
+
imageCount: number;
|
|
364
|
+
images: string[];
|
|
365
|
+
smallImages: string[];
|
|
366
|
+
totalPage: number;
|
|
367
|
+
htmlUrl: string;
|
|
368
|
+
}
|
|
369
|
+
/**
|
|
370
|
+
* Pagination Parameters (V4 API style)
|
|
371
|
+
*/
|
|
372
|
+
export interface PaginationParams {
|
|
373
|
+
pageNumber?: number;
|
|
374
|
+
pageSize?: number;
|
|
375
|
+
}
|
|
376
|
+
/**
|
|
377
|
+
* Multimedia Resource VID List Response
|
|
378
|
+
*/
|
|
379
|
+
export interface MultimediaResourceVidListResponse {
|
|
380
|
+
contents: string[];
|
|
381
|
+
total: number;
|
|
382
|
+
pageNumber: number;
|
|
383
|
+
pageSize: number;
|
|
384
|
+
}
|
|
385
|
+
/**
|
|
386
|
+
* Multimedia Resource Detail Item
|
|
387
|
+
*/
|
|
388
|
+
export interface MultimediaResourceDetailItem {
|
|
389
|
+
id: number;
|
|
390
|
+
channelId: string;
|
|
391
|
+
vid: string;
|
|
392
|
+
title: string;
|
|
393
|
+
status: string;
|
|
394
|
+
url: string;
|
|
395
|
+
}
|
|
396
|
+
/**
|
|
397
|
+
* Multimedia Resource Detail Response
|
|
398
|
+
*/
|
|
399
|
+
export interface MultimediaResourceDetailResponse {
|
|
400
|
+
contents: MultimediaResourceDetailItem[];
|
|
401
|
+
total: number;
|
|
402
|
+
pageNumber: number;
|
|
403
|
+
pageSize: number;
|
|
404
|
+
}
|
|
405
|
+
/**
|
|
406
|
+
* User Multimedia Resource Item
|
|
407
|
+
*/
|
|
408
|
+
export interface UserMultimediaResourceItem {
|
|
409
|
+
vid: string;
|
|
410
|
+
title: string;
|
|
411
|
+
status: number;
|
|
412
|
+
createTime: string;
|
|
413
|
+
}
|
|
414
|
+
/**
|
|
415
|
+
* User Multimedia Resource Response
|
|
416
|
+
* API returns array directly
|
|
417
|
+
*/
|
|
418
|
+
export type UserMultimediaResourceResponse = UserMultimediaResourceItem[];
|
|
419
|
+
/**
|
|
420
|
+
* HLS Pull URL Response
|
|
421
|
+
*/
|
|
422
|
+
export interface HlsPullUrlResponse {
|
|
423
|
+
url: string;
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* Push URL Response
|
|
427
|
+
*/
|
|
428
|
+
export interface PushUrlResponse {
|
|
429
|
+
url: string;
|
|
430
|
+
}
|
|
431
|
+
/**
|
|
432
|
+
* Create Channel V3 Request
|
|
433
|
+
*/
|
|
434
|
+
export interface CreateChannelV3Request {
|
|
435
|
+
/** Channel name - REQUIRED */
|
|
436
|
+
name: string;
|
|
437
|
+
/** Channel password - REQUIRED */
|
|
438
|
+
channelPasswd: string;
|
|
439
|
+
/** User ID - OPTIONAL */
|
|
440
|
+
userId?: string;
|
|
441
|
+
/** Scene type */
|
|
442
|
+
scene?: ChannelScene;
|
|
443
|
+
/** Category ID */
|
|
444
|
+
categoryId?: number;
|
|
445
|
+
/** Maximum viewers */
|
|
446
|
+
maxViewer?: number;
|
|
447
|
+
/** Publisher name */
|
|
448
|
+
publisher?: string;
|
|
449
|
+
/** Description */
|
|
450
|
+
description?: string;
|
|
451
|
+
/** Link mic limit */
|
|
452
|
+
linkMicLimit?: number;
|
|
453
|
+
/** Pure RTC enabled */
|
|
454
|
+
pureRtcEnabled?: YNFlag;
|
|
455
|
+
/** Auto play */
|
|
456
|
+
autoPlay?: number;
|
|
457
|
+
/** Player color */
|
|
458
|
+
playerColor?: string;
|
|
459
|
+
/** Cover image URL */
|
|
460
|
+
coverImg?: string;
|
|
461
|
+
/** Splash enabled */
|
|
462
|
+
splashEnabled?: YNFlag;
|
|
463
|
+
/** Splash image URL */
|
|
464
|
+
splashImg?: string;
|
|
465
|
+
/** Initial likes count */
|
|
466
|
+
likes?: number;
|
|
467
|
+
/** Initial page view count */
|
|
468
|
+
pageView?: number;
|
|
469
|
+
/** Close danmu */
|
|
470
|
+
closeDanmu?: YNFlag;
|
|
471
|
+
/** Show danmu info enabled */
|
|
472
|
+
showDanmuInfoEnabled?: YNFlag;
|
|
473
|
+
/** Sub-account email */
|
|
474
|
+
subAccount?: string;
|
|
475
|
+
/** Auth settings array */
|
|
476
|
+
authSettings?: AuthSetting[];
|
|
477
|
+
/** Playback settings */
|
|
478
|
+
playbackSetting?: PlaybackSetting;
|
|
479
|
+
/** Teacher settings */
|
|
480
|
+
teacher?: TeacherSetting;
|
|
481
|
+
/** Roles array */
|
|
482
|
+
roles?: RoleSetting[];
|
|
483
|
+
}
|
|
484
|
+
/**
|
|
485
|
+
* Info Field
|
|
486
|
+
*/
|
|
487
|
+
export interface InfoField {
|
|
488
|
+
name?: string;
|
|
489
|
+
type?: string;
|
|
490
|
+
options?: string;
|
|
491
|
+
placeholder?: string;
|
|
492
|
+
sms?: YNFlag;
|
|
493
|
+
}
|
|
494
|
+
/**
|
|
495
|
+
* Playback Setting
|
|
496
|
+
*/
|
|
497
|
+
export interface PlaybackSetting {
|
|
498
|
+
globalSettingEnabled?: YNFlag;
|
|
499
|
+
playbackEnabled?: YNFlag;
|
|
500
|
+
type?: string;
|
|
501
|
+
origin?: string;
|
|
502
|
+
videoId?: string;
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* Teacher Setting
|
|
506
|
+
*/
|
|
507
|
+
export interface TeacherSetting {
|
|
508
|
+
nickname?: string;
|
|
509
|
+
actor?: string;
|
|
510
|
+
passwd?: string;
|
|
511
|
+
avatar?: string;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Role Setting
|
|
515
|
+
*/
|
|
516
|
+
export interface RoleSetting {
|
|
517
|
+
nickname?: string;
|
|
518
|
+
actor?: string;
|
|
519
|
+
passwd?: string;
|
|
520
|
+
avatar?: string;
|
|
521
|
+
role?: 'Assistant' | 'Guest';
|
|
522
|
+
}
|
|
523
|
+
/**
|
|
524
|
+
* Create Channel V3 Response
|
|
525
|
+
*/
|
|
526
|
+
export interface CreateChannelV3Response {
|
|
527
|
+
channelId: string;
|
|
528
|
+
userId: string;
|
|
529
|
+
name: string;
|
|
530
|
+
publisher?: string;
|
|
531
|
+
description?: string;
|
|
532
|
+
url: string;
|
|
533
|
+
stream: string;
|
|
534
|
+
scene: ChannelScene;
|
|
535
|
+
channelPasswd: string;
|
|
536
|
+
streamType: string;
|
|
537
|
+
pureRtcEnabled: YNFlag;
|
|
538
|
+
maxViewer?: number;
|
|
539
|
+
linkMicLimit?: number;
|
|
540
|
+
playerColor?: string;
|
|
541
|
+
autoPlay: boolean;
|
|
542
|
+
logoImage?: string;
|
|
543
|
+
logoOpacity?: number;
|
|
544
|
+
logoPosition?: string;
|
|
545
|
+
currentTimeMillis: number;
|
|
546
|
+
}
|
|
547
|
+
/**
|
|
548
|
+
* Copy Channel Options
|
|
549
|
+
*/
|
|
550
|
+
export interface CopyChannelOptions {
|
|
551
|
+
name?: string;
|
|
552
|
+
categoryId?: number;
|
|
553
|
+
startTime?: number;
|
|
554
|
+
subAccount?: string;
|
|
555
|
+
}
|
|
556
|
+
/**
|
|
557
|
+
* Update Callback Setting Request
|
|
558
|
+
*/
|
|
559
|
+
export interface UpdateCallbackSettingRequest {
|
|
560
|
+
channelId: string;
|
|
561
|
+
recordCallbackUrl?: string;
|
|
562
|
+
recordCallbackVideoType?: string;
|
|
563
|
+
playbackCallbackUrl?: string;
|
|
564
|
+
streamCallbackUrl?: string;
|
|
565
|
+
pptRecordCallbackUrl?: string;
|
|
566
|
+
liveScanCallbackUrl?: string;
|
|
567
|
+
playbackCacheCallbackUrl?: string;
|
|
568
|
+
subtitleCallbackUrl?: string;
|
|
569
|
+
liveViolationCutoffCallbackUrl?: string;
|
|
570
|
+
}
|
|
571
|
+
/**
|
|
572
|
+
* Callback Setting Response
|
|
573
|
+
*/
|
|
574
|
+
export interface CallbackSettingResponse {
|
|
575
|
+
recordCallbackUrl?: string;
|
|
576
|
+
playbackCallbackUrl?: string;
|
|
577
|
+
streamCallbackUrl?: string;
|
|
578
|
+
liveScanCallbackUrl?: string;
|
|
579
|
+
recordCallbackVideoType?: string;
|
|
580
|
+
pptRecordCallbackUrl?: string;
|
|
581
|
+
playbackCacheCallbackUrl?: string;
|
|
582
|
+
subtitleCallbackUrl?: string;
|
|
583
|
+
globalSettingEnabled?: YNFlag;
|
|
584
|
+
liveViolationCutoffCallbackUrl?: string;
|
|
585
|
+
}
|
|
586
|
+
/**
|
|
587
|
+
* Add Account Request
|
|
588
|
+
*/
|
|
589
|
+
export interface AddAccountRequest {
|
|
590
|
+
role?: 'Assistant' | 'Guest';
|
|
591
|
+
nickname?: string;
|
|
592
|
+
password?: string;
|
|
593
|
+
actor?: string;
|
|
594
|
+
avatar?: string;
|
|
595
|
+
}
|
|
596
|
+
/**
|
|
597
|
+
* Account Model
|
|
598
|
+
*/
|
|
599
|
+
export interface AccountModel {
|
|
600
|
+
account: string;
|
|
601
|
+
userId: string;
|
|
602
|
+
channelId: string;
|
|
603
|
+
passwd: string;
|
|
604
|
+
nickname: string;
|
|
605
|
+
stream: string;
|
|
606
|
+
status: string;
|
|
607
|
+
createdTime: number;
|
|
608
|
+
lastModified: number;
|
|
609
|
+
sort: number;
|
|
610
|
+
avatar: string;
|
|
611
|
+
actor: string;
|
|
612
|
+
pageTurnEnabled: YNFlag;
|
|
613
|
+
notifyEnabled: YNFlag;
|
|
614
|
+
checkinEnabled: YNFlag;
|
|
615
|
+
voteEnabled: YNFlag;
|
|
616
|
+
lotteryEnabled: YNFlag;
|
|
617
|
+
role: 'Assistant' | 'Guest';
|
|
618
|
+
chatListEnabled: YNFlag;
|
|
619
|
+
chatAuditEnabled: YNFlag;
|
|
620
|
+
monitorEnabled: YNFlag;
|
|
621
|
+
roundTourEnabled: YNFlag;
|
|
622
|
+
watchLockEnabled: YNFlag;
|
|
623
|
+
loginUrl?: string;
|
|
624
|
+
pushUrl?: string;
|
|
625
|
+
chatInteractionEnabled?: YNFlag;
|
|
626
|
+
}
|
|
627
|
+
/**
|
|
628
|
+
* Update Account Request
|
|
629
|
+
*/
|
|
630
|
+
export interface UpdateAccountRequest {
|
|
631
|
+
nickname?: string;
|
|
632
|
+
password?: string;
|
|
633
|
+
actor?: string;
|
|
634
|
+
avatar?: string;
|
|
635
|
+
}
|
|
636
|
+
/**
|
|
637
|
+
* Batch Create Accounts Request Item
|
|
638
|
+
*/
|
|
639
|
+
export interface BatchCreateAccountItem {
|
|
640
|
+
role: 'Assistant' | 'Guest';
|
|
641
|
+
nickname: string;
|
|
642
|
+
passwd: string;
|
|
643
|
+
actor?: string;
|
|
644
|
+
avatar?: string;
|
|
645
|
+
}
|
|
646
|
+
/**
|
|
647
|
+
* Playback List Type
|
|
648
|
+
*/
|
|
649
|
+
export type PlaybackListType = 'playback' | 'vod';
|
|
650
|
+
/**
|
|
651
|
+
* Playback Video Item Subtitle
|
|
652
|
+
*/
|
|
653
|
+
export interface PlaybackVideoSubtitle {
|
|
654
|
+
id: number;
|
|
655
|
+
name: string;
|
|
656
|
+
srtUrl: string;
|
|
657
|
+
language: string;
|
|
658
|
+
status: string;
|
|
659
|
+
}
|
|
660
|
+
/**
|
|
661
|
+
* Playback Video Item
|
|
662
|
+
*/
|
|
663
|
+
export interface PlaybackVideoItem {
|
|
664
|
+
videoId: string;
|
|
665
|
+
channelId: string;
|
|
666
|
+
title: string;
|
|
667
|
+
startTime?: string;
|
|
668
|
+
endTime?: string;
|
|
669
|
+
fileSize?: number;
|
|
670
|
+
duration?: number;
|
|
671
|
+
status?: string;
|
|
672
|
+
url?: string;
|
|
673
|
+
videoPoolId?: string;
|
|
674
|
+
userId?: string;
|
|
675
|
+
firstImage?: string;
|
|
676
|
+
myBr?: string;
|
|
677
|
+
qid?: string;
|
|
678
|
+
seed?: number;
|
|
679
|
+
ordertime?: number;
|
|
680
|
+
createdTime?: number;
|
|
681
|
+
lastModified?: number;
|
|
682
|
+
rank?: number;
|
|
683
|
+
asDefault?: YNFlag;
|
|
684
|
+
channelSessionId?: string;
|
|
685
|
+
fileUrl?: string;
|
|
686
|
+
fileId?: string;
|
|
687
|
+
liveType?: ChannelScene;
|
|
688
|
+
width?: number;
|
|
689
|
+
height?: number;
|
|
690
|
+
origin?: 'manual' | 'auto' | 'merge' | 'clip' | 'smart-clip';
|
|
691
|
+
callbackUrl?: string;
|
|
692
|
+
errorCount?: number;
|
|
693
|
+
lang?: string;
|
|
694
|
+
videoIdEN?: string;
|
|
695
|
+
enFileUrl?: string;
|
|
696
|
+
mergeInfo?: string;
|
|
697
|
+
watchUrl?: string;
|
|
698
|
+
originSessionId?: string;
|
|
699
|
+
subtitleList?: PlaybackVideoSubtitle[];
|
|
700
|
+
}
|
|
701
|
+
/**
|
|
702
|
+
* Playback List Response
|
|
703
|
+
*/
|
|
704
|
+
export interface PlaybackListResponse {
|
|
705
|
+
pageSize: number;
|
|
706
|
+
pageNumber: number;
|
|
707
|
+
total: number;
|
|
708
|
+
contents: PlaybackVideoItem[];
|
|
709
|
+
totalItems?: number;
|
|
710
|
+
startRow?: number;
|
|
711
|
+
firstPage?: boolean;
|
|
712
|
+
lastPage?: boolean;
|
|
713
|
+
prePageNumber?: number;
|
|
714
|
+
nextPageNumber?: number;
|
|
715
|
+
limit?: number;
|
|
716
|
+
totalPages?: number;
|
|
717
|
+
endRow?: number;
|
|
718
|
+
offset?: number;
|
|
719
|
+
}
|
|
720
|
+
/**
|
|
721
|
+
* Playback List Request
|
|
722
|
+
*/
|
|
723
|
+
export interface PlaybackListRequest {
|
|
724
|
+
page?: number;
|
|
725
|
+
pageSize?: number;
|
|
726
|
+
listType?: PlaybackListType;
|
|
727
|
+
sessionIds?: string;
|
|
728
|
+
title?: string;
|
|
729
|
+
}
|
|
730
|
+
/**
|
|
731
|
+
* Channel Session
|
|
732
|
+
*/
|
|
733
|
+
export interface ChannelSession {
|
|
734
|
+
sessionId: string;
|
|
735
|
+
startTime: string;
|
|
736
|
+
endTime: string;
|
|
737
|
+
duration: number;
|
|
738
|
+
}
|
|
739
|
+
/**
|
|
740
|
+
* Record File Item
|
|
741
|
+
*/
|
|
742
|
+
export interface RecordFileItem {
|
|
743
|
+
fileId: string;
|
|
744
|
+
channelId: string;
|
|
745
|
+
sessionId: string;
|
|
746
|
+
startTime: string;
|
|
747
|
+
endTime: string;
|
|
748
|
+
fileSize: number;
|
|
749
|
+
duration: number;
|
|
750
|
+
url: string;
|
|
751
|
+
}
|
|
752
|
+
/**
|
|
753
|
+
* Record File Response
|
|
754
|
+
*/
|
|
755
|
+
export interface RecordFileResponse {
|
|
756
|
+
contents: RecordFileItem[];
|
|
757
|
+
total: number;
|
|
758
|
+
pageSize: number;
|
|
759
|
+
pageNumber: number;
|
|
760
|
+
}
|
|
761
|
+
/**
|
|
762
|
+
* Record File Request
|
|
763
|
+
*/
|
|
764
|
+
export interface RecordFileRequest {
|
|
765
|
+
page?: number;
|
|
766
|
+
pageSize?: number;
|
|
767
|
+
}
|
|
768
|
+
/**
|
|
769
|
+
* Record Info
|
|
770
|
+
*/
|
|
771
|
+
export interface RecordInfo {
|
|
772
|
+
fileId: string;
|
|
773
|
+
channelId: string;
|
|
774
|
+
sessionId: string;
|
|
775
|
+
startTime: string;
|
|
776
|
+
endTime: string;
|
|
777
|
+
fileSize: number;
|
|
778
|
+
duration: number;
|
|
779
|
+
url: string;
|
|
780
|
+
}
|
|
781
|
+
/**
|
|
782
|
+
* Playback Enabled Response
|
|
783
|
+
*/
|
|
784
|
+
export interface PlaybackEnabledResponse {
|
|
785
|
+
enabled: boolean;
|
|
786
|
+
}
|
|
787
|
+
/**
|
|
788
|
+
* Playback Setting Response
|
|
789
|
+
*/
|
|
790
|
+
export interface PlaybackSettingResponse {
|
|
791
|
+
sortType: string;
|
|
792
|
+
autoPublish: boolean;
|
|
793
|
+
}
|
|
794
|
+
/**
|
|
795
|
+
* Set Record Setting Request
|
|
796
|
+
*/
|
|
797
|
+
export interface SetRecordSettingRequest {
|
|
798
|
+
enabled?: boolean;
|
|
799
|
+
type?: string;
|
|
800
|
+
[key: string]: unknown;
|
|
801
|
+
}
|
|
802
|
+
/**
|
|
803
|
+
* Clip Record File Request
|
|
804
|
+
*/
|
|
805
|
+
export interface ClipRecordFileRequest {
|
|
806
|
+
fileId: string;
|
|
807
|
+
startTime: number;
|
|
808
|
+
endTime: number;
|
|
809
|
+
fileName?: string;
|
|
810
|
+
callbackUrl?: string;
|
|
811
|
+
}
|
|
812
|
+
/**
|
|
813
|
+
* Clip Record File Response
|
|
814
|
+
*/
|
|
815
|
+
export interface ClipRecordFileResponse {
|
|
816
|
+
fileId: string;
|
|
817
|
+
}
|
|
818
|
+
/**
|
|
819
|
+
* Record Convert Request
|
|
820
|
+
*/
|
|
821
|
+
export interface RecordConvertRequest {
|
|
822
|
+
fileId: string;
|
|
823
|
+
fileName?: string;
|
|
824
|
+
callbackUrl?: string;
|
|
825
|
+
}
|
|
826
|
+
/**
|
|
827
|
+
* Record Convert Response
|
|
828
|
+
*/
|
|
829
|
+
export interface RecordConvertResponse {
|
|
830
|
+
fileId: string;
|
|
831
|
+
}
|
|
832
|
+
/**
|
|
833
|
+
* Record Merge Request (for array input)
|
|
834
|
+
*/
|
|
835
|
+
export interface RecordMergeArrayRequest {
|
|
836
|
+
fileIds: string[];
|
|
837
|
+
fileName?: string;
|
|
838
|
+
callbackUrl?: string;
|
|
839
|
+
}
|
|
840
|
+
/**
|
|
841
|
+
* Record Merge Request (comma-separated fileIds)
|
|
842
|
+
*/
|
|
843
|
+
export interface RecordMergeRequest {
|
|
844
|
+
fileIds: string;
|
|
845
|
+
fileName?: string;
|
|
846
|
+
callbackUrl?: string;
|
|
847
|
+
deleteFileIds?: string;
|
|
848
|
+
startTime?: string;
|
|
849
|
+
endTime?: string;
|
|
850
|
+
ignoreDuration?: number;
|
|
851
|
+
}
|
|
852
|
+
/**
|
|
853
|
+
* Record Merge Response
|
|
854
|
+
*/
|
|
855
|
+
export interface RecordMergeResponse {
|
|
856
|
+
fileId: string;
|
|
857
|
+
url?: string;
|
|
858
|
+
}
|
|
859
|
+
/**
|
|
860
|
+
* Record Add Breakpoint Request
|
|
861
|
+
*/
|
|
862
|
+
export interface RecordAddBreakpointRequest {
|
|
863
|
+
fileId: string;
|
|
864
|
+
time: number;
|
|
865
|
+
}
|
|
866
|
+
/**
|
|
867
|
+
* Record Merge MP4 Request (comma-separated fileIds)
|
|
868
|
+
*/
|
|
869
|
+
export interface RecordMergeMp4Request {
|
|
870
|
+
fileIds: string;
|
|
871
|
+
fileName?: string;
|
|
872
|
+
callbackUrl?: string;
|
|
873
|
+
deleteFileIds?: string;
|
|
874
|
+
startTime?: string;
|
|
875
|
+
endTime?: string;
|
|
876
|
+
}
|
|
877
|
+
/**
|
|
878
|
+
* Add VOD Playback Request
|
|
879
|
+
*/
|
|
880
|
+
export interface AddVodPlaybackRequest {
|
|
881
|
+
vid: string;
|
|
882
|
+
title?: string;
|
|
883
|
+
cataid?: string;
|
|
884
|
+
}
|
|
885
|
+
/**
|
|
886
|
+
* Delete Playback Request
|
|
887
|
+
*/
|
|
888
|
+
export interface DeletePlaybackRequest {
|
|
889
|
+
videoId: string;
|
|
890
|
+
listType?: PlaybackListType;
|
|
891
|
+
}
|
|
892
|
+
/**
|
|
893
|
+
* Channel Session Item
|
|
894
|
+
*/
|
|
895
|
+
export interface ChannelSessionItem {
|
|
896
|
+
sessionId: string;
|
|
897
|
+
channelId: string;
|
|
898
|
+
userId: string;
|
|
899
|
+
startTime: number;
|
|
900
|
+
endTime: number;
|
|
901
|
+
}
|
|
902
|
+
/**
|
|
903
|
+
* Channel Sessions Response
|
|
904
|
+
*/
|
|
905
|
+
export interface ChannelSessionsResponse {
|
|
906
|
+
pageSize: number;
|
|
907
|
+
pageNumber: number;
|
|
908
|
+
totalItems: number;
|
|
909
|
+
contents: ChannelSessionItem[];
|
|
910
|
+
startRow: number;
|
|
911
|
+
firstPage: boolean;
|
|
912
|
+
lastPage: boolean;
|
|
913
|
+
prePageNumber: number;
|
|
914
|
+
nextPageNumber: number;
|
|
915
|
+
limit: number;
|
|
916
|
+
totalPages: number;
|
|
917
|
+
endRow: number;
|
|
918
|
+
offset: number;
|
|
919
|
+
}
|
|
920
|
+
/**
|
|
921
|
+
* Channel Sessions Request
|
|
922
|
+
*/
|
|
923
|
+
export interface ChannelSessionsRequest {
|
|
924
|
+
startDate?: string;
|
|
925
|
+
endDate?: string;
|
|
926
|
+
page?: number;
|
|
927
|
+
pageSize?: number;
|
|
928
|
+
}
|
|
929
|
+
/**
|
|
930
|
+
* Record File
|
|
931
|
+
*/
|
|
932
|
+
export interface RecordFile {
|
|
933
|
+
fileId: string;
|
|
934
|
+
userId: string;
|
|
935
|
+
channelId: string;
|
|
936
|
+
startTime: string;
|
|
937
|
+
endTime: string;
|
|
938
|
+
filename: string;
|
|
939
|
+
filesize: number;
|
|
940
|
+
createdTime: number;
|
|
941
|
+
width: number;
|
|
942
|
+
height: number;
|
|
943
|
+
duration: number;
|
|
944
|
+
bitrate: number;
|
|
945
|
+
mp4: string;
|
|
946
|
+
m3u8: string;
|
|
947
|
+
channelSessionId: string;
|
|
948
|
+
liveType: ChannelScene;
|
|
949
|
+
daysLeft: number;
|
|
950
|
+
originSessionId?: string;
|
|
951
|
+
}
|
|
952
|
+
/**
|
|
953
|
+
* Record Info Item
|
|
954
|
+
*/
|
|
955
|
+
export interface RecordInfoItem {
|
|
956
|
+
fileId: string;
|
|
957
|
+
userId: string;
|
|
958
|
+
channelId: string;
|
|
959
|
+
sessionId: string;
|
|
960
|
+
startTime: string;
|
|
961
|
+
endTime: string;
|
|
962
|
+
filename: string;
|
|
963
|
+
filesize: number;
|
|
964
|
+
status: string;
|
|
965
|
+
createdTime: number;
|
|
966
|
+
duration: number;
|
|
967
|
+
bitrate: number;
|
|
968
|
+
mp4Result: number;
|
|
969
|
+
m3u8Result: number;
|
|
970
|
+
mp4Url: string;
|
|
971
|
+
m3u8Url: string;
|
|
972
|
+
liveType: ChannelScene;
|
|
973
|
+
bitNum: number;
|
|
974
|
+
width: number;
|
|
975
|
+
height: number;
|
|
976
|
+
dv: string;
|
|
977
|
+
}
|
|
978
|
+
/**
|
|
979
|
+
* Record Info Response
|
|
980
|
+
*/
|
|
981
|
+
export interface RecordInfoResponse {
|
|
982
|
+
pageSize: number;
|
|
983
|
+
pageNumber: number;
|
|
984
|
+
totalItems: number;
|
|
985
|
+
contents: RecordInfoItem[];
|
|
986
|
+
startRow: number;
|
|
987
|
+
firstPage: boolean;
|
|
988
|
+
lastPage: boolean;
|
|
989
|
+
prePageNumber: number;
|
|
990
|
+
nextPageNumber: number;
|
|
991
|
+
limit: number;
|
|
992
|
+
totalPages: number;
|
|
993
|
+
endRow: number;
|
|
994
|
+
offset: number;
|
|
995
|
+
}
|
|
996
|
+
/**
|
|
997
|
+
* Record Info Request
|
|
998
|
+
*/
|
|
999
|
+
export interface RecordInfoRequest {
|
|
1000
|
+
sessionId?: string;
|
|
1001
|
+
startTime?: string;
|
|
1002
|
+
endTime?: string;
|
|
1003
|
+
page?: number;
|
|
1004
|
+
pageSize?: number;
|
|
1005
|
+
}
|
|
1006
|
+
/**
|
|
1007
|
+
* Set Playback Sort Request
|
|
1008
|
+
*/
|
|
1009
|
+
export interface SetPlaybackSortRequest {
|
|
1010
|
+
videoIds: string;
|
|
1011
|
+
}
|
|
1012
|
+
/**
|
|
1013
|
+
* Set Playback Single Sort Request
|
|
1014
|
+
*/
|
|
1015
|
+
export interface SetPlaybackSingleSortRequest {
|
|
1016
|
+
videoId: string;
|
|
1017
|
+
rank: number;
|
|
1018
|
+
}
|
|
1019
|
+
/**
|
|
1020
|
+
* Update Playback Title Request
|
|
1021
|
+
*/
|
|
1022
|
+
export interface UpdatePlaybackTitleRequest {
|
|
1023
|
+
videoId: string;
|
|
1024
|
+
title: string;
|
|
1025
|
+
}
|
|
1026
|
+
/**
|
|
1027
|
+
* Record Merge MP4 Start Request
|
|
1028
|
+
*/
|
|
1029
|
+
export interface RecordMergeMp4StartRequest {
|
|
1030
|
+
fileIds: string;
|
|
1031
|
+
fileName?: string;
|
|
1032
|
+
callbackUrl?: string;
|
|
1033
|
+
deleteFileIds?: string;
|
|
1034
|
+
startTime?: string;
|
|
1035
|
+
endTime?: string;
|
|
1036
|
+
outputClarity?: string;
|
|
1037
|
+
}
|
|
1038
|
+
/**
|
|
1039
|
+
* Record Add Breakpoint Request (old with sessionId - keep for backward compatibility)
|
|
1040
|
+
*/
|
|
1041
|
+
export interface RecordAddBreakpointRequestOld {
|
|
1042
|
+
sessionId: string;
|
|
1043
|
+
time: number;
|
|
1044
|
+
}
|
|
1045
|
+
/**
|
|
1046
|
+
* Player Logo Settings
|
|
1047
|
+
*/
|
|
1048
|
+
export interface PlayerLogoSettings {
|
|
1049
|
+
logoImage?: string;
|
|
1050
|
+
logoOpacity?: number;
|
|
1051
|
+
logoPosition?: string;
|
|
1052
|
+
logoHref?: string;
|
|
1053
|
+
}
|
|
1054
|
+
/**
|
|
1055
|
+
* Player Head Settings
|
|
1056
|
+
*/
|
|
1057
|
+
export interface PlayerHeadSettings {
|
|
1058
|
+
headImage?: string;
|
|
1059
|
+
headImageHref?: string;
|
|
1060
|
+
}
|
|
1061
|
+
/**
|
|
1062
|
+
* Player Stop Settings
|
|
1063
|
+
*/
|
|
1064
|
+
export interface PlayerStopSettings {
|
|
1065
|
+
stopImage?: string;
|
|
1066
|
+
stopImageHref?: string;
|
|
1067
|
+
}
|
|
1068
|
+
/**
|
|
1069
|
+
* Product Click Stats Request
|
|
1070
|
+
*/
|
|
1071
|
+
export interface GetProductClickStatsRequest {
|
|
1072
|
+
/** Channel ID - REQUIRED */
|
|
1073
|
+
channelId: string;
|
|
1074
|
+
/** Session ID */
|
|
1075
|
+
sessionId?: string;
|
|
1076
|
+
/** Start time (13-digit ms timestamp) */
|
|
1077
|
+
startTime?: number;
|
|
1078
|
+
/** End time (13-digit ms timestamp) */
|
|
1079
|
+
endTime?: number;
|
|
1080
|
+
/** Page number */
|
|
1081
|
+
pageNumber?: number;
|
|
1082
|
+
/** Page size (default 10, max 1000) */
|
|
1083
|
+
pageSize?: number;
|
|
1084
|
+
}
|
|
1085
|
+
/**
|
|
1086
|
+
* Product Click Stats Item
|
|
1087
|
+
*/
|
|
1088
|
+
export interface ProductClickStatsItem {
|
|
1089
|
+
channelId: string;
|
|
1090
|
+
sessionId: string;
|
|
1091
|
+
productId: string;
|
|
1092
|
+
name: string;
|
|
1093
|
+
productType: 'normal' | 'finance';
|
|
1094
|
+
productClickNum: number;
|
|
1095
|
+
linkClickNum: number;
|
|
1096
|
+
pcClickNum: number;
|
|
1097
|
+
mobileClickNum: number;
|
|
1098
|
+
wxMiniProgramClickNum: number;
|
|
1099
|
+
iosClickNum: number;
|
|
1100
|
+
androidClickNum: number;
|
|
1101
|
+
}
|
|
1102
|
+
/**
|
|
1103
|
+
* Product Click Stats Response
|
|
1104
|
+
*/
|
|
1105
|
+
export interface GetProductClickStatsResponse {
|
|
1106
|
+
pageNumber: number;
|
|
1107
|
+
pageSize: number;
|
|
1108
|
+
totalPages: number;
|
|
1109
|
+
totalItems: number;
|
|
1110
|
+
contents: ProductClickStatsItem[];
|
|
1111
|
+
}
|
|
1112
|
+
/**
|
|
1113
|
+
* Product List Stats Request
|
|
1114
|
+
*/
|
|
1115
|
+
export interface GetProductListStatsRequest {
|
|
1116
|
+
/** Channel ID - REQUIRED */
|
|
1117
|
+
channelId: string;
|
|
1118
|
+
/** Session ID */
|
|
1119
|
+
sessionId?: string;
|
|
1120
|
+
/** Start time (13-digit ms timestamp) */
|
|
1121
|
+
startTime?: number;
|
|
1122
|
+
/** End time (13-digit ms timestamp) */
|
|
1123
|
+
endTime?: number;
|
|
1124
|
+
/** Page number */
|
|
1125
|
+
pageNumber?: number;
|
|
1126
|
+
/** Page size (default 10, max 1000) */
|
|
1127
|
+
pageSize?: number;
|
|
1128
|
+
}
|
|
1129
|
+
/**
|
|
1130
|
+
* Product List Stats Item
|
|
1131
|
+
*/
|
|
1132
|
+
export interface ProductListStatsItem {
|
|
1133
|
+
channelId: string;
|
|
1134
|
+
sessionId: string;
|
|
1135
|
+
productListClickNum: number;
|
|
1136
|
+
}
|
|
1137
|
+
/**
|
|
1138
|
+
* Product List Stats Response
|
|
1139
|
+
*/
|
|
1140
|
+
export interface GetProductListStatsResponse {
|
|
1141
|
+
pageNumber: number;
|
|
1142
|
+
pageSize: number;
|
|
1143
|
+
totalPages: number;
|
|
1144
|
+
totalItems: number;
|
|
1145
|
+
contents: ProductListStatsItem[];
|
|
1146
|
+
}
|
|
1147
|
+
/**
|
|
1148
|
+
* Redpack Receive Item
|
|
1149
|
+
*/
|
|
1150
|
+
export interface RedpackReceiveItem {
|
|
1151
|
+
redPackId: string;
|
|
1152
|
+
userId: string;
|
|
1153
|
+
nickName: string;
|
|
1154
|
+
avatar: string;
|
|
1155
|
+
amount: number;
|
|
1156
|
+
createdTime: number;
|
|
1157
|
+
}
|
|
1158
|
+
/**
|
|
1159
|
+
* Redpack Stats Item
|
|
1160
|
+
*/
|
|
1161
|
+
export interface RedpackStatsItem {
|
|
1162
|
+
redPackId: string;
|
|
1163
|
+
userId: string;
|
|
1164
|
+
channelId: string;
|
|
1165
|
+
nickName: string;
|
|
1166
|
+
amount: number;
|
|
1167
|
+
balance: number;
|
|
1168
|
+
allotType: string;
|
|
1169
|
+
createdTime: number;
|
|
1170
|
+
channelSessionId: string;
|
|
1171
|
+
status: string;
|
|
1172
|
+
redPackType: string;
|
|
1173
|
+
redPackReceiveList?: RedpackReceiveItem[];
|
|
1174
|
+
}
|
|
1175
|
+
/**
|
|
1176
|
+
* Redpack Stats Request
|
|
1177
|
+
*/
|
|
1178
|
+
export interface GetRedpackStatsRequest {
|
|
1179
|
+
/** Channel ID - REQUIRED */
|
|
1180
|
+
channelId: string;
|
|
1181
|
+
/** Session ID */
|
|
1182
|
+
sessionId?: string;
|
|
1183
|
+
/** Start time (13-digit ms timestamp) */
|
|
1184
|
+
startTime?: number;
|
|
1185
|
+
/** End time (13-digit ms timestamp) */
|
|
1186
|
+
endTime?: number;
|
|
1187
|
+
/** Page number */
|
|
1188
|
+
pageNumber?: number;
|
|
1189
|
+
/** Page size (default 10, max 1000) */
|
|
1190
|
+
pageSize?: number;
|
|
1191
|
+
}
|
|
1192
|
+
/**
|
|
1193
|
+
* Redpack Stats Response
|
|
1194
|
+
*/
|
|
1195
|
+
export interface GetRedpackStatsResponse {
|
|
1196
|
+
pageNumber: number;
|
|
1197
|
+
pageSize: number;
|
|
1198
|
+
totalPages: number;
|
|
1199
|
+
totalItems: number;
|
|
1200
|
+
contents: RedpackStatsItem[];
|
|
1201
|
+
}
|
|
1202
|
+
/**
|
|
1203
|
+
* Channel Statistic Request
|
|
1204
|
+
*/
|
|
1205
|
+
export interface GetChannelStatisticRequest {
|
|
1206
|
+
/** Channel ID - REQUIRED */
|
|
1207
|
+
channelId: string;
|
|
1208
|
+
/** Start date (yyyy-MM-dd) - REQUIRED */
|
|
1209
|
+
startDate: string;
|
|
1210
|
+
/** End date (yyyy-MM-dd) - REQUIRED */
|
|
1211
|
+
endDate: string;
|
|
1212
|
+
}
|
|
1213
|
+
/**
|
|
1214
|
+
* Channel Statistic Data
|
|
1215
|
+
*/
|
|
1216
|
+
export interface ChannelStatisticData {
|
|
1217
|
+
uniqueVisitor?: number;
|
|
1218
|
+
plays: number;
|
|
1219
|
+
playDuration: number;
|
|
1220
|
+
ips: number;
|
|
1221
|
+
viewers?: number;
|
|
1222
|
+
averagePlayDuration: number;
|
|
1223
|
+
averageTime: number;
|
|
1224
|
+
statisticsByViewer?: string;
|
|
1225
|
+
averagePlayDurationByViewer?: number;
|
|
1226
|
+
averageTimeByViewer?: number;
|
|
1227
|
+
}
|
|
1228
|
+
/**
|
|
1229
|
+
* Summary Item (V2)
|
|
1230
|
+
*/
|
|
1231
|
+
export interface ChannelSummaryItem {
|
|
1232
|
+
currentDay: string;
|
|
1233
|
+
channelId: string;
|
|
1234
|
+
userId: string;
|
|
1235
|
+
pcPlayDuration: number;
|
|
1236
|
+
pcVideoView: number;
|
|
1237
|
+
pcUniqueViewer?: number;
|
|
1238
|
+
mobilePlayDuration: number;
|
|
1239
|
+
mobileVideoView: number;
|
|
1240
|
+
mobileUniqueViewer: number;
|
|
1241
|
+
createdTime: number;
|
|
1242
|
+
lastModified: number;
|
|
1243
|
+
creatorId?: string;
|
|
1244
|
+
creatorName?: string;
|
|
1245
|
+
}
|
|
1246
|
+
/**
|
|
1247
|
+
* Get Summary Request
|
|
1248
|
+
*/
|
|
1249
|
+
export interface GetSummaryRequest {
|
|
1250
|
+
/** Start day (yyyy-MM-dd) - REQUIRED */
|
|
1251
|
+
startDay: string;
|
|
1252
|
+
/** End day (yyyy-MM-dd) - REQUIRED */
|
|
1253
|
+
endDay: string;
|
|
1254
|
+
}
|
|
1255
|
+
/**
|
|
1256
|
+
* Daily Summary Item
|
|
1257
|
+
*/
|
|
1258
|
+
export interface DailySummaryItem {
|
|
1259
|
+
currentDay: string;
|
|
1260
|
+
channelId: string;
|
|
1261
|
+
userId: string;
|
|
1262
|
+
pcPlayDuration: number;
|
|
1263
|
+
pcVideoView: number;
|
|
1264
|
+
pcUniqueViewer: number;
|
|
1265
|
+
mobilePlayDuration: number;
|
|
1266
|
+
mobileVideoView: number;
|
|
1267
|
+
mobileUniqueViewer: number;
|
|
1268
|
+
createdTime: number;
|
|
1269
|
+
lastModified: number;
|
|
1270
|
+
creatorId?: string;
|
|
1271
|
+
creatorName?: string;
|
|
1272
|
+
}
|
|
1273
|
+
/**
|
|
1274
|
+
* Get Daily Summary Request
|
|
1275
|
+
*/
|
|
1276
|
+
export interface GetDailySummaryRequest {
|
|
1277
|
+
/** Channel ID - REQUIRED */
|
|
1278
|
+
channelId: string;
|
|
1279
|
+
/** Start day (yyyy-MM-dd) - REQUIRED */
|
|
1280
|
+
startDay: string;
|
|
1281
|
+
/** End day (yyyy-MM-dd) - REQUIRED */
|
|
1282
|
+
endDay: string;
|
|
1283
|
+
}
|
|
1284
|
+
/**
|
|
1285
|
+
* Channel Play Summary Item
|
|
1286
|
+
*/
|
|
1287
|
+
export interface ChannelPlaySummaryItem {
|
|
1288
|
+
userId?: string;
|
|
1289
|
+
channelId: string;
|
|
1290
|
+
name: string;
|
|
1291
|
+
categoryName?: string;
|
|
1292
|
+
pcPlayDuration: number;
|
|
1293
|
+
pcVideoView: number;
|
|
1294
|
+
pcUniqueViewer: number;
|
|
1295
|
+
mobilePlayDuration: number;
|
|
1296
|
+
mobileVideoView: number;
|
|
1297
|
+
mobileUniqueViewer: number;
|
|
1298
|
+
livePcPlayDuration: number;
|
|
1299
|
+
playbackPcPlayDuration: number;
|
|
1300
|
+
unknownPcPlayDuration: number;
|
|
1301
|
+
liveMobilePlayDuration: number;
|
|
1302
|
+
playbackMobilePlayDuration: number;
|
|
1303
|
+
unknownMobilePlayDuration: number;
|
|
1304
|
+
creatorName?: string;
|
|
1305
|
+
}
|
|
1306
|
+
/**
|
|
1307
|
+
* Get Channel Play Summary Request
|
|
1308
|
+
*/
|
|
1309
|
+
export interface GetChannelPlaySummaryRequest {
|
|
1310
|
+
/** Start date (yyyy-MM-dd) - REQUIRED */
|
|
1311
|
+
startDate: string;
|
|
1312
|
+
/** End date (yyyy-MM-dd) - REQUIRED */
|
|
1313
|
+
endDate: string;
|
|
1314
|
+
/** Channel IDs (comma-separated) */
|
|
1315
|
+
channelIds?: string;
|
|
1316
|
+
}
|
|
1317
|
+
/**
|
|
1318
|
+
* Concurrency Data Item
|
|
1319
|
+
*/
|
|
1320
|
+
export interface ConcurrencyDataItem {
|
|
1321
|
+
day: string;
|
|
1322
|
+
minute: string;
|
|
1323
|
+
viewers: number;
|
|
1324
|
+
}
|
|
1325
|
+
/**
|
|
1326
|
+
* Get Concurrency Request
|
|
1327
|
+
*/
|
|
1328
|
+
export interface GetConcurrencyRequest {
|
|
1329
|
+
/** Channel ID - REQUIRED */
|
|
1330
|
+
channelId: string;
|
|
1331
|
+
/** Start date (yyyy-MM-dd) - REQUIRED */
|
|
1332
|
+
startDate: string;
|
|
1333
|
+
/** End date (yyyy-MM-dd) - REQUIRED */
|
|
1334
|
+
endDate: string;
|
|
1335
|
+
}
|
|
1336
|
+
/**
|
|
1337
|
+
* Get Max History Concurrent Request
|
|
1338
|
+
*/
|
|
1339
|
+
export interface GetMaxHistoryConcurrentRequest {
|
|
1340
|
+
/** Channel ID - REQUIRED */
|
|
1341
|
+
channelId: string;
|
|
1342
|
+
/** Start time (13-digit ms timestamp) - REQUIRED */
|
|
1343
|
+
startTime: number;
|
|
1344
|
+
/** End time (13-digit ms timestamp) - REQUIRED */
|
|
1345
|
+
endTime: number;
|
|
1346
|
+
}
|
|
1347
|
+
/**
|
|
1348
|
+
* Realtime Viewer Data Item
|
|
1349
|
+
*/
|
|
1350
|
+
export interface RealtimeViewerDataItem {
|
|
1351
|
+
channelId: string;
|
|
1352
|
+
time: string;
|
|
1353
|
+
count: number;
|
|
1354
|
+
}
|
|
1355
|
+
/**
|
|
1356
|
+
* Get Realtime Viewers Request
|
|
1357
|
+
*/
|
|
1358
|
+
export interface GetRealtimeViewersRequest {
|
|
1359
|
+
/** Channel IDs (comma-separated) - REQUIRED */
|
|
1360
|
+
channelIds: string;
|
|
1361
|
+
}
|
|
1362
|
+
/**
|
|
1363
|
+
* Realtime Viewer V1 Item
|
|
1364
|
+
*/
|
|
1365
|
+
export interface RealtimeViewerV1Item {
|
|
1366
|
+
time: string;
|
|
1367
|
+
count: string;
|
|
1368
|
+
}
|
|
1369
|
+
/**
|
|
1370
|
+
* Session Stats Item
|
|
1371
|
+
*/
|
|
1372
|
+
export interface SessionStatsItem {
|
|
1373
|
+
channelId: string;
|
|
1374
|
+
sessionId: string;
|
|
1375
|
+
name: string;
|
|
1376
|
+
startTime: number;
|
|
1377
|
+
endTime?: number;
|
|
1378
|
+
duration: number;
|
|
1379
|
+
liveUV: number;
|
|
1380
|
+
livePV: number;
|
|
1381
|
+
playbackUV: number;
|
|
1382
|
+
playbackPV: number;
|
|
1383
|
+
totalPlayDuration?: number;
|
|
1384
|
+
totalPlaybackDuration?: number;
|
|
1385
|
+
}
|
|
1386
|
+
/**
|
|
1387
|
+
* Session Stats Response
|
|
1388
|
+
*/
|
|
1389
|
+
export interface SessionStatsResponse {
|
|
1390
|
+
list: SessionStatsItem[];
|
|
1391
|
+
}
|
|
1392
|
+
/**
|
|
1393
|
+
* Get Session Stats Request
|
|
1394
|
+
*/
|
|
1395
|
+
export interface GetSessionStatsRequest {
|
|
1396
|
+
/** Channel ID - REQUIRED */
|
|
1397
|
+
channelId: string;
|
|
1398
|
+
/** Session IDs (comma-separated) */
|
|
1399
|
+
sessionIds?: string;
|
|
1400
|
+
/** Start time (13-digit ms timestamp) */
|
|
1401
|
+
startTime?: number;
|
|
1402
|
+
/** End time (13-digit ms timestamp) */
|
|
1403
|
+
endTime?: number;
|
|
1404
|
+
}
|
|
1405
|
+
/**
|
|
1406
|
+
* Viewlog Page Item
|
|
1407
|
+
*/
|
|
1408
|
+
export interface ViewlogPageItem {
|
|
1409
|
+
playId: string;
|
|
1410
|
+
userId: string;
|
|
1411
|
+
channelId: string;
|
|
1412
|
+
playDuration: number;
|
|
1413
|
+
stayDuration: number;
|
|
1414
|
+
sessionId: string;
|
|
1415
|
+
param1: string;
|
|
1416
|
+
param2: string;
|
|
1417
|
+
param3: string;
|
|
1418
|
+
param4: string;
|
|
1419
|
+
param5: string;
|
|
1420
|
+
ipAddress: string;
|
|
1421
|
+
country: string;
|
|
1422
|
+
province: string;
|
|
1423
|
+
city: string;
|
|
1424
|
+
isp: string;
|
|
1425
|
+
referer: string;
|
|
1426
|
+
userAgent: string;
|
|
1427
|
+
operatingSystem: string;
|
|
1428
|
+
browser: string;
|
|
1429
|
+
isMobile: string;
|
|
1430
|
+
currentDay: string;
|
|
1431
|
+
createdTime?: number;
|
|
1432
|
+
lastModified?: number;
|
|
1433
|
+
ptype?: number;
|
|
1434
|
+
firstActiveTime?: number;
|
|
1435
|
+
lastActiveTime?: number;
|
|
1436
|
+
}
|
|
1437
|
+
/**
|
|
1438
|
+
* Get Viewlog Page Request
|
|
1439
|
+
*/
|
|
1440
|
+
export interface GetViewlogPageRequest {
|
|
1441
|
+
/** Current day (yyyy-MM-dd) */
|
|
1442
|
+
currentDay?: string;
|
|
1443
|
+
/** Page number (default 1) */
|
|
1444
|
+
page?: number;
|
|
1445
|
+
/** Page size (default 1000) */
|
|
1446
|
+
pageSize?: number;
|
|
1447
|
+
/** Start time (13-digit ms timestamp) */
|
|
1448
|
+
startTime?: number;
|
|
1449
|
+
/** End time (13-digit ms timestamp) */
|
|
1450
|
+
endTime?: number;
|
|
1451
|
+
/** Viewer user ID */
|
|
1452
|
+
param1?: string;
|
|
1453
|
+
/** Viewer nickname */
|
|
1454
|
+
param2?: string;
|
|
1455
|
+
/** View log type: 'vod' or 'live' */
|
|
1456
|
+
param3?: string;
|
|
1457
|
+
/** View log type: 'vod' or 'live' */
|
|
1458
|
+
viewLogType?: string;
|
|
1459
|
+
/** Session IDs (comma-separated) */
|
|
1460
|
+
sessionIds?: string;
|
|
1461
|
+
}
|
|
1462
|
+
/**
|
|
1463
|
+
* Viewlog Page Response
|
|
1464
|
+
*/
|
|
1465
|
+
export interface GetViewlogPageResponse {
|
|
1466
|
+
pageSize: number;
|
|
1467
|
+
pageNumber: number;
|
|
1468
|
+
totalItems: number;
|
|
1469
|
+
contents: ViewlogPageItem[];
|
|
1470
|
+
startRow: number;
|
|
1471
|
+
firstPage: boolean;
|
|
1472
|
+
lastPage: boolean;
|
|
1473
|
+
prePageNumber: number;
|
|
1474
|
+
nextPageNumber: number;
|
|
1475
|
+
limit: number;
|
|
1476
|
+
totalPages: number;
|
|
1477
|
+
endRow: number;
|
|
1478
|
+
offset: number;
|
|
1479
|
+
}
|
|
1480
|
+
/**
|
|
1481
|
+
* Get Viewlog V1 Request
|
|
1482
|
+
*/
|
|
1483
|
+
export interface GetViewlogV1Request {
|
|
1484
|
+
/** Current day (yyyy-MM-dd) - REQUIRED */
|
|
1485
|
+
currentDay: string;
|
|
1486
|
+
/** User ID - REQUIRED */
|
|
1487
|
+
userId: string;
|
|
1488
|
+
/** Viewer user ID */
|
|
1489
|
+
param1?: string;
|
|
1490
|
+
}
|
|
1491
|
+
/**
|
|
1492
|
+
* User Viewlog Item
|
|
1493
|
+
*/
|
|
1494
|
+
export interface UserViewlogItem {
|
|
1495
|
+
playId: string;
|
|
1496
|
+
userId: string;
|
|
1497
|
+
channelId: string;
|
|
1498
|
+
playDuration: number;
|
|
1499
|
+
stayDuration: number;
|
|
1500
|
+
sessionId: string;
|
|
1501
|
+
param1: string;
|
|
1502
|
+
param2: string;
|
|
1503
|
+
param3: string;
|
|
1504
|
+
param4: string;
|
|
1505
|
+
param5: string;
|
|
1506
|
+
ipAddress: string;
|
|
1507
|
+
country: string;
|
|
1508
|
+
province: string;
|
|
1509
|
+
city: string;
|
|
1510
|
+
isp: string;
|
|
1511
|
+
referer: string;
|
|
1512
|
+
userAgent: string;
|
|
1513
|
+
operatingSystem: string;
|
|
1514
|
+
browser: string;
|
|
1515
|
+
isMobile: string;
|
|
1516
|
+
currentDay: string;
|
|
1517
|
+
createdTime: number;
|
|
1518
|
+
lastModified: number;
|
|
1519
|
+
ptype?: number;
|
|
1520
|
+
firstActiveTime?: number;
|
|
1521
|
+
lastActiveTime?: number;
|
|
1522
|
+
}
|
|
1523
|
+
/**
|
|
1524
|
+
* Get User Viewlog Request
|
|
1525
|
+
*/
|
|
1526
|
+
export interface GetUserViewlogRequest {
|
|
1527
|
+
/** Start date (yyyy-MM-dd HH:mm:ss) - REQUIRED */
|
|
1528
|
+
startDate: string;
|
|
1529
|
+
/** End date (yyyy-MM-dd HH:mm:ss) - REQUIRED */
|
|
1530
|
+
endDate: string;
|
|
1531
|
+
/** Channel ID */
|
|
1532
|
+
channelId?: string;
|
|
1533
|
+
/** Watch type: 'live' or 'vod' */
|
|
1534
|
+
watchType?: string;
|
|
1535
|
+
/** Page number */
|
|
1536
|
+
page?: number;
|
|
1537
|
+
/** Page size */
|
|
1538
|
+
pageSize?: number;
|
|
1539
|
+
}
|
|
1540
|
+
/**
|
|
1541
|
+
* User Viewlog Response
|
|
1542
|
+
*/
|
|
1543
|
+
export interface GetUserViewlogResponse {
|
|
1544
|
+
pageSize: number;
|
|
1545
|
+
pageNumber: number;
|
|
1546
|
+
totalItems: number;
|
|
1547
|
+
contents: UserViewlogItem[];
|
|
1548
|
+
startRow: number;
|
|
1549
|
+
firstPage: boolean;
|
|
1550
|
+
lastPage: boolean;
|
|
1551
|
+
prePageNumber: number;
|
|
1552
|
+
nextPageNumber: number;
|
|
1553
|
+
limit: number;
|
|
1554
|
+
totalPages: number;
|
|
1555
|
+
endRow: number;
|
|
1556
|
+
offset: number;
|
|
1557
|
+
}
|
|
1558
|
+
/**
|
|
1559
|
+
* Mic Detail Item
|
|
1560
|
+
*/
|
|
1561
|
+
export interface MicDetailItem {
|
|
1562
|
+
userId: string;
|
|
1563
|
+
channelId: string;
|
|
1564
|
+
currentDay: string;
|
|
1565
|
+
history: number;
|
|
1566
|
+
}
|
|
1567
|
+
/**
|
|
1568
|
+
* Get Mic Detail List Request
|
|
1569
|
+
*/
|
|
1570
|
+
export interface GetMicDetailListRequest {
|
|
1571
|
+
/** Page number (default 1) */
|
|
1572
|
+
page?: number;
|
|
1573
|
+
/** Page size (default 10, max 1000) */
|
|
1574
|
+
size?: number;
|
|
1575
|
+
/** Channel IDs (comma-separated) */
|
|
1576
|
+
channelIds?: string;
|
|
1577
|
+
/** Start day (yyyy-MM-dd) */
|
|
1578
|
+
startDay?: string;
|
|
1579
|
+
/** End day (yyyy-MM-dd) */
|
|
1580
|
+
endDay?: string;
|
|
1581
|
+
}
|
|
1582
|
+
/**
|
|
1583
|
+
* Mic Detail List Response
|
|
1584
|
+
*/
|
|
1585
|
+
export interface GetMicDetailListResponse {
|
|
1586
|
+
pageSize: number;
|
|
1587
|
+
pageNumber: number;
|
|
1588
|
+
totalItems: number;
|
|
1589
|
+
contents: MicDetailItem[];
|
|
1590
|
+
startRow: number;
|
|
1591
|
+
firstPage: boolean;
|
|
1592
|
+
lastPage: boolean;
|
|
1593
|
+
prePageNumber: number;
|
|
1594
|
+
nextPageNumber: number;
|
|
1595
|
+
limit: number;
|
|
1596
|
+
totalPages: number;
|
|
1597
|
+
endRow: number;
|
|
1598
|
+
offset: number;
|
|
1599
|
+
}
|
|
1600
|
+
/**
|
|
1601
|
+
* Link Mic Detail Item
|
|
1602
|
+
*/
|
|
1603
|
+
export interface LinkMicDetailItem {
|
|
1604
|
+
channelId: string;
|
|
1605
|
+
sessionId: string;
|
|
1606
|
+
viewerId: string;
|
|
1607
|
+
identity: 'guest' | 'student';
|
|
1608
|
+
nickname: string;
|
|
1609
|
+
joinTime: number;
|
|
1610
|
+
leaveTime: number;
|
|
1611
|
+
duration?: number;
|
|
1612
|
+
}
|
|
1613
|
+
/**
|
|
1614
|
+
* Get Link Mic Detail List Request
|
|
1615
|
+
*/
|
|
1616
|
+
export interface GetLinkMicDetailListRequest {
|
|
1617
|
+
/** Channel ID - REQUIRED */
|
|
1618
|
+
channelId: string;
|
|
1619
|
+
/** Start date (yyyy-MM-dd) - REQUIRED */
|
|
1620
|
+
startDate: string;
|
|
1621
|
+
/** End date (yyyy-MM-dd) - REQUIRED */
|
|
1622
|
+
endDate: string;
|
|
1623
|
+
/** Page number (default 1) */
|
|
1624
|
+
page?: number;
|
|
1625
|
+
/** Page size (default 500, max 5000) */
|
|
1626
|
+
pageSize?: number;
|
|
1627
|
+
}
|
|
1628
|
+
/**
|
|
1629
|
+
* Link Mic Detail List Response
|
|
1630
|
+
*/
|
|
1631
|
+
export interface GetLinkMicDetailListResponse {
|
|
1632
|
+
page: number;
|
|
1633
|
+
pageSize: number;
|
|
1634
|
+
contents: LinkMicDetailItem[];
|
|
1635
|
+
}
|
|
1636
|
+
/**
|
|
1637
|
+
* Realviewers Data Item (AC13)
|
|
1638
|
+
*/
|
|
1639
|
+
export interface RealviewersDataItem {
|
|
1640
|
+
channelId: string;
|
|
1641
|
+
userId: string;
|
|
1642
|
+
realViewers: number;
|
|
1643
|
+
currentDay: string;
|
|
1644
|
+
}
|
|
1645
|
+
/**
|
|
1646
|
+
* Get Realviewers Request (AC13)
|
|
1647
|
+
*/
|
|
1648
|
+
export interface GetRealviewersRequest {
|
|
1649
|
+
/** Current day (yyyy-MM-dd) - REQUIRED */
|
|
1650
|
+
currentDay: string;
|
|
1651
|
+
}
|
|
1652
|
+
/**
|
|
1653
|
+
* Viewlog V2 Item (AC15)
|
|
1654
|
+
*/
|
|
1655
|
+
export interface ViewlogV2Item {
|
|
1656
|
+
playId: string;
|
|
1657
|
+
userId: string;
|
|
1658
|
+
channelId: string;
|
|
1659
|
+
playDuration: number;
|
|
1660
|
+
stayDuration: number;
|
|
1661
|
+
sessionId: string;
|
|
1662
|
+
param1: string;
|
|
1663
|
+
param2: string;
|
|
1664
|
+
param3: string;
|
|
1665
|
+
param4: string;
|
|
1666
|
+
param5: string;
|
|
1667
|
+
ipAddress: string;
|
|
1668
|
+
country: string;
|
|
1669
|
+
province: string;
|
|
1670
|
+
city: string;
|
|
1671
|
+
isp: string;
|
|
1672
|
+
referer: string;
|
|
1673
|
+
userAgent: string;
|
|
1674
|
+
operatingSystem: string;
|
|
1675
|
+
browser: string;
|
|
1676
|
+
isMobile: string;
|
|
1677
|
+
currentDay: string;
|
|
1678
|
+
createdTime?: number;
|
|
1679
|
+
lastModified?: number;
|
|
1680
|
+
ptype?: number;
|
|
1681
|
+
firstActiveTime?: number;
|
|
1682
|
+
lastActiveTime?: number;
|
|
1683
|
+
}
|
|
1684
|
+
/**
|
|
1685
|
+
* Get Viewlog V2 Request (AC15)
|
|
1686
|
+
*/
|
|
1687
|
+
export interface GetViewlog2Request {
|
|
1688
|
+
/** Current day (yyyy-MM-dd) - REQUIRED */
|
|
1689
|
+
currentDay: string;
|
|
1690
|
+
/** Page number (default 1) */
|
|
1691
|
+
page?: number;
|
|
1692
|
+
/** Page size (default 1000) */
|
|
1693
|
+
pageSize?: number;
|
|
1694
|
+
}
|
|
1695
|
+
/**
|
|
1696
|
+
* Viewlog Page V3 Item (AC16)
|
|
1697
|
+
*/
|
|
1698
|
+
export interface ViewlogPageV3Item {
|
|
1699
|
+
playId: string;
|
|
1700
|
+
userId: string;
|
|
1701
|
+
channelId: string;
|
|
1702
|
+
playDuration: number;
|
|
1703
|
+
stayDuration: number;
|
|
1704
|
+
sessionId: string;
|
|
1705
|
+
param1: string;
|
|
1706
|
+
param2: string;
|
|
1707
|
+
param3: string;
|
|
1708
|
+
param4: string;
|
|
1709
|
+
param5: string;
|
|
1710
|
+
ipAddress: string;
|
|
1711
|
+
country: string;
|
|
1712
|
+
province: string;
|
|
1713
|
+
city: string;
|
|
1714
|
+
isp: string;
|
|
1715
|
+
referer: string;
|
|
1716
|
+
userAgent: string;
|
|
1717
|
+
operatingSystem: string;
|
|
1718
|
+
browser: string;
|
|
1719
|
+
isMobile: string;
|
|
1720
|
+
currentDay: string;
|
|
1721
|
+
createdTime?: number;
|
|
1722
|
+
lastModified?: number;
|
|
1723
|
+
ptype?: number;
|
|
1724
|
+
firstActiveTime?: number;
|
|
1725
|
+
lastActiveTime?: number;
|
|
1726
|
+
}
|
|
1727
|
+
/**
|
|
1728
|
+
* Get Viewlog Page V3 Request (AC16)
|
|
1729
|
+
*/
|
|
1730
|
+
export interface GetViewlogPageV3Request {
|
|
1731
|
+
/** Current day (yyyy-MM-dd) */
|
|
1732
|
+
currentDay?: string;
|
|
1733
|
+
/** Page number (default 1) */
|
|
1734
|
+
page?: number;
|
|
1735
|
+
/** Page size (default 1000) */
|
|
1736
|
+
pageSize?: number;
|
|
1737
|
+
/** Start time (13-digit ms timestamp) */
|
|
1738
|
+
startTime?: number;
|
|
1739
|
+
/** End time (13-digit ms timestamp) */
|
|
1740
|
+
endTime?: number;
|
|
1741
|
+
/** Viewer user ID */
|
|
1742
|
+
param1?: string;
|
|
1743
|
+
/** Viewer nickname */
|
|
1744
|
+
param2?: string;
|
|
1745
|
+
/** View log type: 'vod' or 'live' */
|
|
1746
|
+
param3?: string;
|
|
1747
|
+
}
|
|
1748
|
+
/**
|
|
1749
|
+
* Viewlog Page V3 Response (AC16)
|
|
1750
|
+
*/
|
|
1751
|
+
export interface GetViewlogPageV3Response {
|
|
1752
|
+
pageSize: number;
|
|
1753
|
+
pageNumber: number;
|
|
1754
|
+
totalItems: number;
|
|
1755
|
+
contents: ViewlogPageV3Item[];
|
|
1756
|
+
startRow: number;
|
|
1757
|
+
firstPage: boolean;
|
|
1758
|
+
lastPage: boolean;
|
|
1759
|
+
prePageNumber: number;
|
|
1760
|
+
nextPageNumber: number;
|
|
1761
|
+
limit: number;
|
|
1762
|
+
totalPages: number;
|
|
1763
|
+
endRow: number;
|
|
1764
|
+
offset: number;
|
|
1765
|
+
}
|
|
1766
|
+
/**
|
|
1767
|
+
* Set DIY URL Marquee Request (AC1)
|
|
1768
|
+
*/
|
|
1769
|
+
export interface SetDiyUrlMarqueeRequest {
|
|
1770
|
+
/** Channel ID - REQUIRED */
|
|
1771
|
+
channelId: string;
|
|
1772
|
+
/** Marquee restrict flag: 'Y' to enable, 'N' to disable - REQUIRED */
|
|
1773
|
+
marqueeRestrict: YNFlag;
|
|
1774
|
+
/** Marquee URL (required when marqueeRestrict is 'Y') */
|
|
1775
|
+
url?: string;
|
|
1776
|
+
}
|
|
1777
|
+
/**
|
|
1778
|
+
* Session Data Item (AC2)
|
|
1779
|
+
*/
|
|
1780
|
+
export interface SessionDataItem {
|
|
1781
|
+
sessionId: string;
|
|
1782
|
+
channelId: string;
|
|
1783
|
+
userId: string;
|
|
1784
|
+
startTime: number;
|
|
1785
|
+
endTime: number | null;
|
|
1786
|
+
customId?: string;
|
|
1787
|
+
}
|
|
1788
|
+
/**
|
|
1789
|
+
* Get Session Data List Request (AC2)
|
|
1790
|
+
*/
|
|
1791
|
+
export interface GetSessionDataListRequest {
|
|
1792
|
+
/** Channel ID - REQUIRED */
|
|
1793
|
+
channelId: string;
|
|
1794
|
+
/** Start date (yyyy-MM-dd) */
|
|
1795
|
+
startDate?: string;
|
|
1796
|
+
/** End date (yyyy-MM-dd) */
|
|
1797
|
+
endDate?: string;
|
|
1798
|
+
/** Page number */
|
|
1799
|
+
page?: number;
|
|
1800
|
+
/** Page size */
|
|
1801
|
+
pageSize?: number;
|
|
1802
|
+
}
|
|
1803
|
+
/**
|
|
1804
|
+
* Get Session Data List Response (AC2)
|
|
1805
|
+
*/
|
|
1806
|
+
export interface GetSessionDataListResponse {
|
|
1807
|
+
pageSize: number;
|
|
1808
|
+
pageNumber: number;
|
|
1809
|
+
totalItems: number;
|
|
1810
|
+
contents: SessionDataItem[];
|
|
1811
|
+
startRow: number;
|
|
1812
|
+
firstPage: boolean;
|
|
1813
|
+
lastPage: boolean;
|
|
1814
|
+
prePageNumber: number;
|
|
1815
|
+
nextPageNumber: number;
|
|
1816
|
+
limit: number;
|
|
1817
|
+
totalPages: number;
|
|
1818
|
+
endRow: number;
|
|
1819
|
+
offset: number;
|
|
1820
|
+
}
|
|
1821
|
+
/**
|
|
1822
|
+
* Export Session Stats Request (AC3)
|
|
1823
|
+
*/
|
|
1824
|
+
export interface ExportSessionStatsRequest {
|
|
1825
|
+
/** Channel ID - REQUIRED */
|
|
1826
|
+
channelId: string;
|
|
1827
|
+
/** Session ID - REQUIRED */
|
|
1828
|
+
sessionId: string;
|
|
1829
|
+
}
|
|
1830
|
+
/**
|
|
1831
|
+
* Get Session By External Request (AC4)
|
|
1832
|
+
*/
|
|
1833
|
+
export interface GetSessionByExternalRequest {
|
|
1834
|
+
/** Channel ID - REQUIRED */
|
|
1835
|
+
channelId: string;
|
|
1836
|
+
/** External session ID (32-char UUID) - REQUIRED */
|
|
1837
|
+
externalSessionId: string;
|
|
1838
|
+
}
|
|
1839
|
+
/**
|
|
1840
|
+
* Get Session By External Response (AC4)
|
|
1841
|
+
*/
|
|
1842
|
+
export interface GetSessionByExternalResponse {
|
|
1843
|
+
list: string[];
|
|
1844
|
+
}
|
|
1845
|
+
/**
|
|
1846
|
+
* File ID By External Item (AC5)
|
|
1847
|
+
*/
|
|
1848
|
+
export interface FileIdByExternalItem {
|
|
1849
|
+
originSessionId: string;
|
|
1850
|
+
fileIds: string[];
|
|
1851
|
+
createdTime: number;
|
|
1852
|
+
}
|
|
1853
|
+
/**
|
|
1854
|
+
* List File ID By External Request (AC5)
|
|
1855
|
+
*/
|
|
1856
|
+
export interface ListFileIdByExternalRequest {
|
|
1857
|
+
/** Channel ID - REQUIRED */
|
|
1858
|
+
channelId: string;
|
|
1859
|
+
/** External session ID (32-char UUID) - REQUIRED */
|
|
1860
|
+
externalSessionId: string;
|
|
1861
|
+
}
|
|
1862
|
+
/**
|
|
1863
|
+
* Relevance Session Request (AC6)
|
|
1864
|
+
*/
|
|
1865
|
+
export interface RelevanceSessionRequest {
|
|
1866
|
+
/** Channel ID - REQUIRED */
|
|
1867
|
+
channelId: string;
|
|
1868
|
+
/** External session ID (32-char UUID) - REQUIRED */
|
|
1869
|
+
externalSessionId: string;
|
|
1870
|
+
}
|
|
1871
|
+
/**
|
|
1872
|
+
* Live Status Type
|
|
1873
|
+
*/
|
|
1874
|
+
export type LiveStatus = 'live' | 'end';
|
|
1875
|
+
/**
|
|
1876
|
+
* Live Status Item (AC8)
|
|
1877
|
+
*/
|
|
1878
|
+
export interface LiveStatusItem {
|
|
1879
|
+
channelId: string;
|
|
1880
|
+
status: LiveStatus;
|
|
1881
|
+
seminarStatus?: string;
|
|
1882
|
+
}
|
|
1883
|
+
/**
|
|
1884
|
+
* Stream Info (AC9, AC10)
|
|
1885
|
+
*/
|
|
1886
|
+
export interface StreamInfo {
|
|
1887
|
+
deployAddress: string | null;
|
|
1888
|
+
inAddress: string | null;
|
|
1889
|
+
streamName: string;
|
|
1890
|
+
fps: string | null;
|
|
1891
|
+
lfr: string | null;
|
|
1892
|
+
inBandWidth: string | null;
|
|
1893
|
+
}
|
|
1894
|
+
/**
|
|
1895
|
+
* Get Stream Info Response (AC9)
|
|
1896
|
+
*/
|
|
1897
|
+
export interface GetStreamInfoResponse extends StreamInfo {
|
|
1898
|
+
}
|
|
1899
|
+
/**
|
|
1900
|
+
* Get Streams Item (AC10)
|
|
1901
|
+
*/
|
|
1902
|
+
export interface GetStreamsItem {
|
|
1903
|
+
channelId: string;
|
|
1904
|
+
live: boolean;
|
|
1905
|
+
streamInfo: StreamInfo;
|
|
1906
|
+
}
|
|
1907
|
+
/**
|
|
1908
|
+
* Disk Video Item (AC11)
|
|
1909
|
+
*/
|
|
1910
|
+
export interface DiskVideoItem {
|
|
1911
|
+
videoId: string;
|
|
1912
|
+
videoPoolId: string;
|
|
1913
|
+
userId: string;
|
|
1914
|
+
channelId: string;
|
|
1915
|
+
title: string;
|
|
1916
|
+
firstImage: string;
|
|
1917
|
+
duration: number;
|
|
1918
|
+
startTime: number;
|
|
1919
|
+
endTime: number;
|
|
1920
|
+
createdTime: number;
|
|
1921
|
+
lastModified: number;
|
|
1922
|
+
url: string;
|
|
1923
|
+
streamStatus: string;
|
|
1924
|
+
langType: string;
|
|
1925
|
+
source: string;
|
|
1926
|
+
}
|
|
1927
|
+
/**
|
|
1928
|
+
* List Disk Video Response (AC11)
|
|
1929
|
+
*/
|
|
1930
|
+
export interface ListDiskVideoResponse {
|
|
1931
|
+
pageSize: number;
|
|
1932
|
+
pageNumber: number;
|
|
1933
|
+
totalItems: number;
|
|
1934
|
+
contents: DiskVideoItem[];
|
|
1935
|
+
startRow: number;
|
|
1936
|
+
firstPage: boolean;
|
|
1937
|
+
lastPage: boolean;
|
|
1938
|
+
prePageNumber: number;
|
|
1939
|
+
nextPageNumber: number;
|
|
1940
|
+
limit: number;
|
|
1941
|
+
totalPages: number;
|
|
1942
|
+
endRow: number;
|
|
1943
|
+
offset: number;
|
|
1944
|
+
}
|
|
1945
|
+
/**
|
|
1946
|
+
* List Disk Video Request (AC11)
|
|
1947
|
+
*/
|
|
1948
|
+
export interface ListDiskVideoRequest {
|
|
1949
|
+
/** Channel ID - REQUIRED */
|
|
1950
|
+
channelId: string;
|
|
1951
|
+
/** Page number */
|
|
1952
|
+
page?: number;
|
|
1953
|
+
/** Page size */
|
|
1954
|
+
pageSize?: number;
|
|
1955
|
+
}
|
|
1956
|
+
/**
|
|
1957
|
+
* Set Status Request (AC12, AC13)
|
|
1958
|
+
*/
|
|
1959
|
+
export interface SetStatusRequest {
|
|
1960
|
+
/** Channel ID - REQUIRED */
|
|
1961
|
+
channelId: string;
|
|
1962
|
+
/** User ID - REQUIRED */
|
|
1963
|
+
userId: string;
|
|
1964
|
+
}
|
|
1965
|
+
/**
|
|
1966
|
+
* Ban Push Request (AC14)
|
|
1967
|
+
*/
|
|
1968
|
+
export interface BanPushRequest {
|
|
1969
|
+
/** Channel ID - REQUIRED */
|
|
1970
|
+
channelId: string;
|
|
1971
|
+
/** User ID - REQUIRED */
|
|
1972
|
+
userId: string;
|
|
1973
|
+
/** Forbid time in minutes */
|
|
1974
|
+
forbidTime?: number;
|
|
1975
|
+
/** Playback forbidden: 'Y' or 'N' */
|
|
1976
|
+
playbackForbidden?: YNFlag;
|
|
1977
|
+
}
|
|
1978
|
+
/**
|
|
1979
|
+
* End Disk Push Request (AC16)
|
|
1980
|
+
*/
|
|
1981
|
+
export interface EndDiskPushRequest {
|
|
1982
|
+
/** Channel ID - REQUIRED */
|
|
1983
|
+
channelId: string;
|
|
1984
|
+
/** Disk video ID - REQUIRED */
|
|
1985
|
+
diskVideoId: string;
|
|
1986
|
+
}
|
|
1987
|
+
/**
|
|
1988
|
+
* Update Warmup Switch Request (AC17)
|
|
1989
|
+
*/
|
|
1990
|
+
export interface UpdateWarmupSwitchRequest {
|
|
1991
|
+
/** Channel ID - REQUIRED */
|
|
1992
|
+
channelId: string;
|
|
1993
|
+
/** Warmup enabled flag: 'Y' or 'N' - REQUIRED */
|
|
1994
|
+
warmUpEnabled: YNFlag;
|
|
1995
|
+
}
|
|
1996
|
+
/**
|
|
1997
|
+
* Update Warmup Image Request (AC18)
|
|
1998
|
+
*/
|
|
1999
|
+
export interface UpdateWarmupImageRequest {
|
|
2000
|
+
/** Channel ID - REQUIRED */
|
|
2001
|
+
channelId: string;
|
|
2002
|
+
/** Cover image URL - REQUIRED */
|
|
2003
|
+
coverImage: string;
|
|
2004
|
+
/** Cover href URL */
|
|
2005
|
+
coverHref?: string;
|
|
2006
|
+
}
|
|
2007
|
+
/**
|
|
2008
|
+
* Update Warmup Video Request (AC19)
|
|
2009
|
+
*/
|
|
2010
|
+
export interface UpdateWarmupVideoRequest {
|
|
2011
|
+
/** Channel ID - REQUIRED */
|
|
2012
|
+
channelId: string;
|
|
2013
|
+
/** Warmup FLV URL - REQUIRED */
|
|
2014
|
+
warmUpFlv: string;
|
|
2015
|
+
}
|
|
2016
|
+
/**
|
|
2017
|
+
* Product link type
|
|
2018
|
+
* - 10: Universal link (通用链接)
|
|
2019
|
+
* - 11: Multi-platform link (多平台链接)
|
|
2020
|
+
*/
|
|
2021
|
+
export type ProductLinkType = 10 | 11;
|
|
2022
|
+
/**
|
|
2023
|
+
* Product status
|
|
2024
|
+
* - 1: On shelf (上架)
|
|
2025
|
+
* - 2: Off shelf (下架)
|
|
2026
|
+
*/
|
|
2027
|
+
export type ProductStatus = 1 | 2;
|
|
2028
|
+
/**
|
|
2029
|
+
* Product price type
|
|
2030
|
+
* - AMOUNT: Numeric price
|
|
2031
|
+
* - CUSTOM: Custom text price
|
|
2032
|
+
*/
|
|
2033
|
+
export type ProductPriceType = 'AMOUNT' | 'CUSTOM';
|
|
2034
|
+
/**
|
|
2035
|
+
* Product type
|
|
2036
|
+
* - normal: Regular product
|
|
2037
|
+
* - finance: Financial product
|
|
2038
|
+
* - position: Job position
|
|
2039
|
+
*/
|
|
2040
|
+
export type ProductType = 'normal' | 'finance' | 'position';
|
|
2041
|
+
/**
|
|
2042
|
+
* Copy strategy for platform products
|
|
2043
|
+
* - copy: Create independent copy
|
|
2044
|
+
* - ref: Reference (syncs with platform changes)
|
|
2045
|
+
*/
|
|
2046
|
+
export type ProductCopyStrategy = 'copy' | 'ref';
|
|
2047
|
+
/**
|
|
2048
|
+
* Add Channel Product Request
|
|
2049
|
+
*
|
|
2050
|
+
* Parameters for adding a new product to channel product library.
|
|
2051
|
+
* Note: Only (channelId, timestamp, appId) participate in signature,
|
|
2052
|
+
* body parameters do NOT participate in signature.
|
|
2053
|
+
*/
|
|
2054
|
+
export interface AddChannelProductParams {
|
|
2055
|
+
/** Channel ID - REQUIRED (URL param for signature) */
|
|
2056
|
+
channelId: string;
|
|
2057
|
+
/** Product type - OPTIONAL, defaults to 'normal' */
|
|
2058
|
+
productType?: ProductType;
|
|
2059
|
+
/** Product name - REQUIRED, 1-100 chars (backend supports 1-50) */
|
|
2060
|
+
name: string;
|
|
2061
|
+
/** Product status - REQUIRED: 1 (on shelf) | 2 (off shelf) */
|
|
2062
|
+
status: ProductStatus;
|
|
2063
|
+
/** Link type - REQUIRED: 10 (universal) | 11 (multi-platform) */
|
|
2064
|
+
linkType: ProductLinkType;
|
|
2065
|
+
/** Product cover URL - REQUIRED for normal, optional for others */
|
|
2066
|
+
cover?: string;
|
|
2067
|
+
/** Universal link - REQUIRED when linkType=10 */
|
|
2068
|
+
link?: string;
|
|
2069
|
+
/** PC link - for multi-platform (linkType=11) */
|
|
2070
|
+
pcLink?: string;
|
|
2071
|
+
/** Mobile web link */
|
|
2072
|
+
mobileLink?: string;
|
|
2073
|
+
/** WeChat miniprogram link */
|
|
2074
|
+
wxMiniprogramLink?: string;
|
|
2075
|
+
/** WeChat miniprogram original ID */
|
|
2076
|
+
wxMiniprogramOriginalId?: string;
|
|
2077
|
+
/** Mobile app link */
|
|
2078
|
+
mobileAppLink?: string;
|
|
2079
|
+
/** Android native link */
|
|
2080
|
+
androidLink?: string;
|
|
2081
|
+
/** iOS native link */
|
|
2082
|
+
iosLink?: string;
|
|
2083
|
+
/** Custom params as JSON string, e.g., '{"id":21,"color":"blue"}' */
|
|
2084
|
+
params?: string;
|
|
2085
|
+
/** Product description */
|
|
2086
|
+
productDesc?: string;
|
|
2087
|
+
/** Product features/tags as JSON array string, e.g., '["tag1","tag2"]' */
|
|
2088
|
+
features?: string;
|
|
2089
|
+
/** Button text - REQUIRED for position type */
|
|
2090
|
+
btnShow?: string;
|
|
2091
|
+
/** Yield/rate - for finance products, e.g., '87.99%' */
|
|
2092
|
+
yield?: string;
|
|
2093
|
+
/** Platform product ID for copy/reference */
|
|
2094
|
+
originId?: string;
|
|
2095
|
+
/** Copy strategy when originId is set: copy | ref */
|
|
2096
|
+
strategy?: ProductCopyStrategy;
|
|
2097
|
+
/** Product detail HTML */
|
|
2098
|
+
productDetail?: string;
|
|
2099
|
+
/** Extension info as JSON string with coverList/videoList */
|
|
2100
|
+
ext?: string;
|
|
2101
|
+
/** Tag IDs as JSON array string, e.g., '[100,102,103]' */
|
|
2102
|
+
tagIds?: string;
|
|
2103
|
+
/** Real price type - AMOUNT | CUSTOM */
|
|
2104
|
+
priceType?: ProductPriceType;
|
|
2105
|
+
/** Real price amount - required when priceType=AMOUNT */
|
|
2106
|
+
realPrice?: number;
|
|
2107
|
+
/** Custom price text - required when priceType=CUSTOM */
|
|
2108
|
+
customPrice?: string;
|
|
2109
|
+
/** Original price type - AMOUNT | CUSTOM */
|
|
2110
|
+
originalPriceType?: ProductPriceType;
|
|
2111
|
+
/** Original price amount */
|
|
2112
|
+
price?: number;
|
|
2113
|
+
/** Custom original price text */
|
|
2114
|
+
customOrignalPrice?: string;
|
|
2115
|
+
}
|
|
2116
|
+
/**
|
|
2117
|
+
* Add Channel Product Response
|
|
2118
|
+
*
|
|
2119
|
+
* Response data for successful product creation.
|
|
2120
|
+
*/
|
|
2121
|
+
export interface AddChannelProductResponse {
|
|
2122
|
+
/** Product ID */
|
|
2123
|
+
productId: number;
|
|
2124
|
+
/** User ID */
|
|
2125
|
+
userId: string;
|
|
2126
|
+
/** Channel ID */
|
|
2127
|
+
channelId: string;
|
|
2128
|
+
/** Product name */
|
|
2129
|
+
name: string;
|
|
2130
|
+
/** Product type */
|
|
2131
|
+
productType: ProductType;
|
|
2132
|
+
/** Product cover URL */
|
|
2133
|
+
cover: string;
|
|
2134
|
+
/** Product link */
|
|
2135
|
+
link: string;
|
|
2136
|
+
/** Product status */
|
|
2137
|
+
status: ProductStatus;
|
|
2138
|
+
/** Created time (13-bit ms timestamp) */
|
|
2139
|
+
createdTime: number;
|
|
2140
|
+
/** Last modified time (13-bit ms timestamp) */
|
|
2141
|
+
lastModified: number;
|
|
2142
|
+
/** Sort rank */
|
|
2143
|
+
rank: number;
|
|
2144
|
+
/** Platform type, default 'live' */
|
|
2145
|
+
type: string;
|
|
2146
|
+
/** Link type */
|
|
2147
|
+
linkType: ProductLinkType;
|
|
2148
|
+
/** PC link */
|
|
2149
|
+
pcLink: string;
|
|
2150
|
+
/** Mobile web link */
|
|
2151
|
+
mobileLink: string;
|
|
2152
|
+
/** WeChat miniprogram link */
|
|
2153
|
+
wxMiniprogramLink: string;
|
|
2154
|
+
/** WeChat miniprogram original ID */
|
|
2155
|
+
wxMiniprogramOriginalId: string;
|
|
2156
|
+
/** Mobile app link */
|
|
2157
|
+
mobileAppLink: string;
|
|
2158
|
+
/** Android link */
|
|
2159
|
+
androidLink: string | null;
|
|
2160
|
+
/** iOS link */
|
|
2161
|
+
iosLink: string | null;
|
|
2162
|
+
/** Custom params JSON */
|
|
2163
|
+
params: string;
|
|
2164
|
+
/** Button text */
|
|
2165
|
+
btnShow: string;
|
|
2166
|
+
/** Features JSON */
|
|
2167
|
+
features: string;
|
|
2168
|
+
/** Product description */
|
|
2169
|
+
productDesc: string;
|
|
2170
|
+
/** Yield for finance products */
|
|
2171
|
+
yield: string;
|
|
2172
|
+
/** Product detail URL */
|
|
2173
|
+
productDetail: string;
|
|
2174
|
+
/** Real price type */
|
|
2175
|
+
priceType?: ProductPriceType;
|
|
2176
|
+
/** Real price */
|
|
2177
|
+
realPrice?: number;
|
|
2178
|
+
/** Custom price */
|
|
2179
|
+
customPrice?: string;
|
|
2180
|
+
/** Original price type */
|
|
2181
|
+
originalPriceType?: ProductPriceType;
|
|
2182
|
+
/** Original price */
|
|
2183
|
+
price?: number;
|
|
2184
|
+
/** Custom original price */
|
|
2185
|
+
customOrignalPrice?: string;
|
|
2186
|
+
}
|
|
2187
|
+
/**
|
|
2188
|
+
* Update Channel Product Request
|
|
2189
|
+
*
|
|
2190
|
+
* Parameters for updating an existing product.
|
|
2191
|
+
* Note: Only (channelId, timestamp, appId) participate in signature.
|
|
2192
|
+
*/
|
|
2193
|
+
export interface UpdateChannelProductParams {
|
|
2194
|
+
/** Channel ID - REQUIRED (URL param for signature) */
|
|
2195
|
+
channelId: string;
|
|
2196
|
+
/** Product ID - REQUIRED */
|
|
2197
|
+
productId: number;
|
|
2198
|
+
/** Product name - REQUIRED, 1-100 chars */
|
|
2199
|
+
name: string;
|
|
2200
|
+
/** Product status - REQUIRED: 1 (on shelf) | 2 (off shelf) */
|
|
2201
|
+
status: ProductStatus;
|
|
2202
|
+
/** Link type - REQUIRED: 10 (universal) | 11 (multi-platform) */
|
|
2203
|
+
linkType: ProductLinkType;
|
|
2204
|
+
/** Product cover URL */
|
|
2205
|
+
cover?: string;
|
|
2206
|
+
/** Universal link */
|
|
2207
|
+
link?: string;
|
|
2208
|
+
/** PC link */
|
|
2209
|
+
pcLink?: string;
|
|
2210
|
+
/** Mobile web link */
|
|
2211
|
+
mobileLink?: string;
|
|
2212
|
+
/** WeChat miniprogram link */
|
|
2213
|
+
wxMiniprogramLink?: string;
|
|
2214
|
+
/** WeChat miniprogram original ID */
|
|
2215
|
+
wxMiniprogramOriginalId?: string;
|
|
2216
|
+
/** Mobile app link */
|
|
2217
|
+
mobileAppLink?: string;
|
|
2218
|
+
/** Android native link */
|
|
2219
|
+
androidLink?: string;
|
|
2220
|
+
/** iOS native link */
|
|
2221
|
+
iosLink?: string;
|
|
2222
|
+
/** Custom params as JSON string */
|
|
2223
|
+
params?: string;
|
|
2224
|
+
/** Product description */
|
|
2225
|
+
productDesc?: string;
|
|
2226
|
+
/** Features as JSON array string */
|
|
2227
|
+
features?: string;
|
|
2228
|
+
/** Button text */
|
|
2229
|
+
btnShow?: string;
|
|
2230
|
+
/** Yield for finance products */
|
|
2231
|
+
yield?: string;
|
|
2232
|
+
/** Product detail HTML */
|
|
2233
|
+
productDetail?: string;
|
|
2234
|
+
/** Extension info as JSON string */
|
|
2235
|
+
ext?: string;
|
|
2236
|
+
/** Tag IDs as JSON array string */
|
|
2237
|
+
tagIds?: string;
|
|
2238
|
+
/** Real price type */
|
|
2239
|
+
priceType?: ProductPriceType;
|
|
2240
|
+
/** Real price amount */
|
|
2241
|
+
realPrice?: number;
|
|
2242
|
+
/** Custom price text */
|
|
2243
|
+
customPrice?: string;
|
|
2244
|
+
/** Original price type */
|
|
2245
|
+
originalPriceType?: ProductPriceType;
|
|
2246
|
+
/** Original price amount */
|
|
2247
|
+
price?: number;
|
|
2248
|
+
/** Custom original price text */
|
|
2249
|
+
customOrignalPrice?: string;
|
|
2250
|
+
}
|
|
2251
|
+
/**
|
|
2252
|
+
* Delete Channel Product Request
|
|
2253
|
+
*
|
|
2254
|
+
* Parameters for deleting a product from channel.
|
|
2255
|
+
* Note: All params (channelId, productId, appId, timestamp) participate in signature.
|
|
2256
|
+
*/
|
|
2257
|
+
export interface DeleteChannelProductParams {
|
|
2258
|
+
/** Channel ID - REQUIRED */
|
|
2259
|
+
channelId: string;
|
|
2260
|
+
/** Product ID - REQUIRED */
|
|
2261
|
+
productId: number;
|
|
2262
|
+
}
|
|
2263
|
+
//# sourceMappingURL=channel.d.ts.map
|