@softtynet/zca-js 2.3.3 → 2.3.5
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/README.md +99 -21
- package/dist/apis/auth/exportSession.d.ts +7 -0
- package/dist/apis/auth/exportSession.js +17 -0
- package/dist/apis/call/addUserGroupCall.d.ts +11 -0
- package/dist/apis/call/addUserGroupCall.js +48 -0
- package/dist/apis/call/answerAckVoiceCall.d.ts +5 -0
- package/dist/apis/call/answerAckVoiceCall.js +38 -0
- package/dist/apis/call/answerGroupCall.d.ts +10 -0
- package/dist/apis/call/answerGroupCall.js +45 -0
- package/dist/apis/call/answerVoiceCall.d.ts +11 -0
- package/dist/apis/call/answerVoiceCall.js +50 -0
- package/dist/apis/call/broadcastGroupCallState.d.ts +10 -0
- package/dist/apis/call/broadcastGroupCallState.js +45 -0
- package/dist/apis/call/cancelGroupCall.d.ts +10 -0
- package/dist/apis/call/cancelGroupCall.js +45 -0
- package/dist/apis/call/cancelVoiceCall.d.ts +1 -1
- package/dist/apis/call/cancelVoiceCall.js +5 -1
- package/dist/apis/call/createController.d.ts +7 -0
- package/dist/apis/call/createController.js +9 -0
- package/dist/apis/call/createRtcSession.d.ts +8 -0
- package/dist/apis/call/createRtcSession.js +10 -0
- package/dist/apis/call/endGroupCall.d.ts +10 -0
- package/dist/apis/call/endGroupCall.js +45 -0
- package/dist/apis/call/finishGroupCall.d.ts +12 -0
- package/dist/apis/call/finishGroupCall.js +47 -0
- package/dist/apis/call/getGroupCallState.d.ts +3 -0
- package/dist/apis/call/getGroupCallState.js +38 -0
- package/dist/apis/call/holdVoiceCall.d.ts +5 -0
- package/dist/apis/call/holdVoiceCall.js +34 -0
- package/dist/apis/call/joinGroupCall.d.ts +11 -0
- package/dist/apis/call/joinGroupCall.js +46 -0
- package/dist/apis/call/logEndVoiceCall.d.ts +8 -0
- package/dist/apis/call/logEndVoiceCall.js +46 -0
- package/dist/apis/call/notifyGroupCall.d.ts +9 -0
- package/dist/apis/call/notifyGroupCall.js +44 -0
- package/dist/apis/call/pingGroupCall.d.ts +10 -0
- package/dist/apis/call/pingGroupCall.js +45 -0
- package/dist/apis/call/requestAudioToVideoCall.d.ts +5 -0
- package/dist/apis/call/requestAudioToVideoCall.js +37 -0
- package/dist/apis/call/requestGroupCall.d.ts +9 -0
- package/dist/apis/call/requestGroupCall.js +46 -0
- package/dist/apis/call/requestShareScreenCall.d.ts +5 -0
- package/dist/apis/call/requestShareScreenCall.js +37 -0
- package/dist/apis/call/requestVoiceCall.d.ts +10 -0
- package/dist/apis/call/requestVoiceCall.js +47 -0
- package/dist/apis/call/ringRingGroupCall.d.ts +10 -0
- package/dist/apis/call/ringRingGroupCall.js +45 -0
- package/dist/apis/call/ringRingVoiceCall.d.ts +5 -0
- package/dist/apis/call/ringRingVoiceCall.js +38 -0
- package/dist/apis/call/sendRequestGroupCall.d.ts +11 -0
- package/dist/apis/call/sendRequestGroupCall.js +48 -0
- package/dist/apis/call/sendRequestVoiceCall.d.ts +11 -0
- package/dist/apis/call/sendRequestVoiceCall.js +51 -0
- package/dist/apis/call/sendVoiceCall.d.ts +8 -1
- package/dist/apis/call/sendVoiceCall.js +10 -8
- package/dist/apis/call/shareScreenGroupCall.d.ts +10 -0
- package/dist/apis/call/shareScreenGroupCall.js +45 -0
- package/dist/apis/call/unholdVoiceCall.d.ts +5 -0
- package/dist/apis/call/unholdVoiceCall.js +34 -0
- package/dist/apis/call/updateCallMediaState.d.ts +7 -0
- package/dist/apis/call/updateCallMediaState.js +61 -0
- package/dist/apis/chat/getDirectMessageStatus.d.ts +14 -0
- package/dist/apis/chat/getDirectMessageStatus.js +52 -0
- package/dist/apis/chat/getSuggestedConversations.d.ts +5 -0
- package/dist/apis/chat/getSuggestedConversations.js +24 -0
- package/dist/apis/chat/updatePinConversations.d.ts +24 -0
- package/dist/apis/chat/updatePinConversations.js +40 -0
- package/dist/apis/friend/getFriendProfilesV2.d.ts +26 -0
- package/dist/apis/friend/getFriendProfilesV2.js +38 -0
- package/dist/apis/friend/getFriendsActivePCWeb.d.ts +6 -0
- package/dist/apis/friend/getFriendsActivePCWeb.js +15 -0
- package/dist/apis/friend/verifyFriend.d.ts +11 -0
- package/dist/apis/friend/verifyFriend.js +37 -0
- package/dist/apis/group/analyseGroup.d.ts +4 -0
- package/dist/apis/group/analyseGroup.js +28 -0
- package/dist/apis/group/checkQuotaCommunityMember.d.ts +6 -0
- package/dist/apis/group/checkQuotaCommunityMember.js +34 -0
- package/dist/apis/group/getE2eeGroupList.d.ts +7 -0
- package/dist/apis/group/getE2eeGroupList.js +15 -0
- package/dist/apis/group/getGroupCloudMessagePath.d.ts +19 -0
- package/dist/apis/group/getGroupCloudMessagePath.js +51 -0
- package/dist/apis/group/getMultiGroupCloudMessages.d.ts +5 -0
- package/dist/apis/group/getMultiGroupCloudMessages.js +29 -0
- package/dist/apis/media/getPersonalMedia.d.ts +8 -0
- package/dist/apis/media/getPersonalMedia.js +31 -0
- package/dist/apis/media/getPersonalMediaPreview.d.ts +3 -0
- package/dist/apis/media/getPersonalMediaPreview.js +24 -0
- package/dist/apis/media/removePersonalMedia.d.ts +9 -0
- package/dist/apis/media/removePersonalMedia.js +28 -0
- package/dist/apis.d.ts +126 -0
- package/dist/apis.js +210 -0
- package/dist/call-engine/ZRTPPacketCodec.d.ts +262 -0
- package/dist/call-engine/ZRTPPacketCodec.js +506 -0
- package/dist/call-engine/ZaloCallController.d.ts +134 -0
- package/dist/call-engine/ZaloCallController.js +638 -0
- package/dist/call-engine/ZaloCallTransport.d.ts +83 -0
- package/dist/call-engine/ZaloCallTransport.js +233 -0
- package/dist/call-engine/ZaloRtcSession.d.ts +609 -0
- package/dist/call-engine/ZaloRtcSession.js +2931 -0
- package/dist/call-engine/ZaloSrtpSession.d.ts +80 -0
- package/dist/call-engine/ZaloSrtpSession.js +278 -0
- package/dist/call-engine/index.d.ts +18 -0
- package/dist/call-engine/index.js +24 -0
- package/dist/cjs/apis/auth/exportSession.cjs +22 -0
- package/dist/cjs/apis/call/addUserGroupCall.cjs +53 -0
- package/dist/cjs/apis/call/answerAckVoiceCall.cjs +43 -0
- package/dist/cjs/apis/call/answerGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/answerVoiceCall.cjs +55 -0
- package/dist/cjs/apis/call/broadcastGroupCallState.cjs +50 -0
- package/dist/cjs/apis/call/cancelGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/cancelVoiceCall.cjs +5 -1
- package/dist/cjs/apis/call/createController.cjs +14 -0
- package/dist/cjs/apis/call/createRtcSession.cjs +15 -0
- package/dist/cjs/apis/call/endGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/finishGroupCall.cjs +52 -0
- package/dist/cjs/apis/call/getGroupCallState.cjs +43 -0
- package/dist/cjs/apis/call/holdVoiceCall.cjs +39 -0
- package/dist/cjs/apis/call/joinGroupCall.cjs +51 -0
- package/dist/cjs/apis/call/logEndVoiceCall.cjs +51 -0
- package/dist/cjs/apis/call/notifyGroupCall.cjs +49 -0
- package/dist/cjs/apis/call/pingGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/requestAudioToVideoCall.cjs +42 -0
- package/dist/cjs/apis/call/requestGroupCall.cjs +51 -0
- package/dist/cjs/apis/call/requestShareScreenCall.cjs +42 -0
- package/dist/cjs/apis/call/requestVoiceCall.cjs +52 -0
- package/dist/cjs/apis/call/ringRingGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/ringRingVoiceCall.cjs +43 -0
- package/dist/cjs/apis/call/sendRequestGroupCall.cjs +53 -0
- package/dist/cjs/apis/call/sendRequestVoiceCall.cjs +56 -0
- package/dist/cjs/apis/call/sendVoiceCall.cjs +10 -8
- package/dist/cjs/apis/call/shareScreenGroupCall.cjs +50 -0
- package/dist/cjs/apis/call/unholdVoiceCall.cjs +39 -0
- package/dist/cjs/apis/call/updateCallMediaState.cjs +66 -0
- package/dist/cjs/apis/chat/getDirectMessageStatus.cjs +58 -0
- package/dist/cjs/apis/chat/getSuggestedConversations.cjs +29 -0
- package/dist/cjs/apis/chat/updatePinConversations.cjs +45 -0
- package/dist/cjs/apis/friend/getFriendProfilesV2.cjs +43 -0
- package/dist/cjs/apis/friend/getFriendsActivePCWeb.cjs +20 -0
- package/dist/cjs/apis/friend/verifyFriend.cjs +42 -0
- package/dist/cjs/apis/group/analyseGroup.cjs +33 -0
- package/dist/cjs/apis/group/checkQuotaCommunityMember.cjs +39 -0
- package/dist/cjs/apis/group/getE2eeGroupList.cjs +20 -0
- package/dist/cjs/apis/group/getGroupChatHistory.cjs +8 -7
- package/dist/cjs/apis/group/getGroupCloudMessagePath.cjs +69 -0
- package/dist/cjs/apis/group/getGroupHistoryLegacy.cjs +7 -6
- package/dist/cjs/apis/group/getGroupMessageStatus.cjs +7 -6
- package/dist/cjs/apis/group/getMultiGroupCloudMessages.cjs +34 -0
- package/dist/cjs/apis/media/getPersonalMedia.cjs +36 -0
- package/dist/cjs/apis/media/getPersonalMediaPreview.cjs +29 -0
- package/dist/cjs/apis/media/removePersonalMedia.cjs +33 -0
- package/dist/cjs/apis.cjs +210 -0
- package/dist/cjs/call-engine/ZRTPPacketCodec.cjs +525 -0
- package/dist/cjs/call-engine/ZaloCallController.cjs +643 -0
- package/dist/cjs/call-engine/ZaloCallTransport.cjs +239 -0
- package/dist/cjs/call-engine/ZaloRtcSession.cjs +2937 -0
- package/dist/cjs/call-engine/ZaloSrtpSession.cjs +287 -0
- package/dist/cjs/constants/protocol.cjs +1 -1
- package/dist/cjs/context.cjs +20 -2
- package/dist/cjs/core/zcloud-client.cjs +1 -2
- package/dist/cjs/crypto/ws-cipher.cjs +66 -2
- package/dist/cjs/index.cjs +63 -6
- package/dist/cjs/models/CallEvent.cjs +95 -1
- package/dist/cjs/realtime/handlers/control.handler.cjs +17 -3
- package/dist/cjs/realtime/listener.cjs +37 -6
- package/dist/cjs/update.cjs +10 -1
- package/dist/cjs/utils.cjs +21 -68
- package/dist/constants/protocol.d.ts +1 -1
- package/dist/constants/protocol.js +1 -1
- package/dist/context.d.ts +10 -0
- package/dist/context.js +20 -2
- package/dist/crypto/ws-cipher.d.ts +7 -0
- package/dist/crypto/ws-cipher.js +64 -2
- package/dist/index.d.ts +47 -4
- package/dist/index.js +2 -0
- package/dist/models/CallEvent.d.ts +15 -0
- package/dist/models/CallEvent.js +95 -1
- package/dist/realtime/handlers/control.handler.js +17 -3
- package/dist/realtime/listener.d.ts +6 -0
- package/dist/realtime/listener.js +37 -6
- package/dist/update.js +10 -1
- package/dist/utils.d.ts +0 -7
- package/dist/utils.js +15 -64
- package/index.d.ts +1 -1
- package/package.json +16 -5
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
import { Buffer } from "node:buffer";
|
|
2
|
+
/**
|
|
3
|
+
* Các mã lệnh điều khiển UDP trong `zrtc::ZRTPPacket` (`_buildPacketInternal` @ `0x10015830c`)
|
|
4
|
+
*/
|
|
5
|
+
export declare enum ZRTPControlCommand {
|
|
6
|
+
RelayPing = 2,
|
|
7
|
+
EndCall = 3,
|
|
8
|
+
Ping = 5,
|
|
9
|
+
InitCallCaller = 11,
|
|
10
|
+
InitCallCallee = 12,
|
|
11
|
+
RequestForward = 32,
|
|
12
|
+
InitZaviPing = 51
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Sub-command cho gói tin điều khiển `RequestForward` (`cmd = 32` / `0x0020`, `byte[20]`)
|
|
16
|
+
* dùng để Ping/Pong kiểm tra kết nối 2 chiều qua máy chủ Relay và điều khiển Audio/Video.
|
|
17
|
+
*/
|
|
18
|
+
export declare enum ZRTPForwardSubCommand {
|
|
19
|
+
OnMic = 5,
|
|
20
|
+
OffMic = 6,
|
|
21
|
+
OnCamera = 7,
|
|
22
|
+
OffCamera = 8,
|
|
23
|
+
OffCameraCallKit = 9,
|
|
24
|
+
VideoControl = 10,
|
|
25
|
+
Ping = 11,
|
|
26
|
+
Pong = 16,
|
|
27
|
+
PartnerSuspendVideo = 17
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Loại gói tin Media qua máy chủ Relay:
|
|
31
|
+
* - Gửi đi (5-byte header `[type(1B)] + [routingToken(4B LE)] + [RTP/RTCP]`): `{3, 5, 7, 13, 15}`
|
|
32
|
+
* - Nhận về từ Relay (1-byte header `[type(1B)] + [RTP]`): `{4, 7, 14}`
|
|
33
|
+
* - Nhận về RTCP từ Relay (5-byte header `[type(1B)] + [routingToken(4B LE)] + [RTCP]`): `{5, 15}`
|
|
34
|
+
*/
|
|
35
|
+
export declare enum ZRTPLegacyMediaType {
|
|
36
|
+
AudioRtp = 3,
|
|
37
|
+
IncomingAudioRtp = 4,
|
|
38
|
+
AudioRtcp = 5,
|
|
39
|
+
AudioFec = 7,
|
|
40
|
+
VideoRtp = 13,
|
|
41
|
+
IncomingVideoRtp = 14,
|
|
42
|
+
VideoRtcp = 15
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Sub-command cho gói tin ZRTC Multiplexed Media (`byte[0] == 0x7f`, 9-byte header)
|
|
46
|
+
*/
|
|
47
|
+
export declare enum ZRTCMediaSubCommand {
|
|
48
|
+
P2PPingRequest = 1,
|
|
49
|
+
P2PPingResponse = 2,
|
|
50
|
+
P2PInitCaller = 3,
|
|
51
|
+
P2PInitCallee = 4,
|
|
52
|
+
AudioRtp = 6,
|
|
53
|
+
AudioRtcp = 7,
|
|
54
|
+
VideoRtp = 8,
|
|
55
|
+
VideoRtcp = 9,
|
|
56
|
+
AudioFec = 10
|
|
57
|
+
}
|
|
58
|
+
export declare enum ZRTCRole {
|
|
59
|
+
Caller = 0,
|
|
60
|
+
Callee = 1
|
|
61
|
+
}
|
|
62
|
+
export type ZRTPInitCallRequestOptions = {
|
|
63
|
+
isCaller?: boolean;
|
|
64
|
+
seqNum?: number;
|
|
65
|
+
headerCallId?: number;
|
|
66
|
+
callId: number;
|
|
67
|
+
fromUid?: number;
|
|
68
|
+
toUid?: number;
|
|
69
|
+
flags?: number;
|
|
70
|
+
subFlags?: number;
|
|
71
|
+
sessId: string;
|
|
72
|
+
zrtcConfig?: string;
|
|
73
|
+
};
|
|
74
|
+
export type ZRTPInitCallResponseOptions = {
|
|
75
|
+
isCaller?: boolean;
|
|
76
|
+
seqNum?: number;
|
|
77
|
+
headerCallId?: number;
|
|
78
|
+
callId: number;
|
|
79
|
+
fromUid?: number;
|
|
80
|
+
toUid?: number;
|
|
81
|
+
flags?: number;
|
|
82
|
+
errorCode?: number;
|
|
83
|
+
routingToken: number;
|
|
84
|
+
sessId: string;
|
|
85
|
+
};
|
|
86
|
+
export type ZRTPPingRequestOptions = {
|
|
87
|
+
seqNum: number;
|
|
88
|
+
callId: number;
|
|
89
|
+
fromUid?: number;
|
|
90
|
+
toUid?: number;
|
|
91
|
+
elapsedMs: number | string;
|
|
92
|
+
minByteLength?: number;
|
|
93
|
+
};
|
|
94
|
+
export type ZRTPRelayPingRequestOptions = {
|
|
95
|
+
seqNum?: number;
|
|
96
|
+
callId?: number;
|
|
97
|
+
fromUid: number;
|
|
98
|
+
routingToken: number;
|
|
99
|
+
sessId: string;
|
|
100
|
+
};
|
|
101
|
+
export type ZRTPRequestForwardOptions = {
|
|
102
|
+
seqNum?: number;
|
|
103
|
+
seqId: number;
|
|
104
|
+
fromUid: number;
|
|
105
|
+
routingToken: number;
|
|
106
|
+
subCmd: ZRTPForwardSubCommand | number;
|
|
107
|
+
payload?: string | Buffer;
|
|
108
|
+
};
|
|
109
|
+
export type ZRTPEchoRequestOptions = {
|
|
110
|
+
seqNum: number;
|
|
111
|
+
callId: number;
|
|
112
|
+
fromUid?: number;
|
|
113
|
+
toUid?: number;
|
|
114
|
+
token: number;
|
|
115
|
+
};
|
|
116
|
+
export type ZRTPEndCallRequestOptions = {
|
|
117
|
+
seqNum?: number;
|
|
118
|
+
callId: number;
|
|
119
|
+
fromUid?: number;
|
|
120
|
+
toUid?: number;
|
|
121
|
+
routingToken?: number;
|
|
122
|
+
flags?: number;
|
|
123
|
+
};
|
|
124
|
+
export type ZRTPControlPacket = {
|
|
125
|
+
family: "control";
|
|
126
|
+
isResponse: boolean;
|
|
127
|
+
packetType: 1 | 2;
|
|
128
|
+
subType: number;
|
|
129
|
+
seqNum: number;
|
|
130
|
+
headerCallId: number;
|
|
131
|
+
fromUid: number;
|
|
132
|
+
toUid: number;
|
|
133
|
+
cmd: number;
|
|
134
|
+
flags: number;
|
|
135
|
+
callId?: number;
|
|
136
|
+
subFlags?: number;
|
|
137
|
+
errorCode?: number;
|
|
138
|
+
routingToken?: number;
|
|
139
|
+
sessId?: string;
|
|
140
|
+
zrtcConfig?: string;
|
|
141
|
+
pingString?: string;
|
|
142
|
+
forwardPayload?: Buffer;
|
|
143
|
+
echoToken?: number;
|
|
144
|
+
rawBody: Buffer;
|
|
145
|
+
};
|
|
146
|
+
export type ZRTPLegacyMediaPacket = {
|
|
147
|
+
family: "legacy_media";
|
|
148
|
+
mediaType: ZRTPLegacyMediaType;
|
|
149
|
+
isVideo: boolean;
|
|
150
|
+
isRtcp: boolean;
|
|
151
|
+
isFec: boolean;
|
|
152
|
+
routingId: number;
|
|
153
|
+
rtpPayload: Buffer;
|
|
154
|
+
};
|
|
155
|
+
export type ZRTCMultiplexedMediaPacket = {
|
|
156
|
+
family: "zrtc_media";
|
|
157
|
+
version: number;
|
|
158
|
+
role: ZRTCRole;
|
|
159
|
+
routingToken: number;
|
|
160
|
+
subCmd: ZRTCMediaSubCommand;
|
|
161
|
+
isVideo: boolean;
|
|
162
|
+
isRtcp: boolean;
|
|
163
|
+
isFec: boolean;
|
|
164
|
+
rtpPayload: Buffer;
|
|
165
|
+
};
|
|
166
|
+
export type ZRTCP2PPacket = {
|
|
167
|
+
family: "zrtc_p2p";
|
|
168
|
+
version: number;
|
|
169
|
+
role: ZRTCRole;
|
|
170
|
+
routingToken: number;
|
|
171
|
+
subCmd: number;
|
|
172
|
+
seqNum: number;
|
|
173
|
+
callId: number;
|
|
174
|
+
payload: Buffer;
|
|
175
|
+
};
|
|
176
|
+
export type ZRTPRawPacket = {
|
|
177
|
+
family: "raw";
|
|
178
|
+
raw: Buffer;
|
|
179
|
+
};
|
|
180
|
+
export type ParsedZRTPPacket = ZRTPControlPacket | ZRTPLegacyMediaPacket | ZRTCMultiplexedMediaPacket | ZRTCP2PPacket | ZRTPRawPacket;
|
|
181
|
+
/**
|
|
182
|
+
* Chuỗi codec Opus chuẩn được `ZaloCall` tạo trong `sendSignal 416`
|
|
183
|
+
*/
|
|
184
|
+
export declare const DEFAULT_ZALO_AUDIO_CODEC: string;
|
|
185
|
+
/**
|
|
186
|
+
* Chuỗi codec Audio + Video H264 chuẩn cho cuộc gọi Video
|
|
187
|
+
*/
|
|
188
|
+
export declare const DEFAULT_ZALO_VIDEO_CODEC: string;
|
|
189
|
+
export type ZrtcExtendDataOptions = {
|
|
190
|
+
rtpAddress: string;
|
|
191
|
+
rtcpAddress: string;
|
|
192
|
+
isVideo?: boolean;
|
|
193
|
+
srtpMode?: number;
|
|
194
|
+
srtpKey?: string;
|
|
195
|
+
platform?: number;
|
|
196
|
+
packetMode?: number;
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* Tạo cấu trúc `extendData` chuẩn xác theo `ZaloCall` (`sendSignal 416` / `answer 402`).
|
|
200
|
+
*/
|
|
201
|
+
export declare function buildZrtcExtendData(options: ZrtcExtendDataOptions): Record<string, unknown>;
|
|
202
|
+
/**
|
|
203
|
+
* Rút gọn UID 64-bit dạng chuỗi của Zalo về `uint32` dùng trong header `ZRTPPacket`
|
|
204
|
+
*/
|
|
205
|
+
export declare function uidToUint32(uid: string | number | undefined): number;
|
|
206
|
+
/**
|
|
207
|
+
* Đóng gói gói tin UDP `InitCall` (`0x01 0x7e`, `cmd = 11` cho Caller hoặc `12` cho Callee)
|
|
208
|
+
* gửi tới máy chủ `rtpaddr` của Zalo (`zrtc::ZRTPPacket::_buildPacketInternal` @ `0x10015830c`).
|
|
209
|
+
*/
|
|
210
|
+
export declare function buildInitCallRequest(options: ZRTPInitCallRequestOptions): Buffer;
|
|
211
|
+
/**
|
|
212
|
+
* Đóng gói gói tin UDP phản hồi `InitCall` (`0x02 0x7e`, `cmd = 11 | 12`)
|
|
213
|
+
* khớp chính xác với `zrtc::ZRTPPacket::_parsePacketInternal` (`0x100158db8`)
|
|
214
|
+
* và `zrtc::CallController` (`0x100177920`).
|
|
215
|
+
*/
|
|
216
|
+
export declare function buildInitCallResponse(options: ZRTPInitCallResponseOptions): Buffer;
|
|
217
|
+
/**
|
|
218
|
+
* Đóng gói gói tin UDP `Ping` (`0x01 0x01`, `cmd = 5`) gửi định kỳ tới máy chủ relay của Zalo.
|
|
219
|
+
*/
|
|
220
|
+
export declare function buildPingRequest(options: ZRTPPingRequestOptions): Buffer;
|
|
221
|
+
/**
|
|
222
|
+
* Đóng gói gói tin UDP phản hồi `Ping` (`0x02 0x01`, `cmd = 5`).
|
|
223
|
+
*/
|
|
224
|
+
export declare function buildPingResponse(options: ZRTPPingRequestOptions & {
|
|
225
|
+
errorCode?: number;
|
|
226
|
+
}): Buffer;
|
|
227
|
+
/**
|
|
228
|
+
* Đóng gói gói tin UDP `RequestPing` (`0x01 0x01`, `cmd = 2`) gửi tới máy chủ Relay Zalo
|
|
229
|
+
* (`zrtc::ZRTPPacket::initZRTPPacketRequestPing` @ `0x100157b88`).
|
|
230
|
+
*/
|
|
231
|
+
export declare function buildRelayPingRequest(options: ZRTPRelayPingRequestOptions): Buffer;
|
|
232
|
+
/**
|
|
233
|
+
* Đóng gói gói tin UDP `RequestForward` (`0x01 0x01`, `cmd = 32` / `0x0020`)
|
|
234
|
+
* dùng cho Ping (`subCmd = 11`) / Pong (`subCmd = 16`) giữa 2 đầu qua máy chủ Relay
|
|
235
|
+
* (`zrtc::ZRTPPacket::initZRTPPacketRequestForward` @ `0x100157c4c`).
|
|
236
|
+
*/
|
|
237
|
+
export declare function buildRequestForwardPacket(options: ZRTPRequestForwardOptions): Buffer;
|
|
238
|
+
/**
|
|
239
|
+
* Đóng gói gói tin UDP `Echo` (`cmd = 3`)
|
|
240
|
+
*/
|
|
241
|
+
export declare function buildEchoRequest(options: ZRTPEchoRequestOptions): Buffer;
|
|
242
|
+
/**
|
|
243
|
+
* Đóng gói gói tin UDP `RequestEndCall` (`0x01 0x7e`, `cmd = 3`, 25 bytes)
|
|
244
|
+
* khớp với `zrtc::ZRTPPacket::initZRTPPacketRequestEndCall` (`0x100157b44`)
|
|
245
|
+
* và `_buildPacketInternal` (`0x10015830c`).
|
|
246
|
+
*/
|
|
247
|
+
export declare function buildEndCallRequest(options: ZRTPEndCallRequestOptions): Buffer;
|
|
248
|
+
/**
|
|
249
|
+
* Bọc gói tin chuẩn WebRTC RTP/RTCP/SRTP vào khung 5-byte Legacy Media của Zalo
|
|
250
|
+
* (`byte[0]` in `{3, 5, 7, 13, 15}` + `routingId` 4B LE).
|
|
251
|
+
*/
|
|
252
|
+
export declare function wrapLegacyMediaPacket(mediaType: ZRTPLegacyMediaType, routingId: number, rtpOrRtcpPayload: Buffer): Buffer;
|
|
253
|
+
/**
|
|
254
|
+
* Bọc gói tin chuẩn WebRTC RTP/RTCP/SRTP vào khung 9-byte ZRTC Multiplexed Media (`0x7f`)
|
|
255
|
+
* (`[0x7f, 0x00, role, routingToken(4B LE), subCmd(2B LE)] + [RTP/RTCP]`).
|
|
256
|
+
*/
|
|
257
|
+
export declare function wrapZrtcMediaPacket(subCmd: ZRTCMediaSubCommand, routingToken: number, rtpOrRtcpPayload: Buffer, role?: ZRTCRole): Buffer;
|
|
258
|
+
/**
|
|
259
|
+
* Giải mã bất kỳ gói tin UDP `ZRTPPacket` nào nhận được từ máy chủ Relay Zalo hoặc Peer
|
|
260
|
+
* (`zrtc::ZRTPPacket::_parsePacketInternal` @ `0x1001589e8`).
|
|
261
|
+
*/
|
|
262
|
+
export declare function parseZRTPPacket(buf: Buffer): ParsedZRTPPacket;
|