UNPKG

@ringer-tel/ivy

Version:
130 lines (119 loc) 4.49 kB
/* tslint:disable */ /* eslint-disable */ /** * Ringer Business API * This API provides comprehensive endpoints for the Ringer Business system. It includes functionality for managing customer accounts, addresses, sites, phone numbers, payments, users, and other business resources. Operations typically require authentication and appropriate permissions. * * The version of the OpenAPI document: 1.0.6 * Contact: support@ringer.tel * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; /** * Data required to create or update site. * @export * @interface SiteRequest */ export interface SiteRequest { /** * The DNS extension for the site, used to form part of its unique SIP domain. * @type {string} * @memberof SiteRequest */ dnsExtension: string; /** * Indicates if the site is active. Inactive sites cannot place or receive calls. * @type {boolean} * @memberof SiteRequest */ active: boolean; /** * Default Caller ID name for outbound calls originating from this site. * @type {string} * @memberof SiteRequest */ callerIdName: string; /** * Default Caller ID number for outbound calls from this site (e.g., main business number). * @type {string} * @memberof SiteRequest */ callerIdNumber: string; /** * Identifier of the thin client (call processing node) assigned to this site. * @type {number} * @memberof SiteRequest */ thinClientId: number; /** * Access Control List (e.g., IP addresses or ranges) defining who can connect to this site's SIP services. * @type {string} * @memberof SiteRequest */ acl: string; /** * Maximum number of concurrent call channels allowed for this site. * @type {number} * @memberof SiteRequest */ channelLimit: number; /** * List of permitted outbound country codes or dialing zones for this site. Reference Country Codes API for available values. * @type {Array<string>} * @memberof SiteRequest */ permittedCountryCodes: Array<string>; } /** * Check if a given object implements the SiteRequest interface. */ export function instanceOfSiteRequest(value: object): value is SiteRequest { if (!('dnsExtension' in value) || value['dnsExtension'] === undefined) return false; if (!('active' in value) || value['active'] === undefined) return false; if (!('callerIdName' in value) || value['callerIdName'] === undefined) return false; if (!('callerIdNumber' in value) || value['callerIdNumber'] === undefined) return false; if (!('thinClientId' in value) || value['thinClientId'] === undefined) return false; if (!('acl' in value) || value['acl'] === undefined) return false; if (!('channelLimit' in value) || value['channelLimit'] === undefined) return false; if (!('permittedCountryCodes' in value) || value['permittedCountryCodes'] === undefined) return false; return true; } export function SiteRequestFromJSON(json: any): SiteRequest { return SiteRequestFromJSONTyped(json, false); } export function SiteRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): SiteRequest { if (json == null) { return json; } return { 'dnsExtension': json['dns_extension'], 'active': json['active'], 'callerIdName': json['caller_id_name'], 'callerIdNumber': json['caller_id_number'], 'thinClientId': json['thin_client_id'], 'acl': json['acl'], 'channelLimit': json['channel_limit'], 'permittedCountryCodes': json['permitted_country_codes'], }; } export function SiteRequestToJSON(json: any): SiteRequest { return SiteRequestToJSONTyped(json, false); } export function SiteRequestToJSONTyped(value?: SiteRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'dns_extension': value['dnsExtension'], 'active': value['active'], 'caller_id_name': value['callerIdName'], 'caller_id_number': value['callerIdNumber'], 'thin_client_id': value['thinClientId'], 'acl': value['acl'], 'channel_limit': value['channelLimit'], 'permitted_country_codes': value['permittedCountryCodes'], }; }