PDA

Voir la version complète : Envoyer une variable d'asterisque dans un fichier bash agi



xunil2003
20/04/2012, 14h58
Bonjour,

Je voudrai savoir comment envoyer une variavle d'asterisque dans un fichier bash agi

dans asterisk ma variable

exten => 2236,n,AGI(/var/lib/asterisk/agi-bin/ordre.agi,${MODULE},${ACTION})

dans mon fichier bash ordre.agi

#!/bin/sh
MODULE=$1
ACTION=$2
CODE=e

/usr/bin/commande $CODE $MODULE $ACTION

Esce correct pour récupérer une variable ?

Merci.

wana
20/04/2012, 15h09
Je ne connais pas encore les AGIs mais j'ai envoyé des variables dans un script en utilisant la commande system()

xunil2003
20/04/2012, 16h36
Bonjour,

J'ai vérifié, c'est asterisk qui n'envoie pas la variable au fichier ordre.agi
j'ai du faire une erreur dans le code asterisk ?

Dans cli j'ai un message qui dit erreur

ordre.agi,1,1: Failed to execute '/var/lib/asterisk/agi-bin/ordre.agi': Exec format error
Que signifie cette erreur exactement ?
Que faut il faire pour rectifier l'erreur ?



exten => 2236,1,Answer()
exten => 2236,n,Playback(/lib/asterisk/sounds/custom/choix_module)
exten => 2236,n,Read(MODULE,,1)
exten => 2236,n,SayNumber(${MODULE})
exten => 2236,n(boucle),Playback(/lib/asterisk/sounds/custom/choix_action
exten => 2236,n,Read(ACTION,,1)
exten => 2236,n,SayNumber(${ACTION})
exten => 2236,n,AGI(/var/lib/asterisk/agi-bin/ordre.agi,${MODULE},${ACTION})
exten => 2236,n,HangUp()

CLI> core show application AGI

EAGI(), DeadAGI()
== Using SIP RTP CoS mark 5
-- Executing [2236@maison:1] Answer("SIP/12-00000001", "") in new stack
-- Executing [2236@maison:2] Playback("SIP/12-00000001", "/lib/asterisk/sounds/custom/choix_module") in new stack
-- <SIP/12-00000001> Playing '/lib/asterisk/sounds/custom/choix_module.slin' (language 'fr')
-- Executing [2236@maison:3] Read("SIP/12-00000001", "MODULE,,1") in new stack
-- Accepting a maximum of 1 digits.
-- User entered '1'
-- Executing [2236@maison:4] SayNumber("SIP/12-00000001", "1") in new stack
-- <SIP/12-00000001> Playing 'digits/1.slin' (language 'fr')
-- Executing [2236@maison:5] Playback("SIP/12-00000001", "/lib/asterisk/sounds/custom/choix_action") in new stack
-- <SIP/12-00000001> Playing '/lib/asterisk/sounds/custom/choix_action.slin' (language 'fr')
-- Executing [2236@maison:6] Read("SIP/12-00000001", "ACTION,,1") in new stack
-- Accepting a maximum of 1 digits.
-- User entered '1'
-- Executing [2236@maison:7] SayNumber("SIP/12-00000001", "1") in new stack
-- <SIP/12-00000001> Playing 'digits/1.slin' (language 'fr')
-- Executing [2236@maison:8] AGI("SIP/12-00000001", "ordre.agi,1,1") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/ordre.agi
ordre.agi,1,1: Failed to execute '/var/lib/asterisk/agi-bin/ordre.agi': Exec format error
-- Executing [2236@maison:9] Playback("SIP/12-00000001", "thanks-for-using") in new stack
-- <SIP/12-00000001> Playing 'thanks-for-using.slin' (language 'fr')
-- Executing [2236@maison:10] Playback("SIP/12-00000001", "vm-goodbye") in new stack
-- <SIP/12-00000001> Playing 'vm-goodbye.slin' (language 'fr')
-- Executing [2236@maison:11] Hangup("SIP/12-00000001", "") in new stack
== Spawn extension (maison, 2236, 11) exited non-zero on 'SIP/12-00000001'
debian*CLI>


Merci.

celya
21/04/2012, 16h11
Question a deux centimes, tu a quoi comme droits sur ton fichier /var/lib/asterisk/agi-bin/ordre.agi ?