Problema ISSABEL + PHP

1. Problema ISSABEL + PHP

Thiago
thiagomagas

(usa Debian)

Enviado em 28/07/2021 - 18:19h


Possuo um ISSABEL que utilizo da seguinte maneira:
- Um sistema externo envia um comando para o Issabel, para que ele realize uma ligação, toque um audio e recolha digitos DTMF
- Isso é feito através de um arquivo PHP criado no Issabel, que utiliza o fsockopen para conectar ao CLI e enviar os comandos que realiza a ligação

Porém, estou com dois problemas:
1) Não consigo inserir um tempo de limite máximo que a ligação pode ficar ativa. Ex: A ligação é enviada, a pessoa atende, e não realiza nenhuma ação. Gostaria de colocar por exemplo um tempo máximo de 90 segundos para a ligação ser encerrada.

2) Preciso buscar informações de duração da ligação que foi enviada. Para isso eu acesso a tabela "cdr" no bando de dados "asteriskcdrdb". Más as colunas "duration" e "billsec" não mostram a informação corretas. Percebi que no momento que o Issabel recebe o comando para fazer a nova ligação, ele já cria o registro na tabela "cdr" e sempre coloca valores baixos nas duas colunas referentes ao tempo.

Alguém sabe como posso resolver esses problemas? Obrigado desde já.


  


2. Re: Problema ISSABEL + PHP

leandro peçanha scardua
leandropscardua

(usa Ubuntu)

Enviado em 29/07/2021 - 21:08h

Talvez seja o caso de instalar um bilhetador (billing) à parte e integrar.


3. Re: Problema ISSABEL + PHP

Thiago
thiagomagas

(usa Debian)

Enviado em 03/08/2021 - 09:56h

Não é o caso.


4. Re: Problema ISSABEL + PHP

Buckminster
Buckminster

(usa Debian)

Enviado em 05/08/2021 - 00:08h

1 - https://forum.issabel.org/d/1000-limitar-dura-o-da-chamada-limit-call-duration

No caso desse primeiro problema acredito que tu queira lidar com o tal "silêncio" que é quando a pessoa atende e não fala nada ou não realiza nenhuma ação das opções da gravação.
Tu pode colocar 90 segundos e a ligação ser encerrada, mas e se a pessoa começar a conversar ou realizar alguma ação dentro desse tempo?
https://www.youtube.com/watch?v=Ly9E66Y5tKA

Nesse caso, a ligação é enviada, a pessoa atende e não realiza nenhuma ação... como tu colocou antes: "Um sistema externo envia um comando para o Issabel, para que ele realize uma ligação, toque um audio...", então no teu código PHP ou nesse sistema externo limite o áudio para ser repetido 2 ou 3 vezes e desligar automaticamente (encerrar a ligação) se ninguém realizar nenhuma ação no outro lado.

O Issabel é um fork do Elastix e o Elastix é uma distro Linux com Asterisk e outras funcionalidades para telecomunicações.
O Issabel não tem documentação oficial.
Veja se te ajuda a partir da página 278:
Limitar llamadas con tiempo predefinido
https://ufpr.dl.sourceforge.net/project/elastix/Tutorials_Docs_Manuals/Elastix%20a%20Ritmo%20de%20Me...

2 - O teu problema 2 não entendi direito, pois na tabela e nas colunas que tu citou é onde ficam armazenadas as durações das ligações.
Talvez os registros não estejam indo para o destino correto.
Dê uma olhada nisso:
https://forum.issabel.org/d/2548-recording-is-missing-when-using-queue-continue-destination/3

Enfim, somente dei sugestões, pois não sei qual é esse "sistema externo" e quem tem acesso ao código PHP é você, mas talvez a partir daí te dê uma luz.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts