Files d’attente d’appels et points de routage
Une file d’attente d’appels ou un point de routage est une adresse spéciale dans le commutateur où les appels sont temporairement conservés en attente d’action. Cette caractéristique est représentée par les bits LINEADDRCAPFLAGS_QUEUE et les LINEADDRCAPFLAGS_ROUTEPOINT dans le membre dwAddrCapFlags dans LINEADDRESSCAPS. Tous les appels qui apparaissent sur une telle adresse sont en attente d’action par l’application, et il peut y avoir des actions par défaut qui se produisent (par exemple, transférer vers un agent ou une jonction) si l’application n’effectue aucune action dans un délai défini. L’application doit être configurée par l’administrateur système afin qu’elle sache quelles actions elle doit effectuer en ce qui concerne les appels apparaissant sur chaque adresse de point de file d’attente ou de point de routage, ainsi que le temps nécessaire pour décider de l’action à entreprendre.
Les applications peuvent déterminer le nombre d’appels en attente dans une file d’attente ou un point de routage à l’aide de lineGetAddressStatus. La fonction lineGetCallInfo peut être utilisée pour obtenir des informations telles que l’ID d’appel, l’ID appelé, l’origine entrante ou sortante, et ainsi de suite, et utilisées par l’application pour prendre des décisions sur la gestion des appels ; les appels peuvent être redirigés, transférés en aveugle, supprimés, et ainsi de suite, ou simplement autorisés à passer automatiquement la file d’attente à une destination. Un appel passe à LINECALLSTATE_DISCONNECTED s’il est abandonné. Les appels passent inactifs lorsqu’ils quittent la file d’attente ; lineGetCallInfo pouvez être utilisé pour lire l’identificateur de redirection pour déterminer où ils ont été transférés.
Certains commutateurs permettent aux appels dans une file d’attente ou en attente de recevoir un traitement particulier tel que le silence, la sonnerie, le signal occupé, la musique ou l’écoute d’une annonce enregistrée. La fonction lineSetCallTreatment permet à l’application de contrôler le traitement. La structure délimitée par le dwCallTreatmentListSize et dwCallTreatmentListOffset membres dans LINEADDRESSCAPS permet aux applications de déterminer les traitements pris en charge. Le membre dwCallTreatment dans LINECALLINFO indique le traitement actuel, et un message LINE_CALLINFO avec LINECALLINFOSTATE_TREATMENT indique quand cela change. Le bit LINECALLFEATURE_SETTREATMENT dans le dwCallFeatures membre dans LINECALLSTATUS indique quand l’application est autorisée à modifier le traitement. Le LINECALLTREATMENT_ ensemble de constantes définit un ensemble limité de traitements d’appel prédéfinis ; Les fournisseurs de services peuvent définir de nombreux autres.