@fonoster/ctl 0.7.43 → 0.7.44

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 (74) hide show
  1. package/bin/run.js +21 -3
  2. package/package.json +6 -7
  3. package/dist/BaseCommand.d.ts +0 -15
  4. package/dist/BaseCommand.js +0 -80
  5. package/dist/Help.d.ts +0 -6
  6. package/dist/Help.js +0 -52
  7. package/dist/commands/applications/create.d.ts +0 -6
  8. package/dist/commands/applications/create.js +0 -164
  9. package/dist/commands/applications/delete.d.ts +0 -9
  10. package/dist/commands/applications/delete.js +0 -99
  11. package/dist/commands/applications/get.d.ts +0 -9
  12. package/dist/commands/applications/get.js +0 -120
  13. package/dist/commands/applications/list.d.ts +0 -9
  14. package/dist/commands/applications/list.js +0 -112
  15. package/dist/commands/applications/update.d.ts +0 -9
  16. package/dist/commands/applications/update.js +0 -187
  17. package/dist/commands/bug.d.ts +0 -6
  18. package/dist/commands/bug.js +0 -42
  19. package/dist/commands/feedback.d.ts +0 -6
  20. package/dist/commands/feedback.js +0 -45
  21. package/dist/commands/numbers/get.d.ts +0 -9
  22. package/dist/commands/numbers/get.js +0 -125
  23. package/dist/commands/numbers/linkTwilioNumber.d.ts +0 -10
  24. package/dist/commands/numbers/linkTwilioNumber.js +0 -155
  25. package/dist/commands/numbers/list.d.ts +0 -9
  26. package/dist/commands/numbers/list.js +0 -116
  27. package/dist/commands/workspaces/current.d.ts +0 -6
  28. package/dist/commands/workspaces/current.js +0 -46
  29. package/dist/commands/workspaces/list.d.ts +0 -6
  30. package/dist/commands/workspaces/list.js +0 -53
  31. package/dist/commands/workspaces/login.d.ts +0 -8
  32. package/dist/commands/workspaces/login.js +0 -145
  33. package/dist/commands/workspaces/logout.d.ts +0 -9
  34. package/dist/commands/workspaces/logout.js +0 -54
  35. package/dist/commands/workspaces/use.d.ts +0 -9
  36. package/dist/commands/workspaces/use.js +0 -57
  37. package/dist/config/addWorkspace.d.ts +0 -3
  38. package/dist/config/addWorkspace.js +0 -15
  39. package/dist/config/getConfig.d.ts +0 -3
  40. package/dist/config/getConfig.js +0 -34
  41. package/dist/config/getCurrentWorkspace.d.ts +0 -3
  42. package/dist/config/getCurrentWorkspace.js +0 -10
  43. package/dist/config/index.d.ts +0 -7
  44. package/dist/config/index.js +0 -41
  45. package/dist/config/removeWorkspace.d.ts +0 -3
  46. package/dist/config/removeWorkspace.js +0 -6
  47. package/dist/config/saveConfig.d.ts +0 -3
  48. package/dist/config/saveConfig.js +0 -32
  49. package/dist/config/setCurrentWorkspace.d.ts +0 -3
  50. package/dist/config/setCurrentWorkspace.js +0 -11
  51. package/dist/config/types.d.ts +0 -4
  52. package/dist/config/types.js +0 -2
  53. package/dist/config/validations.d.ts +0 -27
  54. package/dist/config/validations.js +0 -34
  55. package/dist/constants.d.ts +0 -6
  56. package/dist/constants.js +0 -29
  57. package/dist/utils/assignTwilioNumberToTrunk.d.ts +0 -3
  58. package/dist/utils/assignTwilioNumberToTrunk.js +0 -33
  59. package/dist/utils/createTwilioTrunk.d.ts +0 -4
  60. package/dist/utils/createTwilioTrunk.js +0 -54
  61. package/dist/utils/getFonosterNumberByTelUrl.d.ts +0 -4
  62. package/dist/utils/getFonosterNumberByTelUrl.js +0 -76
  63. package/dist/utils/getFonosterTrunkByInboundUri.d.ts +0 -4
  64. package/dist/utils/getFonosterTrunkByInboundUri.js +0 -76
  65. package/dist/utils/getTwilioNumber.d.ts +0 -4
  66. package/dist/utils/getTwilioNumber.js +0 -23
  67. package/dist/utils/getTwilioTrunk.d.ts +0 -4
  68. package/dist/utils/getTwilioTrunk.js +0 -23
  69. package/dist/utils/index.d.ts +0 -8
  70. package/dist/utils/index.js +0 -42
  71. package/dist/utils/linkTwilioNumberToApplication.d.ts +0 -5
  72. package/dist/utils/linkTwilioNumberToApplication.js +0 -128
  73. package/dist/utils/types.d.ts +0 -14
  74. package/dist/utils/types.js +0 -2
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- /* eslint-disable import/no-unresolved */
13
- /*
14
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
15
- * http://github.com/fonoster/fonoster
16
- *
17
- * This file is part of Fonoster
18
- *
19
- * Licensed under the MIT License (the "License");
20
- * you may not use this file except in compliance with
21
- * the License. You may obtain a copy of the License at
22
- *
23
- * https://opensource.org/licenses/MIT
24
- *
25
- * Unless required by applicable law or agreed to in writing, software
26
- * distributed under the License is distributed on an "AS IS" BASIS,
27
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
28
- * See the License for the specific language governing permissions and
29
- * limitations under the License.
30
- */
31
- const core_1 = require("@oclif/core");
32
- const config_1 = require("../../config");
33
- const saveConfig_1 = require("../../config/saveConfig");
34
- const constants_1 = require("../../constants");
35
- class Use extends core_1.Command {
36
- run() {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- const { args } = yield this.parse(Use);
39
- if (!args.ref) {
40
- this.error("Missing Workspace reference");
41
- return;
42
- }
43
- const workspaces = (0, config_1.getConfig)(constants_1.CONFIG_FILE);
44
- const updatedWorkspaces = (0, config_1.setCurrentWorkspace)(args.ref, workspaces);
45
- const currentWorkspace = updatedWorkspaces.find((w) => w.workspaceRef === args.ref);
46
- (0, saveConfig_1.saveConfig)(constants_1.CONFIG_FILE, updatedWorkspaces);
47
- const { workspaceName, workspaceRef } = currentWorkspace;
48
- this.log(`Current Workspace: ${workspaceName} (${workspaceRef})`);
49
- });
50
- }
51
- }
52
- Use.description = "make a Workspace the default";
53
- Use.examples = ["<%= config.bin %> <%= command.id %>"];
54
- Use.args = {
55
- ref: core_1.Args.string({ description: "The Workspace to unlink from" })
56
- };
57
- exports.default = Use;
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function addWorkspace(config: WorkspaceConfig, workspaces: WorkspaceConfig[]): WorkspaceConfig[];
3
- export { addWorkspace };
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addWorkspace = addWorkspace;
4
- const validations_1 = require("./validations");
5
- function addWorkspace(config, workspaces) {
6
- validations_1.workspaceConfigSchema.parse(config);
7
- const deactivateAll = (workspaces) => workspaces.map((workspace) => (Object.assign(Object.assign({}, workspace), { active: false })));
8
- const workspaceIndex = workspaces.findIndex((workspace) => workspace.workspaceRef === config.workspaceRef);
9
- if (workspaceIndex === -1) {
10
- return deactivateAll(workspaces).concat(Object.assign(Object.assign({}, config), { active: true }));
11
- }
12
- workspaces = deactivateAll(workspaces);
13
- workspaces[workspaceIndex] = Object.assign(Object.assign({}, config), { active: true });
14
- return workspaces;
15
- }
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function getConfig(path: string): WorkspaceConfig[];
3
- export { getConfig };
@@ -1,34 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getConfig = getConfig;
7
- /*
8
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
9
- * http://github.com/fonoster/fonoster
10
- *
11
- * This file is part of Fonoster
12
- *
13
- * Licensed under the MIT License (the "License");
14
- * you may not use this file except in compliance with
15
- * the License. You may obtain a copy of the License at
16
- *
17
- * https://opensource.org/licenses/MIT
18
- *
19
- * Unless required by applicable law or agreed to in writing, software
20
- * distributed under the License is distributed on an "AS IS" BASIS,
21
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
- * See the License for the specific language governing permissions and
23
- * limitations under the License.
24
- */
25
- const fs_1 = __importDefault(require("fs"));
26
- // import { workspaceConfigSchema } from "./validations";
27
- function getConfig(path) {
28
- if (!fs_1.default.existsSync(path)) {
29
- return [];
30
- }
31
- const data = fs_1.default.readFileSync(path, "utf8");
32
- // workspaceConfigSchema.parse(config);
33
- return JSON.parse(data);
34
- }
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function getCurrentWorkspace(workspaces: WorkspaceConfig[]): string;
3
- export { getCurrentWorkspace };
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCurrentWorkspace = getCurrentWorkspace;
4
- function getCurrentWorkspace(workspaces) {
5
- const workspace = workspaces.find((w) => w.active === true);
6
- if (!workspace) {
7
- throw new Error("No active workspace found");
8
- }
9
- return `Current Workspace: ${workspace.workspaceName} (${workspace.workspaceRef})`;
10
- }
@@ -1,7 +0,0 @@
1
- export * from "./addWorkspace";
2
- export * from "./getConfig";
3
- export * from "./getCurrentWorkspace";
4
- export * from "./removeWorkspace";
5
- export * from "./saveConfig";
6
- export * from "./setCurrentWorkspace";
7
- export * from "./types";
@@ -1,41 +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
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- /*
18
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
19
- * http://github.com/fonoster/fonoster
20
- *
21
- * This file is part of Fonoster
22
- *
23
- * Licensed under the MIT License (the "License");
24
- * you may not use this file except in compliance with
25
- * the License. You may obtain a copy of the License at
26
- *
27
- * https://opensource.org/licenses/MIT
28
- *
29
- * Unless required by applicable law or agreed to in writing, software
30
- * distributed under the License is distributed on an "AS IS" BASIS,
31
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32
- * See the License for the specific language governing permissions and
33
- * limitations under the License.
34
- */
35
- __exportStar(require("./addWorkspace"), exports);
36
- __exportStar(require("./getConfig"), exports);
37
- __exportStar(require("./getCurrentWorkspace"), exports);
38
- __exportStar(require("./removeWorkspace"), exports);
39
- __exportStar(require("./saveConfig"), exports);
40
- __exportStar(require("./setCurrentWorkspace"), exports);
41
- __exportStar(require("./types"), exports);
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function removeWorkspace(ref: string, workspaces: WorkspaceConfig[]): WorkspaceConfig[];
3
- export { removeWorkspace };
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.removeWorkspace = removeWorkspace;
4
- function removeWorkspace(ref, workspaces) {
5
- return workspaces.filter((w) => w.workspaceRef !== ref);
6
- }
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function saveConfig(path: string, config: WorkspaceConfig[]): void;
3
- export { saveConfig };
@@ -1,32 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.saveConfig = saveConfig;
7
- /*
8
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
9
- * http://github.com/fonoster/fonoster
10
- *
11
- * This file is part of Fonoster
12
- *
13
- * Licensed under the MIT License (the "License");
14
- * you may not use this file except in compliance with
15
- * the License. You may obtain a copy of the License at
16
- *
17
- * https://opensource.org/licenses/MIT
18
- *
19
- * Unless required by applicable law or agreed to in writing, software
20
- * distributed under the License is distributed on an "AS IS" BASIS,
21
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
- * See the License for the specific language governing permissions and
23
- * limitations under the License.
24
- */
25
- const fs_1 = __importDefault(require("fs"));
26
- const constants_1 = require("../constants");
27
- function saveConfig(path, config) {
28
- if (!fs_1.default.existsSync(constants_1.BASE_DIR)) {
29
- fs_1.default.mkdirSync(constants_1.BASE_DIR, { recursive: true });
30
- }
31
- fs_1.default.writeFileSync(path, JSON.stringify(config, null, 2));
32
- }
@@ -1,3 +0,0 @@
1
- import { WorkspaceConfig } from "./types";
2
- declare function setCurrentWorkspace(ref: string, workspaces: WorkspaceConfig[]): WorkspaceConfig[];
3
- export { setCurrentWorkspace };
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setCurrentWorkspace = setCurrentWorkspace;
4
- function setCurrentWorkspace(ref, workspaces) {
5
- return workspaces.map((w) => {
6
- if (w.workspaceRef === ref) {
7
- return Object.assign(Object.assign({}, w), { active: true });
8
- }
9
- return Object.assign(Object.assign({}, w), { active: false });
10
- });
11
- }
@@ -1,4 +0,0 @@
1
- import { z } from "zod";
2
- import { workspaceConfigSchema } from "./validations";
3
- type WorkspaceConfig = z.infer<typeof workspaceConfigSchema>;
4
- export type { WorkspaceConfig };
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,27 +0,0 @@
1
- import { z } from "zod";
2
- declare const workspaceConfigSchema: z.ZodObject<{
3
- endpoint: z.ZodString;
4
- workspaceAccessKeyId: z.ZodString;
5
- accessKeyId: z.ZodString;
6
- accessKeySecret: z.ZodString;
7
- workspaceRef: z.ZodString;
8
- workspaceName: z.ZodString;
9
- active: z.ZodOptional<z.ZodBoolean>;
10
- }, "strip", z.ZodTypeAny, {
11
- endpoint?: string;
12
- workspaceAccessKeyId?: string;
13
- accessKeyId?: string;
14
- accessKeySecret?: string;
15
- workspaceRef?: string;
16
- workspaceName?: string;
17
- active?: boolean;
18
- }, {
19
- endpoint?: string;
20
- workspaceAccessKeyId?: string;
21
- accessKeyId?: string;
22
- accessKeySecret?: string;
23
- workspaceRef?: string;
24
- workspaceName?: string;
25
- active?: boolean;
26
- }>;
27
- export { workspaceConfigSchema };
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.workspaceConfigSchema = void 0;
4
- /*
5
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
6
- * http://github.com/fonoster/fonoster
7
- *
8
- * This file is part of Fonoster
9
- *
10
- * Licensed under the MIT License (the "License");
11
- * you may not use this file except in compliance with
12
- * the License. You may obtain a copy of the License at
13
- *
14
- * https://opensource.org/licenses/MIT
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */
22
- const zod_1 = require("zod");
23
- const workspaceConfigSchema = zod_1.z.object({
24
- endpoint: zod_1.z.string().min(1, "The endpoint value is required"),
25
- workspaceAccessKeyId: zod_1.z
26
- .string()
27
- .min(1, "The workspaceAccessKeyId value is required"),
28
- accessKeyId: zod_1.z.string().min(1, "The accessKeyId value is required"),
29
- accessKeySecret: zod_1.z.string().min(1, "The accessKeySecret value is required"),
30
- workspaceRef: zod_1.z.string().min(1, "The workspaceRef value is required"),
31
- workspaceName: zod_1.z.string().min(1, "The workspaceName value is required"),
32
- active: zod_1.z.boolean().optional()
33
- });
34
- exports.workspaceConfigSchema = workspaceConfigSchema;
@@ -1,6 +0,0 @@
1
- export declare const BASE_DIR: string;
2
- export declare const CONFIG_FILE: string;
3
- export declare const FONOSTER_ACCESS_CONTROL_LIST: string[];
4
- export declare const FONOSTER_ORIGINATION_URI_BASE = "pstn.fonoster.dev";
5
- export declare const TWILIO_PSTN_URI_BASE = "pstn.twilio.com";
6
- export declare const WORKSPACE_ENDPOINT = "api.fonoster.dev";
package/dist/constants.js DELETED
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WORKSPACE_ENDPOINT = exports.TWILIO_PSTN_URI_BASE = exports.FONOSTER_ORIGINATION_URI_BASE = exports.FONOSTER_ACCESS_CONTROL_LIST = exports.CONFIG_FILE = exports.BASE_DIR = void 0;
4
- /*
5
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
6
- * http://github.com/fonoster/fonoster
7
- *
8
- * This file is part of Fonoster
9
- *
10
- * Licensed under the MIT License (the "License");
11
- * you may not use this file except in compliance with
12
- * the License. You may obtain a copy of the License at
13
- *
14
- * https://opensource.org/licenses/MIT
15
- *
16
- * Unless required by applicable law or agreed to in writing, software
17
- * distributed under the License is distributed on an "AS IS" BASIS,
18
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
- * See the License for the specific language governing permissions and
20
- * limitations under the License.
21
- */
22
- const os_1 = require("os");
23
- const path_1 = require("path");
24
- exports.BASE_DIR = (0, path_1.join)((0, os_1.homedir)(), ".fonoster");
25
- exports.CONFIG_FILE = (0, path_1.join)((0, os_1.homedir)(), ".fonoster", "config.json");
26
- exports.FONOSTER_ACCESS_CONTROL_LIST = ["165.22.7.155/32"]; // Warning: We will need to allow passing this as a parameter
27
- exports.FONOSTER_ORIGINATION_URI_BASE = "pstn.fonoster.dev";
28
- exports.TWILIO_PSTN_URI_BASE = "pstn.twilio.com";
29
- exports.WORKSPACE_ENDPOINT = "api.fonoster.dev";
@@ -1,3 +0,0 @@
1
- import { Twilio } from "twilio";
2
- declare function assignTwilioNumberToTrunk(client: Twilio, phoneNumber: string, trunkSid: string): Promise<void>;
3
- export { assignTwilioNumberToTrunk };
@@ -1,33 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.assignTwilioNumberToTrunk = assignTwilioNumberToTrunk;
13
- function assignTwilioNumberToTrunk(client, phoneNumber, trunkSid) {
14
- return __awaiter(this, void 0, void 0, function* () {
15
- try {
16
- const numbers = yield client.incomingPhoneNumbers.list({
17
- phoneNumber,
18
- limit: 1
19
- });
20
- if (numbers.length === 0) {
21
- throw new Error(`Phone number ${phoneNumber} not found in your Twilio account.`);
22
- }
23
- const numberSid = numbers[0].sid;
24
- // Step 2: Update the Voice URL of the number to point to the trunk's domain URI
25
- yield client.incomingPhoneNumbers(numberSid).update({
26
- trunkSid
27
- });
28
- }
29
- catch (error) {
30
- throw new Error(`Failed to assign phone number to trunk: ${error.message}`);
31
- }
32
- });
33
- }
@@ -1,4 +0,0 @@
1
- import { Twilio } from "twilio";
2
- import { TwilioTrunkParams } from ".";
3
- declare function createTwilioTrunk(client: Twilio, params: TwilioTrunkParams): Promise<void>;
4
- export { createTwilioTrunk };
@@ -1,54 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.createTwilioTrunk = createTwilioTrunk;
13
- const constants_1 = require("../constants");
14
- function createTwilioTrunk(client, params) {
15
- return __awaiter(this, void 0, void 0, function* () {
16
- const { resourceRef, originationUriBase, aclEntries } = params;
17
- try {
18
- const aclName = `ACL-${resourceRef}`;
19
- const trunkName = `Trunk-${resourceRef}`;
20
- const domainName = `${resourceRef}.${constants_1.TWILIO_PSTN_URI_BASE}`;
21
- const originationUri = `sip:${resourceRef}.${originationUriBase}`;
22
- // Create ACLresource and entries
23
- const acl = yield client.sip.ipAccessControlLists.create({
24
- friendlyName: aclName
25
- });
26
- for (const ip of aclEntries) {
27
- yield client.sip.ipAccessControlLists(acl.sid).ipAddresses.create({
28
- friendlyName: `${resourceRef}-entry-${ip}`,
29
- ipAddress: ip
30
- });
31
- }
32
- // Create the trunk
33
- const trunk = yield client.trunking.v1.trunks.create({
34
- friendlyName: trunkName,
35
- domainName: domainName
36
- });
37
- // Add the ACL to the trunk
38
- yield client.trunking.v1.trunks(trunk.sid).ipAccessControlLists.create({
39
- ipAccessControlListSid: acl.sid
40
- });
41
- // Create origination URL
42
- yield client.trunking.v1.trunks(trunk.sid).originationUrls.create({
43
- friendlyName: `Origination-${resourceRef}`,
44
- sipUrl: originationUri,
45
- priority: 10,
46
- weight: 10,
47
- enabled: true
48
- });
49
- }
50
- catch (error) {
51
- throw new Error(`Failed to create resources: ${error.message}`);
52
- }
53
- });
54
- }
@@ -1,4 +0,0 @@
1
- import * as Fonoster from "@fonoster/sdk";
2
- import { INumber } from "@fonoster/types";
3
- declare function getFonosterNumberByTelUrl(client: Fonoster.Client, telUrl: string): Promise<INumber>;
4
- export { getFonosterNumberByTelUrl };
@@ -1,76 +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
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.getFonosterNumberByTelUrl = getFonosterNumberByTelUrl;
46
- /*
47
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
48
- * http://github.com/fonoster/fonoster
49
- *
50
- * This file is part of Fonoster
51
- *
52
- * Licensed under the MIT License (the "License");
53
- * you may not use this file except in compliance with
54
- * the License. You may obtain a copy of the License at
55
- *
56
- * https://opensource.org/licenses/MIT
57
- *
58
- * Unless required by applicable law or agreed to in writing, software
59
- * distributed under the License is distributed on an "AS IS" BASIS,
60
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
61
- * See the License for the specific language governing permissions and
62
- * limitations under the License.
63
- */
64
- const Fonoster = __importStar(require("@fonoster/sdk"));
65
- function getFonosterNumberByTelUrl(client, telUrl) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- try {
68
- const numbers = new Fonoster.Numbers(client);
69
- const numbersList = yield numbers.listNumbers({ pageSize: 1000 });
70
- return numbersList.items.filter((number) => number.telUrl === telUrl)[0];
71
- }
72
- catch (error) {
73
- throw new Error(`Error checking Fonoster Number existence: ${error.message}`);
74
- }
75
- });
76
- }
@@ -1,4 +0,0 @@
1
- import * as Fonoster from "@fonoster/sdk";
2
- import { Trunk } from "@fonoster/types";
3
- declare function getFonosterTrunkByInboundUri(client: Fonoster.Client, inboundUri: string): Promise<Trunk>;
4
- export { getFonosterTrunkByInboundUri };
@@ -1,76 +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
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
- return new (P || (P = Promise))(function (resolve, reject) {
38
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
- step((generator = generator.apply(thisArg, _arguments || [])).next());
42
- });
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.getFonosterTrunkByInboundUri = getFonosterTrunkByInboundUri;
46
- /*
47
- * Copyright (C) 2024 by Fonoster Inc (https://fonoster.com)
48
- * http://github.com/fonoster/fonoster
49
- *
50
- * This file is part of Fonoster
51
- *
52
- * Licensed under the MIT License (the "License");
53
- * you may not use this file except in compliance with
54
- * the License. You may obtain a copy of the License at
55
- *
56
- * https://opensource.org/licenses/MIT
57
- *
58
- * Unless required by applicable law or agreed to in writing, software
59
- * distributed under the License is distributed on an "AS IS" BASIS,
60
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
61
- * See the License for the specific language governing permissions and
62
- * limitations under the License.
63
- */
64
- const Fonoster = __importStar(require("@fonoster/sdk"));
65
- function getFonosterTrunkByInboundUri(client, inboundUri) {
66
- return __awaiter(this, void 0, void 0, function* () {
67
- try {
68
- const trunks = new Fonoster.Trunks(client);
69
- const trunksList = yield trunks.listTrunks({ pageSize: 1000 });
70
- return trunksList.items.filter((trunk) => trunk.inboundUri === inboundUri)[0];
71
- }
72
- catch (error) {
73
- throw new Error(`Error checking SIP trunk existence: ${error.message}`);
74
- }
75
- });
76
- }
@@ -1,4 +0,0 @@
1
- import { Twilio } from "twilio";
2
- import { IncomingPhoneNumberInstance } from "twilio/lib/rest/api/v2010/account/incomingPhoneNumber";
3
- declare function getTwilioNumber(client: Twilio, phoneNumber: string): Promise<IncomingPhoneNumberInstance>;
4
- export { getTwilioNumber };