Api click 2 dial

Bonjour, pouvez vous m’indiquer comment obtenir le “line_id”: X, pour initier mon call.
curl -X ‘POST’
https://mon.serveur.fr/api/calld/1.0/users/me/calls
-H ‘accept: application/json’
-H ‘Content-Type: application/json’
-H ‘X-Auth-Token: mon-token’
-d ‘{
“all_lines”: true,
“auto_answer_caller”: true,
“extension”: “0122334455”,
“from_mobile”: true,
“line_id”: 15,
“variables”: {}
}’

Merci.

je me réponds : /api/calld/1.0/lines
y a t’il une autre façon ?
car la encore le probleme est que ça recupere toutes les lignes du tenant, j’ai besoin de connaitre uniquement la ou les lignes qui correspondent à mon token du user.

Hello,

quand tu te connecte, tu récupères les informations.

onglet “réponse”:

disons que tu as enregistré cela dans un objet appelé “user”.
tu trouvera ton line_id dans:

user.profile.lines[0].id

je conseille fortement de choisir des solutions en Js qui permettent l’usage du SDK, car il est vraiment puissant, et facilite beaucoup la gestion des events, le renouvellement des tokens, etc …

merci pour tes info, je vais voir comment ça peut etre faisable, car je suis parti sur petite appli cti en python. l’intégration de js c’était pas prévu.

Si tu retourne du html, alors tu peux jouer du js.

Mais pas sûr pour le coup.

Reste en python. Tu peux tout de même garder le line_id en mémoire avec python et faire ton curl.

Tu peux regarder wazo-ui et wazo-confd pour t’inspirer.

Bref, ça dépend de ce que tu souhaites faire.

De mémoire, il existe un github softphone exemple en js vanilla.

Je voulais faire un softphone minimal en react en open source, mais j’ai trop d’idées et de choses à faire. Je ne peux pas m’éparpiller partout.

Si jamais tu veux poster une image du résultat, ça peut intéresser et inspirer des gens !

Cheers

c’est noté, merci…
à plus tard.

bon, j’ai beau tourner ça dans tous les sens je ne vois comment récupérer le line_id de mon user authentifié avec curl.
/api/calld/1.0/lines renvoi ```
“items”: [
{
“id”: 1,
“name”: “4ZaXlglu”,
“technology”: “sip”,
“registered”: true,
“current_call_count”: 0
},
{
“id”: 2,
“name”: “jZXgbtoU”,
“technology”: “sip”,
“registered”: false,
“current_call_count”: 0
}
je ne parviens pas a trouver de relation entre mon login ou uid ou autre puis avec id ou name.
si quelqu’un a une autre piste je veux bien.
merci.

Salut,

Je ne suis pas devant un pc, mais normalement tu as tout sur l’api du user quand tu fais un get dessus. Tu devrais avoir plein d’infos sur ton user. L’api que tu donnes est orienté plus pour une utilisation configuration que end-user.

Sylvain

salut Sylvain,
je dois mal m’y prendre mais non je ne trouve pas le info concernant les lignes du user.
cdt.
Vassili

petite solution crado de contournement est de déclarer dans la fiche de l’utilisateur son extension local ex.8000 en tant que “Numéro de téléphone portable” puis conserver “from_mobile”: true et la ça dial et ça call.

Salut,
quand je fais un GET sur /users/{user_uuid} voila le résultat :
{
“username”: “mon@mail.fr”,
“uuid”: “c57xxxx-d956-41c8-1111-xx0489xx9x60”,
“enabled”: true,
“emails”: [
{
“uuid”: “bf984xx-xxx9-4af8-9f05-549x4b3xx85x”,
“address”: “mon@mail.fr”,
“main”: true,
“confirmed”: true
}
],
“firstname”: “Bon”,
“lastname”: “Eponge”,
“purpose”: “user”,
“tenant_uuid”: “e9e00000-18ac-45xx-xx16-5bc1e6f00000”,
“authentication_method”: “default”
}
aucun moyen de savoir quelle est la ligne du user.
si tu as une idée …

Il faut le faire sur confd et non sur auth. Là tu ne récupères que les informations lié à l’authentification.

hmmm,
désolé pour le dérangement, si j’étais plus attentif j’aurai remarqué que l’url change.
merci.

1 Like

Bonjour Sylvain,
je suis toujours sur l’amélioration de notre CTI et nous coinçons sur click to answer.
pour les poste SIP ça fonctionne →

http://openapi.wazo.community/1.0/users/me/calls/0000000000000000000/answer 

mais on ne trouve rien pour décrochage de WazoDesktop. Est ce possible ?
cdt,
V.

il te faut récupérer des events déjà

Wazo.Phone.on(Wazo.Phone.ON_CALL_INCOMING, incomingCallModal);
Wazo.Phone.on(Wazo.Phone.ON_CALL_ACCEPTED, onCallAccepted);
Wazo.Phone.on(Wazo.Phone.ON_CALL_ENDED, (data) => onCallEnded(data));
Wazo.Websocket.on("call_created", (data) => onCallCreated(data));
Wazo.Websocket.on("call_updated", (data) => onCallUpdated(data));
Wazo.Websocket.on("call_answered", onCallAnswered);

pour lancer un call
await Wazo.Phone.call(number, video);

je te conseille forement d’utiliser le wazo-js-sdk.

à minima, va voir le code du sdk, si tu veux comprendre et voir les urls

Et vu que le topic est en “solved”, il aurait été bien de refaire un topic, en précisant bien ta demande !

Bonjour Julien,
merci pour ta reponse, en realité mon probleme est que dans l’envirenement TSE ou est executé notre CTI nous ne pouvons pas utiliser Wazo Desktop. WD est installé en local sur ma machine client et devrait etre decroché à partir d’un serveur TSE distant, ce qui fonctionne parfaitement avec un poste SIP. Je crains que la solution SDK ne nous apporte pas une reponse dans notre cas particulier.

Faut voir comment est ton CTI.

L’utilisateur lance bien un appel API depuis une interface.

Tu peux faire des curl mais ça va être compliqué pour gérer les états liés aux événements.

Le truc est de construire une appli ou une extension et de l’intégrer à ton environnement.

Ça peut être un exécutable, une extension chrome, une application Web, un module javascript que tu “insere” dans une app Web existante.

Si tu veux “voir” un peu, écris moi en privé.

On peut faire un meeting avec partage de mon écran.

C’est juste une aide prise sur mon temps, je n’aurai rien à vendre, mais peut-être que je pourrais te donner un code source pour bien démarrer.

Cheers

Bonjour Julien,
extraordinaire ta proposition de partage, merci !