livekit-server-sdk 1.2.6 → 2.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.
Files changed (80) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/config.json +11 -0
  3. package/.github/workflows/release.yaml +46 -0
  4. package/.github/workflows/test.yaml +21 -21
  5. package/.prettierignore +1 -0
  6. package/CHANGELOG.md +23 -0
  7. package/NOTICE +13 -0
  8. package/README.md +47 -13
  9. package/dist/AccessToken.d.ts +4 -4
  10. package/dist/AccessToken.js +23 -42
  11. package/dist/AccessToken.js.map +1 -1
  12. package/dist/EgressClient.d.ts +21 -2
  13. package/dist/EgressClient.js +183 -170
  14. package/dist/EgressClient.js.map +1 -1
  15. package/dist/IngressClient.d.ts +17 -2
  16. package/dist/IngressClient.js +68 -89
  17. package/dist/IngressClient.js.map +1 -1
  18. package/dist/RoomServiceClient.d.ts +22 -5
  19. package/dist/RoomServiceClient.js +70 -105
  20. package/dist/RoomServiceClient.js.map +1 -1
  21. package/dist/ServiceBase.d.ts +2 -2
  22. package/dist/ServiceBase.js +5 -8
  23. package/dist/ServiceBase.js.map +1 -1
  24. package/dist/TwirpRPC.d.ts +2 -3
  25. package/dist/TwirpRPC.js +15 -23
  26. package/dist/TwirpRPC.js.map +1 -1
  27. package/dist/WebhookReceiver.d.ts +15 -2
  28. package/dist/WebhookReceiver.js +29 -19
  29. package/dist/WebhookReceiver.js.map +1 -1
  30. package/dist/grants.d.ts +2 -1
  31. package/dist/grants.js +2 -5
  32. package/dist/grants.js.map +1 -1
  33. package/dist/index.d.ts +9 -10
  34. package/dist/index.js +9 -48
  35. package/dist/index.js.map +1 -1
  36. package/dist/proto/livekit_egress_pb.d.ts +1650 -0
  37. package/dist/proto/livekit_egress_pb.js +1878 -0
  38. package/dist/proto/livekit_egress_pb.js.map +1 -0
  39. package/dist/proto/livekit_ingress_pb.d.ts +624 -0
  40. package/dist/proto/livekit_ingress_pb.js +824 -0
  41. package/dist/proto/livekit_ingress_pb.js.map +1 -0
  42. package/dist/proto/livekit_models_pb.d.ts +1349 -0
  43. package/dist/proto/livekit_models_pb.js +1829 -0
  44. package/dist/proto/livekit_models_pb.js.map +1 -0
  45. package/dist/proto/livekit_room_pb.d.ts +460 -0
  46. package/dist/proto/livekit_room_pb.js +695 -0
  47. package/dist/proto/livekit_room_pb.js.map +1 -0
  48. package/dist/proto/livekit_webhook_pb.d.ts +70 -0
  49. package/dist/proto/livekit_webhook_pb.js +76 -0
  50. package/dist/proto/livekit_webhook_pb.js.map +1 -0
  51. package/generate-proto.sh +1 -18
  52. package/package.json +32 -28
  53. package/tsconfig.eslint.json +2 -1
  54. package/vite.config.js +8 -0
  55. package/.github/workflows/publish.yaml +0 -57
  56. package/dist/AccessToken.test.d.ts +0 -1
  57. package/dist/AccessToken.test.js +0 -72
  58. package/dist/AccessToken.test.js.map +0 -1
  59. package/dist/WebhookReceiver.test.d.ts +0 -1
  60. package/dist/WebhookReceiver.test.js +0 -39
  61. package/dist/WebhookReceiver.test.js.map +0 -1
  62. package/dist/proto/google/protobuf/timestamp.d.ts +0 -132
  63. package/dist/proto/google/protobuf/timestamp.js +0 -92
  64. package/dist/proto/google/protobuf/timestamp.js.map +0 -1
  65. package/dist/proto/livekit_egress.d.ts +0 -11286
  66. package/dist/proto/livekit_egress.js +0 -2889
  67. package/dist/proto/livekit_egress.js.map +0 -1
  68. package/dist/proto/livekit_ingress.d.ts +0 -2249
  69. package/dist/proto/livekit_ingress.js +0 -1360
  70. package/dist/proto/livekit_ingress.js.map +0 -1
  71. package/dist/proto/livekit_models.d.ts +0 -1454
  72. package/dist/proto/livekit_models.js +0 -3066
  73. package/dist/proto/livekit_models.js.map +0 -1
  74. package/dist/proto/livekit_room.d.ts +0 -3316
  75. package/dist/proto/livekit_room.js +0 -1074
  76. package/dist/proto/livekit_room.js.map +0 -1
  77. package/dist/proto/livekit_webhook.d.ts +0 -4899
  78. package/dist/proto/livekit_webhook.js +0 -179
  79. package/dist/proto/livekit_webhook.js.map +0 -1
  80. /package/{.eslintrc.js → .eslintrc.cjs} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"livekit_room_pb.js","sourceRoot":"","sources":["../../src/proto/livekit_room_pb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
2
+ import { Message, proto3 } from "@bufbuild/protobuf";
3
+ import { ParticipantInfo, Room, TrackInfo } from "./livekit_models_pb.js";
4
+ import { EgressInfo } from "./livekit_egress_pb.js";
5
+ import { IngressInfo } from "./livekit_ingress_pb.js";
6
+ /**
7
+ * @generated from message livekit.WebhookEvent
8
+ */
9
+ export declare class WebhookEvent extends Message<WebhookEvent> {
10
+ /**
11
+ * one of room_started, room_finished, participant_joined, participant_left,
12
+ * track_published, track_unpublished, egress_started, egress_updated, egress_ended,
13
+ * ingress_started, ingress_ended
14
+ *
15
+ * @generated from field: string event = 1;
16
+ */
17
+ event: string;
18
+ /**
19
+ * @generated from field: livekit.Room room = 2;
20
+ */
21
+ room?: Room;
22
+ /**
23
+ * set when event is participant_* or track_*
24
+ *
25
+ * @generated from field: livekit.ParticipantInfo participant = 3;
26
+ */
27
+ participant?: ParticipantInfo;
28
+ /**
29
+ * set when event is egress_*
30
+ *
31
+ * @generated from field: livekit.EgressInfo egress_info = 9;
32
+ */
33
+ egressInfo?: EgressInfo;
34
+ /**
35
+ * set when event is ingress_*
36
+ *
37
+ * @generated from field: livekit.IngressInfo ingress_info = 10;
38
+ */
39
+ ingressInfo?: IngressInfo;
40
+ /**
41
+ * set when event is track_*
42
+ *
43
+ * @generated from field: livekit.TrackInfo track = 8;
44
+ */
45
+ track?: TrackInfo;
46
+ /**
47
+ * unique event uuid
48
+ *
49
+ * @generated from field: string id = 6;
50
+ */
51
+ id: string;
52
+ /**
53
+ * timestamp in seconds
54
+ *
55
+ * @generated from field: int64 created_at = 7;
56
+ */
57
+ createdAt: bigint;
58
+ /**
59
+ * @generated from field: int32 num_dropped = 11;
60
+ */
61
+ numDropped: number;
62
+ constructor(data?: PartialMessage<WebhookEvent>);
63
+ static readonly runtime: typeof proto3;
64
+ static readonly typeName = "livekit.WebhookEvent";
65
+ static readonly fields: FieldList;
66
+ static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): WebhookEvent;
67
+ static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): WebhookEvent;
68
+ static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): WebhookEvent;
69
+ static equals(a: WebhookEvent | PlainMessage<WebhookEvent> | undefined, b: WebhookEvent | PlainMessage<WebhookEvent> | undefined): boolean;
70
+ }
@@ -0,0 +1,76 @@
1
+ // Copyright 2023 LiveKit, Inc.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ import { Message, proto3, protoInt64 } from "@bufbuild/protobuf";
15
+ import { ParticipantInfo, Room, TrackInfo } from "./livekit_models_pb.js";
16
+ import { EgressInfo } from "./livekit_egress_pb.js";
17
+ import { IngressInfo } from "./livekit_ingress_pb.js";
18
+ /**
19
+ * @generated from message livekit.WebhookEvent
20
+ */
21
+ export class WebhookEvent extends Message {
22
+ constructor(data) {
23
+ super();
24
+ /**
25
+ * one of room_started, room_finished, participant_joined, participant_left,
26
+ * track_published, track_unpublished, egress_started, egress_updated, egress_ended,
27
+ * ingress_started, ingress_ended
28
+ *
29
+ * @generated from field: string event = 1;
30
+ */
31
+ this.event = "";
32
+ /**
33
+ * unique event uuid
34
+ *
35
+ * @generated from field: string id = 6;
36
+ */
37
+ this.id = "";
38
+ /**
39
+ * timestamp in seconds
40
+ *
41
+ * @generated from field: int64 created_at = 7;
42
+ */
43
+ this.createdAt = protoInt64.zero;
44
+ /**
45
+ * @generated from field: int32 num_dropped = 11;
46
+ */
47
+ this.numDropped = 0;
48
+ proto3.util.initPartial(data, this);
49
+ }
50
+ static fromBinary(bytes, options) {
51
+ return new WebhookEvent().fromBinary(bytes, options);
52
+ }
53
+ static fromJson(jsonValue, options) {
54
+ return new WebhookEvent().fromJson(jsonValue, options);
55
+ }
56
+ static fromJsonString(jsonString, options) {
57
+ return new WebhookEvent().fromJsonString(jsonString, options);
58
+ }
59
+ static equals(a, b) {
60
+ return proto3.util.equals(WebhookEvent, a, b);
61
+ }
62
+ }
63
+ WebhookEvent.runtime = proto3;
64
+ WebhookEvent.typeName = "livekit.WebhookEvent";
65
+ WebhookEvent.fields = proto3.util.newFieldList(() => [
66
+ { no: 1, name: "event", kind: "scalar", T: 9 /* ScalarType.STRING */ },
67
+ { no: 2, name: "room", kind: "message", T: Room },
68
+ { no: 3, name: "participant", kind: "message", T: ParticipantInfo },
69
+ { no: 9, name: "egress_info", kind: "message", T: EgressInfo },
70
+ { no: 10, name: "ingress_info", kind: "message", T: IngressInfo },
71
+ { no: 8, name: "track", kind: "message", T: TrackInfo },
72
+ { no: 6, name: "id", kind: "scalar", T: 9 /* ScalarType.STRING */ },
73
+ { no: 7, name: "created_at", kind: "scalar", T: 3 /* ScalarType.INT64 */ },
74
+ { no: 11, name: "num_dropped", kind: "scalar", T: 5 /* ScalarType.INT32 */ },
75
+ ]);
76
+ //# sourceMappingURL=livekit_webhook_pb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"livekit_webhook_pb.js","sourceRoot":"","sources":["../../src/proto/livekit_webhook_pb.ts"],"names":[],"mappings":"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"}
package/generate-proto.sh CHANGED
@@ -5,21 +5,4 @@ set -e
5
5
 
