Interaction ld et asterisk
#1
Est ce quelqun a deja fait des interaction de ld et asterisk
Ex lors de la reception d'un appel eteindre les sonos
merci pour vos retours
Répondre
#2
Pas beaucoup d'amateur !!!

Mes premiers retours d'expérience:

avec le connecteur ecoute universel de la LD j'ai trouvé une solution facile a mettre en œuvre.

J'ai créer un connecteur d’écoute qui attend une valeur appel.

dans le dialplan de asterisk j'ai rajouter une ligne lors d'un appel entrant (exten =s,1,system(curl "http://ipld:8080/UniversalListen?appel=debut)

et la même ligne avec appel=fin au raccroché.

la variable est récupérée dans la LD et par exemple je baisse le volume des sonos lors d'un appel et je les rallument ensuite.

A essayer:
-standard auto avec fonction domotique
-récupérer identifiant de l'appelant et l'afficher
-lors d'un evenement sur la LD appeler un numéro
Répondre
#3
Très intéressant, merci d'avoir partagé ce retour
Répondre
#4
Très intéressante. as-tu installé Astérisk sur un raspberry...
Répondre
#5
Jlr a écrit :Très intéressante. as-tu installé Astérisk sur un raspberry...


Installé sur un synology Boitier grandstream fxo et fxs, ligne de la livebox et 2 num sip ovh
Répondre
#6
889laurent a écrit :Pas beaucoup d'amateur !!!

Mes premiers retours d'expérience:

avec le connecteur ecoute universel de la LD j'ai trouvé une solution facile a mettre en œuvre.

J'ai créer un connecteur d’écoute qui attend une valeur appel.

dans le dialplan de asterisk j'ai rajouter une ligne lors d'un appel entrant (exten =s,1,system(curl "http://ipld:8080/UniversalListen?appel=debut)

et la même ligne avec appel=fin au raccroché.

la variable est récupérée dans la LD et par exemple je baisse le volume des sonos lors d'un appel et je les rallument ensuite.

A essayer:
-standard auto avec fonction domotique
-récupérer identifiant de l'appelant et l'afficher
-lors d'un evenement sur la LD appeler un numéro

j'avance! J'arrive maintenant a lancer un appel depuis la ld et lors du décroché diffuser un message.
j'attaque avec le connecteur http un script php ( sur le syno) qui dépose un fichier (avec info appelant,appelé) dans un répertoire d'asterisk
Répondre
#7
A quoi servent les gateways fxo et fxs dans votre installation ?
Répondre
#8
[quote=Vincent]A quoi servent les gateways fxo et fxs dans votre installation ?[/QUOTE
fxo pour raccorder la ligne de la livebox et fxs les postes analogique interne ( portier, dect, ....)
Répondre
#9
Petit retour d'experience de la LD avec Asterisk.

j'ai créer un scenario sous la LD permettant de diffuser un message téléphoné lors d'un evenement. Ce scenario utilise un equipement universel qui,lance un script PHP sous un serveur synology qui heberge ASTERISK et un web serveur avec PHP

le script:
Citation :<?php
$tts = $_GET['tts'];
$soun = "";
$soun = exec('echo -n '.$tts.' | /opt/bin/md5deep');
$sound = $soun.".mp3";
$sound2 = $soun.".wav";
$tts = '"http://translate.google.com/translate_tts?ie=UTF-8&q='.urlencode($tts).'&tl=fr&client=t"';
$cmd= ' curl -H "Referer: http://translate.google.com/" -H "User-Agent:stagefright/1.2 (Linux;Android 5.0)" '.$tts.' > /volume1/scripts/wav/'.$sound;
exec ($cmd);
$cmd2= '/opt/bin/mpg123 -r 8000 -w /volume1/scripts/wav/'.$sound2.' /volume1/scripts/wav/'.$sound;
exec ($cmd2);
unlink('/volume1/scripts/wav/'.$sound);
//unlink('/volume1/scripts/Asterisk/appel.txt');
$file = fopen("/volume1/scripts/Asterisk/appel.call", "w+");
fputs($file, 'Channel: SIP/500/06xxxxxxxxx
CallerID: "Message" <80>
MaxRetries: 10
RetryTime: 5
WaitTime: 20
Context: diff-mess
Extension: 10
Set: Mavariable='.$soun);
fclose($file);
rename ("/volume1/scripts/Asterisk/appel.call", "/volume1/@appstore/Asterisk/var/spool/asterisk/outgoing/appel1.call");
?>

Ce script récupére dans la variable tts le message a diffuser
il créer un fichier codé en MD5 avec l'utilitaire md5deep
il utilise l'API de google pour faire un fichier en MP3 du message
il est transformé de MP3 en Wav avec l'utilitaire MPG123
il créer un fichier lisible par asterisk et le dépose dans le répertoire d'asterisk adapté

Dans asterisk il faut faire un dialplan permettant de diffuser le message

extrait dialplan asterisk
Citation :[diff-mess]

exten = 10,1,Answer()
exten = 10,n,Wait(4)
exten = 10,n,set(path=/volume1/scripts/wav)
exten = 10,n,Playback(${path}/${Mavariable})
exten = 10,n,Wait(1)
exten = 10,n,Hangup()

Lors du déclenchement su scenario Asterisk appelle un téléphone et lui lit le message

JE me suis fortement inspiré du tuto suivant (http://www.nas-forum.com/forum/topic/466...de-google/)

De la même manière on peut récupérer des variable de la LD (température, consommation ,....) et les diffuser par téléphone.

Prochaine étape, standard automatique permettant de commander les différentes fonction de la maison.

Message pour l'équipe de LD, pourquoi ne pas integrer en natif ce genre d'interaction avec un serveur de téléphonie car dans toutes installation domotique, il y a la gestion "électrique", la vidéo et la téléphonie
Répondre
#10
889laurent a écrit :Message pour l'équipe de LD, pourquoi ne pas integrer en natif ce genre d'interaction avec un serveur de téléphonie car dans toutes installation domotique, il y a la gestion "électrique", la vidéo et la téléphonie

Où alors donner la possibilité de stocker des scripts php directement dans la box LD et de les retrouver dans les automates/scénario etc...

Christophe
Répondre




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