@moqtap/codec 0.1.0 → 0.2.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/README.md +99 -95
- package/dist/chunk-4RIXXEII.js +1275 -0
- package/dist/chunk-4XYGE53S.cjs +698 -0
- package/dist/chunk-4YJANAXU.cjs +1109 -0
- package/dist/chunk-6AEHWULA.cjs +641 -0
- package/dist/chunk-7DUBLRXC.js +680 -0
- package/dist/{chunk-WNTXF3DE.cjs → chunk-7IVGHMKJ.cjs} +164 -62
- package/dist/{chunk-YBSEOSSP.js → chunk-A27S7HW7.js} +5 -1
- package/dist/chunk-BISI45MN.cjs +680 -0
- package/dist/{chunk-3BSZ55L3.cjs → chunk-BPNL5YFQ.cjs} +158 -24
- package/dist/chunk-CXDHOMHG.js +1097 -0
- package/dist/chunk-DUBCL3WF.cjs +749 -0
- package/dist/chunk-DWK5ZQZ4.js +642 -0
- package/dist/chunk-E6E3NQYU.js +680 -0
- package/dist/chunk-EFM5T7OM.js +698 -0
- package/dist/chunk-ENURAVHI.cjs +680 -0
- package/dist/{chunk-5WFXFLL4.cjs → chunk-FUFTMAQD.cjs} +96 -63
- package/dist/{chunk-2NARXGVA.cjs → chunk-FWISIR26.cjs} +5 -1
- package/dist/{chunk-YPXLV5YK.js → chunk-FXZ2MYKJ.js} +376 -38
- package/dist/chunk-G26SJ6XS.cjs +1341 -0
- package/dist/chunk-G7GI7LJA.js +737 -0
- package/dist/chunk-GXEW4COZ.cjs +737 -0
- package/dist/chunk-HSVYF6XX.cjs +1361 -0
- package/dist/chunk-IBVM4DMJ.cjs +1097 -0
- package/dist/chunk-IV2H5CFI.cjs +1275 -0
- package/dist/chunk-IV2HRJVT.js +1198 -0
- package/dist/chunk-JSQM2MG3.js +680 -0
- package/dist/chunk-K4OLITS2.cjs +1055 -0
- package/dist/{chunk-UOBWHJA5.js → chunk-KFTCU2P6.js} +2 -3
- package/dist/chunk-LH4NTURO.js +1361 -0
- package/dist/{chunk-DC4L6ZIT.js → chunk-MFAP7R6L.js} +154 -20
- package/dist/chunk-NGVE2RZT.js +1097 -0
- package/dist/chunk-NUX5BHWO.js +1341 -0
- package/dist/chunk-PJRA2TQ5.js +1055 -0
- package/dist/chunk-RVJAGE4S.cjs +1198 -0
- package/dist/{chunk-QYG6KGOV.cjs → chunk-RWQ43Z4F.cjs} +2 -3
- package/dist/chunk-RZHAPEXO.js +749 -0
- package/dist/chunk-ST24APEO.js +1109 -0
- package/dist/chunk-SYHW3FLI.cjs +642 -0
- package/dist/chunk-TLYNOOQP.cjs +432 -0
- package/dist/{chunk-23YG7F46.js → chunk-TMNGRIPL.js} +153 -51
- package/dist/{chunk-IQPDRQVC.js → chunk-U2B3B42P.js} +62 -29
- package/dist/chunk-UNS34PTA.cjs +680 -0
- package/dist/chunk-UR6JKS56.js +432 -0
- package/dist/{chunk-GDRGWFEK.cjs → chunk-UYXTY6ZQ.cjs} +376 -38
- package/dist/chunk-XUUCOLWU.cjs +1097 -0
- package/dist/chunk-YG5KJESI.js +641 -0
- package/dist/chunk-ZBKE2QRQ.js +1401 -0
- package/dist/chunk-ZSPO2GF2.cjs +1401 -0
- package/dist/codec-95k8CAu5.d.cts +35 -0
- package/dist/codec-AFuOxfsO.d.ts +60 -0
- package/dist/codec-B-UJ5Iow.d.cts +75 -0
- package/dist/codec-BC5jfvMb.d.ts +35 -0
- package/dist/codec-BECYPfY8.d.ts +35 -0
- package/dist/codec-BsPU1vNC.d.ts +39 -0
- package/dist/codec-BvpuF-6u.d.cts +39 -0
- package/dist/codec-C8jZI5Cx.d.cts +39 -0
- package/dist/codec-CAevkgf5.d.cts +33 -0
- package/dist/codec-CSUqCrRs.d.ts +39 -0
- package/dist/codec-C_HMXNK_.d.ts +33 -0
- package/dist/{codec-CTvFtQQI.d.cts → codec-CpuvYTSV.d.cts} +5 -5
- package/dist/codec-D0x8-SCw.d.cts +35 -0
- package/dist/codec-D7ARhpG1.d.ts +75 -0
- package/dist/codec-DNAUGshO.d.cts +60 -0
- package/dist/codec-DPx_QNn0.d.ts +31 -0
- package/dist/{codec-qPzfmLNu.d.ts → codec-DRhCx_hw.d.ts} +5 -5
- package/dist/codec-Db7YPe3l.d.ts +31 -0
- package/dist/codec-axkJpb7D.d.cts +31 -0
- package/dist/codec-ujAbFaep.d.cts +31 -0
- package/dist/draft10-session.cjs +6 -0
- package/dist/draft10-session.d.cts +8 -0
- package/dist/draft10-session.d.ts +8 -0
- package/dist/draft10-session.js +6 -0
- package/dist/draft10.cjs +115 -0
- package/dist/draft10.d.cts +95 -0
- package/dist/draft10.d.ts +95 -0
- package/dist/draft10.js +115 -0
- package/dist/draft11-session.cjs +6 -0
- package/dist/draft11-session.d.cts +8 -0
- package/dist/draft11-session.d.ts +8 -0
- package/dist/draft11-session.js +6 -0
- package/dist/draft11.cjs +109 -0
- package/dist/draft11.d.cts +99 -0
- package/dist/draft11.d.ts +99 -0
- package/dist/draft11.js +109 -0
- package/dist/draft12-session.cjs +6 -0
- package/dist/draft12-session.d.cts +8 -0
- package/dist/draft12-session.d.ts +8 -0
- package/dist/draft12-session.js +6 -0
- package/dist/draft12.cjs +117 -0
- package/dist/draft12.d.cts +106 -0
- package/dist/draft12.d.ts +106 -0
- package/dist/draft12.js +117 -0
- package/dist/draft13-session.cjs +6 -0
- package/dist/draft13-session.d.cts +8 -0
- package/dist/draft13-session.d.ts +8 -0
- package/dist/draft13-session.js +6 -0
- package/dist/draft13.cjs +119 -0
- package/dist/draft13.d.cts +108 -0
- package/dist/draft13.d.ts +108 -0
- package/dist/draft13.js +119 -0
- package/dist/draft14-session.cjs +2 -2
- package/dist/draft14-session.d.cts +4 -4
- package/dist/draft14-session.d.ts +4 -4
- package/dist/draft14-session.js +1 -1
- package/dist/draft14.cjs +4 -4
- package/dist/draft14.d.cts +27 -15
- package/dist/draft14.d.ts +27 -15
- package/dist/draft14.js +3 -3
- package/dist/draft15-session.cjs +6 -0
- package/dist/draft15-session.d.cts +8 -0
- package/dist/draft15-session.d.ts +8 -0
- package/dist/draft15-session.js +6 -0
- package/dist/draft15.cjs +111 -0
- package/dist/draft15.d.cts +93 -0
- package/dist/draft15.d.ts +93 -0
- package/dist/draft15.js +111 -0
- package/dist/draft16-session.cjs +6 -0
- package/dist/draft16-session.d.cts +8 -0
- package/dist/draft16-session.d.ts +8 -0
- package/dist/draft16-session.js +6 -0
- package/dist/draft16.cjs +113 -0
- package/dist/draft16.d.cts +94 -0
- package/dist/draft16.d.ts +94 -0
- package/dist/draft16.js +113 -0
- package/dist/draft17-session.cjs +8 -0
- package/dist/draft17-session.d.cts +51 -0
- package/dist/draft17-session.d.ts +51 -0
- package/dist/draft17-session.js +8 -0
- package/dist/draft17.cjs +99 -0
- package/dist/draft17.d.cts +40 -0
- package/dist/draft17.d.ts +40 -0
- package/dist/draft17.js +99 -0
- package/dist/draft7-session.cjs +3 -3
- package/dist/draft7-session.d.cts +3 -3
- package/dist/draft7-session.d.ts +3 -3
- package/dist/draft7-session.js +2 -2
- package/dist/draft7.cjs +6 -6
- package/dist/draft7.d.cts +10 -10
- package/dist/draft7.d.ts +10 -10
- package/dist/draft7.js +3 -3
- package/dist/draft8-session.cjs +6 -0
- package/dist/draft8-session.d.cts +8 -0
- package/dist/draft8-session.d.ts +8 -0
- package/dist/draft8-session.js +6 -0
- package/dist/draft8.cjs +115 -0
- package/dist/draft8.d.cts +95 -0
- package/dist/draft8.d.ts +95 -0
- package/dist/draft8.js +115 -0
- package/dist/draft9-session.cjs +6 -0
- package/dist/draft9-session.d.cts +8 -0
- package/dist/draft9-session.d.ts +8 -0
- package/dist/draft9-session.js +6 -0
- package/dist/draft9.cjs +115 -0
- package/dist/draft9.d.cts +95 -0
- package/dist/draft9.d.ts +95 -0
- package/dist/draft9.js +115 -0
- package/dist/index.cjs +79 -7
- package/dist/index.d.cts +71 -8
- package/dist/index.d.ts +71 -8
- package/dist/index.js +77 -5
- package/dist/{session-types-B9NIf7_F.d.ts → session-types-CJIFbTPd.d.ts} +20 -20
- package/dist/{session-types-CCo-oA-d.d.cts → session-types-Cbq8IGCP.d.cts} +20 -20
- package/dist/session.cjs +5 -5
- package/dist/session.d.cts +3 -3
- package/dist/session.d.ts +3 -3
- package/dist/session.js +5 -5
- package/dist/types-4VxSL2Ho.d.cts +261 -0
- package/dist/types-4VxSL2Ho.d.ts +261 -0
- package/dist/types-B2afJZM-.d.cts +236 -0
- package/dist/types-B2afJZM-.d.ts +236 -0
- package/dist/{types-CIk5W10V.d.ts → types-BTFeKYCb.d.cts} +37 -37
- package/dist/{types-CIk5W10V.d.cts → types-BTFeKYCb.d.ts} +37 -37
- package/dist/types-Bg6QYNVt.d.cts +290 -0
- package/dist/types-Bg6QYNVt.d.ts +290 -0
- package/dist/types-C_1HrqBl.d.cts +306 -0
- package/dist/types-C_1HrqBl.d.ts +306 -0
- package/dist/types-Cw4WE9dh.d.cts +261 -0
- package/dist/types-Cw4WE9dh.d.ts +261 -0
- package/dist/types-D5gNQiDj.d.cts +261 -0
- package/dist/types-D5gNQiDj.d.ts +261 -0
- package/dist/types-DqCDFqgB.d.cts +230 -0
- package/dist/types-DqCDFqgB.d.ts +230 -0
- package/dist/types-ERexTpT8.d.cts +217 -0
- package/dist/types-ERexTpT8.d.ts +217 -0
- package/dist/{types-ClXELFGN.d.cts → types-QNXoxC9Y.d.cts} +36 -41
- package/dist/{types-ClXELFGN.d.ts → types-QNXoxC9Y.d.ts} +36 -41
- package/dist/types-r-CasCf1.d.cts +262 -0
- package/dist/types-r-CasCf1.d.ts +262 -0
- package/package.json +116 -8
- package/src/core/buffer-reader.ts +16 -9
- package/src/core/buffer-writer.ts +2 -2
- package/src/core/errors.ts +1 -1
- package/src/core/session-types.ts +28 -41
- package/src/core/types.ts +92 -75
- package/src/drafts/draft07/announce-fsm.ts +1 -1
- package/src/drafts/draft07/codec.ts +235 -118
- package/src/drafts/draft07/index.ts +43 -44
- package/src/drafts/draft07/messages.ts +1 -1
- package/src/drafts/draft07/parameters.ts +2 -2
- package/src/drafts/draft07/rules.ts +67 -38
- package/src/drafts/draft07/session-fsm.ts +330 -117
- package/src/drafts/draft07/session.ts +10 -10
- package/src/drafts/draft07/subscription-fsm.ts +1 -1
- package/src/drafts/draft07/varint.ts +4 -4
- package/src/drafts/draft08/codec.ts +1254 -0
- package/src/drafts/draft08/index.ts +125 -0
- package/src/drafts/draft08/messages.ts +72 -0
- package/src/drafts/draft08/rules.ts +91 -0
- package/src/drafts/draft08/session-fsm.ts +718 -0
- package/src/drafts/draft08/session.ts +26 -0
- package/src/drafts/draft08/types.ts +377 -0
- package/src/drafts/draft09/codec.ts +1235 -0
- package/src/drafts/draft09/index.ts +125 -0
- package/src/drafts/draft09/messages.ts +72 -0
- package/src/drafts/draft09/rules.ts +91 -0
- package/src/drafts/draft09/session-fsm.ts +718 -0
- package/src/drafts/draft09/session.ts +26 -0
- package/src/drafts/draft09/types.ts +376 -0
- package/src/drafts/draft10/codec.ts +1235 -0
- package/src/drafts/draft10/index.ts +125 -0
- package/src/drafts/draft10/messages.ts +72 -0
- package/src/drafts/draft10/rules.ts +91 -0
- package/src/drafts/draft10/session-fsm.ts +718 -0
- package/src/drafts/draft10/session.ts +26 -0
- package/src/drafts/draft10/types.ts +376 -0
- package/src/drafts/draft11/codec.ts +1198 -0
- package/src/drafts/draft11/index.ts +123 -0
- package/src/drafts/draft11/messages.ts +71 -0
- package/src/drafts/draft11/rules.ts +100 -0
- package/src/drafts/draft11/session-fsm.ts +758 -0
- package/src/drafts/draft11/session.ts +26 -0
- package/src/drafts/draft11/types.ts +375 -0
- package/src/drafts/draft12/codec.ts +1354 -0
- package/src/drafts/draft12/index.ts +130 -0
- package/src/drafts/draft12/messages.ts +84 -0
- package/src/drafts/draft12/rules.ts +106 -0
- package/src/drafts/draft12/session-fsm.ts +805 -0
- package/src/drafts/draft12/session.ts +26 -0
- package/src/drafts/draft12/types.ts +414 -0
- package/src/drafts/draft13/codec.ts +1438 -0
- package/src/drafts/draft13/index.ts +132 -0
- package/src/drafts/draft13/messages.ts +86 -0
- package/src/drafts/draft13/rules.ts +108 -0
- package/src/drafts/draft13/session-fsm.ts +819 -0
- package/src/drafts/draft13/session.ts +26 -0
- package/src/drafts/draft13/types.ts +433 -0
- package/src/drafts/draft14/codec.ts +339 -189
- package/src/drafts/draft14/index.ts +103 -108
- package/src/drafts/draft14/messages.ts +61 -61
- package/src/drafts/draft14/rules.ts +77 -34
- package/src/drafts/draft14/session-fsm.ts +640 -147
- package/src/drafts/draft14/session.ts +13 -13
- package/src/drafts/draft14/types.ts +68 -68
- package/src/drafts/draft15/codec.ts +1661 -0
- package/src/drafts/draft15/index.ts +121 -0
- package/src/drafts/draft15/messages.ts +64 -0
- package/src/drafts/draft15/rules.ts +95 -0
- package/src/drafts/draft15/session-fsm.ts +687 -0
- package/src/drafts/draft15/session.ts +26 -0
- package/src/drafts/draft15/types.ts +336 -0
- package/src/drafts/draft16/codec.ts +1623 -0
- package/src/drafts/draft16/index.ts +123 -0
- package/src/drafts/draft16/messages.ts +67 -0
- package/src/drafts/draft16/rules.ts +96 -0
- package/src/drafts/draft16/session-fsm.ts +682 -0
- package/src/drafts/draft16/session.ts +26 -0
- package/src/drafts/draft16/types.ts +354 -0
- package/src/drafts/draft17/codec.ts +1621 -0
- package/src/drafts/draft17/index.ts +105 -0
- package/src/drafts/draft17/messages.ts +53 -0
- package/src/drafts/draft17/rules.ts +85 -0
- package/src/drafts/draft17/session-fsm.ts +437 -0
- package/src/drafts/draft17/session.ts +15 -0
- package/src/drafts/draft17/types.ts +310 -0
- package/src/index.ts +283 -33
- package/src/session.ts +20 -20
package/src/core/types.ts
CHANGED
|
@@ -1,39 +1,61 @@
|
|
|
1
1
|
// Draft identifiers
|
|
2
|
-
export type Draft =
|
|
3
|
-
|
|
2
|
+
export type Draft =
|
|
3
|
+
| "draft-ietf-moq-transport-07"
|
|
4
|
+
| "draft-ietf-moq-transport-08"
|
|
5
|
+
| "draft-ietf-moq-transport-09"
|
|
6
|
+
| "draft-ietf-moq-transport-10"
|
|
7
|
+
| "draft-ietf-moq-transport-11"
|
|
8
|
+
| "draft-ietf-moq-transport-12"
|
|
9
|
+
| "draft-ietf-moq-transport-13"
|
|
10
|
+
| "draft-ietf-moq-transport-14"
|
|
11
|
+
| "draft-ietf-moq-transport-15"
|
|
12
|
+
| "draft-ietf-moq-transport-16"
|
|
13
|
+
| "draft-ietf-moq-transport-17";
|
|
14
|
+
export type DraftShorthand =
|
|
15
|
+
| "07"
|
|
16
|
+
| "08"
|
|
17
|
+
| "09"
|
|
18
|
+
| "10"
|
|
19
|
+
| "11"
|
|
20
|
+
| "12"
|
|
21
|
+
| "13"
|
|
22
|
+
| "14"
|
|
23
|
+
| "15"
|
|
24
|
+
| "16"
|
|
25
|
+
| "17";
|
|
4
26
|
|
|
5
27
|
// All MoQT message type tags
|
|
6
28
|
export type MoqtMessageType =
|
|
7
|
-
|
|
|
8
|
-
|
|
|
9
|
-
|
|
|
10
|
-
|
|
|
11
|
-
|
|
|
12
|
-
|
|
|
13
|
-
|
|
|
14
|
-
|
|
|
15
|
-
|
|
|
16
|
-
|
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
33
|
-
|
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
29
|
+
| "client_setup"
|
|
30
|
+
| "server_setup"
|
|
31
|
+
| "subscribe"
|
|
32
|
+
| "subscribe_ok"
|
|
33
|
+
| "subscribe_error"
|
|
34
|
+
| "subscribe_done"
|
|
35
|
+
| "subscribe_update"
|
|
36
|
+
| "unsubscribe"
|
|
37
|
+
| "announce"
|
|
38
|
+
| "announce_ok"
|
|
39
|
+
| "announce_error"
|
|
40
|
+
| "announce_cancel"
|
|
41
|
+
| "unannounce"
|
|
42
|
+
| "track_status_request"
|
|
43
|
+
| "track_status"
|
|
44
|
+
| "object_stream"
|
|
45
|
+
| "object_datagram"
|
|
46
|
+
| "stream_header_track"
|
|
47
|
+
| "stream_header_group"
|
|
48
|
+
| "stream_header_subgroup"
|
|
49
|
+
| "goaway"
|
|
50
|
+
| "subscribe_announces"
|
|
51
|
+
| "subscribe_announces_ok"
|
|
52
|
+
| "subscribe_announces_error"
|
|
53
|
+
| "unsubscribe_announces"
|
|
54
|
+
| "max_subscribe_id"
|
|
55
|
+
| "fetch"
|
|
56
|
+
| "fetch_ok"
|
|
57
|
+
| "fetch_error"
|
|
58
|
+
| "fetch_cancel";
|
|
37
59
|
|
|
38
60
|
// Base message interface
|
|
39
61
|
export interface BaseMessage {
|
|
@@ -42,20 +64,20 @@ export interface BaseMessage {
|
|
|
42
64
|
|
|
43
65
|
// Setup messages
|
|
44
66
|
export interface ClientSetup extends BaseMessage {
|
|
45
|
-
readonly type:
|
|
67
|
+
readonly type: "client_setup";
|
|
46
68
|
readonly supportedVersions: bigint[];
|
|
47
69
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
48
70
|
}
|
|
49
71
|
|
|
50
72
|
export interface ServerSetup extends BaseMessage {
|
|
51
|
-
readonly type:
|
|
73
|
+
readonly type: "server_setup";
|
|
52
74
|
readonly selectedVersion: bigint;
|
|
53
75
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
54
76
|
}
|
|
55
77
|
|
|
56
78
|
// Subscribe messages
|
|
57
79
|
export interface Subscribe extends BaseMessage {
|
|
58
|
-
readonly type:
|
|
80
|
+
readonly type: "subscribe";
|
|
59
81
|
readonly subscribeId: bigint;
|
|
60
82
|
readonly trackAlias: bigint;
|
|
61
83
|
readonly trackNamespace: string[];
|
|
@@ -70,10 +92,10 @@ export interface Subscribe extends BaseMessage {
|
|
|
70
92
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
71
93
|
}
|
|
72
94
|
|
|
73
|
-
export type FilterType =
|
|
95
|
+
export type FilterType = "latest_group" | "latest_object" | "absolute_start" | "absolute_range";
|
|
74
96
|
|
|
75
97
|
export interface SubscribeOk extends BaseMessage {
|
|
76
|
-
readonly type:
|
|
98
|
+
readonly type: "subscribe_ok";
|
|
77
99
|
readonly subscribeId: bigint;
|
|
78
100
|
readonly expires: bigint;
|
|
79
101
|
readonly groupOrder: GroupOrderValue;
|
|
@@ -83,10 +105,10 @@ export interface SubscribeOk extends BaseMessage {
|
|
|
83
105
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
84
106
|
}
|
|
85
107
|
|
|
86
|
-
export type GroupOrderValue =
|
|
108
|
+
export type GroupOrderValue = "ascending" | "descending" | "original";
|
|
87
109
|
|
|
88
110
|
export interface SubscribeError extends BaseMessage {
|
|
89
|
-
readonly type:
|
|
111
|
+
readonly type: "subscribe_error";
|
|
90
112
|
readonly subscribeId: bigint;
|
|
91
113
|
readonly errorCode: bigint;
|
|
92
114
|
readonly reasonPhrase: string;
|
|
@@ -94,7 +116,7 @@ export interface SubscribeError extends BaseMessage {
|
|
|
94
116
|
}
|
|
95
117
|
|
|
96
118
|
export interface SubscribeDone extends BaseMessage {
|
|
97
|
-
readonly type:
|
|
119
|
+
readonly type: "subscribe_done";
|
|
98
120
|
readonly subscribeId: bigint;
|
|
99
121
|
readonly statusCode: bigint;
|
|
100
122
|
readonly reasonPhrase: string;
|
|
@@ -104,7 +126,7 @@ export interface SubscribeDone extends BaseMessage {
|
|
|
104
126
|
}
|
|
105
127
|
|
|
106
128
|
export interface SubscribeUpdate extends BaseMessage {
|
|
107
|
-
readonly type:
|
|
129
|
+
readonly type: "subscribe_update";
|
|
108
130
|
readonly subscribeId: bigint;
|
|
109
131
|
readonly startGroup: bigint;
|
|
110
132
|
readonly startObject: bigint;
|
|
@@ -115,50 +137,50 @@ export interface SubscribeUpdate extends BaseMessage {
|
|
|
115
137
|
}
|
|
116
138
|
|
|
117
139
|
export interface Unsubscribe extends BaseMessage {
|
|
118
|
-
readonly type:
|
|
140
|
+
readonly type: "unsubscribe";
|
|
119
141
|
readonly subscribeId: bigint;
|
|
120
142
|
}
|
|
121
143
|
|
|
122
144
|
// Announce messages
|
|
123
145
|
export interface Announce extends BaseMessage {
|
|
124
|
-
readonly type:
|
|
146
|
+
readonly type: "announce";
|
|
125
147
|
readonly trackNamespace: string[];
|
|
126
148
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
127
149
|
}
|
|
128
150
|
|
|
129
151
|
export interface AnnounceOk extends BaseMessage {
|
|
130
|
-
readonly type:
|
|
152
|
+
readonly type: "announce_ok";
|
|
131
153
|
readonly trackNamespace: string[];
|
|
132
154
|
}
|
|
133
155
|
|
|
134
156
|
export interface AnnounceError extends BaseMessage {
|
|
135
|
-
readonly type:
|
|
157
|
+
readonly type: "announce_error";
|
|
136
158
|
readonly trackNamespace: string[];
|
|
137
159
|
readonly errorCode: bigint;
|
|
138
160
|
readonly reasonPhrase: string;
|
|
139
161
|
}
|
|
140
162
|
|
|
141
163
|
export interface AnnounceCancel extends BaseMessage {
|
|
142
|
-
readonly type:
|
|
164
|
+
readonly type: "announce_cancel";
|
|
143
165
|
readonly trackNamespace: string[];
|
|
144
166
|
readonly errorCode: bigint;
|
|
145
167
|
readonly reasonPhrase: string;
|
|
146
168
|
}
|
|
147
169
|
|
|
148
170
|
export interface Unannounce extends BaseMessage {
|
|
149
|
-
readonly type:
|
|
171
|
+
readonly type: "unannounce";
|
|
150
172
|
readonly trackNamespace: string[];
|
|
151
173
|
}
|
|
152
174
|
|
|
153
175
|
// Track status
|
|
154
176
|
export interface TrackStatusRequest extends BaseMessage {
|
|
155
|
-
readonly type:
|
|
177
|
+
readonly type: "track_status_request";
|
|
156
178
|
readonly trackNamespace: string[];
|
|
157
179
|
readonly trackName: string;
|
|
158
180
|
}
|
|
159
181
|
|
|
160
182
|
export interface TrackStatus extends BaseMessage {
|
|
161
|
-
readonly type:
|
|
183
|
+
readonly type: "track_status";
|
|
162
184
|
readonly trackNamespace: string[];
|
|
163
185
|
readonly trackName: string;
|
|
164
186
|
readonly statusCode: bigint;
|
|
@@ -168,8 +190,7 @@ export interface TrackStatus extends BaseMessage {
|
|
|
168
190
|
|
|
169
191
|
// Object/stream messages
|
|
170
192
|
export interface ObjectStream extends BaseMessage {
|
|
171
|
-
readonly type:
|
|
172
|
-
readonly subscribeId: bigint;
|
|
193
|
+
readonly type: "object_stream";
|
|
173
194
|
readonly trackAlias: bigint;
|
|
174
195
|
readonly groupId: bigint;
|
|
175
196
|
readonly objectId: bigint;
|
|
@@ -179,8 +200,7 @@ export interface ObjectStream extends BaseMessage {
|
|
|
179
200
|
}
|
|
180
201
|
|
|
181
202
|
export interface ObjectDatagram extends BaseMessage {
|
|
182
|
-
readonly type:
|
|
183
|
-
readonly subscribeId: bigint;
|
|
203
|
+
readonly type: "object_datagram";
|
|
184
204
|
readonly trackAlias: bigint;
|
|
185
205
|
readonly groupId: bigint;
|
|
186
206
|
readonly objectId: bigint;
|
|
@@ -190,23 +210,20 @@ export interface ObjectDatagram extends BaseMessage {
|
|
|
190
210
|
}
|
|
191
211
|
|
|
192
212
|
export interface StreamHeaderTrack extends BaseMessage {
|
|
193
|
-
readonly type:
|
|
194
|
-
readonly subscribeId: bigint;
|
|
213
|
+
readonly type: "stream_header_track";
|
|
195
214
|
readonly trackAlias: bigint;
|
|
196
215
|
readonly publisherPriority: number;
|
|
197
216
|
}
|
|
198
217
|
|
|
199
218
|
export interface StreamHeaderGroup extends BaseMessage {
|
|
200
|
-
readonly type:
|
|
201
|
-
readonly subscribeId: bigint;
|
|
219
|
+
readonly type: "stream_header_group";
|
|
202
220
|
readonly trackAlias: bigint;
|
|
203
221
|
readonly groupId: bigint;
|
|
204
222
|
readonly publisherPriority: number;
|
|
205
223
|
}
|
|
206
224
|
|
|
207
225
|
export interface StreamHeaderSubgroup extends BaseMessage {
|
|
208
|
-
readonly type:
|
|
209
|
-
readonly subscribeId: bigint;
|
|
226
|
+
readonly type: "stream_header_subgroup";
|
|
210
227
|
readonly trackAlias: bigint;
|
|
211
228
|
readonly groupId: bigint;
|
|
212
229
|
readonly subgroupId: bigint;
|
|
@@ -215,24 +232,24 @@ export interface StreamHeaderSubgroup extends BaseMessage {
|
|
|
215
232
|
|
|
216
233
|
// GoAway
|
|
217
234
|
export interface GoAway extends BaseMessage {
|
|
218
|
-
readonly type:
|
|
235
|
+
readonly type: "goaway";
|
|
219
236
|
readonly newSessionUri: string;
|
|
220
237
|
}
|
|
221
238
|
|
|
222
239
|
// Subscribe Announces
|
|
223
240
|
export interface SubscribeAnnounces extends BaseMessage {
|
|
224
|
-
readonly type:
|
|
241
|
+
readonly type: "subscribe_announces";
|
|
225
242
|
readonly trackNamespace: string[];
|
|
226
243
|
readonly parameters: Map<bigint, Uint8Array>;
|
|
227
244
|
}
|
|
228
245
|
|
|
229
246
|
export interface SubscribeAnnouncesOk extends BaseMessage {
|
|
230
|
-
readonly type:
|
|
247
|
+
readonly type: "subscribe_announces_ok";
|
|
231
248
|
readonly trackNamespace: string[];
|
|
232
249
|
}
|
|
233
250
|
|
|
234
251
|
export interface SubscribeAnnouncesError extends BaseMessage {
|
|
235
|
-
readonly type:
|
|
252
|
+
readonly type: "subscribe_announces_error";
|
|
236
253
|
readonly trackNamespace: string[];
|
|
237
254
|
readonly errorCode: bigint;
|
|
238
255
|
readonly reasonPhrase: string;
|
|
@@ -240,19 +257,19 @@ export interface SubscribeAnnouncesError extends BaseMessage {
|
|
|
240
257
|
|
|
241
258
|
// Unsubscribe Announces
|
|
242
259
|
export interface UnsubscribeAnnounces extends BaseMessage {
|
|
243
|
-
readonly type:
|
|
260
|
+
readonly type: "unsubscribe_announces";
|
|
244
261
|
readonly trackNamespace: string[];
|
|
245
262
|
}
|
|
246
263
|
|
|
247
264
|
// Max Subscribe ID
|
|
248
265
|
export interface MaxSubscribeId extends BaseMessage {
|
|
249
|
-
readonly type:
|
|
266
|
+
readonly type: "max_subscribe_id";
|
|
250
267
|
readonly subscribeId: bigint;
|
|
251
268
|
}
|
|
252
269
|
|
|
253
270
|
// Fetch
|
|
254
271
|
export interface Fetch extends BaseMessage {
|
|
255
|
-
readonly type:
|
|
272
|
+
readonly type: "fetch";
|
|
256
273
|
readonly subscribeId: bigint;
|
|
257
274
|
readonly trackNamespace: string[];
|
|
258
275
|
readonly trackName: string;
|
|
@@ -266,7 +283,7 @@ export interface Fetch extends BaseMessage {
|
|
|
266
283
|
}
|
|
267
284
|
|
|
268
285
|
export interface FetchOk extends BaseMessage {
|
|
269
|
-
readonly type:
|
|
286
|
+
readonly type: "fetch_ok";
|
|
270
287
|
readonly subscribeId: bigint;
|
|
271
288
|
readonly groupOrder: GroupOrderValue;
|
|
272
289
|
readonly endOfTrack: boolean;
|
|
@@ -276,14 +293,14 @@ export interface FetchOk extends BaseMessage {
|
|
|
276
293
|
}
|
|
277
294
|
|
|
278
295
|
export interface FetchError extends BaseMessage {
|
|
279
|
-
readonly type:
|
|
296
|
+
readonly type: "fetch_error";
|
|
280
297
|
readonly subscribeId: bigint;
|
|
281
298
|
readonly errorCode: bigint;
|
|
282
299
|
readonly reasonPhrase: string;
|
|
283
300
|
}
|
|
284
301
|
|
|
285
302
|
export interface FetchCancel extends BaseMessage {
|
|
286
|
-
readonly type:
|
|
303
|
+
readonly type: "fetch_cancel";
|
|
287
304
|
readonly subscribeId: bigint;
|
|
288
305
|
}
|
|
289
306
|
|
|
@@ -344,11 +361,11 @@ export type DecodeResult<T> =
|
|
|
344
361
|
| { ok: false; error: DecodeError };
|
|
345
362
|
|
|
346
363
|
export type DecodeErrorCode =
|
|
347
|
-
|
|
|
348
|
-
|
|
|
349
|
-
|
|
|
350
|
-
|
|
|
351
|
-
|
|
|
364
|
+
| "UNEXPECTED_END"
|
|
365
|
+
| "INVALID_VARINT"
|
|
366
|
+
| "UNKNOWN_MESSAGE_TYPE"
|
|
367
|
+
| "INVALID_PARAMETER"
|
|
368
|
+
| "CONSTRAINT_VIOLATION";
|
|
352
369
|
|
|
353
370
|
export class DecodeError extends Error {
|
|
354
371
|
readonly code: DecodeErrorCode;
|
|
@@ -356,7 +373,7 @@ export class DecodeError extends Error {
|
|
|
356
373
|
|
|
357
374
|
constructor(code: DecodeErrorCode, message: string, offset: number) {
|
|
358
375
|
super(message);
|
|
359
|
-
this.name =
|
|
376
|
+
this.name = "DecodeError";
|
|
360
377
|
this.code = code;
|
|
361
378
|
this.offset = offset;
|
|
362
379
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Announce state tracking is integrated into SessionFSM.
|
|
2
|
-
export type {
|
|
2
|
+
export type { AnnouncePhase, AnnounceState } from "../../core/session-types.js";
|