2017-06-08 3 views
-2

Nous avons un portail où le client définit le transfert d'appel simultané maximum sur un nombre. Les premiers appels arrivent à notre adresse IP, nous transmettons ensuite ces appels à certains numéros (définis par le client pour cela). Nous devons nous assurer que les appels transférés sont inférieurs ou égaux à la limite maximale définie des appels simultanés sur un nombre. Nous utilisons astérisque comme logiciel de téléphonie et phpagi comme bibliothèque d'agi.Comment vérifier et restreindre les appels simultanés sur un nombre en astérisque php agi?

Comment puis-je trouver le nombre d'appels simultanés déjà présents sur un nombre, avant de transférer un nouvel appel via mon script agi.

S'il vous plaît suggérer une manière appropriée de le faire.

Y a-t-il un moyen intégré, qui limitera automatiquement la poursuite du renvoi lorsqu'un certain nombre d'appels simultanés (déjà réglés pour cela) est déjà atteint?

Répondre

-1

Vous pouvez utiliser les fonctions de numérotation GROUP et GROUP_COUNT.

En AGI, vous pouvez le faire via

$agi->set_full_variable("new_var",'${GROUP_COUNT(group_name)}')

pro-sip*CLI> core show function GROUP 

    -= Info about function 'GROUP' =- 

[Synopsis] 
Gets or sets the channel group. 

[Description] 
<category> can be employed for more fine grained group management. Each channel 
can only be member of exactly one group per <category>. 

[Syntax] 
GROUP([category]) 

[Arguments] 
category 
    Category name. 

[See Also] 
Not available 



pro-sip*CLI> core show function GROUP_COUNT 

    -= Info about function 'GROUP_COUNT' =- 

[Synopsis] 
Counts the number of channels in the specified group. 

[Description] 
Calculates the group count for the specified group, or uses the channel's 
current group if not specifed (and non-empty). 

[Syntax] 
GROUP_COUNT([groupname][@category]) 

[Arguments] 
groupname 
    Group name. 
category 
    Category name 

[See Also] 
Not available 

https://www.voip-info.org/wiki/view/Asterisk+func+group