Saltar a: navegación, buscar

Monday.com

Revisión del 13:43 29 abr 2021 de Dcruz (discusión | contribuciones) (Programamos un webhook cuando una llamada se cuelga o es perdida en la extensión 2)

Si usted utiliza Monday.com puede disponer de las llamadas de su centralita utilizando nuestros webhooks y con la API de Monday

¿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 = "eyJhbGciOiJIUzI1NiJ9.eyJ0aWQiOjEwNzI5MTYxOCwidWlkIjoyMTU5NzQ5NCwiaWFkIjoiMjAyMS0wNC0yMVQwNzo1NTo1OS42MjhaIiwicGVyIjoibWU6d3JpdGUiLCJhY3RpZC\ I6ODc4MTIwNSwicmduIjoidXNlMSJ9.yoE_I_2tM1CSlCeUxF3nc4oACo2q2EEkOnSjBC023kQ";

//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); <?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 = "eyJhbGciOiJIUzI1NiJ9.eyJ0aWQiOjEwNzI5MTYxOCwidWlkIjoyMTU5NzQ5NCwiaWFkIjoiMjAyMS0wNC0yMVQwNzo1NTo1OS42MjhaIiwicGVyIjoibWU6d3JpdGUiLCJhY3RpZC\ I6ODc4MTIwNSwicmduIjoidXNlMSJ9.yoE_I_2tM1CSlCeUxF3nc4oACo2q2EEkOnSjBC023kQ";

//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);

?>

Código del servidor

Resultado