UNPKG

@enfonica/voice

Version:

Enfonica Numbering SDK for Node.js

900 lines (824 loc) 1.49 MB
// Copyright 2025 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. /*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/ (function(global, factory) { /* global define, require, module */ /* AMD */ if (typeof define === 'function' && define.amd) define(["protobufjs/minimal"], factory); /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports) module.exports = factory(require("google-gax").protobufMinimal); })(this, function($protobuf) { "use strict"; // Common aliases var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util; // Exported root namespace var $root = $protobuf.roots._enfonica_voice_protos || ($protobuf.roots._enfonica_voice_protos = {}); $root.enfonica = (function() { /** * Namespace enfonica. * @exports enfonica * @namespace */ var enfonica = {}; enfonica.voice = (function() { /** * Namespace voice. * @memberof enfonica * @namespace */ var voice = {}; voice.v1beta1 = (function() { /** * Namespace v1beta1. * @memberof enfonica.voice * @namespace */ var v1beta1 = {}; v1beta1.Aliases = (function() { /** * Constructs a new Aliases service. * @memberof enfonica.voice.v1beta1 * @classdesc Represents an Aliases * @extends $protobuf.rpc.Service * @constructor * @param {$protobuf.RPCImpl} rpcImpl RPC implementation * @param {boolean} [requestDelimited=false] Whether requests are length-delimited * @param {boolean} [responseDelimited=false] Whether responses are length-delimited */ function Aliases(rpcImpl, requestDelimited, responseDelimited) { $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited); } (Aliases.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Aliases; /** * Creates new Aliases service using the specified rpc implementation. * @function create * @memberof enfonica.voice.v1beta1.Aliases * @static * @param {$protobuf.RPCImpl} rpcImpl RPC implementation * @param {boolean} [requestDelimited=false] Whether requests are length-delimited * @param {boolean} [responseDelimited=false] Whether responses are length-delimited * @returns {Aliases} RPC service. Useful where requests and/or responses are streamed. */ Aliases.create = function create(rpcImpl, requestDelimited, responseDelimited) { return new this(rpcImpl, requestDelimited, responseDelimited); }; /** * Callback as used by {@link enfonica.voice.v1beta1.Aliases|createAlias}. * @memberof enfonica.voice.v1beta1.Aliases * @typedef CreateAliasCallback * @type {function} * @param {Error|null} error Error, if any * @param {enfonica.voice.v1beta1.Alias} [response] Alias */ /** * Calls CreateAlias. * @function createAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.ICreateAliasRequest} request CreateAliasRequest message or plain object * @param {enfonica.voice.v1beta1.Aliases.CreateAliasCallback} callback Node-style callback called with the error, if any, and Alias * @returns {undefined} * @variation 1 */ Object.defineProperty(Aliases.prototype.createAlias = function createAlias(request, callback) { return this.rpcCall(createAlias, $root.enfonica.voice.v1beta1.CreateAliasRequest, $root.enfonica.voice.v1beta1.Alias, request, callback); }, "name", { value: "CreateAlias" }); /** * Calls CreateAlias. * @function createAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.ICreateAliasRequest} request CreateAliasRequest message or plain object * @returns {Promise<enfonica.voice.v1beta1.Alias>} Promise * @variation 2 */ /** * Callback as used by {@link enfonica.voice.v1beta1.Aliases|getAlias}. * @memberof enfonica.voice.v1beta1.Aliases * @typedef GetAliasCallback * @type {function} * @param {Error|null} error Error, if any * @param {enfonica.voice.v1beta1.Alias} [response] Alias */ /** * Calls GetAlias. * @function getAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IGetAliasRequest} request GetAliasRequest message or plain object * @param {enfonica.voice.v1beta1.Aliases.GetAliasCallback} callback Node-style callback called with the error, if any, and Alias * @returns {undefined} * @variation 1 */ Object.defineProperty(Aliases.prototype.getAlias = function getAlias(request, callback) { return this.rpcCall(getAlias, $root.enfonica.voice.v1beta1.GetAliasRequest, $root.enfonica.voice.v1beta1.Alias, request, callback); }, "name", { value: "GetAlias" }); /** * Calls GetAlias. * @function getAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IGetAliasRequest} request GetAliasRequest message or plain object * @returns {Promise<enfonica.voice.v1beta1.Alias>} Promise * @variation 2 */ /** * Callback as used by {@link enfonica.voice.v1beta1.Aliases|listAliases}. * @memberof enfonica.voice.v1beta1.Aliases * @typedef ListAliasesCallback * @type {function} * @param {Error|null} error Error, if any * @param {enfonica.voice.v1beta1.ListAliasesResponse} [response] ListAliasesResponse */ /** * Calls ListAliases. * @function listAliases * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IListAliasesRequest} request ListAliasesRequest message or plain object * @param {enfonica.voice.v1beta1.Aliases.ListAliasesCallback} callback Node-style callback called with the error, if any, and ListAliasesResponse * @returns {undefined} * @variation 1 */ Object.defineProperty(Aliases.prototype.listAliases = function listAliases(request, callback) { return this.rpcCall(listAliases, $root.enfonica.voice.v1beta1.ListAliasesRequest, $root.enfonica.voice.v1beta1.ListAliasesResponse, request, callback); }, "name", { value: "ListAliases" }); /** * Calls ListAliases. * @function listAliases * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IListAliasesRequest} request ListAliasesRequest message or plain object * @returns {Promise<enfonica.voice.v1beta1.ListAliasesResponse>} Promise * @variation 2 */ /** * Callback as used by {@link enfonica.voice.v1beta1.Aliases|updateAlias}. * @memberof enfonica.voice.v1beta1.Aliases * @typedef UpdateAliasCallback * @type {function} * @param {Error|null} error Error, if any * @param {enfonica.voice.v1beta1.Alias} [response] Alias */ /** * Calls UpdateAlias. * @function updateAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IUpdateAliasRequest} request UpdateAliasRequest message or plain object * @param {enfonica.voice.v1beta1.Aliases.UpdateAliasCallback} callback Node-style callback called with the error, if any, and Alias * @returns {undefined} * @variation 1 */ Object.defineProperty(Aliases.prototype.updateAlias = function updateAlias(request, callback) { return this.rpcCall(updateAlias, $root.enfonica.voice.v1beta1.UpdateAliasRequest, $root.enfonica.voice.v1beta1.Alias, request, callback); }, "name", { value: "UpdateAlias" }); /** * Calls UpdateAlias. * @function updateAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IUpdateAliasRequest} request UpdateAliasRequest message or plain object * @returns {Promise<enfonica.voice.v1beta1.Alias>} Promise * @variation 2 */ /** * Callback as used by {@link enfonica.voice.v1beta1.Aliases|deleteAlias}. * @memberof enfonica.voice.v1beta1.Aliases * @typedef DeleteAliasCallback * @type {function} * @param {Error|null} error Error, if any * @param {google.protobuf.Empty} [response] Empty */ /** * Calls DeleteAlias. * @function deleteAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IDeleteAliasRequest} request DeleteAliasRequest message or plain object * @param {enfonica.voice.v1beta1.Aliases.DeleteAliasCallback} callback Node-style callback called with the error, if any, and Empty * @returns {undefined} * @variation 1 */ Object.defineProperty(Aliases.prototype.deleteAlias = function deleteAlias(request, callback) { return this.rpcCall(deleteAlias, $root.enfonica.voice.v1beta1.DeleteAliasRequest, $root.google.protobuf.Empty, request, callback); }, "name", { value: "DeleteAlias" }); /** * Calls DeleteAlias. * @function deleteAlias * @memberof enfonica.voice.v1beta1.Aliases * @instance * @param {enfonica.voice.v1beta1.IDeleteAliasRequest} request DeleteAliasRequest message or plain object * @returns {Promise<google.protobuf.Empty>} Promise * @variation 2 */ return Aliases; })(); v1beta1.Alias = (function() { /** * Properties of an Alias. * @memberof enfonica.voice.v1beta1 * @interface IAlias * @property {string|null} [name] Alias name * @property {string|null} [aliasId] Alias aliasId * @property {string|null} [displayName] Alias displayName * @property {enfonica.voice.v1beta1.ILoadBalancerConfig|null} [loadBalancerConfig] Alias loadBalancerConfig * @property {google.protobuf.ITimestamp|null} [createTime] Alias createTime */ /** * Constructs a new Alias. * @memberof enfonica.voice.v1beta1 * @classdesc Represents an Alias. * @implements IAlias * @constructor * @param {enfonica.voice.v1beta1.IAlias=} [properties] Properties to set */ function Alias(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * Alias name. * @member {string} name * @memberof enfonica.voice.v1beta1.Alias * @instance */ Alias.prototype.name = ""; /** * Alias aliasId. * @member {string} aliasId * @memberof enfonica.voice.v1beta1.Alias * @instance */ Alias.prototype.aliasId = ""; /** * Alias displayName. * @member {string} displayName * @memberof enfonica.voice.v1beta1.Alias * @instance */ Alias.prototype.displayName = ""; /** * Alias loadBalancerConfig. * @member {enfonica.voice.v1beta1.ILoadBalancerConfig|null|undefined} loadBalancerConfig * @memberof enfonica.voice.v1beta1.Alias * @instance */ Alias.prototype.loadBalancerConfig = null; /** * Alias createTime. * @member {google.protobuf.ITimestamp|null|undefined} createTime * @memberof enfonica.voice.v1beta1.Alias * @instance */ Alias.prototype.createTime = null; // OneOf field names bound to virtual getters and setters var $oneOfFields; /** * Alias config. * @member {"loadBalancerConfig"|undefined} config * @memberof enfonica.voice.v1beta1.Alias * @instance */ Object.defineProperty(Alias.prototype, "config", { get: $util.oneOfGetter($oneOfFields = ["loadBalancerConfig"]), set: $util.oneOfSetter($oneOfFields) }); /** * Creates a new Alias instance using the specified properties. * @function create * @memberof enfonica.voice.v1beta1.Alias * @static * @param {enfonica.voice.v1beta1.IAlias=} [properties] Properties to set * @returns {enfonica.voice.v1beta1.Alias} Alias instance */ Alias.create = function create(properties) { return new Alias(properties); }; /** * Encodes the specified Alias message. Does not implicitly {@link enfonica.voice.v1beta1.Alias.verify|verify} messages. * @function encode * @memberof enfonica.voice.v1beta1.Alias * @static * @param {enfonica.voice.v1beta1.IAlias} message Alias message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ Alias.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.name != null && Object.hasOwnProperty.call(message, "name")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); if (message.aliasId != null && Object.hasOwnProperty.call(message, "aliasId")) writer.uint32(/* id 2, wireType 2 =*/18).string(message.aliasId); if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName")) writer.uint32(/* id 3, wireType 2 =*/26).string(message.displayName); if (message.loadBalancerConfig != null && Object.hasOwnProperty.call(message, "loadBalancerConfig")) $root.enfonica.voice.v1beta1.LoadBalancerConfig.encode(message.loadBalancerConfig, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime")) $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); return writer; }; /** * Encodes the specified Alias message, length delimited. Does not implicitly {@link enfonica.voice.v1beta1.Alias.verify|verify} messages. * @function encodeDelimited * @memberof enfonica.voice.v1beta1.Alias * @static * @param {enfonica.voice.v1beta1.IAlias} message Alias message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ Alias.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** * Decodes an Alias message from the specified reader or buffer. * @function decode * @memberof enfonica.voice.v1beta1.Alias * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand * @returns {enfonica.voice.v1beta1.Alias} Alias * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ Alias.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.enfonica.voice.v1beta1.Alias(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: message.name = reader.string(); break; case 2: message.aliasId = reader.string(); break; case 3: message.displayName = reader.string(); break; case 4: message.loadBalancerConfig = $root.enfonica.voice.v1beta1.LoadBalancerConfig.decode(reader, reader.uint32()); break; case 10: message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }; /** * Decodes an Alias message from the specified reader or buffer, length delimited. * @function decodeDelimited * @memberof enfonica.voice.v1beta1.Alias * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @returns {enfonica.voice.v1beta1.Alias} Alias * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ Alias.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** * Verifies an Alias message. * @function verify * @memberof enfonica.voice.v1beta1.Alias * @static * @param {Object.<string,*>} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ Alias.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.aliasId != null && message.hasOwnProperty("aliasId")) if (!$util.isString(message.aliasId)) return "aliasId: string expected"; if (message.displayName != null && message.hasOwnProperty("displayName")) if (!$util.isString(message.displayName)) return "displayName: string expected"; if (message.loadBalancerConfig != null && message.hasOwnProperty("loadBalancerConfig")) { properties.config = 1; { var error = $root.enfonica.voice.v1beta1.LoadBalancerConfig.verify(message.loadBalancerConfig); if (error) return "loadBalancerConfig." + error; } } if (message.createTime != null && message.hasOwnProperty("createTime")) { var error = $root.google.protobuf.Timestamp.verify(message.createTime); if (error) return "createTime." + error; } return null; }; /** * Creates an Alias message from a plain object. Also converts values to their respective internal types. * @function fromObject * @memberof enfonica.voice.v1beta1.Alias * @static * @param {Object.<string,*>} object Plain object * @returns {enfonica.voice.v1beta1.Alias} Alias */ Alias.fromObject = function fromObject(object) { if (object instanceof $root.enfonica.voice.v1beta1.Alias) return object; var message = new $root.enfonica.voice.v1beta1.Alias(); if (object.name != null) message.name = String(object.name); if (object.aliasId != null) message.aliasId = String(object.aliasId); if (object.displayName != null) message.displayName = String(object.displayName); if (object.loadBalancerConfig != null) { if (typeof object.loadBalancerConfig !== "object") throw TypeError(".enfonica.voice.v1beta1.Alias.loadBalancerConfig: object expected"); message.loadBalancerConfig = $root.enfonica.voice.v1beta1.LoadBalancerConfig.fromObject(object.loadBalancerConfig); } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".enfonica.voice.v1beta1.Alias.createTime: object expected"); message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); } return message; }; /** * Creates a plain object from an Alias message. Also converts values to other types if specified. * @function toObject * @memberof enfonica.voice.v1beta1.Alias * @static * @param {enfonica.voice.v1beta1.Alias} message Alias * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.<string,*>} Plain object */ Alias.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { object.name = ""; object.aliasId = ""; object.displayName = ""; object.createTime = null; } if (message.name != null && message.hasOwnProperty("name")) object.name = message.name; if (message.aliasId != null && message.hasOwnProperty("aliasId")) object.aliasId = message.aliasId; if (message.displayName != null && message.hasOwnProperty("displayName")) object.displayName = message.displayName; if (message.loadBalancerConfig != null && message.hasOwnProperty("loadBalancerConfig")) { object.loadBalancerConfig = $root.enfonica.voice.v1beta1.LoadBalancerConfig.toObject(message.loadBalancerConfig, options); if (options.oneofs) object.config = "loadBalancerConfig"; } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); return object; }; /** * Converts this Alias to JSON. * @function toJSON * @memberof enfonica.voice.v1beta1.Alias * @instance * @returns {Object.<string,*>} JSON object */ Alias.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; return Alias; })(); v1beta1.LoadBalancerConfig = (function() { /** * Properties of a LoadBalancerConfig. * @memberof enfonica.voice.v1beta1 * @interface ILoadBalancerConfig * @property {Array.<enfonica.voice.v1beta1.ILoadBalancerEndpoint>|null} [endpoints] LoadBalancerConfig endpoints * @property {Array.<string>|null} [failoverCallHandlerUris] LoadBalancerConfig failoverCallHandlerUris */ /** * Constructs a new LoadBalancerConfig. * @memberof enfonica.voice.v1beta1 * @classdesc Represents a LoadBalancerConfig. * @implements ILoadBalancerConfig * @constructor * @param {enfonica.voice.v1beta1.ILoadBalancerConfig=} [properties] Properties to set */ function LoadBalancerConfig(properties) { this.endpoints = []; this.failoverCallHandlerUris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * LoadBalancerConfig endpoints. * @member {Array.<enfonica.voice.v1beta1.ILoadBalancerEndpoint>} endpoints * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @instance */ LoadBalancerConfig.prototype.endpoints = $util.emptyArray; /** * LoadBalancerConfig failoverCallHandlerUris. * @member {Array.<string>} failoverCallHandlerUris * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @instance */ LoadBalancerConfig.prototype.failoverCallHandlerUris = $util.emptyArray; /** * Creates a new LoadBalancerConfig instance using the specified properties. * @function create * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {enfonica.voice.v1beta1.ILoadBalancerConfig=} [properties] Properties to set * @returns {enfonica.voice.v1beta1.LoadBalancerConfig} LoadBalancerConfig instance */ LoadBalancerConfig.create = function create(properties) { return new LoadBalancerConfig(properties); }; /** * Encodes the specified LoadBalancerConfig message. Does not implicitly {@link enfonica.voice.v1beta1.LoadBalancerConfig.verify|verify} messages. * @function encode * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {enfonica.voice.v1beta1.ILoadBalancerConfig} message LoadBalancerConfig message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ LoadBalancerConfig.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.endpoints != null && message.endpoints.length) for (var i = 0; i < message.endpoints.length; ++i) $root.enfonica.voice.v1beta1.LoadBalancerEndpoint.encode(message.endpoints[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); if (message.failoverCallHandlerUris != null && message.failoverCallHandlerUris.length) for (var i = 0; i < message.failoverCallHandlerUris.length; ++i) writer.uint32(/* id 2, wireType 2 =*/18).string(message.failoverCallHandlerUris[i]); return writer; }; /** * Encodes the specified LoadBalancerConfig message, length delimited. Does not implicitly {@link enfonica.voice.v1beta1.LoadBalancerConfig.verify|verify} messages. * @function encodeDelimited * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {enfonica.voice.v1beta1.ILoadBalancerConfig} message LoadBalancerConfig message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ LoadBalancerConfig.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** * Decodes a LoadBalancerConfig message from the specified reader or buffer. * @function decode * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand * @returns {enfonica.voice.v1beta1.LoadBalancerConfig} LoadBalancerConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ LoadBalancerConfig.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.enfonica.voice.v1beta1.LoadBalancerConfig(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: if (!(message.endpoints && message.endpoints.length)) message.endpoints = []; message.endpoints.push($root.enfonica.voice.v1beta1.LoadBalancerEndpoint.decode(reader, reader.uint32())); break; case 2: if (!(message.failoverCallHandlerUris && message.failoverCallHandlerUris.length)) message.failoverCallHandlerUris = []; message.failoverCallHandlerUris.push(reader.string()); break; default: reader.skipType(tag & 7); break; } } return message; }; /** * Decodes a LoadBalancerConfig message from the specified reader or buffer, length delimited. * @function decodeDelimited * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @returns {enfonica.voice.v1beta1.LoadBalancerConfig} LoadBalancerConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ LoadBalancerConfig.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** * Verifies a LoadBalancerConfig message. * @function verify * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {Object.<string,*>} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ LoadBalancerConfig.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; if (message.endpoints != null && message.hasOwnProperty("endpoints")) { if (!Array.isArray(message.endpoints)) return "endpoints: array expected"; for (var i = 0; i < message.endpoints.length; ++i) { var error = $root.enfonica.voice.v1beta1.LoadBalancerEndpoint.verify(message.endpoints[i]); if (error) return "endpoints." + error; } } if (message.failoverCallHandlerUris != null && message.hasOwnProperty("failoverCallHandlerUris")) { if (!Array.isArray(message.failoverCallHandlerUris)) return "failoverCallHandlerUris: array expected"; for (var i = 0; i < message.failoverCallHandlerUris.length; ++i) if (!$util.isString(message.failoverCallHandlerUris[i])) return "failoverCallHandlerUris: string[] expected"; } return null; }; /** * Creates a LoadBalancerConfig message from a plain object. Also converts values to their respective internal types. * @function fromObject * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {Object.<string,*>} object Plain object * @returns {enfonica.voice.v1beta1.LoadBalancerConfig} LoadBalancerConfig */ LoadBalancerConfig.fromObject = function fromObject(object) { if (object instanceof $root.enfonica.voice.v1beta1.LoadBalancerConfig) return object; var message = new $root.enfonica.voice.v1beta1.LoadBalancerConfig(); if (object.endpoints) { if (!Array.isArray(object.endpoints)) throw TypeError(".enfonica.voice.v1beta1.LoadBalancerConfig.endpoints: array expected"); message.endpoints = []; for (var i = 0; i < object.endpoints.length; ++i) { if (typeof object.endpoints[i] !== "object") throw TypeError(".enfonica.voice.v1beta1.LoadBalancerConfig.endpoints: object expected"); message.endpoints[i] = $root.enfonica.voice.v1beta1.LoadBalancerEndpoint.fromObject(object.endpoints[i]); } } if (object.failoverCallHandlerUris) { if (!Array.isArray(object.failoverCallHandlerUris)) throw TypeError(".enfonica.voice.v1beta1.LoadBalancerConfig.failoverCallHandlerUris: array expected"); message.failoverCallHandlerUris = []; for (var i = 0; i < object.failoverCallHandlerUris.length; ++i) message.failoverCallHandlerUris[i] = String(object.failoverCallHandlerUris[i]); } return message; }; /** * Creates a plain object from a LoadBalancerConfig message. Also converts values to other types if specified. * @function toObject * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @static * @param {enfonica.voice.v1beta1.LoadBalancerConfig} message LoadBalancerConfig * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.<string,*>} Plain object */ LoadBalancerConfig.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.arrays || options.defaults) { object.endpoints = []; object.failoverCallHandlerUris = []; } if (message.endpoints && message.endpoints.length) { object.endpoints = []; for (var j = 0; j < message.endpoints.length; ++j) object.endpoints[j] = $root.enfonica.voice.v1beta1.LoadBalancerEndpoint.toObject(message.endpoints[j], options); } if (message.failoverCallHandlerUris && message.failoverCallHandlerUris.length) { object.failoverCallHandlerUris = []; for (var j = 0; j < message.failoverCallHandlerUris.length; ++j) object.failoverCallHandlerUris[j] = message.failoverCallHandlerUris[j]; } return object; }; /** * Converts this LoadBalancerConfig to JSON. * @function toJSON * @memberof enfonica.voice.v1beta1.LoadBalancerConfig * @instance * @returns {Object.<string,*>} JSON object */ LoadBalancerConfig.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; return LoadBalancerConfig; })(); v1beta1.LoadBalancerEndpoint = (function() { /** * Properties of a LoadBalancerEndpoint. * @memberof enfonica.voice.v1beta1 * @interface ILoadBalancerEndpoint * @property {string|null} [uri] LoadBalancerEndpoint uri * @property {number|null} [priority] LoadBalancerEndpoint priority * @property {number|null} [weight] LoadBalancerEndpoint weight * @property {boolean|null} [enabled] LoadBalancerEndpoint enabled */ /** * Constructs a new LoadBalancerEndpoint. * @memberof enfonica.voice.v1beta1 * @classdesc Represents a LoadBalancerEndpoint. * @implements ILoadBalancerEndpoint * @constructor * @param {enfonica.voice.v1beta1.ILoadBalancerEndpoint=} [properties] Properties to set */ function LoadBalancerEndpoint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) this[keys[i]] = properties[keys[i]]; } /** * LoadBalancerEndpoint uri. * @member {string} uri * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @instance */ LoadBalancerEndpoint.prototype.uri = ""; /** * LoadBalancerEndpoint priority. * @member {number} priority * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @instance */ LoadBalancerEndpoint.prototype.priority = 0; /** * LoadBalancerEndpoint weight. * @member {number} weight * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @instance */ LoadBalancerEndpoint.prototype.weight = 0; /** * LoadBalancerEndpoint enabled. * @member {boolean} enabled * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @instance */ LoadBalancerEndpoint.prototype.enabled = false; /** * Creates a new LoadBalancerEndpoint instance using the specified properties. * @function create * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @static * @param {enfonica.voice.v1beta1.ILoadBalancerEndpoint=} [properties] Properties to set * @returns {enfonica.voice.v1beta1.LoadBalancerEndpoint} LoadBalancerEndpoint instance */ LoadBalancerEndpoint.create = function create(properties) { return new LoadBalancerEndpoint(properties); }; /** * Encodes the specified LoadBalancerEndpoint message. Does not implicitly {@link enfonica.voice.v1beta1.LoadBalancerEndpoint.verify|verify} messages. * @function encode * @memberof enfonica.voice.v1beta1.LoadBalancerEndpoint * @static * @param {enfonica.voice.v1beta1.ILoadBalancerEndpoint} message LoadBalancerEndpoint message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ LoadBalancerEndpoint.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); if (message.uri != null && Object.hasOwnProperty.call(message, "uri")) writer.uint32(/* id 1, wireType 2 =*/10).string(message.uri); if (message.priority != null && Object.hasOwnProperty.call(message, "priority")) writer.uint32(/* id 2, wireType 0 =*/16).int32(message.priority); if (message.weight != null && Object.hasOwnProperty.call(message