6
6
  rm -rf ./src/proto/*
7
7
 
8
- OPTS="esModuleInterop=true,useOptionals=all,outputClientImpl=false"
9
- # ts-proto has a bug when generating timestamp fields
10
- MODEL_OPTS="esModuleInterop=true,useOptionals=messages,outputClientImpl=false"
11
-
12
- # Generate all protos for the browser
13
- protoc --plugin="./node_modules/ts-proto/protoc-gen-ts_proto" \
14
- --ts_proto_out="./src/proto" \
15
- --ts_proto_opt="${OPTS}" \
16
- -I"./protocol/" \
17
- ./protocol/livekit_egress.proto ./protocol/livekit_room.proto ./protocol/livekit_webhook.proto
18
-
19
- # Generate model to ensure it doesn't have optional timestamps
20
- protoc --plugin="./node_modules/ts-proto/protoc-gen-ts_proto" \
21
- --ts_proto_out="./src/proto" \
22
- --ts_proto_opt="${MODEL_OPTS}" \
23
- -I"./protocol/" \
24
- ./protocol/livekit_models.proto
25
-
8
+ protoc --es_out src/proto --es_opt target=ts -I./protocol ./protocol/livekit_egress.proto ./protocol/livekit_ingress.proto ./protocol/livekit_room.proto ./protocol/livekit_webhook.proto ./protocol/livekit_models.proto
package/package.json CHANGED
@@ -1,47 +1,51 @@
1
1
  {
2
2
  "name": "livekit-server-sdk",
3
- "version": "1.2.6",
3
+ "version": "2.0.0",
4
4
  "description": "Server-side SDK for LiveKit",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "repository": "git@github.com:livekit/server-sdk-js.git",
8
8
  "author": "David Zhao <david@davidzhao.com>",
9
9
  "license": "Apache-2.0",
10
- "scripts": {
11
- "build": "tsc",
12
- "build:watch": "tsc --watch",
13
- "build-docs": "typedoc",
14
- "proto": "./generate-proto.sh",
15
- "lint": "eslint .",
16
- "format": "prettier --write src",
17
- "format:check": "prettier --check src",
18
- "prepare": "npm run build",
19
- "test": "jest"
20
- },
10
+ "type": "module",
21
11
  "dependencies": {
22
- "axios": "^1.3.6",
12
+ "@bufbuild/protobuf": "^1.3.0",
23
13
  "camelcase-keys": "^7.0.0",
24
- "jsonwebtoken": "^9.0.0",
25
- "long": "^5.0.0",
26
- "protobufjs": "^7.2.4"
14
+ "jose": "^5.1.2"
27
15
  },
28
16
  "devDependencies": {
29
- "@types/jest": "^26.0.20",
30
- "@types/jsonwebtoken": "^9.0.0",
17
+ "@bufbuild/protoc-gen-es": "^1.3.0",
18
+ "@changesets/cli": "^2.27.1",
19
+ "@edge-runtime/vm": "^3.1.7",
20
+ "@livekit/changesets-changelog-github": "^0.0.4",
21
+ "@types/node": "^20.10.1",
31
22
  "@typescript-eslint/eslint-plugin": "^4.29.1",
32
23
  "eslint": "^7.32.0",
33
24
  "eslint-config-airbnb-typescript": "^12.3.1",
34
25
  "eslint-config-prettier": "^8.5.0",
35
26
  "eslint-plugin-import": "^2.24.0",
36
- "jest": "^26.6.3",
27
+ "happy-dom": "^12.10.3",
37
28
  "prettier": "^2.6.2",
38
- "ts-jest": "^26.4.4",
39
- "ts-loader": "^8.0.11",
40
- "ts-node": "^9.1.1",
41
- "ts-proto": "^1.131.0",
42
- "typedoc": "^0.22.13",
43
- "typescript": "4.2.x",
44
- "webpack": "^5.9.0",
45
- "webpack-cli": "^4.2.0"
29
+ "typedoc": "^0.25.4",
30
+ "typescript": "4.6.x",
31
+ "vite": "^5.0.5",
32
+ "vitest": "^1.0.2"
33
+ },
34
+ "engines": {
35
+ "node": ">=18"
36
+ },
37
+ "scripts": {
38
+ "build": "tsc --project tsconfig.json",
39
+ "build:watch": "tsc --watch",
40
+ "build-docs": "typedoc",
41
+ "changeset": "changeset",
42
+ "ci:publish": "pnpm build && changeset publish",
43
+ "proto": "./generate-proto.sh",
44
+ "lint": "eslint .",
45
+ "format": "prettier --write src",
46
+ "format:check": "prettier --check src",
47
+ "test": "vitest --environment node run",
48
+ "test:browser": "vitest --environment happy-dom run",
49
+ "test:edge": "vitest --environment edge-runtime run"
46
50
  }
47
- }
51
+ }
@@ -1,4 +1,5 @@
1
1
  {
2
2
  "extends": "./tsconfig.json",
3
- "include": ["src/*.ts", "*.js", ".eslintrc.js"]
3
+ "include": ["src/**.ts", "vite.config.js"],
4
+ "exclude": []
4
5
  }
package/vite.config.js ADDED
@@ -0,0 +1,8 @@
1
+ // eslint-disable-next-line import/no-extraneous-dependencies
2
+ import { defineConfig } from 'vite';
3
+
4
+ export default defineConfig({
5
+ test: {
6
+ environment: 'node',
7
+ },
8
+ });
@@ -1,57 +0,0 @@
1
- name: Publish
2
-
3
- # Controls when the action will run.
4
- on:
5
- workflow_dispatch:
6
- push:
7
- # branches: [ main ]
8
- # only publish on version tags
9
- tags:
10
- - v*
11
-
12
- # A workflow run is made up of one or more jobs that can run sequentially or in parallel
13
- jobs:
14
- docs:
15
- # The type of runner that the job will run on
16
- runs-on: ubuntu-latest
17
-
18
- # Steps represent a sequence of tasks that will be executed as part of the job
19
- steps:
20
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
21
- - uses: actions/checkout@v2
22
- - uses: actions/setup-node@v2
23
- with:
24
- node-version: '16.x'
25
- - uses: actions/cache@v2
26
- with:
27
- path: |
28
- ~/.npm
29
- ~/.config/yarn/global
30
- key: ${{ runner.os }}-node-server-api-${{ hashFiles('**/yarn.lock') }}
31
- restore-keys: |
32
- ${{ runner.os }}-node-server-api-
33
-
34
- - name: Install Yarn
35
- run: |
36
- npm install -g yarn
37
- yarn install
38
-
39
- - name: Build
40
- run: yarn build
41
-
42
- - name: Build Docs
43
- run: yarn build-docs
44
-
45
- - name: Publish to npm
46
- run: |
47
- npm config set '//registry.npmjs.org/:_authToken' $NPM_TOKEN
48
- npm publish
49
- env:
50
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
51
-
52
- - name: S3 Upload
53
- run: aws s3 cp docs/ s3://livekit-docs/server-sdk-js --recursive
54
- env:
55
- AWS_ACCESS_KEY_ID: ${{ secrets.DOCS_DEPLOY_AWS_ACCESS_KEY }}
56
- AWS_SECRET_ACCESS_KEY: ${{ secrets.DOCS_DEPLOY_AWS_API_SECRET }}
57
- AWS_DEFAULT_REGION: "us-east-1"
@@ -1 +0,0 @@
1
- export {};
@@ -1,72 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- const jwt = __importStar(require("jsonwebtoken"));
23
- const AccessToken_1 = require("./AccessToken");
24
- const testApiKey = 'abcdefg';
25
- const testSecret = 'abababa';
26
- describe('encoded tokens are valid', () => {
27
- const t = new AccessToken_1.AccessToken(testApiKey, testSecret, {
28
- identity: 'me',
29
- name: 'myname',
30
- });
31
- t.addGrant({ room: 'myroom' });
32
- const token = t.toJwt();
33
- const decoded = jwt.verify(token, testSecret, { jwtid: 'me' });
34
- it('can be decoded', () => {
35
- expect(decoded).not.toBe(undefined);
36
- });
37
- it('has name set', () => {
38
- expect(decoded.name).toBe('myname');
39
- });
40
- it('has video grants set', () => {
41
- expect(decoded.video).toBeTruthy();
42
- expect(decoded.video.room).toEqual('myroom');
43
- });
44
- });
45
- describe('identity is required for only join grants', () => {
46
- it('allows empty identity for create', () => {
47
- const t = new AccessToken_1.AccessToken(testApiKey, testSecret);
48
- t.addGrant({ roomCreate: true });
49
- expect(t.toJwt()).toBeTruthy();
50
- });
51
- it('throws error when identity is not provided for join', () => {
52
- const t = new AccessToken_1.AccessToken(testApiKey, testSecret);
53
- t.addGrant({ roomJoin: true });
54
- expect(() => {
55
- t.toJwt();
56
- }).toThrow();
57
- });
58
- });
59
- describe('verify token is valid', () => {
60
- it('can decode encoded token', () => {
61
- var _a;
62
- const t = new AccessToken_1.AccessToken(testApiKey, testSecret);
63
- t.sha256 = 'abcdefg';
64
- t.addGrant({ roomCreate: true });
65
- const v = new AccessToken_1.TokenVerifier(testApiKey, testSecret);
66
- const decoded = v.verify(t.toJwt());
67
- expect(decoded).not.toBe(undefined);
68
- expect(decoded.sha256).toEqual('abcdefg');
69
- expect((_a = decoded.video) === null || _a === void 0 ? void 0 : _a.roomCreate).toBeTruthy();
70
- });
71
- });
72
- //# sourceMappingURL=AccessToken.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AccessToken.test.js","sourceRoot":"","sources":["../src/AccessToken.test.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const AccessToken_1 = require("./AccessToken");
4
- const livekit_webhook_1 = require("./proto/livekit_webhook");
5
- const WebhookReceiver_1 = require("./WebhookReceiver");
6
- const testApiKey = 'abcdefg';
7
- const testSecret = 'abababa';
8
- describe('webhook receiver', () => {
9
- const body = '{"event":"room_started", "room":{"sid":"RM_TkVjUvAqgzKz", "name":"mytestroom", "emptyTimeout":300, "creationTime":"1628545903", "turnPassword":"ICkSr2rEeslkN6e9bXL4Ji5zzMD5Z7zzr6ulOaxMj6N", "enabledCodecs":[{"mime":"audio/opus"}, {"mime":"video/VP8"}]}}';
10
- const sha = 'CoEQz1chqJ9bnZRcORddjplkvpjmPujmLTR42DbefYI=';
11
- const t = new AccessToken_1.AccessToken(testApiKey, testSecret);
12
- t.sha256 = sha;
13
- const token = t.toJwt();
14
- const receiver = new WebhookReceiver_1.WebhookReceiver(testApiKey, testSecret);
15
- it('should receive and decode WebhookEvent', () => {
16
- var _a;
17
- const event = receiver.receive(body, token);
18
- expect(event).toBeTruthy();
19
- expect((_a = event.room) === null || _a === void 0 ? void 0 : _a.name).toBe('mytestroom');
20
- expect(event.event).toBe('room_started');
21
- });
22
- });
23
- describe('decoding json payload', () => {
24
- it('should allow server to return extra fields', () => {
25
- var _a;
26
- const obj = {
27
- type: 'room_started',
28
- room: {
29
- sid: 'RM_TkVjUvAqgzKz',
30
- name: 'mytestroom',
31
- },
32
- extra: 'extra',
33
- };
34
- const event = livekit_webhook_1.WebhookEvent.fromJSON(obj);
35
- expect(event).toBeTruthy();
36
- expect((_a = event.room) === null || _a === void 0 ? void 0 : _a.name).toBe('mytestroom');
37
- });
38
- });
39
- //# sourceMappingURL=WebhookReceiver.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WebhookReceiver.test.js","sourceRoot":"","sources":["../src/WebhookReceiver.test.ts"],"names":[],"mappings":";;AAAA,+CAA4C;AAC5C,6DAAuD;AACvD,uDAAoD;AAEpD,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,MAAM,UAAU,GAAG,SAAS,CAAC;AAE7B,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,MAAM,IAAI,GACR,+PAA+P,CAAC;IAClQ,MAAM,GAAG,GAAG,8CAA8C,CAAC;IAC3D,MAAM,CAAC,GAAG,IAAI,yBAAW,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC;IACf,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAE7D,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;;QAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;;QACpD,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE;gBACJ,GAAG,EAAE,iBAAiB;gBACtB,IAAI,EAAE,YAAY;aACnB;YACD,KAAK,EAAE,OAAO;SACf,CAAC;QAEF,MAAM,KAAK,GAAG,8BAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAA,KAAK,CAAC,IAAI,0CAAE,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,132 +0,0 @@
1
- import _m0 from "protobufjs/minimal";
2
- export declare const protobufPackage = "google.protobuf";
3
- /**
4
- * A Timestamp represents a point in time independent of any time zone or local
5
- * calendar, encoded as a count of seconds and fractions of seconds at
6
- * nanosecond resolution. The count is relative to an epoch at UTC midnight on
7
- * January 1, 1970, in the proleptic Gregorian calendar which extends the
8
- * Gregorian calendar backwards to year one.
9
- *
10
- * All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
11
- * second table is needed for interpretation, using a [24-hour linear
12
- * smear](https://developers.google.com/time/smear).
13
- *
14
- * The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
15
- * restricting to that range, we ensure that we can convert to and from [RFC
16
- * 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
17
- *
18
- * # Examples
19
- *
20
- * Example 1: Compute Timestamp from POSIX `time()`.
21
- *
22
- * Timestamp timestamp;
23
- * timestamp.set_seconds(time(NULL));
24
- * timestamp.set_nanos(0);
25
- *
26
- * Example 2: Compute Timestamp from POSIX `gettimeofday()`.
27
- *
28
- * struct timeval tv;
29
- * gettimeofday(&tv, NULL);
30
- *
31
- * Timestamp timestamp;
32
- * timestamp.set_seconds(tv.tv_sec);
33
- * timestamp.set_nanos(tv.tv_usec * 1000);
34
- *
35
- * Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
36
- *
37
- * FILETIME ft;
38
- * GetSystemTimeAsFileTime(&ft);
39
- * UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;
40
- *
41
- * // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z
42
- * // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.
43
- * Timestamp timestamp;
44
- * timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
45
- * timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
46
- *
47
- * Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
48
- *
49
- * long millis = System.currentTimeMillis();
50
- *
51
- * Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
52
- * .setNanos((int) ((millis % 1000) * 1000000)).build();
53
- *
54
- * Example 5: Compute Timestamp from Java `Instant.now()`.
55
- *
56
- * Instant now = Instant.now();
57
- *
58
- * Timestamp timestamp =
59
- * Timestamp.newBuilder().setSeconds(now.getEpochSecond())
60
- * .setNanos(now.getNano()).build();
61
- *
62
- * Example 6: Compute Timestamp from current time in Python.
63
- *
64
- * timestamp = Timestamp()
65
- * timestamp.GetCurrentTime()
66
- *
67
- * # JSON Mapping
68
- *
69
- * In JSON format, the Timestamp type is encoded as a string in the
70
- * [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the
71
- * format is "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z"
72
- * where {year} is always expressed using four digits while {month}, {day},
73
- * {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
74
- * seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
75
- * are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
76
- * is required. A proto3 JSON serializer should always use UTC (as indicated by
77
- * "Z") when printing the Timestamp type and a proto3 JSON parser should be
78
- * able to accept both UTC and other timezones (as indicated by an offset).
79
- *
80
- * For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
81
- * 01:30 UTC on January 15, 2017.
82
- *
83
- * In JavaScript, one can convert a Date object to this format using the
84
- * standard
85
- * [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)
86
- * method. In Python, a standard `datetime.datetime` object can be converted
87
- * to this format using
88
- * [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with
89
- * the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use
90
- * the Joda Time's [`ISODateTimeFormat.dateTime()`](
91
- * http://www.joda.org/joda-time/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime%2D%2D
92
- * ) to obtain a formatter capable of generating timestamps in this format.
93
- */
94
- export interface Timestamp {
95
- /**
96
- * Represents seconds of UTC time since Unix epoch
97
- * 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
98
- * 9999-12-31T23:59:59Z inclusive.
99
- */
100
- seconds: number;
101
- /**
102
- * Non-negative fractions of a second at nanosecond resolution. Negative
103
- * second values with fractions must still have non-negative nanos values
104
- * that count forward in time. Must be from 0 to 999,999,999
105
- * inclusive.
106
- */
107
- nanos: number;
108
- }
109
- export declare const Timestamp: {
110
- encode(message: Timestamp, writer?: _m0.Writer): _m0.Writer;
111
- decode(input: _m0.Reader | Uint8Array, length?: number | undefined): Timestamp;
112
- fromJSON(object: any): Timestamp;
113
- toJSON(message: Timestamp): unknown;
114
- fromPartial<I extends {
115
- seconds?: number | undefined;
116
- nanos?: number | undefined;
117
- } & {
118
- seconds?: number | undefined;
119
- nanos?: number | undefined;
120
- } & { [K in Exclude<keyof I, keyof Timestamp>]: never; }>(object: I): Timestamp;
121
- };
122
- declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
123
- export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
124
- [K in keyof T]?: DeepPartial<T[K]>;
125
- } : Partial<T>;
126
- declare type KeysOfUnion<T> = T extends T ? keyof T : never;
127
- export declare type Exact<P, I extends P> = P extends Builtin ? P : P & {
128
- [K in keyof P]: Exact<P[K], I[K]>;
129
- } & {
130
- [K in Exclude<keyof I, KeysOfUnion<P>>]: never;
131
- };
132
- export {};