Ceci est une ancienne révision du document !
Table des matières
Prérequis
- 88Kb/s pour G711A (=PCMA =A-LAW) pour 1 sens (176kbs pour les 2 sens, soit 880kbs pour 5 lignes parallèles dans les 2 sens)
- Les ports source des paquets sortants ne doivent pas êtres modifiés par le NAT ou le masquerading du firewall
- Si on veut juste accéder à l'interface WEB depuis l'extérieur et utiliser les conférences et le WebMeeting, on doit ouvrir les ports TCP 443 et TCP/UDP 5090 depuis l'extérieur
- Si on veut brancher des SBC, on doit ouvrir le port TCP/UDP 5090 depuis l'extérieur
- Si on a pas la possibilité ou si on ne veux pas que l'IPBX gère l'audio, on doit ouvrir le port TCP/UDP 5060 et les ports média (UDP 9000 - 10999)
- Si on veut que des téléphones soient utilisés à l'extérieur, on doit ouvrir les ports TCP/UDP 80,443 et 5060 ainsi les ports média (UDP 9000 - 10999)
- Dans tous les cas si on a des ports ouverts en entrée (voir ci-dessus), on doit pouvoir faire du full-cone avec.
Installation du serveur 3CX
Pare-feu
Pour Mikrotik, voir script : https://www.liberasys.com/wiki/doku.php?id=mikrotikvoip:mikrotik_voip_script
INBOUND - Default ports | ||
---|---|---|
HTTPS | 5001 | TCP |
HTTP | 5000 | TCP |
SIP | 5060 | TCP+UDP |
TUNNEL | 5090 | TCP+UDP |
AUDIO | range 9000 - 10999 | UDP |
(Remote conf wizard) | 5015 | TCP only for the duration of the host setup |
OUTBOUND - Minimum | ||
3CX WebMeeting | webmeeting.3cx.net:443 |
Faire le test de firewall depuis l'interface 3CX : dans le dashboard, cliquer sur firewall
Plus de détails : https://www.3cx.com/docs/manual/firewall-router-configuration/
Pour le “full cone”, mettre le routeur en mode bridge (apparemment une freebox fait du full cone avec une IP DMZ mais a un ALG SIP !) , et avec un firewall mikrotik derrière :
/ip firewall nat add action=src-nat chain=srcnat out-interface=<bridge internet> src-address=<ip locale 3CX> to-addresses=<IP publique> add action=dst-nat chain=dstnat dst-address=<IP publique> in-interface=<bridge internet> to- addresses=<ip locale 3CX>
Attention, ces deux règles de NAT doivent être tout en haut de la table NAT ! Il suffit ensuite d'ajouter les règles de forward classique. Par défaut tout trafic entrant sera redirigé vers le serveur 3CX.
DNS local
- Mettre une entrée dans le DNS local (nomdedomaine.my3cx.fr) dans le cas de l'utilisation d'un DNS local, Unbound par exemple.
- URL : https://nomdedomaine.my3cx.fr:5001 ou https://xxx.xxx.xxx.xxx:5001 (ou port 443 si configuré lors de l'installation)
Installation de 3CX sur un Raspberry PI
Limites : https://www.3cx.com/blog/docs/raspberry-pi-pbx/ Doc : https://www.3cx.com/docs/installing-pbx-raspberry-pi/
Désactiver IP v6 :
sudo -s cat << "EOF" > /etc/sysctl.conf # Disable IP v6 net.ipv6.conf.all.disable_ipv6 = 1 EOF reboot
Installer 3CX :
wget -O- http://downloads-global.3cx.com/downloads/3cxpbx/public.key | sudo apt-key add - echo "deb http://downloads-global.3cx.com/downloads/debian stretch main" | sudo tee /etc/apt/sources.list.d/3cxpbx.list sudo apt update sudo apt-cache policy 3cxpbx sudo apt -t stable install 3cxpbx
Aller sur l'interface de staging et finaliser l'installation : http:<device_ip>:5015?v=2 ===== Installation de 3CX sur sur une Debian 9 ===== wget -O- http://downloads-global.3cx.com/downloads/3cxpbx/public.key | apt-key add - echo “deb http://downloads-global.3cx.com/downloads/debian stretch main” | tee /etc/apt/sources.list.d/3cxpbx.list apt-get update apt-get install 3cxpbx net-tools Aller sur l'interface de staging et finaliser l'installation : http:<device_ip>:5015?v=2
Installation de 3CX sdepuis l'ISO 3CX
l'image fournie par 3CX. Aller sur l'interface de staging et finaliser l'installation : http:<device_ip>:5015?v=2 ===== Installation du SBC sur Raspberry Pi (Raspbian) ===== Doc : https://www.3cx.com/docs/3cx-sbc-raspberry-pi Depuis Raspbian : wget http://downloads.3cx.com/downloads/sbc/3cxsbc.zip -O- | sudo bash Puis remplir les paramètres demandés. * Port SIP par défaut : 5060 * Port tunnel par défaut : 5090 * Fichiers de configuration : /etc/3cxsbc.conf * Logs : /var/log/3cxsbc.log ====== Configuration du serveur 3CX ====== ===== Reconfiguration du serveur 3CX ===== S'il y a besoin de repartir à zéro : sudo /usr/sbin/3CXWizard –cleanup Et retourner sur l'interface de staging : http:<device_ip>:5015?v=2
Sauvegardes
→ WebManager → Sauvegarder
Cliquer sur “planifier la sauvegarde” et changer le champ “Configurer la rotation des sauvegardes”
Nous pouvons ici sauvegarder manuellement ou planifier une sauvegarde.
L'emplacement des sauvegardes est, au choix, le disque local, un serveur FTP ou Google Drive (ne pas oublier de chiffrer la sauvegarde lors de l'utilisation d'un serveur dont nous ne sommes pas le propriétaire, Google Drive par exemple).
https://www.3cx.fr/docs/manuel/sauvegarde-restauration-failover-ipbx/
Sécurité : Limiter l'accès d'administration
WebManager → Sécurité → Paramètres de sécurité Onglet “Restriction de la console” Cocher : Permettre l'accès depuis des adresses IP publiques spécifiques Cliquer sur ajouter et renseigner les IPs publiques supplémentaires si besoin. Valider en cliquant sur OK tout en haut
Sécurité : liste blanche
→ WebManager → Sécurité → Blacklist d'IP Ajouter les entrées en liste blanche (Action = Autoriser) pour les IP publiques spécifiques
Codecs / status
WebManager → Paramètres → Général Ordonner les codecs pour les deux sections (Codec prioritaire pour les appels locaux/internes ET Codec prioritaire pour les appels externes) : PCMA PCMU G722 G729 GSM OPUS
Trunks SIP
https://www.3cx.fr/docs/manuel/trunks-sip/
→ WebManager → Trunks SIP → Ajouter Trunk SIP
OpenIP
Pour un trunk OpenIP, voir : http://wiki.mycloud3cx.fr/V16/doku.php?id=configuration_sip_trunk_touch_3cx_v16#sip_trunk_touch_en_config_3cx_v16_sur_site Numéro principal = NDS (sous forme nationale)
Sur un trunk OpenIP, on a NDI, NDS et SDA.
- NDI = Numéro de Désignation de l'Installation : tête de ligne, on ne doit pas la voir apparaître dans les communications à l'extérieur
- NDS = Numéro de Désignation Secondaire : le numéro que l'on a choisi de présenter
- SDA = (=DDI=DID) Sélection Directe à l'Arrivée : numéro d'un poste interne en particulier
Remarque : les numéros doivent être définis sous la forme nationale “0987654321” ou “*987654321”, pas “0033987654321”.
OVH
https://docs.ovh.com/fr/voip/configuration_basique_dun_sip_trunk_ovh_sur_3cx_phone_system/ Remarque : les numéros doivent être définis sous la forme INTERnationale : “0033987654321”. Rien de particulier, le trunk monte au bout de quelques minutes
Onglet ID d'appelant
Numéro d'appelant par défaut : utiliser le numéro NDS sous forme nationale (ex : 0123456789)
=⇒ par défaut ne rien ajouter d'autre et faire confiance au provider SIP
Entrant uniquement et Sortant uniquement : voir https://www.3cx.com/docs/cid-reformatting/
Si on veut que les rappels se fassent sur un numéro national au lieu de international : Entrant uniquement : Ajouter : Masque source : +33(.*) Masque remplacement : 0\1 AJouter : Masque source : 0033(.*) Masque remplacement : 0\1
Si on veut sortir avec un numéro international alors que l'extension a un numéro dédié en version nationale (WebManager → Extensions → Jean Dupont → Général → Informations utilisateur : Numéro présenté) : Sortant uniquement : Masque source : (.)(………) - numéro à 10 chiffres Masque remplacement : +33\2 - version internationnale
Autres exemples :
- Afficher pays de provenance :
- Masque source : +(33)(.*)
- Masque remplacement : France : 0\2
- Remplacer numéro par nom :
- Masque source : 0980660056
- Masque remplacement : Liberasys
Notes :
- Ces règles ne réécrivent pas la valeur
From:Display
entrante, ce qui signifie que si l'appel a été reçu avec +33987654321, l'afficheur indiquera toujours ce numéro, mais la “partie centrale” du numéro à composer a été actualisée. - Le numéro formaté “0987654321” est automatiquement présenté sur les téléphones (Yealink). Pas besoin de créer un masque pour ça.
- Remplacement “(.*)” par “6666666666” + règle entrante transmission “6666666666” vers Jean Dupont présente “6666666666” sur téléphone de Jean Dupont ainsi que dans le webclient.
Règles entrantes
Doc : https://www.3cx.fr/docs/manuel/regles-entrantes/
WebManager → Règles entrantes
Il y a une règle entrante par trunk SIP.
Ces règles permettent de définir comment vont êtres redirigés les appels entrants sur le numéro principal :
- Extension : La personne chargée de l'accueil téléphonique, la file d'attente ou le groupe d'appels.
- Terminer l'appel : Raccrocher automatiquement. Pan, dans les dents.
- Messagerie vocale de l'extension : La messagerie vocale d'une personne chargée de l'accueil.
Ces règles peuvent êtres définies pour les heures de bureau et en dehors des heures de bureau.
Notes :
- Renseigner une règle entrante d'un numéro principal de trunk SIP écrase celle définie dans le trunk SIP (si règle définie).
- Lorsqu'une règle entrante est configurée pour un numéro SDA, éditer la règle directement dans le trunk SIP édite également la règle dans les “règles entrantes”.
- Les SDAs doivent être définis sous la forme “0987654321” ou “*987654321”, pas “0033987654321”.
Règles sortantes
→ WebManager → Règles sortantes → Ajouter
- Nom de la règle : Appels vers l'extérieur
- Appels des extensions : 000-100
Faire les appels sortants sur : choisir le TRUNK Cette règle s'appliquera aux extensions 000 à 100.
Si l'on dispose de plusieurs routes et que l'on souhaite y attribuer des numéros spécifiques, il est possible de préfixer les numéros composés qui seront redirigés vers les routes en fonction du préfixe choisi.
Les règles “Retirer” et “Ajouter” permettent de retirer un chiffre au début du numéro composé.
Par exemple, si le préfixe choisi est “9”, pour appeler le numéro extérieur “0123456789” l'utilisateur devra composer “90123456789” mais le “9” ne sera pas envoyé au trunk si l'on renseigne “1” dans le paramètre “Retirer”.
Cependant, les utilisateurs ne pourront pas rappeler les numéros depuis leur espace WebClient. En effet, le numéro rappelé avec la touche correspondante sera composé sans le préfixe.
S'il y a plusieurs routes, celle-ci seront appelée en cascade. Par exemple si la première route est indisponible, alors la seconde sera utilisée, puis la troisième, etc.
Les routes non utilisées doivent être en “BLOCK CALLS”.
Numéros d'urgences
Ces numéros peuvent être appelés à tout moment même en dehors des heures de restriction. Et libèrent un canal VoIP si besoin.
→ WebManager → Paramètres → General → Numéros d'urgence → Ajouter
15 : SAMU 17 : Police Secours 18 : Sapeurs-Pompiers 112 : Numéro d'appel d'urgence européen – 114 : Numéro d'Urgence pour les personnes Muettes, Sourdes ou Malentendantes (SMS Fax) 115 : Samu Social - Secours aux sans abris 116 : Enfants disparus 119 : Allo enfance maltraitée 196 : Secours en Mer (VHF canal 16) 3117 : Vigilance citoyenne SNCF/RATP (SMS : 31177) 3624 : SOS Médecin 3919 : Stop violences Femmes 3939 : Allo Service Public - service de renseignement administratif interministériel 080030030 : Ecoute violences conjugales 0140054848 : Centre anti-poison Paris 0800005696 : Stop Djihadisme (Prévenir la radicalisation. signaler, Alerter, Protéger les jeunes et leur famille.) 0811020217 : Allô Escroquerie 0800200000 : Allô Ecoute Internet (harcèlement scolaire et tous problèmes d'insultes, vols de pseudo et harcèlements sur Internet) 0969392919 : Agri Ecoute (écoute de dialogue pour les cas de détresse dans la profession d'agriculteur) 0800858858 : Croix Rouge 0140503434 : SOS suicide 0140479595 : SOS Dépression 0892683208 : SOS Chéque volé ou perdu - CNACPV 0892690880 : SOS Carte Bleue/Visa/Eurocard/Mastercard volée ou perdue - Groupement des Cartes Bancaires
Site officiel : https://www.gouvernement.fr/risques/connaitre-les-numeros-d-urgence
Paramètres réseau
→ WebManager → Paramètres → Réseau Onglet FQDN : DNS SRV Autoriser les appels de/vers des URIs SIP externes ⇒ https://www.3cx.com/docs/direct-sip/ Onglet Pare-feu : activer le keepalive toutes les 14 secondes
Paramètres notifications email
→ WebManager → Paramètres → Email Onglet Notification (Permet de configurer les évènements qui seront notifiés à l'administrateur.) Adapter :
- Adresse email pour les notifications
- Evènements
→ WebManager → Paramètres → E-mails → Templates e-mail Permet d'éditer les modèles de mails.
Paramètres mise à jour
→ WebManager → Paramètres → Mises à jour activer MAJ auto ?
Paramètres Conférence
→ WebManager → Paramètres → Conférence onglet Audio : Numéros externes de conférence : mettre le champ qui sera rempli lors de l'envoi d'un email d'invitation
SDA direct avec le système de conférence
→ WebManager → Règles entrantes → Ajouter une règle SDA →
- Nom : Direct vers conférence
- SDA/DID : Sélectionner le SDA
- Router les appels vers
- Extension
- 700
Les appelants seront invité à saisir l'identifiant de conférence qu'ils ont reçu par mail afin de se connecter à la conférence.
Paramètres Heures de bureau et jours fériés
→ WebManager → Paramètres → Heures de bureau et jours fériés configurer si besoin Format WAV (PCM, 8 kHz, 16 bit, Mono, Max size: 100MB)
Paramètres Musique d'attente
changer si besoin
Paramètres de messagerie vocale
→ WebManager → Paramètres → Paramètres de messagerie vocale quota, vidange, email de notification
Paramètres CDR
→ WebManager → Paramètres → CDR Actver la génération des CDRs
Extensions / téléphonnes
Ajouter une Extension
https://www.3cx.fr/docs/manuel/administration-extensions-ipbx/
→ WebManager → Extensions → Ajouter
Informations utilisateur :
- Extension : numéro interne, incrément automatiquement
- Prénom
- Nom
- adresse mail
- numéro mobile
- numéro présenté (si différent de celui par défaut)
Relever :
- ID
- Mot de passe
Sélection Directe à l'Arrivée (SDA / DID) :
- mettre le numéro du SDA si nécessaire (également adapter le numéro présenté le cas échéant)
Onglet Messagerie vocale :
- Lire date/heure : Lire au format 24 heures
- Options email : Envoyer le message en pièce jointe
Onglet Téléconfiguration téléphonne :
- Codecs :
- G.711 A-law
- G.711 U-law
- G722
- G729
- GSM-FR
Onglet Options :
- Si téléphone externe (via SBBC ou STUN) : décocher “Désactiver l'usage de l'extension hors LAN (Les extensions distantes utilisant Direct SIP ou STUN seront bloquées)”
- dans Options, cocher “ Envoyer une notification email sur appel manqué”
Onglet Droits :
- Régler ici le groupe si nécessaire (droits de groupe, à régler dans WebManager → Groupes)
- Si besoins spécifiques, changer les paramètres ici (transfert, diversion, parquage d'appels, droi d'admin spécifique)
A noter : le groupe par défaut ne peut pas éditer l'annuaire d'entreprise
Installer un téléphone
- Faire un reset config du téléphone - Plugger les téléphones dans le même réseau (ou celui d'un SBC configuré), le serveur DHCP leur attribue une IP locale. 3CX peut les autoconfigurer (auto-prvisionning) suite à un message multicast envoyé sur le réseau local (et via le SBC s'il y a lieu), - Webmanager → Téléphones → Sélectionner le téléphone → Assigner extension OU Ajouter extension On se retrouve dans la configuration de l'auto-prvisionning du modèle de téléphone. Dans Options, changer :
- Langue d'affichage : Français
- Format de la date : YYYY-MM-DD
- Relever le mot de passe du téléphone
- Codecs :
- PCMA
- PCMU
- G722
- G729
Après validation, le téléphone redémarre est est auto-provisionné.
Remarque : après avoir ajouté le éléphone du strandard, ne pas oublier de reparamétrer l'extension par défaut sur appel entrant dans le trunk !
Touches de fonction : BLF
WebManager → Extensions → cliquer sur l'extension voulue Onglet “BLF”
doc : https://www.3cx.fr/voip-sip/touches-fonction-blf/
Remarques :
- Pour afficher des BLF sur le module d'extension du téléphone Yealink T29G, commencer au BLF 28 (ou 29 si l'on souhaite garder la possibilité de changement de liste).
- Les BLF ne peuvent être prises en compte lorsque l'utilisateur n'as pas de téléphone propre à lui. Par exemple, si un utilisateur n'est que “hotdesker”, ses BLF ne pourront pas être mises à jour.
- Pour une configuration plus fine des appellations des touches de raccourcis (mauvaise traduction par défaut : “Disponible” → “Pr: Available”), configurer un “raccourci personnalisé”. Exemple pour statut “Disponible” : *30 Prénom: “Statut” Nom:“Disponible”.
Touche de ligne
Il est possible de configurer une “touche de ligne”.
C'est un raccourci pour mettre en attente l'interlocuteur actuel et ainsi de pouvoir en appeler un autre avant de reprendre celui qui a été mis en attente.
Facilite la gestion des mises en attente lorsqu'elles sont supérieures à 1.
→ Touche → Module d'extension On peut éditer manuellement les appellations des touches de raccourcis (“Pr: Available” → “Disponible”)
Fonctionnalités de strandard téléphonique
Files d'attentes
Les files d'attentes permettent de mettre en attente des appelants et de configurer une stratégie de scrutation pour attribuer les appels entrant à des agents.
→ WebManager → Files d'attentes → Ajouter
- Nom : File d'attente 01
- Stratégie de scrutation : Agent avec le moins d'appels
Une fois que l'on a configuré sa file d'attente, il faut l'ajouter à une règle entrante afin de rediriger les appels entrant vers cette file d'attente.
Un utilisateur peut faire partie de plusieurs files d'attentes mais lorsque l'utilisateur se connectera aux files il ne pourra pas sélectionner la file à laquelle se connecter : il est d'office connecté à toutes les files dans lequel il est un agent.
Options
- Jouer une annonce d'accueil : Permet de jouer un fichier audio à l'arrivée d'un nouvel appel par dessus la musique d'attente.
- Annoncer la position en file d'attente : Permet d'annoncer la position de l'appelant dans la file d'attente.
Groupes d'appels
→ WebManager → Groupes d'appels
Les appels vers un groupe d'appels fera sonner toutes les extensions jusqu'à ce qu'un des membres du groupe réponde ou qu'un timeout soit atteint.
https://www.3cx.fr/docs/manuel/groupes-appels-annonce-interphonie/
Mode "réceptionniste"
Si l'on souhaite faire en sorte qu'un utilisateur puisse être réceptionniste de façon ponctuelle, et ce depuis le téléphone :
Méthode 1 : Groupe d'appels
- Créer un groupe d'appels “réceptionnistes” et y ajouter les utilisateurs désirés,
- Renommer le statut personnalisé “Lunch” en “Réceptionnistes” (→ Paramètres → Paramètres → “CUSTOM1NAME”),
- Se rendre dans la configuration des membres et décocher “Accepter les appels de groupes d'appel” pour tous les statuts SAUF “réceptionnistes”,
- Changer les BLF de chaque membre du groupe d'appels “réceptionnistes” pour en créer deux : “disponible” et “réceptionniste” pour permettre le changement depuis le téléphone.
A noter qu'il est possible d'éditer ces statuts personnalisés depuis le webclient → Paramètres → Transfert d'appels
ainsi que dans → WebManager → Paramètres → PBX → Renommer les statuts Déjeuner et Voyage d'affaires.
Les membres faisant partie du groupe d'appels “réceptionnistes” ne recevront les appels destinés à ce groupe uniquement dans le cas où leur statut est “réceptionniste”.
Ne pas oublier de configurer la destination de non-réponse du groupe “réceptionnistes” pour ne pas que l'appelant se retrouve éjecté si aucun membre ne répond.
Inconvénient : les membres du groupe d'appels “réceptionnistes” ne peuvent faire partie que de ce groupe, auquel cas ils en recevront quand même les appels dès lors qu'ils cocheront la case d'acceptation des appels de groupe dans un éventuel autre groupe.
Méthode 2 (préférée) : Files d'attentes
- Créer une file d'attente vers laquelle seront dirigés les appels entrants et y assigner les agents susceptibles de s'en occuper,
- Configurer les touches de raccourcis sur le téléphone des agents pour qu'ils puissent se connecter et déconnecter de la file d'attente et ainsi prendre les appels en attente.
Note : Il est également possible de faire la même chose depuis le client web en utilisant le bouton “Q” puis se rendre dans le switchboard.
Parking d'appels
Les parkings d'appels permettent de “parquer” les appels.
Par exemple, en utilisant les touches de raccourcis par défaut (→ WebManager → Paramètres → Codes de raccourcis), pour parquer un appel il faut le transférer vers *00 pour le parking 0, *01 pour le parking 1, …
Pour sortir les appels parqués, par exemple du parking *00, faire : *10
Le parcage d'appels trouve son utilité lorsque, par exemple, nous devons mettre en attente un appelant si nous devons changer de téléphone : Après avoir parqué l'appelant depuis le téléphone A on peut le raccrocher puis reprendre l'appel depuis un téléphone B. Attention à ne pas oublier l'appelant, auquel cas celui-ci severra appliqué le réglage configuré lors de l'oubli d'un appelant (→ WebManager → Paramètres → Parking d'appels → Sortir des appels parqués oubliés automatique).
Il est possible d'ajouter des raccourcis de parcage dans les BLF.
A noter que lors de l'utilisation d'un BLF de parcage, il n'est pas possible de reprendre un appel parqué autrement que depuis une touche de raccourci de parcage.
Répondeurs / IVR
→ WebManager → Répondeurs
Il est possible de définir des répondeurs automatiques qui permettent de proposer aux appelants des options à choisir depuis le clavier de leur téléphone.
Par exemple : appuyer sur la touche “0” pour joindre telle extension, touche “1” pour répéter la directive, etc.
Général
- Nom : Réception 01
- Extension : 803
- Type : Standard
- Directive : Fichier audio expliquant les choix possibles
Options du menu
Touche | Action | Destination |
---|---|---|
0 | Connecter à l'extension | 000 Jean Dupont |
1 | Connecter à la file | 800 Attente 01 |
2 | Connecter au groupe d'appel | 801 Groupe d'appels 01 |
3 | Répéter la directive |
Ici, si l'appelant appuie sur la touche “0” son appel sera redirigé vers le poste de Jean Dupont, la touche “1” le mettra dans la file d'attente 01 (dont le numéro d'extension est “800”), touche “2” vers le groupe d'appels 01 et la touche “3” répètera le fichier audio choisi pour expliquer les différents choix. https://www.3cx.fr/docs/manuel/svi-repondeurs-numeriques/
Call Flow Designer : https://www.3cx.com/docs/manual/cfd-building-projects/ Le Call Flow Designer (CFD) permet de créer des scripts complèxes utilisés dans un IVR.
Joindre directement plusieurs extensions avec un seul numéro
Pour joindre directement une extension avec un seul numéro, par exemple une SDA en plus du numéro principal du trunk, il faut se servir d'un IVR → Web Manager → Répondeurs → Ajouter
Chaque touche dois correspondre à une extension, ainsi un appelant pourra composer le numéro de téléphone suivi directement du numéro correspond à l'extension qu'il souhaite joindre.
Par exemple, pour un numéro 0123456789 :
- 0 = Jean Dupont
- 1 = Maurice Moulin
- 2 = Bob Morane
L'appelant composant le 01234567891 tombera directement sur Maurice Moulin sous réserve que la règle entrante du numéro 0123456789 redirige sur le répondeur.
Mettre la règle de redirection en cas de non saisie à 1 permet d'avoir un IVR transparent s'il n'y a pas de désir de joindre quelqu'un directement. Ainsi un appelant ne connaissant pas l'astuce décrite ici se vera redirigé directement sur le choix de l'administrateur, par exemple une file d'attente.
Hotdesking
Un téléphone peut être configuré en mode “hotdesking” si celui-ci n'est utilisé par aucune extension afin que les utilisateurs autorisés à faire du hotdesking puisse s'y connecter.
→ WebManager → Advanced → Hotdesking → Ajouter
- Configurer le téléphone en renseignant le modèle et son adresse MAC.
- Autoriser les extensions à utiliser le “hotdesking” → WebManager → Extensions → Jean Dupont → Options → Activer le hotdesking.
Lorsque Jean Dupont devra faire du hotdesking, celui-ci devra taper *77* suivi de son extension puis d'une étoile puis de son code PIN : *77*000*
Une fois qu'il aura fini son tour de hotdesking, son collègue (autorisé à faire du hotdesking) pourra prendre la main de la même façon sur le même téléphone après déconnexion de Jean Dupont.
Notes :
- Il n'est pas possible de configurer de nouvelles BLF lorsqu'un téléphone n'est pas attribué à un utilisateur particulier.
- Lors de la configuration de BLF “particulière” (premier BLF à partir du 29ᵉ sur Yealink T29G pour début sur extension téléphone), le hotdesking “casse” cette astuce et place le premier BLF sur le premier BLF (c'est clair ?).
WebMeetings et conférences
La différence entre un WebMeeting est une conférence (audio et vidéo) est assez floue.
Le WebMeeting est une réunion vidéo (WebRTC) uniquement via navigateur ou application “3CX WebMeeting”.
Les conférences vidéo sont la même chose mais avec la possibilité que des appelants extérieurs peuvent se joindre à la conférence même uniquement en audio, depuis un téléphone. Les conférences audio sont similaires mais sans la vidéo.
Les conférences peuvent êtres prévues à l'avance à une date et heure fixe contrairement aux WebMeetings.
Les conférences peuvent êtres des réunions (webmeetings) ou présentations / classrooms (webinar).
Les WebMeetings seraient donc juste un moyen rapide d'organiser une réunion.
WebMeeting
https://www.3cx.fr/manuel-utilisation/webmeeting/
→ WebClient → WebMeeting
On peut envoyer le lien du webmeeting à des invités, mais les invités peuvent-ils joindre un webmeeting par téléphone ? Non.
Il est possible de gérer un webmeeting depuis un ordiphone avec l'application “3CX WebMeeting” Android / iOS
Conférence
https://www.3cx.fr/manuel-utilisation/planifier-conference/
→ WebCLient → Planifier Conférence
Un invité extérieur peut-il rejoindre une conférence ? Oui si son appel est transféré manuellement à la salle de conf (700) et moyennant l'utilisation du code PIN pour y entrer
Un invité extérieur peut-il rejoindre directement une conférence ? Oui si un SDA est configuré pour rediriger vers la salle de conf (700) et moyennant l'utilisation du code PIN pour y entrer
- Type : Vidéo (ou audio s'il n'est pas prévu d'utiliser de vidéo)
- Quand : Maintenant (ou plus tard pour configurer une date prévue)
- Profil WebMeeting : WebMeeting (réunion) ou Webinar (présentation)
- Calendrier : 3CX (direct eMail)
- Ajouter des participants ou importer une liste CSV
Click2Talk et Click2Meet
→ WebManager → Extensions → Jean Dupont → Click2Talk/Click2Meet
Click2Talk
Passez en mode Click2Talk pour recevoir des appels sur votre extension ou file d'attente directement.
Cela créera une URL vers laquelle il est possible de joindre une extension particulière (chat, audio et/ou visio).
Click2Meet
Utilisez cette URL pour permettre à vos interlocuteurs d'organiser des réunions web instantanément avec vous.
Contacts
3CX dispose de deux annuaires : Un “global” et un “personnel”.
Annuaire global
→ WebManager → Avancés → Contacts
Il est possible d'importer des contacts sous forme d'un fichier CSV :
Prénom,Nom,Société,Portable,Domicile,Travail,Email,FaxTravail Jules,Verne,Imagine Inc.,979755868,255645622,255633564,jules@imagine.kom,82503639 Jean,Dupont,Exemple,0123456789,9876543210,0123498765,j.dupont@exemple.com,0987612345
Un exemple est disponible ici.
Les contacts de l'annuaire sont accessibles depuis toutes les extensions utilisateurs depuis le WebClient ou depuis le téléphone.
Annuaire personnel
Les utilisateurs peuvent renseigner des contacts personnels dans leur WebClient et ne seront disponibles que pour cet utilisateur.
Il est également possible de configurer des contacts personnels directement dans le téléphone, mais ceux-ci ne sont pas synchronisés avec le WebClient et ne seront donc disponible que sur le téléphone et y resteront même en provisionnant le téléphone à une autre extension.
Interphone
L'interphone permet d'appeler une extension directement sans que celle-ci a besoin de décrocher.
→ Paramètres → Codes de raccourcis → “Annonce sans décrocher” → *11 (par exemple)
Pour que l'extension “000” puisse contacter l'extension “001” par l'interphone, elle devra composer “*11001”.
Pour configurer l'appel via interphone d'une extension en tant que BLF, il faut créer un raccourci personnalisé “*1101” (pour appeler l'extension “01”).
Ajout d'un FXO/FXS
FAX
- → WebManager → Extensions FAX → Ajouter
- 880
- <id_auth>
- <password>
Ajout FXO/FXS
Il faut que le FXS soit dans le même réseau que le PBX (VPN si PBX distant).
→ WebManager → FXS/DECT → Ajouter FXS/DECT
- Grandstream
- Grandstream HT812
- <adresse_MAC>
Importer fichier XML du lien de provisioning dans HT812 → HT812 webmanager → Advanced settings → Upload configuration
Note : Le chemin vers http retourne 403. Remplacer port http (44080) par https (44443) dans le lien provisioning et dans le fichier XML exporté :
- Ligne 81 : <P212>2</P212>
- Ligne 83 : <P192>nomdedomaine.com:44443/provisioning/rrq5ij9hcjbpxc/firmware/grandstream</P192>
- Ligne 85 : <P237>nomdedomaine.com:44443/provisioning/rrq5ij9hcjbpxc</P237>
A CONFIRMER :
- → HT812 web server → Advanced settings
- Firmware upgrade and provisioning : HTTPS
- Firmware server path :
nomdedomaine.com:44443/provisioning/rrq5ij9hcjbpxc/firmware/grandstream
- Config server path :
nomdedomaine.com:44443/provisioning/rrq5ij9hcjbpxc
- Sélectionner “Always Skip the firmware check”
- Validate server certificates : No
Notes :
- Les erreurs rencontrées ci-dessus doivent êtres liées au fait que le FXS n'était pas dans le même réseau que le serveur lors des tests.
- Le service d'envoi de fax de chez Free semble mal fonctionner.
- L'envoi depuis ecofax fonctionne mais retourne d'abord une erreur. Le fax est cependant reçu deux fois :
Communication failure during Phase B/C (modem protocol botch)
Import d'extensions à partir d'un CSV
Le fichier CSV à importer doit avoir ses cellules formatées en tant que texte.
La colonne “Number” doit être écrite avec le nombre de nombres exacts (exemple : “000”, “001”, … Pas “0”, “1”, …)
La plupart des colonnes doivent êtres renseignées, se référer à la doc et à l'exemple fourni.
Exemple CSV
Number | FirstName | LastName | EmailAddress | MobileNumber | AuthID | AuthPassword | WebMeetingFriendlyName | WebMeetingPrivateRoom | ClickToCall | WebMeetingAcceptReject | EnableVoicemail | VMNoPin | VMPlayCallerID | PIN | VMPlayMsgDateTime | VMEmailOptions | QueueStatus | OutboundCallerID | SIPID | DeliverAudio | SupportReinvite | SupportReplaces | EnableSRTP | ManagementAccess | ReporterAccess | WallboardAccess | TurnOffMyPhone | HideFWrules | CanSeeRecordings | CanDeleteRecordings | RecordCalls | CallScreening | EmailMissedCalls | Disabled | DisableExternalCalls | AllowLanOnly | BlockRemoteTunnel | PinProtect | MAC_0 | InterfaceIP_0 | UseTunnel | DND | UseCTI | StartupScreen | HotelModuleAccess | DontShowExtInPHBK | DeskphoneWebPass | SrvcAccessPwd | VoipAdmin | SysAdmin | SecureSIP | PhoneModel14 | PhoneTemplate14 | CustomTemplate | PhoneSettings |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
003 | Bob | MORANE | adresse_mail@ndd.com | 0123456789 | deijfEJDe484 | dneAJDEI852 | bobmorane | 0 | 0 | 0 | 1 | 1 | 1 | 1212 | 2 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | nom_de_domaine.com | 1 | 0 | 0 | 1 | 0 | 0 | edjiaee34DNE | PDEkefok4845 | 0 | 1 | 1 | ||||||||
004 | Julie | BATEAU | adresse_mail@ndd.com | 0987654321 | dbheueEF54 | 8r4fODsdo5 | juliebateau | 0 | 0 | 0 | 1 | 1 | 1 | 8596 | 2 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | nom_de_domaine.com | 1 | 0 | 0 | 1 | 0 | 0 | fbuehd45OP | 85DHebgs5d | 0 | 1 | 1 |
PhoneSettings
Exemple de configuration mis en forme pour la colonne “PhoneSettings” :
<PhoneDevice ProvType="3" RemoteSpmHost="192.168.88.191" RemoteSpmPort="5060" PhoneLanguage="French" XferType="BXfer" RingTone="Ring 1" DateFormat="WWW MMM DD (Mon Jan 15)" TimeFormat="24-hour clock" PowerLed="Both (Voicemail and Missed calls)" Backlight="30 seconds" ScreenSaver="30 seconds"> <CustomQueueRingTones /> <mcgroups enabled="false" /> <DynamicOptions> <option name="vlanwanport" value="False" /> <option name="vlanwanid" value="1" /> <option name="vlanwanpriority" value="0" /> <option name="vlanpcport" value="False" /> <option name="vlanpcid" value="1" /> <option name="vlanpcpriority" value="0" /> </DynamicOptions> <LldpOptions> <option name="lldpvalue" value="True" /> </LldpOptions> <ExtendedData> <sip:3cxBridge@127.0.0.1:5080;user=proxy;uri=sbc.d48c2c09> </ExtendedData> <CodecsPriority> <Codec Priority="1" PriorityVarName="codec1" DisplayText="PCMA" PayloadTypeName="payload1" payload="PCMA"> 8 </Codec> <Codec Priority="2" PriorityVarName="codec2" DisplayText="PCMU" PayloadTypeName="payload2" payload="PCMU"> 0 </Codec> <Codec Priority="3" PriorityVarName="codec3" DisplayText="G722" PayloadTypeName="payload3" payload="G722"> 9 </Codec> <Codec Priority="4" PriorityVarName="codec4" DisplayText="G729" PayloadTypeName="payload4" payload="G729"> 18 </Codec> </CodecsPriority> <BLFS OwnBlfs="0" /> </PhoneDevice>
Génération de caractères aléatoires pour import CSV
Codes PIN
Si vous utilisez Libreoffice Calc, sélectionnez les cellules dans lesquelles vous souhaitez générer les codes PIN, puis → Feuille → Remplir les cellules → Nombres aléatoires.
- Distribution : Entier uniforme
- Minimum : 1000
- Maximum : 9999
Ou bien vous pouvez utiliser la fonction de Libreoffice Calc :
=ALEA.ENTRE.BORNES(1000;9999)
Sinon vous pouvez utiliser un terminal si vous utilisez un système GNU/Linux ou BSD.
Trente codes PIN de 1000 à 9999 :
shuf -i 1000-9999 -n 30
Mots de passe et identifiants
Avec le paquet pwgen
sudo apt install pwgen
Trente suites de dix caractères :
pwgen 10 30
Avec urandom
Trente suites de dix caractères :
for i in {1..30}; do head /dev/urandom | tr -dc A-Za-z0-9 | head -c 10 ; echo ''; done
Avec une formule Libreoffice Calc amusante et pas sérieuse
Copiez et coller cette formule pour générer une suite de dix caractères alphanumériques aléatoires :
=SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96))) & SI(ALEA.ENTRE.BORNES(0;1)=0 ; ALEA.ENTRE.BORNES(0;9) ; CAR(ENT(ALEA()*26+1)+CHOISIR(ARRONDI(ALEA();0)+1;64;96)))
Status personnalisés, règles de transfert et BLF spécifique
WebManager → Paramètres → Général Renommer les statuts Déjeuner et Voyage d'affaires :
- Dejeuner
- Voyage pro
Il est possible de renommer deux statuts pour les personnaliser et ainsi créer des règles d'appels spécifiques en fonction de ces statuts. On retrouve ces status personnalisés dans WebManager → Paramètres → Paramètres → “CUSTOM1NAME” ou “CUSTOM2NAME” A noter que le “CUSTOM1NAME” est un statut “disponible” contrairement de “CUSTOM2NAME” qui est un statut “absent”.
Se rendre ensuite dans → WebManager → Extensions → Jean Dupont → Règles de transfert
Changer ici les règles de transfert comme désiré.
Il est possible de configurer ce statut en BLF → WebManager → Extensions → Jean Dupont → BLF → “Changer de statut” Ne pas oublier de cocher ou décocher la prise en compte des appels de groupes d'appel.
Notes
- Pour se connecter à l'interface du téléphone, utiliser “admin” et “mot de passe téléphone” (trouvable dans les extensions).
- Les interfaces des téléphones offrent plus d'options de personnalisation que 3CX, ne pas hésiter à aller fouiller pour, par exemple, importer de nouvelles sonneries, de nouveaux fonds d'écrans (selon le téléphone), etc. Cependant, 3CX écrasera malheureusement certaines de ces personnalisations en cas de redémarrage du serveur ou de réapprovisionnement du téléphone.
- Les téléphones se voient attribués une IP locale par le seveur DHCP. Après ils envoient un message multicast sur le LAN (vers le serveur 3CX local ou vers le SBC) pour l'auto-provisionning.
- SDA : SDA = DDI = DID
Exploitation de 3CX
Gérer la blacklist IP
→ Web manager → Dashboard → Statut PBX → Ips en liste noire
Ici il est possible de déblacklister des IP ou de créer des règles d'exceptions.
Liens :
Rapports d'appels
Il est possible de créer des rapports d'appels automatiques pour établir des statistiques utiles : → Webmanager → Rapports d'appels
Logs détaillés, debug et envoi au support
→ WebManager → Statut système → Log du serveur (→ Logs) Logs détaillés et collecte pour envoi au support : https://www.3cx.com/docs/collecting-logs-for-3cx-support/
Exploitation des logs en live depuis le serveur :
- Afficher appels depuis logs sur serveur :
tail -f /var/lib/3cxpbx/Instance1/Data/Logs/3CXDialer.log
- Afficher tous les logs du serveur :
tail -f /var/lib/3cxpbx/Data/Logs/*.log /var/lib/3cxpbx/Instance1/Data/Logs/*.log
Capture réseau, tcpdump
Capture tcpdump .pcap : https://www.3cx.com/blog/voip-howto/logs-captures-support-info-wireshark/ sudo tcpdump “not port 22 and not port 56443” -w 3cx_$(date +“%Y%m%d%H%M%S”).pcap
Chemins dans le système
- logs : /var/lib/3cxpbx/Data/Logs/*.log ET /var/lib/3cxpbx/Instance1/Data/Logs/*.log
- messages vocaux (voicemails) :
/var/lib/3cxpbx/Instance1/Data/Ivr/Voicemail/Extensions/<id_extension>/
- CDRs : /var/lib/3cxpbx/Instance1/Data/Logs/CDRLogs/
- backups : /var/lib/3cxpbx/Data/Backups