Avec l’aide de la communauté et de nos experts : demandez des informations, trouvez des solutions et partagez des astuces sur les offres et applications Keyyo.


Poster une réponse 
 
Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Conflits entre API SERVER & API CTI JS ?
Conflits entre API SERVER & API CTI JS ?
11/06/2019, 17:30
Message : #1
Bonjour,

J'ai connecté votre API ServerSide (webhook) à mon serveur ainsi que votre API CTI JS.

Afin de pouvoir lancer des appels depuis le site ainsi qu'y répondre j'ai mit le popup suivant en place : screenshot

le bouton "Répondre" trigger la fonction call.answer de votre librairie JS, le bouton "Refuser" trigger la fonction call.reject.

Le problème étant que en cliquant sur l'un de ces bouton, votre webhook m'envoie des données bizarre/erroné, du type screenshot, nous pouvons voir que les 3 numéro sont les même ce qui est impossible, dans l'ordre les numéro sont :
1. Numéro de la ligne keyyo, 2. Numéro appelant, 3. Numéro qui reçois l'appel.

Le webhook m'envoie 3 appels différent juste pour 1 seul appel, avec 3 CALLREF différent, et ce n'est pas gérable.

Aussi, les CALLREF du webhook et de l'API CTI ne sont pas les même, ce qui est compliqué pour les mettre en correspondance dans la base, pour le moment j'utilise la date de début et de fin de l'appel mais ce n'est pas très efficace car il y aussi des écart de secondes entre les date du webhook et celles de l'api CTI.

Comment faire ?

Autre question, j'ai un bouton "Appeler le client" qui trigger la fonction cti.dial de votre CTI JS, ça marche, mais comment annuler l'appel en cour de route ?
J'ai un bouton "Annuler l'appel", j'ai essayé de le lier à la fonction call.hang_up ainsi que call.reject, mais ça ne marche pas, je reçois un message d'erreur dans ma console me disant que l'action n'est pas autorisé ou hors de contexte, alors comment comment annuler un appel lancer depuis le CTI JS : screenshot

Autre question, lorsqu'un appel est en cours, cette popup apparait: screenshot mais le bouton raccrocher qui trigger la fonction call.hang_up ne marche pas, je recois l'erreur suivante: screenshot

Autre question, est ce que le webhook pourrait également m'envoyer un paramètre MISSED ? j’espère que cela est possible mais dans votre doc ServerSide rien n'est mentionné à ce sujet, ce serait très pratique car il est difficile de différencier un appel manqué d'un appel à succès car dans les 2 cas ces appels passent par les status SETUP, CONNECT & RELEASE. Un status MISSED serait le bienvenue comme pour l'API CTI JS.

Merci de votre aide.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTIJS ?
12/06/2019, 14:31
Message : #2
Bonjour,

Pour le premier point, le contrôle des appels par l'API nécessite des manipulations côté téléphonie plus complexes qu'il n'y paraît.
Par exemple, pour décrocher un appel à distance, le CTI annule l'appel initial (appel 1), appelle la ligne Keyyo à la manière d'un click-to-call (appel 2) et transfert automatiquement vers l'appelant initial (appel 3).

Concernant le fait que les callrefs des 2 APIs ne correspondent pas, cela fait partie d'une évolution l'étude.

Par ailleurs, il est possible d'annuler un appel sortant une fois que la ligne de l'appelé sonne : reportez-vous à la section "Handle call events" pour vous abonnez aux évènements sur un appel et quand le setup se déclenche, c'est à ce moment là que vous pouvez raccrocher l'appel pour l'annuler.

Pour le raccroché, êtes-vous sûr que l'objet call est bien celui de l'appel à terminer ?
Pour rappel, on récupère soit un appel/call donné à partir de son callref (cti.get_call) soit la liste des appels/calls (cti.get_calls).

Enfin, il n'y a pas de N_TYPE "MISSED" car un appel non répondu déclenche uniquement deux notifications : 1 SETUP et 1 RELEASE.
Si le problème persiste, pouvez-vous nous envoyer un horodatage (appelant, appelé, jour et hh :mm : ss) par le lien "Contact" en bas du forum ?

Cordialement.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTI JS ?
14/06/2019, 15:21
Message : #3
Bonjour,

En effet si un client appel sur la ligne KEYYO alors oui il passe seulement par SETUP et RELEASE mais si la ligne KEYYO appel le client
lorsque l'appel arrive sur répondeur du client N_TYPE passe par le status CONNECT, je ne peux donc pas différencier un appel manqué d'un appel réussi du coté client.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTI JS ?
17/06/2019, 09:39
Message : #4
Bonjour,

Dans ce cas, d'un point de vue téléphonie, il s'agit bien d'un appel répondu car décroché par la messagerie vocale.

Cordialement.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTI JS ?
17/06/2019, 10:25
Message : #5
Bonjour,

Quand un appel arrive sur messagerie alors la personne appelé n'a pas répondu et donc à manqué un appel... mais d'accord.
Et ce qui est bizarre c'est que si le client appel et qu'il tombe sur une messagerie keyyo, alors l'appel est missed mais si la ligne keyyo appel et tombe sur la messagerie du client alors l'appel passe n'est pas missed..

Question concernant votre cti.send_message, la fonction me retourne toujours 'undefined' dans la console, voici un screenshot de mon code : screenshot sendmessage

Même si je lui passe un numéro et un message prédéfini cela ne marche pas.

Pourquoi ?

Merci.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTI JS ?
19/06/2019, 11:59
Message : #6
Bonjour,

Et il possible de passer des arguments personnaliser lors d'une notification d'appel ?

Je m'explique, je voudrais envoyer en POST un paramètre perso, en l'occurence un id de membre ou callref custom que le webhook me renvoie et que je peux recuperer pour mieux pouvoir manipuler mes données en base.

Est ce possible ?

Merci.
Citer ce message dans une réponse
RE: Conflits entre API SERVER & API CTI JS ?
19/06/2019, 16:08
Message : #7
Bonjour,


Auriez-vous des détails sur cette erreur ? Nous avons tenté de reproduire l'erreur, sans succès.

(17/06/2019 10:25)julien-gc a écrit :  Question concernant votre cti.send_message, la fonction me retourne toujours 'undefined' dans la console, voici un screenshot de mon code : screenshot sendmessage

Même si je lui passe un numéro et un message prédéfini cela ne marche pas.

Pourquoi ?

Merci.
Citer ce message dans une réponse
Poster une réponse 


Aller à :


Utilisateur(s) parcourant ce sujet : 4 visiteur(s)

Contact | Keyyo | Retourner en haut | Retourner au contenu | Version bas-débit (Archivé) | Syndication RSS