export class CallTransferResponse { constructor(params: object); apiId: string; callUuids: object; message: string; } export class ListAllQueuedCalls { constructor(params: object); apiId: string; calls: object; } export class ListAllLiveCallResponse { constructor(params: object); apiId: string; callUuid: object; } export class CreateCallResponse { constructor(params: object); apiId: string; message: string; requestUuid: Array | string; } export class GetQueuedCallResponse { constructor(params: object); apiId: string; direction: string; from: string; callStatus: string; to: string; callerName: string; callUuid: string; requestUuid: string; } export class GetLiveCallResponse { constructor(params: object); apiId: string; callStatus: string; callUuid: string; callerName: string; direction: string; from: string; requestUuid: string; sessionStart: string; to: string; } export class RetrieveCallResponse { constructor(params: object); apiId: string; answerTime: string; billDuration: string; billedDuration: string; callDirection: string; callDuration: string; callState: string; callUuid: string; conferenceUuid: string; endTime: string; fromNumber: string; hangupCauseCode: string; hangupCauseName: string; hangupSource: string; initiationTime: string; parentCallUuid: string; resourceUri: string; toNumber: string; totalAmount: string; totalRate: string; } export class ListAllCallsResponse { constructor(params: object); apiId: string; answerTime: string; billDuration: string; billedDuration: string; callDirection: string; callDuration: string; callState: string; callUuid: string; conferenceUuid: string; endTime: string; fromNumber: string; hangupCauseCode: string; hangupCauseName: string; hangupSource: string; initiationTime: string; parentCallUuid: string; resourceUri: string; toNumber: string; totalAmount: string; totalRate: string; } export class StartPlayingMusicResponse { constructor(params: object); apiId: string; message: string; } export class StartSpeakingTextResponse { constructor(params: object); apiId: string; message: string; } export class SendDigitsResponse { constructor(params: object); apiId: string; message: string; } export class RecordCallResponse { constructor(params: object); apiId: string; message: string; recordingId: string; url: string; } /** * Represents a Call * @constructor * @param {function} client - make api call * @param {object} [data] - data of call */ export class Call extends PlivoResource { constructor(client: Function, data ? : {}); id: string; /** * hangup call * @method * @promise {Boolean} return true if call hung up * @fail {Error} return Error */ hangup(): Promise < any > ; /** * transfer call * @method * @param {object} params - optional params to transfer a call * @param {string} [params.legs] aleg, bleg or both Defaults to aleg. aleg will transfer call_uuid ; bleg will transfer the bridged leg (if found) of call_uuid ; both will transfer call_uuid and bridged leg of call_uuid * @param {string} [params.alegUrl] URL to transfer for aleg, if legs is aleg or both, then aleg_url has to be specified. * @param {string} [params.alegMethod] HTTP method to invoke aleg_url. Defaults to POST. * @param {string} [params.blegUrl] URL to transfer for bridged leg, if legs is bleg or both, then bleg_url has to be specified. * @param {string} [params.blegMethod] HTTP method to invoke bleg_url. Defaults to POST. * @promise {object} return call object * @fail {Error} return Error */ transfer(params: { legs: string; alegUrl: string; alegMethod: string; blegUrl: string; blegMethod: string; }, callUUid: string): Promise < CallTransferResponse > ; /** * record call * @method * @param {object} params - to record call * @promise {object} return PlivoGenericResponse Object * @fail {Error} return Error */ record(params: object): Promise < any > ; /** * record call * @method * @param {object} params - to record call * @promise {object} return PlivoGenericResponse Object * @fail {Error} return Error */ startRecording(params: object): Promise < RecordCallResponse > ; /** * stop recording call * @method * @param {object} params - to stop recording call * @promise {object} return PlivoGenericResponse Object * @fail {Error} return Error */ stopRecording(params: object): Promise < any > ; /** * play music for call * @method * @param {string} url - url which contains audio to play for call * @param {object} optionalParams - to stop recording call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ playMusic(url: string, optionalParams: object): Promise < any > ; /** * play music for call * @method * @param {string} url - url which contains audio to play for call * @param {object} optionalParams - to stop recording call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ startPlayingMusic(urls: any, optionalParams: object): Promise < StartPlayingMusicResponse > ; /** * stop playing music for call * @method * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ stopPlayingMusic(): Promise < any > ; /** * speak text for call * @method * @param {string} text - text to speak for call * @param {object} optionalParams - to speak for call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ speakText(text: string, optionalParams: object): Promise < any > ; /** * speak text for call * @method * @param {string} text - text to speak for call * @param {object} optionalParams - to speak for call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ startSpeakingText(text: string, optionalParams: object): Promise < StartSpeakingTextResponse > ; /** * stop speaking text for call * @method * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ stopSpeakingText(): Promise < any > ; /** * Send digits on a call * @method * @param {number} digits - digits to be send * @param {object} optionalParams - to send digits for call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ sendDigits(digits: number, optionalParams: object): Promise < SendDigitsResponse > ; /** * Hangup a Call Request * @method * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ cancel(): Promise < any > ; [clientKey]: symbol; } /** * Represents a Call Interface * @constructor * @param {function} client - make api call * @param {object} [data] - data of call */ export class CallInterface extends PlivoResourceInterface { constructor(client: Function, data ? : {}); /** * Get A Call Detail * @method * @param {string} id - call uuid to get information of. * @promise {object} returns Call Object * @fail {Error} returns Error */ get(id: string): Promise < RetrieveCallResponse > ; /** * Get All Call Detail * @method * @param {object} params - params to get all call details. * @promise {object[]} returns list of Call Object * @fail {Error} returns Error */ list(params: object): Promise < ListAllCallsResponse > ; /** * Create a call * @method * @param {string} from - The phone number to be used as the caller id (with the country code).For e.g, a USA caller id number could be, 15677654321, with '1' for the country code. * @param {string} to - The regular number(s) or sip endpoint(s) to call. Regular number must be prefixed with country code but without the + sign). For e.g, to dial a number in the USA, the number could be, 15677654321, with '1' for the country code. Multiple numbers can be sent by using a delimiter. For e.g. 15677654321<12077657621<12047657621. Sip endpoints must be prefixed with sip: E.g., sip:john1234@phone.plivo.com. To make bulk calls, the delimiter < is used. For example, 15677654321<15673464321 0(in seconds). * @param {number} [params.hangupOnRing] Schedules the call for hangup at a specified time after the call starts ringing. Value should be an integer >= 0 (in seconds). * @param {string} [params.machineDetection] Used to detect if the call has been answered by a machine. The valid values are true and hangup. * @param {number} [params.machineDetectionTime] Time allotted to analyze if the call has been answered by a machine. It should be an integer >= 2000 and <= 10000 and the unit is ms. The default value is 5000 ms. * @param {string} [params.machineDetectionUrl] A URL where machine detection parameters will be sent by Plivo. This parameter should be used to make machine detection asynchronous * @param {string} [params.machineDetectionMethod] The HTTP method which will be used by Plivo to request the machine_detection_url. Defaults to POST. * @param {string} [params.sipHeaders] List of SIP headers in the form of 'key=value' pairs, separated by commas. * @param {number} [params.ringTimeout] Determines the time in seconds the call should ring. If the call is not answered within the ring_timeout value or the default value of 120s, it is canceled. * @param {string} [params.parentCallUuid] The call_uuid of the first leg in an ongoing conference call. It is recommended to use this parameter in scenarios where a member who is already present in the conference intends to add new members by initiating outbound API calls. * @param {boolean} [params.errorIfParentNotFound] if set to true and the parent_call_uuid cannot be found, the API request would return an error. If set to false, the outbound call API request will be executed even if the parent_call_uuid is not found. Defaults to false. * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ create(from: string, to: string, answerUrl: string, params ? : {}): Promise < CreateCallResponse > ; /** * Hangup A Specific Call * @method * @param {string} callUUID - call uuid to hangup call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ hangup(callUUID: string): Promise < any > ; /** * Transfer a Call * @method * @param {string} callUUID - call uuid to transfer call * @param {object} params - optional params to transfer a call * @param {string} [params.legs] aleg, bleg or both Defaults to aleg. aleg will transfer call_uuid ; bleg will transfer the bridged leg (if found) of call_uuid ; both will transfer call_uuid and bridged leg of call_uuid * @param {string} [params.alegUrl] URL to transfer for aleg, if legs is aleg or both, then aleg_url has to be specified. * @param {string} [params.alegMethod] HTTP method to invoke aleg_url. Defaults to POST. * @param {string} [params.blegUrl] URL to transfer for bridged leg, if legs is bleg or both, then bleg_url has to be specified. * @param {string} [params.blegMethod] HTTP method to invoke bleg_url. Defaults to POST. * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ transfer(callUUID: string, params: { legs: string; alegUrl: string; alegMethod: string; blegUrl: string; blegMethod: string; }): Promise < any > ; /** * Record a Call * @method * @param {string} callUUID - call uuid to record call * @param {object} optionalParams - optional params to record a call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ record(callUUID: string, optionalParams: object): Promise < any > ; /** * Stop Recording a Call * @method * @param {string} callUUID - call uuid to stop recording a call * @param {object} optionalParams - optional params to stop recording a call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ stopRecording(callUUID: string, optionalParams: object): Promise < any > ; /** * Play a music file * @method * @param {string} callUUID - call uuid to play music file * @param {string} url - A single URL or a list of comma separated URLs linking to an mp3 or wav file. * @param {object} optionalParams - optional params to play music file. * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ playMusic(callUUID: string, urls: any, optionalParams: object): Promise < any > ; /** * Stop Playing a music file * @method * @param {string} callUUID - call uuid to stop plaing music file * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ stopPlayingMusic(callUUID: string): Promise < any > ; /** * Speak text during a call * @method * @param {string} callUUID - call uuid to speak text during a call * @param {string} text - text to be played. * @param {object} optionalParams - optional params to speak text during a call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ speakText(callUUID: string, text: string, optionalParams: object): Promise < any > ; /** * Stop Speaking text during a call * @method * @param {string} callUUID - call uuid to stop speaking text during a call * @param {object} optionalParams - optional params to stop speaking text during a call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ stopSpeakingText(callUUID: string): Promise < any > ; /** * Send digits on a call * @method * @param {string} callUUID - call uuid to send digits on a call * @param {number} digits - digits to be send * @param {object} optionalParams - optional params to send digits * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ sendDigits(callUUID: string, digits: number, optionalParams: object): Promise < any > ; /** * Hangup a call request * @method * @param {string} callUUID - call uuid to send digits on a call * @promise {object} returns PlivoGenericResponse Object * @fail {Error} returns Error */ cancel(id: string): Promise < any > ; listLiveCalls(params: object): Promise < any > ; getLiveCall(id: string): Promise < any > ; listQueuedCalls(): Promise < any > ; getQueuedCall(id: string): Promise < any > ; [clientKey]: symbol; [liveCallInterfaceKey]: LiveCallInterface; [queuedCallInterfaceKey]: QueuedCallInterface; } export class LiveCallResource extends PlivoResource { constructor(client: Function, data ? : {}); id: string; [clientKey]: symbol; } export class QueuedCallResource extends PlivoResource { constructor(client: Function, data ? : {}); id: string; [clientKey]: symbol; } import { PlivoResource } from "../base"; declare const clientKey: unique symbol; import { PlivoResourceInterface } from "../base"; declare const liveCallInterfaceKey: unique symbol; /** * Represents a LiveCall interface * @constructor * @param {function} client - make api call * @param {object} [data] - data of call */ declare class LiveCallInterface extends PlivoResourceInterface { constructor(client: Function, data ? : {}); [clientKey]: symbol; } declare const queuedCallInterfaceKey: unique symbol; /** * Represents a QueuedCall interface * @constructor * @param {function} client - make api call * @param {object} [data] - data of call */ declare class QueuedCallInterface extends PlivoResourceInterface { constructor(client: Function, data ? : {}); get(id: string): Promise < GetQueuedCallResponse > ; list(): Promise < ListAllQueuedCalls > ; [clientKey]: symbol; } export {};