Essayes en précisant le context
pas de souligné devant une extension, seulement pour déclarer les pattern.
Code:
[from-external]
;exten => _028992018,1,NoOp(## Incoming Call from ${CALLERID(all)} ##)
exten => 028992018,1,NoOp(## Incoming Call from ${CALLERID(all)} ##)
 same => Set(__PICKUPMARK=101@from-external)
 same => n,Ringing()
 same => n,Set(NOW=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S)})
 same => n,System(echo "--appel_sortant --- callerid : ${CALLERID(num)} ---- ${STRFTIME(${EPOCH},,%Y/%m/%d %H:%M:%S)} ----" >> /var/spool/asterisk/log/debug.txt)
 same => n,Set(REC_FILE_NAME=OUT_${NOW}_${EXTEN}_${POSTE}.wav)
 same => n,MixMonitor(${REC_FILE_NAME},b V(1))
 same => n,Set(TYPE=IN)
 same => n,Set(ODBC(CALLSHISTORY()=${NOW},${POSTE},${CALLERID(num)},${EXTEN},${TYPE}))
 same => n,Dial(PJSIP/101,60)
 same => n,VoiceMail(101)
 same => n,Hangup()
encore il faut 2 soulignés pour que la variable persiste.
Code:
[from-internal]
;======================================================= internal Calls
exten => _1XX,1,NoOp(## Internal Call to the ${EXTEN} ##)
 same => n,Set(__PICKUPMARK=${EXTEN}@from-internal)
 same => n,Ringing()
 same => n,Set(NOW=${STRFTIME(${EPOCH},,%Y%m%d_%H%M%S)})
 same => n,Set(REC_FILE_NAME=OUT_${NOW}_${EXTEN}_${POSTE}.wav)
 same => n,MixMonitor(${REC_FILE_NAME},b V(1))
 same => n,Dial(PJSIP/${EXTEN},20)
 same => n,VoiceMail(${EXTEN},u)
 same => n,Hangup()

;======================================================== Pickup Phone Calls
exten => _*81XX,1,Pickup({$EXTEN:2}@PICKUPMARK)
 same => n,Hangup()