Agregar Agente a Campaña
Cuando la integración lo requiere se pueden agregar agentes a una campaña especifica por medio de esta API, a continuación mostramos el como realizar esta acción.
Usted puede verificar la Colección de Postman para ver un ejemplo y probar con su instancia.
Todos los datos que esten encerrados por "{{ }}" son valores que serán reemplazado con los datos del propio cliente y/o la instancia correspondiente.
HTTP Request
Metodo | Recurso |
POST | /Integra/resources/queues/addqueuemember |
Request Headers
Clave | Valor |
Content-Type | application/x-www-form-urlencoded |
Authorization | Basic Token |
Request Body
Parametro | Tipo |
Descripción |
queuemember | Texto (String) | Array de objetos, en donde se pueden agregar varios usuarios a varias campañas, por cada objeto es un usuario agregado a una campaña. |
Ejemplo JSON
Los datos agregados en el siguiente ejemplo son meramente demostrativos, tendrá que reemplazar los datos con los correspondiente a su instancia.
[
{
"membername": "{{UserName}}",
"queueName": "{{CampaignName}}",
"interface1": "SIP/{{AgentPhoneNumber}}",
"penalty": 0,
"paused": 0
}
]
Descripción de Objeto JSON
En el JSON todos las Key deben estar agregadas, si el campo menciona que no es oblicatorio puede ser agregado con un valor vacio.
Parametro | Tipo |
Descripción |
UserName | Texto (String) | Nombre de usuario del agente |
CampaignName | Texto (String) | Nombre de la campaña a la cual se desea agregar el usuario |
PhoneNumber
|
Texto (String) | Numero de teléfono del agente |
Ejemplos de Código
Puede copiar los siguientes ejemplos de codigo y reemplazar las variables "{{variable}}" con los datos correctos.
HTTP
POST /Integra/resources/queues/addqueuemember HTTP/1.1
Host: {{domain}}.ucontactcloud.com
Content-Type: application/x-www-form-urlencoded
Authorization: Basic {{Token}}
Content-Length: 221
queuemember=[{"membername":"{{UserName}}","queueName":"{{CampaignName}}","interface1":"SIP/{{AgentPhoneNumber}}","penalty":0,"paused":0}]
cURL
curl --location --globoff 'https://{{domain}}.ucontactcloud.com/Integra/resources/queues/addqueuemember' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic {{Token}}' \
--data-urlencode 'queuemember=[{"membername":"{{UserName}}","queueName":"{{CampaignName}}","interface1":"SIP/{{AgentPhoneNumber}}","penalty":0,"paused":0}]'
JavaScript
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/x-www-form-urlencoded");
myHeaders.append("Authorization", "Basic {{Token}}");
const urlencoded = new URLSearchParams();
urlencoded.append("queuemember", "[{\"membername\":\"{{UserName}}\",\"queueName\":\"{{CampaignName}}\",\"interface1\":\"SIP/{{AgentPhoneNumber}}\",\"penalty\":0,\"paused\":0}]");
const requestOptions = {
method: "POST",
headers: myHeaders,
body: urlencoded,
redirect: "follow"
};
fetch("https://{{domain}}.ucontactcloud.com/Integra/resources/queues/addqueuemember", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
JQuery
var settings = {
"url": "https://{{domain}}.ucontactcloud.com/Integra/resources/queues/addqueuemember",
"method": "POST",
"timeout": 0,
"headers": {
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Basic {{Token}}"
},
"data": {
"queuemember": "[{\"membername\":\"{{UserName}}\",\"queueName\":\"{{CampaignName}}\",\"interface1\":\"SIP/{{AgentPhoneNumber}}\",\"penalty\":0,\"paused\":0}]"
}
};
$.ajax(settings).done(function (response) {
console.log(response);
});
C#
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://{{domain}}.ucontactcloud.com/Integra/resources/queues/addqueuemember");
request.Headers.Add("Authorization", "Basic {{Token}}");
var collection = new List<KeyValuePair<string, string>>();
collection.Add(new("queuemember", "[{\"membername\":\"{{UserName}}\",\"queueName\":\"{{CampaignName}}\",\"interface1\":\"SIP/{{AgentPhoneNumber}}\",\"penalty\":0,\"paused\":0}]"));
var content = new FormUrlEncodedContent(collection);
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Java
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody body = RequestBody.create(mediaType, "queuemember=[{\"membername\":\"{{UserName}}\",\"queueName\":\"{{CampaignName}}\",\"interface1\":\"SIP/{{AgentPhoneNumber}}\",\"penalty\":0,\"paused\":0}]");
Request request = new Request.Builder()
.url("https://{{domain}}.ucontactcloud.com/Integra/resources/queues/addqueuemember")
.method("POST", body)
.addHeader("Content-Type", "application/x-www-form-urlencoded")
.addHeader("Authorization", "Basic {{Token}}")
.build();
Response response = client.newCall(request).execute();
Python
import http.client
conn = http.client.HTTPSConnection("{{domain}}.ucontactcloud.com")
payload = 'queuemember=[{"membername":"{{UserName}}","queueName":"{{CampaignName}}","interface1":"SIP/{{AgentPhoneNumber}}","penalty":0,"paused":0}]'
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Authorization': 'Basic {{Token}}'
}
conn.request("POST", "/Integra/resources/queues/addqueuemember", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
HTTP Response
Las respuestas en las que se obtubo error por parte de los datos enviados por lo general serán entregados con codigo HTTP 200 con un "0" o "1" en el body de la respuesta, por lo tanto hay que tener cuidado al validar por el HTTP Code Response
La respuesta recibida es de tipo texto, por lo cual tendrá que convertirla a JSON para poder visualizar los datos correctamente.
Respuesta exitosa
1
Respuesta de error
0