ami-functions
Version:
Asterisk Manager Functions
194 lines • 6.66 kB
TypeScript
/**
* @exports
* @type {AMI}
* @param {string} port Puerto de conexión.
* @param {string} host Host de conexión.
* @param {string} user Usuario AMI.
* @param {string} password Contrasenia AMI.
* @param {boolean} event Eventos AMI.
*/
export declare type AMI = {
port: string;
host: string;
user: string;
password: string;
event: boolean;
};
/**
* @exports
* @type {PBXExtension}
* @param {string} type Tipo de tecnologia (SIP,IAX2,Etc.).
* @param {string} extension Numero de extension.
* @param {string} status Estatus de la extension.
*/
export declare type PBXExtension = {
response: string;
data: {
error: any;
type: string;
extension: string;
status: string;
};
};
/**
* Originar llamada para iniciar session en la cola de llamadas.
* @param {AMI} CONN Objeto con parametros de conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} QUEUES Colas de llamada (MQ).
* @param {string} TYPE Tipo de tecnologia (SIP,IAX2,Etc.).
* @param {string} SECRET Contrasenia en MD5.
* @param {string} PAUSE Indica si inicia en pausa el agente.
* @returns Respuesta de la ejecucion AMI.
*/
export declare function originateCall(CONN: AMI, AGENT: string, EXT: string, QUEUES: string, TYPE: string, SECRET: string, PAUSE: string): {
response: string;
data: any;
} | undefined;
/**
* Agrega una extension a la cola de llamadas.
* @async
* @exports
* @param {AMI} CONN Objeto con parametros de conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} QUEUE Cola de llamada (MQ).
* @param {string} TYPE_SESSION Tipo de Session API || Manual.
* @param {string} PAUSE Indica si inicia en pausa el agente.
*/
export declare function queueAdd(CONN: AMI, UNIQUEID: string, AGENT: string, EXT: string, QUEUE: string, PAUSE: string, TYPE_SESSION: string): Promise<{
response: string;
data?: undefined;
} | {
response: string;
data: any;
}>;
/**
* Pausar una extension de la cola de llamadas.
* @async
* @exports
* @param {AMI} CONN Conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} TYPE Tipo de tecnologia (SIP,IAX2,Etc.).
* @param {boolean} PAUSE Selecciona el estatus de pausa.
* @param {string} REASON Motivo de la pausa.
* @returns
*/
export declare function queuePause(CONN: AMI, AGENT: string, EXT: string, TYPE: string, PAUSE: boolean, REASON: string): Promise<{
response: string;
data?: undefined;
} | {
response: string;
data: any;
}>;
/**
* Remueve una extension de la cola de llamadas.
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} QUEUE Cola de llamadas.
* @param {string} TYPE_SESSION Tipo de session (API/MANUAL).
*/
export declare function queueRemove(CONN: AMI, AGENT: string, EXT: string, QUEUE: string, TYPE_SESSION: string): Promise<{
response: string;
data?: undefined;
} | {
response: string;
data: any;
}>;
/**
* Estatus de la extension
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @return {PBXExtension} pbx_extension.
*/
export declare function extensionState(CONN: AMI, AGENT: string, EXT: string): Promise<PBXExtension>;
/**
* Generar un log en queuelog de Asterisk PBX.
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} QUEUE Cola de llamadas.
* @param {string} EVENT Evento a registrar.
* @param {string} TYPE_SESSION Tipo de session (API/MANUAL).
* @param {string} TYPE Tipo de tecnologia (SIP,IAX2,Etc.).
*/
export declare function queueLog(CONN: AMI, AGENT: string, EXT: string, QUEUE: string, EVENT: string, TYPE_SESSION: string, TYPE: string): Promise<{
response: string;
data?: undefined;
} | {
response: string;
data: any;
}>;
/**
* Crear o actualizar un registro en BBDD Asterisk.
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} FAMILY Familia del objeto a modificar.
* @param {string} KEY Llave.
* @param {string} VALUE Valor a modificar.
*/
export declare function BDPut(CONN: AMI, FAMILY: string, KEY: string, VALUE: string): Promise<any>;
/**
* Eliminar un registro en BBDD Asterisk.
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} FAMILY Familia del objeto a modificar.
* @param {string} KEY Llave.
* @param {string} VALUE Valor a modificar.
*/
export declare function BDDel(CONN: AMI, FAMILY: string, KEY: string, VALUE: string): Promise<any>;
/**
* Obtener un registro en BBDD Asterisk.
* @async
* @export
* @param {AMI} CONN Conexion AMI.
* @param {string} FAMILY Familia del objeto a modificar.
* @param {string} KEY Llave.
* @param {string} VALUE Valor a modificar.
*/
export declare function BDGet(CONN: AMI, FAMILY: string, KEY: string, VALUE: string): Promise<any>;
/**
* Originar llamada Click To Call.
* @param {AMI} CONN Objeto con parametros de conexion AMI.
* @param {string} AGENT Agente telefonico.
* @param {string} EXT Extension registrada en el PBX.
* @param {string} TYPE Tipo de tecnologia (SIP,IAX2,Etc.).
* @param {string} NUM Numero de 10 digitos a marcar.
* @returns Respuesta de la ejecucion AMI.
*/
export declare function originateClicToCall(CONN: AMI, AGENT: string, EXT: string, PREFIX: string, NUM: string): {
response: string;
data: any;
} | undefined;
/**
* Funcion para obtener la variable de un canal.
* @async
* @export
* @param {AMI} CONN
* @param {string} CHANNEL
* @param {string} VARIABLE
*/
export declare function getVariable(CONN: AMI, CHANNEL: string, VARIABLE: string): Promise<any>;
/**
*Transferencia de llamada
* @async
* @export
* @param {AMI} CONN conexion AMI
* @param {string} TRANSFER_TYPE Tipo de transferencia Atxfer o Redirect
* @param {string} CHANNEL_NAME Nombre del canal.
* @param {string} EXT Extension a tranferir.
* @return {*} {Promise<void>}
*/
export declare function trasfer(CONN: AMI, TRANSFER_TYPE: string, CHANNEL_NAME: string, EXT: string): Promise<void>;
//# sourceMappingURL=index.d.ts.map