@sinch/mcp
Version:
Sinch MCP server
41 lines • 1.81 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getVoiceService = void 0;
const types_1 = require("../../../types");
const sdk_core_1 = require("@sinch/sdk-core");
const user_agent_1 = require("../../../user-agent");
const addPropertiesToApi = (api, client) => {
api.client = client;
api.setHostname(sdk_core_1.VOICE_HOSTNAME.replace(sdk_core_1.REGION_PATTERN, sdk_core_1.VoiceRegion.DEFAULT));
};
const getVoiceService = () => {
const applicationKey = process.env.VOICE_APPLICATION_KEY;
const applicationSecret = process.env.VOICE_APPLICATION_SECRET;
if (!applicationKey && !applicationSecret) {
return new types_1.PromptResponse('Missing environment variables: "VOICE_APPLICATION_KEY" and "VOICE_APPLICATION_SECRET".');
}
if (!applicationKey) {
return new types_1.PromptResponse('Missing environment variable: "VOICE_APPLICATION_KEY".');
}
if (!applicationSecret) {
return new types_1.PromptResponse('Missing environment variable: "VOICE_APPLICATION_SECRET".');
}
const sinchClient = new sdk_core_1.SinchClient({});
const apiFetchClient = new sdk_core_1.ApiFetchClient({
requestPlugins: [
new sdk_core_1.XTimestampRequest(),
new sdk_core_1.SigningRequest(applicationKey, applicationSecret),
new sdk_core_1.AdditionalHeadersRequest({
headers: (0, sdk_core_1.buildHeader)('User-Agent', user_agent_1.USER_AGENT),
}),
],
});
const apis = [
sinchClient.voice.callouts,
sinchClient.voice.conferences,
];
apis.forEach((api) => addPropertiesToApi(api, apiFetchClient));
return sinchClient.voice;
};
exports.getVoiceService = getVoiceService;
//# sourceMappingURL=voice-service-helper.js.map