Erro com componente Async
28/01/2006
0
Estou usando o componente Async para fazer um programa que atenda chamas telefônicas, e, receba os números digitados no teclado pela pessoa que originou a chamada.
Para saber como anda a ligação e que mensagem devo mandar, uso assim:
Const
Estadoatual : Integer = 0;
Boasvindas = 0;
.
.
.
O meu problema vem no seguinte código:
Estadoatual := Boasvindas;
Que seria determinar que a ligação está no começo, mas quando tento executar dá o seguinte erro, e já tentei de tudo mas não funciona:
[Error] ExVoice0.pas(142): Left side cannot be assigned to
Este é o erro.
Por favor, quem puder me ajudar, ficarei muito grato...
Franthesco
Posts
30/01/2006
Massuda
Nas versões mais antigas do Delphi, o default era que constantes tipadas pudessem ser alteradas.
Nas versões mais novas o default é que constantes são constantes, mas você pode habilitar o comportamento antigo marcando a opção [b:ef2584ae89]Assignable typed constants[/b:ef2584ae89] em[b:ef2584ae89]Project|Options|Compiler[/b:ef2584ae89] ou simplesmente declare EstadoAtual como sendo uma variável ao invés de constante.
30/01/2006
Franthesco
Agora, meu problema está em transferir a ligação, eu coloco uma wave para tocar, mas ela toca no telefone destino, e não no telefone que originou a chamada...
Estou fazendo assim:
ApdTapiDevice.SendTone (´! 36´);
ApdTapiDevice.PlayWave (´Caminho da wave´);
Mas, como disse, ele toca no telefone destino...
Outra coisa, como eu poderia fazer para que a wave parasse automaticamente, após o ramal atender. Atualmente, eu não estou usando wave nas transferências, simplemente, mando transferir, e dou um cancelcall. Mas o certo, creio eu, seria só dar o cancelcall após o ramal destino atender, enquanto isso, o sistema fica enviando uma musiquinha....
Bem, desde já agradeço a ajuda...
Abraços a todos!
30/01/2006
Massuda
Não tenho certeza, mas acho que depois que você manda...
30/01/2006
Franthesco
Consegui resolver os problemas...
Obrigado por sua ajuda!!!
Abraços!
31/01/2006
Franthesco
Agora estou com outro problema... Não sei nem por onde começar...
É o seguinte...
A pessoa liga para a empresa, o computador (ramal 1) atende, solicita que a pessoa digite informações, e, se as informações coincidirem com o que há no banco de dados, transfere para o ramal 2. Até aí tudo bem...
O problema é : como saber se o ramal 2 está ocupado, para transferir a ligação mais tarde, ou até mesmo outro ramal (como um atendente faria) e também, como saber que o ramal 2 atendeu, para cortar a relação:
Telefone que originou - Ramal 1 (Computador)
E deixá-la assim:
Telefone que originou - Ramal 2 (Operador)
Bem... Não sei se fui claro...
Uso um PABX Batik Flex 4... Delphi 7.0... Componente AsyncTurboPro...
Quem puder me ajudar, ficarei muitissimo grato...
Abraços a todos!
01/02/2006
Franthesco
To realmente precisnado...
Pelo menos de uma luz, uma dica, uma sugestão...
Abraços...
Clique aqui para fazer login e interagir na Comunidade :)