[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [un peu HS] Pickup dans asterisk



didier gaumet a écrit :
> Le 18/04/2025 à 11:26, BERTRAND Joël a écrit :
>>     Bonjour à tous,
>>
>>     Je suis désolé d'être un peu hors charte, je n'arrive pas à
>> trouver une
>> solution à un problème de configuration et les forums asterisk ne sont
>> vraiment pas très actifs. Les seules informations trouvées ne permettent
>> pas de résoudre mon problème.
>>
>>     J'ai installé un serveur asterisk sur une machine Debian :
>> Asterisk 22.3.0~dfsg+~cs6.15.60671435-1, Copyright (C) 1999 - 2025,
>> Sangoma Technologies Corporation and others.
>> Created by Mark Spencer <markster@digium.com>
>>
>>     Je pense avoir à peu près tout configuré correctement, ce serveur
>> asterisk me sert depuis bientôt deux ans.
>>
>>     J'ai le dialplan suivant (simplifié, j'ai plus de SDA que cela) :
>>
>> [global]
>>     include => parkedcalls
>>
>> [output-id]
>>          exten => s,1,NoOp(## Your CallerID is : ${CALLERID(num)} ##)
>>                  same => 2,GotoIf($[${CALLERID(num)} = 6001]?3:5)
>>                  same => 3,Set(CALLERID(all)=Systella SAS <xxxxxxxxxxx>)
>>                  same => 4,Return()
>>                  same => 5,Set(CALLERID(all)=Systella SAS <xxxxxxxxxxx>)
>>                  same => 6,Return()
>>
>> [internal]
>>          exten => _60XX,1,Dial(PJSIP/${EXTEN},,tT)
>>                  same => n,Hangup()
>>          exten => _00[1-79]XXXXXXXX,1,Answer()
>>                  same => n,Gosub(output-id,s,1)
>>                  same => n,Dial(PJSIP/${EXTEN:1}@SBSR)
>>                  same => n,Hangup()
>>
>> [sbsr]
>>          exten => +xxxxxxxxxxx,1,Dial(PJSIP/6001,30,tT)
>>                  same => n,Dial(PJSIP/6001 & PJSIP/6002)
>>                  same => n,Hangup()
>>          exten => +xxxxxxxxxxx,1,Dial(PJSIP/6002,30,tT)
>>                  same => n,Dial(PJSIP/6002 & PJSIP/6001)
>>                  same => n,Hangup()
>>
>>     Ça fonctionne. Dans le fichier features.conf, j'ai écrit :
>>
>> [general]
>> xfersound = beep
>> xferfailsound = beeperr
>> pickupexten = *8
>> pickupsound = beep
>> pickupfailsound = beeperr
>> featuredigittimeout = 2000
>> atxferabort = *1
>> atxfercomplete = *2
>> atxferthreeway = *3
>> atxferswap = *4
>>
>> [featuremap]
>> atxfer => *2
>> blindxfer => #2
>>
>>     Je peux transférer des appels, les récupérer, avoir des conférences à
>> trois... La seule chose que je n'arrive pas à faire fonctionner, c'est
>> le pickup. Normalement, lorsqu'un téléphone sonne, je peux le récupérer
>> avec *8. Sauf que non.
>>
>>     Exemple :
>>
>>      -- Executing [+xxxxxxxxxx@sbsr:1] Dial("PJSIP/SBSR-00000001",
>> "PJSIP/6002,30,tT") in new stack
>>      -- Called PJSIP/6002
>>      -- PJSIP/6002-00000002 is ringing
>>         > 0x7f8a880a0640 -- Strict RTP learning after remote address set
>> to: 192.168.10.253:16402
>>         > 0x7f8a880a0640 -- Strict RTP switching to RTP target address
>> 192.168.10.253:16402 as source
>>
>>     Je prends un autre téléphone et je tape *8. Je n'obtiens qu'une
>> erreur
>> (et rien d'utilisable dans les logs).
>>
>>      -- <PJSIP/6001-00000003> Playing 'beeperr.gsm' (language 'fr')
>>
>>     J'ai essayé avec ou sans les ring_group et call_group, j'ai
>> toujours la
>> même erreur.
>>
>>     Je prends toute suggestion, y compris un pointeur vers une doc
>> exhaustive.
>>
>>     Merci de vos lumières,
>>
>>     JB
>>
> 
> Bonjour,
> 
> avertissement: le réseau (en général et asterisk en particulier) et moi
> ça fait deux
> 
> deuxième avertissement: j'ai pas réellement étudié ta conf ni la doc
> asterisk, donc je vais peut-être dire des choses sans intérêt dans ton cas
> 
> La doc est là: https://docs.asterisk.org/
> 
> 1) il y a un truc qui pourrait éventuellement t'intéresser :
> https://docs.asterisk.org/Asterisk_16_Documentation/API_Documentation/Module_Configuration/features/?h=features.conf#atxferswap
> 
> "[...]
> pickupexten¶
> 
> In order for the pickup attempt to be successful, the party attempting
> to pick up the call must either have a namedpickupgroup in common with a
> ringing party's namedcallgroup or must have a pickupgroup in common with
> a ringing party's callgroup.
> [...]"
> Cette condition est-elle remplie?

	Oui. J'ai essayé avec et sans cette condition (pour voir les messages
d'erreur éventuels). Même motif, même punition.

> 2) il y a une partie de la doc qui concerne spécifiquement le pickup et
> qui explique les différentes méthodes comme les contextes à mettre en
> oeuvre:
> https://docs.asterisk.org/Configuration/Features/Call-Pickup/
> ça pourrait être intéressant de vérifier que les différentes variables
> sont positionnées correctement (peut-être qu'une mise à jour ou un autre
> évènement a fait sauter une partie de ton contexte, ce qui expliquerait
> que ça marchait avant et plus maintenant)
> 
> 3) a priori d'après
> https://docs.asterisk.org/Configuration/Channel-Drivers/Mobile-Channel/Mobile-Channel-Debugging/?h=debug
> 
> tu peux activer le debugging comme suit:
> "turn on Asterisk debugging with 'core set debug 1'"
> pour avoir des messages d'erreur plus parlants

	J'ai naturellement déjà fait tout cela :-(

	Mais merci pour l'aide,

	JB

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: