Affichage des rsultats 1 10 sur 10

Discussion: Comment rcuprer un appel entrant depuis un autre tlphone SIP ?

  1. #1
    Membre
    Date d'inscription
    janvier 2017
    Messages
    45
    Merci
    2
    Remerci 0 Fois en 0 Posts

    Downloads
    1
    Uploads
    0

    Question Comment rcuprer un appel entrant depuis un autre tlphone SIP ?

    Bonjour tous,

    Je voudrais savoir comment puis-je faire pour rcuprer un appel sur une extension 101
    via mon extension 103 par exemple. Sauriez-vous comment le faire ?

    Bien vous,
    Lordaker

  2. #2
    Membre Junior
    Date d'inscription
    janvier 2015
    Messages
    27
    Merci
    2
    Thanked 1 Time in 1 Post

    Downloads
    0
    Uploads
    0
    Bonjour,

    Qu'entends tu par "rcuprer un appel" ?
    Est ce que tu veux rcuprer un appel sur le poste 103 quand le tlphone 101 sonne ? dans ce cas il s'agit d'une interception d'appel

    Si je me trompe pourrais tu expliquer plus en dtails ce que tu veux ?
    MrSerein

  3. #3
    Membre
    Date d'inscription
    janvier 2017
    Messages
    45
    Merci
    2
    Remerci 0 Fois en 0 Posts

    Downloads
    1
    Uploads
    0

    Question

    Citation Envoy par MrSerein Voir le message
    Bonjour,

    Qu'entends tu par "rcuprer un appel" ?
    Est ce que tu veux rcuprer un appel sur le poste 103 quand le tlphone 101 sonne ? dans ce cas il s'agit d'une interception d'appel

    Si je me trompe pourrais tu expliquer plus en dtails ce que tu veux ?
    MrSerein
    Oui, je veux raliser l'interception de l'appel sur le 101 via mon tlphone SIP 103 lorsque le 101 sonne.
    Mais je sais pas comment le faire ? Auriez-vous une ide ? Ou est-ce une fonction native d'Asterisk ?

    Bien vous,
    Lordaker

  4. #4
    Asterisk Fan Avatar de fastm3
    Date d'inscription
    aot 2010
    Localisation
    Corbeil Essonnes (91)
    Messages
    1 288
    Merci
    2
    Remerci 43 Fois en 40 Posts

    Downloads
    1
    Uploads
    1
    oui, c'est natif. pas si simple a implementer que ca parait en dialplan meme si mes souvenirs datent de versions plus vraiment actuelles. Wazo ou freepbx integre ca.
    https://wiki.asterisk.org/wiki/display/AST/Call+Pickup
    Tu peux soit faire un pickup general ( *8 par defaut generallement ) , tu recuperes le tel qui sonne du groupe ( attention a bien setter le call group et pickup group des extensions pour que ca marche ) . Ou directed pickup ** ext par defaut habituellement, pour une extension particuliere. Avec un tel avec des touches blf, c'est ce qui se passe sous le capot quand tu interceptes un appel en cours ( touche blf du tel qui clignotte )
    Francois.
    Telisk & Lumicadre
    ↙ Un petit merci ? Suivez la flche...

  5. #5
    Membre
    Date d'inscription
    janvier 2017
    Messages
    45
    Merci
    2
    Remerci 0 Fois en 0 Posts

    Downloads
    1
    Uploads
    0

    Question

    Citation Envoy par fastm3 Voir le message
    oui, c'est natif. pas si simple a implementer que ca parait en dialplan meme si mes souvenirs datent de versions plus vraiment actuelles. Wazo ou freepbx integre ca.
    https://wiki.asterisk.org/wiki/display/AST/Call+Pickup
    Tu peux soit faire un pickup general ( *8 par defaut generallement ) , tu recuperes le tel qui sonne du groupe ( attention a bien setter le call group et pickup group des extensions pour que ca marche ) . Ou directed pickup ** ext par defaut habituellement, pour une extension particuliere. Avec un tel avec des touches blf, c'est ce qui se passe sous le capot quand tu interceptes un appel en cours ( touche blf du tel qui clignotte )
    Francois.
    J'ai lu la documentation mais j'ai pas tout compris mais j'arrive rcuprer les appels en interne
    entre les poste 101, 102 et 103 en composant les numros suivants:

    _*8101 (pour un appel sur le poste 101)
    _*8102 (pour un appel sur le poste 102)
    _*8103 (pour un appel sur le poste 103)

    Code:
    [from-internal]
    ;======================================================= internal Calls
    exten => _1XX,1,NoOp(## Internal Call to the ${EXTEN} ##)
     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 => _*8101,1,Pickup(101@from-internal)
     same => n,Hangup()
    
    exten => _*8102,1,Pickup(102@from-internal)
     same => n,Hangup()
    
    exten => _*8103,1,Pickup(103@from-internal)
     same => n,Hangup()

    Mais pour les appels entrants via mon CID ci-dessous, a fonctionne pas, auriez-vous une ide de comment rsoudre cet difficult ?

    Code:
    [from-external]
    exten => _028992018,1,NoOp(## Incoming Call from ${CALLERID(all)} ##)
     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()
    
    exten => _*8101,1,Pickup(101@from-external)
     same => n,Hangup()

  6. #6
    Membre Senior
    Date d'inscription
    janvier 2011
    Localisation
    Villejuif 94
    Messages
    320
    Merci
    1
    Remerci 22 Fois en 22 Posts

    Downloads
    0
    Uploads
    0
    il faut utiliser la variable PICKUPMARK

    Citation Envoy par lordaker Voir le message
    J'ai lu la documentation mais j'ai pas tout compris mais j'arrive rcuprer les appels en interne
    entre les poste 101, 102 et 103 en composant les numros suivants:

    _*8101 (pour un appel sur le poste 101)
    _*8102 (pour un appel sur le poste 102)
    _*8103 (pour un appel sur le poste 103)

    Code:
    [from-internal]
    ;======================================================= internal Calls
    exten => _1XX,1,NoOp(## Internal Call to the ${EXTEN} ##)
     same => n,Set(__PICKUPMARK=${EXTEN})
     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 => _*8101,1,Pickup(101@from-internal)
    ; same => n,Hangup()
    
    ;exten => _*8102,1,Pickup(102@from-internal)
     ;same => n,Hangup()
    
    ;exten => _*8103,1,Pickup(103@from-internal)
    ; same => n,Hangup()
    
    exten => _*81xx,1,Pickup(${EXTEN:2}@PICKUPMARK)
     same => n,Hangup()

    Mais pour les appels entrants via mon CID ci-dessous, a fonctionne pas, auriez-vous une ide de comment rsoudre cet difficult ?

    Code:
    [from-external]
    exten => _028992018,1,NoOp(## Incoming Call from ${CALLERID(all)} ##)
     same => Set(__PICKUPMARK=101)
     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()
    
    ;exten => _*8101,1,Pickup(101@from-external)
    ; same => n,Hangup()
    

  7. #7
    Membre
    Date d'inscription
    janvier 2017
    Messages
    45
    Merci
    2
    Remerci 0 Fois en 0 Posts

    Downloads
    1
    Uploads
    0

    Question

    Citation Envoy par olppp Voir le message
    il faut utiliser la variable PICKUPMARK
    Salut @olppp,

    Merci pour ta rponse.

    J'ai essay avec PICKUPMARK mais cela ne fonctionne pas. Ni pour les appels en interne que les appels entrants.

    Avec Pickup(${EXTEN}@context), sa fonctionne bien en interne, mais pour les appels externe a fonctionne pas.

    Problme de syntaxe ?

  8. #8
    Membre Senior
    Date d'inscription
    janvier 2011
    Localisation
    Villejuif 94
    Messages
    320
    Merci
    1
    Remerci 22 Fois en 22 Posts

    Downloads
    0
    Uploads
    0
    La casse
    Code:
    exten => _*81XX,1,Pickup(${EXTEN:2}@PICKUPMARK)
     same => n,Hangup()

  9. #9
    Membre
    Date d'inscription
    janvier 2017
    Messages
    45
    Merci
    2
    Remerci 0 Fois en 0 Posts

    Downloads
    1
    Uploads
    0

    Post

    Citation Envoy par olppp Voir le message
    La casse
    Code:
    exten => _*81XX,1,Pickup(${EXTEN:2}@PICKUPMARK)
     same => n,Hangup()
    Non, je l'ai bien crit dans mon fichier extensions.conf

    Code:
    [from-internal]
    ;======================================================= internal Calls
    exten => _1XX,1,NoOp(## Internal Call to the ${EXTEN} ##)
     same => n,Set(_PICKUPMARK=${EXTEN})
     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()

  10. #10
    Membre Senior
    Date d'inscription
    janvier 2011
    Localisation
    Villejuif 94
    Messages
    320
    Merci
    1
    Remerci 22 Fois en 22 Posts

    Downloads
    0
    Uploads
    0

    Essayes en prcisant le context
    pas de soulign devant une extension, seulement pour dclarer 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 souligns 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()

Les tags pour cette discussion

Rgles de messages

  • Vous ne pouvez pas crer de nouvelles discussions
  • Vous ne pouvez pas envoyer des rponses
  • Vous ne pouvez pas envoyer des pices jointes
  • Vous ne pouvez pas modifier vos messages
  •