Bonjour,

Je suis en train de mettre un système de réveil sur Asterisk. Pour cela j'utilise les fichiers .call.

Dans mon Extensions.conf, j'ai mis :

Code:
[reveil]
        exten => _*77*XXXXXXXXXXXX,1,Answer()
        exten => _*77*XXXXXXXXXXXX,n,Set(year=${EXTEN:4:4})
        exten => _*77*XXXXXXXXXXXX,n,Set(month=${EXTEN:8:2})
        exten => _*77*XXXXXXXXXXXX,n,Set(day=${EXTEN:10:2})
        exten => _*77*XXXXXXXXXXXX,n,Set(hours=${EXTEN:12:2})
        exten => _*77*XXXXXXXXXXXX,n,Set(minutes=${EXTEN:14:2})
        exten => _*77*XXXXXXXXXXXX,n,NoOp(Wake-up call scheduled for ${CALLERID(num)} at ${hours}:${minutes} on ${day}.${month}.${year}.)
        exten => _*77*XXXXXXXXXXXX,n,System(echo -e "Channel: SIP/${CALLERID(num)}\\nContext: wake-up\\nExtension: 23" > /tmp/${UNIQUEID}.call)
        exten => _*77*XXXXXXXXXXXX,n,System(touch -t ${year}${month}${day}${hours}${minutes} /tmp/${UNIQUEID}.call)
        exten => _*77*XXXXXXXXXXXX,n,System(mv /tmp/${UNIQUEID}.call /var/spool/asterisk/outgoing/)
        exten => _*77*XXXXXXXXXXXX,n,Playback(rqsted-wakeup-for)
        exten => _*77*XXXXXXXXXXXX,n,SayNumber(${hours})
        exten => _*77*XXXXXXXXXXXX,n,SayNumber(${minutes})
        exten => _*77*XXXXXXXXXXXX,n,Hangup()

[wake-up]
        exten => 23,1,Answer()
        exten => 23,n,Wait(1)
        exten => 23,n,Playback(this-is-yr-wakeup-call)
        exten => 23,n,Wait(1)
        exten => 23,n,Hangup()
Lorsque je défini un réveil sur mon téléphone, j'ai bien la création de mon fichier .call. Le soucis vient de la commande SYSTEM :

Code:
exten => _*77*XXXXXXXXXXXX,n,System(echo -e "Channel: SIP/${CALLERID(num)}\\nContext: wake-up\\nExtension: 23" > /tmp/${UNIQUEID}.call)
Le écho -e est mal interprété et me donne cela :

Code:
Channel: SIP/captainnContext: wake-upnExtension: 23
au lieu de :

Code:
Channel: SIP/captain
Context: wake-up
Extension: 23
Lorsque j'exécute la commande echo -e dans un terminal, cela se fait bien comme il faut.

Une idée?

Yann