Diferencia entre revisiones de «Monday.com»
(→Ejemplo práctico) |
(→Ejemplo práctico) |
||
| Línea 13: | Línea 13: | ||
<?php | <?php | ||
| − | |||
$llamante=$_GET["llamante"]; | $llamante=$_GET["llamante"]; | ||
$tipo=$_GET["tipo"]; | $tipo=$_GET["tipo"]; | ||
$duracion=$_GET["duracion"]; | $duracion=$_GET["duracion"]; | ||
$fecha=$_GET["fecha"]; | $fecha=$_GET["fecha"]; | ||
| − | |||
//este token es un identificador que se genera en el propio monday | //este token es un identificador que se genera en el propio monday | ||
$token ="XXXXXXXXXXXXX"; | $token ="XXXXXXXXXXXXX"; | ||
| − | + | //vamos a crear un item nuevo por cada llamada que llegue a la centralita, si es de la extension 1 lo ponemos en un tablero y si es de la 2 en otro | |
| − | //vamos a crear un item nuevo por cada llamada que llegue a la centralita, si es de la extension 1 lo ponemos en un tablero y si es de la 2 en otro | + | //identificador del tablero donde vamos a meter el item |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | //identificador del tablero donde vamos a meter el item | ||
$boardid1="1226936037"; | $boardid1="1226936037"; | ||
| + | //creamos el item en Monday | ||
| + | $ch = curl_init("https://api.monday.com/v2"); | ||
| − | + | //curl_setopt($ch, CURLOPT_FILE, $fp); | |
| − | + | curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: $token","Content-Type:application/json")); | |
| − | |||
| − | //curl_setopt($ch, CURLOPT_FILE, $fp); | ||
| − | curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: $token","Content- | ||
| − | |||
curl_setopt($ch, CURLOPT_POST, 1); | curl_setopt($ch, CURLOPT_POST, 1); | ||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | ||
//formamos el json | //formamos el json | ||
$titulo = "Llamada del ".$llamante; | $titulo = "Llamada del ".$llamante; | ||
| − | |||
//adaptamos la fecha al formato de monday.com | //adaptamos la fecha al formato de monday.com | ||
$anio = substr($fecha, 0, 4); | $anio = substr($fecha, 0, 4); | ||
| Línea 68: | Línea 38: | ||
$minutos = substr($fecha, 10, 2); | $minutos = substr($fecha, 10, 2); | ||
$segundos = substr($fecha, 12, 2); | $segundos = substr($fecha, 12, 2); | ||
| − | |||
| − | |||
$solofecha = $anio."-".$mes."-".$dia; | $solofecha = $anio."-".$mes."-".$dia; | ||
$solohora = $hora.":".$minutos.":".$segundos; | $solohora = $hora.":".$minutos.":".$segundos; | ||
$fechaprep = "{\\\"date4\\\":{\\\"date\\\":\\\"$solofecha\\\",\\\"time\\\":\\\"$solohora\\\"}"; | $fechaprep = "{\\\"date4\\\":{\\\"date\\\":\\\"$solofecha\\\",\\\"time\\\":\\\"$solohora\\\"}"; | ||
| − | |||
if ($tipo == "llamada_perdida") | if ($tipo == "llamada_perdida") | ||
$estado = "\\\"status\\\": {\\\"label\\\": \\\"Stuck\\\"}}"; | $estado = "\\\"status\\\": {\\\"label\\\": \\\"Stuck\\\"}}"; | ||
| Línea 79: | Línea 46: | ||
$estado = "\\\"status\\\": {\\\"label\\\": \\\"Done\\\"}}"; | $estado = "\\\"status\\\": {\\\"label\\\": \\\"Done\\\"}}"; | ||
$accion = "mutation {create_item (board_id:$boardid1, item_name:\"$titulo\", column_values:\"$fechaprep,$estado\"){id}}"; | $accion = "mutation {create_item (board_id:$boardid1, item_name:\"$titulo\", column_values:\"$fechaprep,$estado\"){id}}"; | ||
| − | |||
$data = array( | $data = array( | ||
"query" => $accion | "query" => $accion | ||
); | ); | ||
| − | |||
$json = json_encode($data); | $json = json_encode($data); | ||
| − | |||
$jsonprint = json_encode($data, JSON_PRETTY_PRINT); | $jsonprint = json_encode($data, JSON_PRETTY_PRINT); | ||
| − | |||
| − | |||
curl_setopt($ch, CURLOPT_POSTFIELDS, $json); | curl_setopt($ch, CURLOPT_POSTFIELDS, $json); | ||
| − | |||
$salida = curl_exec($ch); | $salida = curl_exec($ch); | ||
curl_close($ch); | curl_close($ch); | ||
| − | |||
?> | ?> | ||
Revisión del 13:50 29 abr 2021
Si usted utiliza Monday.com puede disponer de las llamadas de su centralita utilizando nuestros webhooks y con la API de Monday
Sumario
¿Qué necesita?
Solo necesita obtener el token para utilizar la API y un programa intermedio que realice las acciones necesarios cuando llega una llamada, se cuelga o se realiza.
Ejemplo práctico
Vamos crear un item por cada llamada entrante a la extensión 2 (Técnicos) en el tablero consultas técnicas.
Programamos un webhook cuando una llamada se cuelga o es perdida en la extensión 2
<?php $llamante=$_GET["llamante"]; $tipo=$_GET["tipo"]; $duracion=$_GET["duracion"]; $fecha=$_GET["fecha"]; //este token es un identificador que se genera en el propio monday $token ="XXXXXXXXXXXXX"; //vamos a crear un item nuevo por cada llamada que llegue a la centralita, si es de la extension 1 lo ponemos en un tablero y si es de la 2 en otro //identificador del tablero donde vamos a meter el item
$boardid1="1226936037";
//creamos el item en Monday
$ch = curl_init("https://api.monday.com/v2");
//curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Authorization: $token","Content-Type:application/json"));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//formamos el json
$titulo = "Llamada del ".$llamante;
//adaptamos la fecha al formato de monday.com
$anio = substr($fecha, 0, 4);
$mes = substr($fecha, 4, 2);
$dia = substr($fecha, 6, 2);
$hora = substr($fecha, 8, 2);
$minutos = substr($fecha, 10, 2);
$segundos = substr($fecha, 12, 2);
$solofecha = $anio."-".$mes."-".$dia;
$solohora = $hora.":".$minutos.":".$segundos;
$fechaprep = "{\\\"date4\\\":{\\\"date\\\":\\\"$solofecha\\\",\\\"time\\\":\\\"$solohora\\\"}";
if ($tipo == "llamada_perdida")
$estado = "\\\"status\\\": {\\\"label\\\": \\\"Stuck\\\"}}";
else
$estado = "\\\"status\\\": {\\\"label\\\": \\\"Done\\\"}}";
$accion = "mutation {create_item (board_id:$boardid1, item_name:\"$titulo\", column_values:\"$fechaprep,$estado\"){id}}";
$data = array(
"query" => $accion
);
$json = json_encode($data);
$jsonprint = json_encode($data, JSON_PRETTY_PRINT);
curl_setopt($ch, CURLOPT_POSTFIELDS, $json);
$salida = curl_exec($ch);
curl_close($ch);
?>
