SIP Protocol?

Bonjour,
je dois communiquer avec un PBX via le réseau ethernet IP (central téléphonique interne) pour récupérer des infos et/ou modifier l’état de téléphones IP / DECT.
Il existe à priori un protocole standardisé qui s’appelle SIP et qui utilise du XML.
(pour le XML pas de problème depuis 4D, mais comment communiquer ?)

Quelqu’un a-t-il déjà utilisé SIP ?
Existe-t-il peut-être des composants pour cela ?
Merci d’avance

there is a tech note from 10 years ago

https://kb.4d.com/assetid=76088

there are probably better ways to do this today.

Hi,

I forgot (or I missed) this tech note. As you said, it is old (v12, i.e. before 4D had HTTP client commands)…

I just googled asterisk + API and I found this :

https://wiki.asterisk.org/wiki/display/AST/Interfaces

https://wiki.asterisk.org/wiki/pages/viewpage.action?pageId=29395573

Hi thank you, this will perhaps be a solution.
I will study it.

My client uses a 3CX solution, but for a while they stopped their server API, perhaps for security reasons i don’t know really.

Users often forget to set their phone status to “active” on morning when they come to office and it will be nice to automate it when they log in to 4D Application.

I hope i will find there a solution to make calls or get numbers from callers to open automatically the customer window with the record loaded if exists.

Thank you both for your help.
I will post my results if i get some :wink:

https://forums.4d.com/Post/FR/31347006/0/0/make calls works already> but for the rest…

Clients are on Mac or PC ? On Mac, you just have to open the 3CX client with your session :doubt:

Hi Manuel,

thanks for your answer.

Make calls as it looks in the linked post, are made on the computer with 4D (or systemnwith open Url) and I want them to be done with the IP phone. Some IP phone cable connected have their own web server and accepts url calls to do some actions (for ex. Yelling phones). But DECT phones (unwired) cannot be directly called because you have to communicate with a base which often is not accepting so requests.

Opening 3CX Webclient and change the status can easily be manually done actually, but users quite always forget to make it, and this was the reason of my question.

Using Asterisk could be a answer because it is very expandable and has a lot of extensions, but we can’t change the whole Phone System (3CX) to this new one even if it is open source, this will take to much time and costs to configure it.

Actually you are right, I don’t use any phone anymore, I use a Mac client Application for 3CX called “3CXPhone” (NOT the Webclient) and a simple headset connected to my computer. (all is in my computer log files, statistics, historic of each call, etc…)

The good thing is that my phone work and follow me everywhere :!: A good point for nowaday “télétravailler” :wink:

This application is launched automatically when I start my mac session.
And by default my status is “disponible”.

And the cherry on the cake, it works very well for making call with 4D apps (on Mac & PC) :-).

Promise I am not from 3CX :mrgreen:

Hi Manuel,

this could effectively be a solution if we install the 3CX Client on each computer using 4D.
But at each call, what will be the solution to communicate with 4D ?

In 3CX Client you can launch an external application with arguments (Tel Number), but how to send these informations to 4D, so that the user will get a window with the customer’s record opened.

Each time I tried, a new session of 4D is launched, instead of just sending the variables.
I you have any idea…

J’ai trouvé cela, il semblerait qu’un dialogue soit possible en REST (plus simple avec la v18 ?)
https://www.3cx.com/docs/crm-integration/

Si vous arrivez à quelque chose, merci de me le dire cela pourrait être interessant. Pour l’instant je me contente de passer des coups de fils, ce qui est déjà très efficace.

Bonjour,

oui, CRM Integration est une application sous Windows qui pourrait être intéressante :

  • L’application ne fait que générer un fichier de configuration XML qu’il faut mettre et activer sur le serveur 3CX

  • elle implique que 4D Server reçoive l’info et demande au 4D Distant d’ouvrir la fenêtre avec le client affiché si il existe. on peut faire avec un EXECUTE ON CLIENT et en passant le Nr de téléphone comme variable, mais il faut savoir sur quel poste (correspondance avec les IP ?).

  • j’y ai déjà préparé un template en utilisant l’exemple donné et chargé celui-ci sur 3CX Server
    On peut le tester coté serveur 3CX, ce qui est fort pratique , et lui me dit que tout est en ordre, mais je ne reçois rien sur le serveur Web 4D, malgré la présence d’un certificat SSL valide (comme précisé dans les “issues”). Un test de l’adresse avec un navigateur donne pourtant de bons résultats coté Web de 4D Server, ce dernier fonctionne donc parfaitement.

Il existe une autre application qui s’appelle “Call Flow Designer”, qui permet de graphiquement schématiser et contrôler les flux entrants (appels), mais j’ai un peu les mêmes symptômes de fonctionnement “difficiles”, mais j’avoue n’être qu’au début de mes investigations avec cette app qui est assez complexe.

C’est peut-être aussi un problème de configuration du serveur 3CX que je n’ai pas fait à l’origine, mais tout semble pourtant fonctionner…

J’ai aussi un problème de fonctionnement de l’application 3CX Client :
Je fonctionne en distant avec une connexion VPN. Lorsque la connexion VPN est coupée puis rétablie, mon statut reste sur “Offline” alors que je vois bien le statut de tous les autres. Je dois quitter 3CX et relancer l’application pour que les autres me voient à nouveau.
Si moi je peux le faire manuellement, les 15-20 autres utilisateurs distants ne le feront pas d’eux-même, ce qui est plutôt gênant.

En résumé, si 3CX est “super joli” au niveau du Design et de ses composants, le fonctionnement laisse un peu à désirer, et sur leur forum ce ne sont que des intervenants de sociétés tierces qui font le support un peu “comme ils peuvent”.

J’ai pas vraiment le temps a consacrer actuellement mais sinon il y a un autre lien avec une video et une autre doc pour communiquer en XML…
https://www.3cx.fr/blog/integration-crm-pbx/