• Tuto: Custom destination et freepbx

      Les customs destinations et freepbx.

      Détail d'une application pratique pour renvoyer un numero d’appelant par sms.

      Freepbx , c'est des fonctionalités standards de téléphonie à travers une interface graphique relativement accessible. Cela couvre generalement 99.99% des besoins des tpe. Mais Freepbx permet aussi de personnaliser l'usage de votre systeme téléphonique en insérant des petits ( ou gros ) bouts de dialplan permettant de réaliser n'importe quel fonctionnalités sur mesure.
      On peut pour cela soit écrire un module freepbx, soit dans certains cas, plus simplement on peut utiliser les customs destinations.

      Plutot que détailler un cas non réel, je vais prendre l'exemple d'un besoin exprimé sur asterisk-france.org.
      Il sera plus complet et détaillera l'intégration complète.

      Le besoin exprimé est relativement courant. Le cas d'une TPE qui redirige les appels du fixe vers un portable. Pour des raisons de cout, la tpe utilise souvent la ligne de sa box "gratuite" pour les appels mobiles. On n'a pas la flexibilité des trunks pros et on ne peut malheureusement pas présenter le numéro de l'appelant sur le mobile.

      L'idée est donc de créer un dialplan qui communique les numéros des appels entrants sur le portable en meme temps. Ca peut etre fait par email ou par sms. Je cherchais justement à tester les notifications sms de free mobile...On peut pester sur les defauts de free ( ils en ont ), ils offrent tout de même des services en bonus très sympas comme celui-ci et en plus gratuits.


      Le scénario est le suivant :
      • Appel entrant du callerid x.
      • Interception du workflow de freepbx pour rediriger vers un petit bout de dialplan.
      • Le dialplan custom envoie des la reception de l’appelant les infos au mobile par sms ou email.
      • On renvoie ensuite vers le poste concerné dans le workflow normal de freepbx pour permettre de garder la gestion par l'interface graphique.


      Etape 1 :

      Ecrire des petits scripts permettant d’envoyer email ou sms.
      On les appellera sendsms.sh et sendmail.sh. On les placera dans /var/lib/asterisk/bin/
      On veille à ce que l’utilisateur est bien asterisk et on donne les droits d’execution.

      Code:
      telisk:/var/lib/asterisk/bin# ls -la send*
      -rwxrwxr-x 1 asterisk asterisk  492 Jul 12  2012 sendmail.sh
      -rwxrwxr-x 1 asterisk asterisk 2864 Jun 12 09:32 sendsms.sh
      Voila le script à reprendre pour sendmail.sh:
      Code:
      #!/bin/sh
      #$1 email address
      #$2 time
      #$3 CallerID
      #$4 CallLine
      #$5 EPOCH
      TMPFILE=/var/spool/asterisk/tmp/$5
      echo "FROM: asterisk@telisk.org" >> $TMPFILE
      echo "TO: "$1 >> $TMPFILE
      echo "Subject: Nouvel appel pour  "$4" recu " >> $TMPFILE
      echo ""
      echo "Pour info, vous venez de recevoir un appel sur la ligne "$4" à  "$2", de "$3"." >> $TMPFILE
      echo "" >> $TMPFILE
      echo "Votre serveur Asterisk..." >> $TMPFILE
      echo "" >> $TMPFILE
      echo "." >> $TMPFILE
      /usr/sbin/sendmail $1 < $TMPFILE
      rm $TMPFILE
      Il faut bien sur que sendmail soit correctement configure.

      Pour le script d’envoi de sms avec le service de free mobile, sendsms.sh, d’autres en ont déjà écrit.
      J’en reprends donc un ici que j’ai trouvé sur la toile. J’ai repris le contenu de celui-ci :
      https://github.com/C-Duv/freemobile-...otification.sh
      Il faut bien sur modifier l'identifiant et clé free mobile de l'espace client.

      Etape 2 :
      Création du petit bout de dialplan qui , avant de faire le dial d’une extension locale ( avec follow me sur mobile ), envoie les infos par email et par sms de l’appelant. On peut bien sur n’envoyer que par email ou que par sms en supprimant la ligne correspondante.

      Pour freepbx, voila les 3 lignes à mettre dans /etc/asterisk/extensions_custom.conf

      Code:
      [email-and-dial-100]
      exten => _.,1,System(${ASTVARLIBDIR}/bin/sendmail.sh fcouque@gmail.com "${STRFTIME(,,%c)}" "${CALLERID(name)} ${CALLERID(num)}" "${EXTEN}" "${EPOCH}")
      exten => _.,n,System(${ASTVARLIBDIR}/bin/sendsms.sh  "Nouvel appel de ${CALLERID(name)} <${CALLERID(num)}> sur la ligne ${EXTEN}" )
      exten => _.,n,Goto(from-internal,100,1)
      Notez bien le nom donné au context: email-and-dial-100
      Facile à comprendre : La premiere ligne execute le script d’envoi d’email en passant les parametres. La deuxieme , c’est l’envoi d’un sms qui a l’avantage de passer meme sans data sur le mobile.
      La troixième ligne rebranche vers le dialplan standard de freepbx , ici en appelant le poste 100.

      Etape 3 : Création d’une "custom destination" sous freepbx.

      Aller sur le gui de freepbx et sur la page custom destination.




      Dans custom Destination, saisissez : email-and-dial-100,${EXTEN},1
      Mettez ce que vous voulez dans le champs description et notes.

      Etape 4 : Insertion de la custom destination dans le workflow d’un appel entrant :

      On crée ou on modifie une « inbound route « en mettant comme destination :
      Le choix « custom destinations » , email and dial 100 ( nom donné par vous )



      Et voila, lors d’un appel entrant, si vous utilisez l’envoi sms, vous recevrez en meme temps le sms vous indiquant le numero de l’appelant pour permettre un rappel plus tard ou une identification avant de décrocher.
      Les « custom destinations » abolissent toutes les limites. Ca permet de faire des choses « hors standard » vraiment sur mesure très simplement et facilement.
      Bon tests !!

      Francois.
      Cet article a été publié à l'origine dans la discussion du forum : Tuto: Custom destination et freepbx commencé(e) par fastm3 Afficher le message original
      Commentaires 2 Commentaires
      1. Avatar de tikismoke
        tikismoke -
        Super merci Fastm3, je venais de me poser la question de comment faire. Et hop le tuto qui va bien.

        M'en vais vite tester les notifications pas sms de free pour les appels rediriger.
      1. Avatar de chamakh
        chamakh -
        Tres beau tuto mais jai une preocupation dites comment aller sur le gui freepbx et sur le custom destination cest la ou je suis perdu!!!!!
    • A propos d'Asterisk

      Asterisk

      Asterisk est un IPBX open source (logiciel libre) pour Linux originellement crée en 1999 par Mark Spencer, fondateur de la société Digium.

      logo asterisk
    • Downloads populaires

    • Posts Récents

      slemoal

      SVI bizarre

      connectes toi en CLI

      Code:
      asterisk -rvvvvvv
      Appeles ta messagerie, et composes ton pasword
      si ta dtmf est bonne entre ton poste

      slemoal Hier, 15h24 Aller au dernier message
      slemoal

      Nouveau + question

      Si tu n'as qu'un poste a y raccordé, et que tes seuls besoins sont 1repondeur, 1 gestion de blacklist
      tu peux partir sur un produit type:

      slemoal Hier, 15h17 Aller au dernier message
      giloux

      Nouveau + question

      Bonjour,

      Pour l'instant rien du tout, je suis dans la phase d'approche et je cherche à peser les différentes options.

      giloux Hier, 12h57 Aller au dernier message
      slemoal

      Nouveau + question

      Bonjour Gilloux,
      Tu utilise une distrib genre Wazo, Freepbx etc... ou un asterisk pur?

      slemoal Hier, 11h56 Aller au dernier message
      giloux

      Nouveau + question

      Bonjour à tous,

      Je suis nouveau dans le coin et j'ai débarqué en faisant des recherches sur Asterisk.

      J'ai un petit projet

      giloux 17/11/2017, 13h24 Aller au dernier message
      Sam974

      Patton SN4120 problème pour être joint par certains numéros

      Bonjour,
      J'ai installé une passerelle PATTON SN4120 (2T0) associé à ma solution XIVO Version : 2017.LTS1 (2017.03.04)
      Nous avons des soucis

      Sam974 15/11/2017, 07h51 Aller au dernier message
    • Articles récents

    • Evénements

    • Utilisateurs actuellement connectésUtilisateurs actuellement connectés

      0 membre(s) et 63 invité(s)

      Le record de connectés est de 252, 15/07/2013 à 14h46.

    • Ils nous soutiennent

      logo digium
      logo alter-it
      logo avencall
      logo beronet
      logo celya
      logo cnsi
      logo dolmen
      logo easypyro
      logo eyepea
      logo keyyo
      logo opcom
      logo openip
      logo ovh
      logo qualigaz
      qualistream
      logo voip-asterisk
      logo voxity
      logo yealink