Integrações - Web Phone¶
VoIPstudio oferece um widget WebRTC para telefone Web, que pode ser facilmente incorporado em qualquer aplicação HTML. É uma forma fácil de permitir a telefonia VoIP em sistema CRM personalizado e outras aplicações web.
Instalação¶
VoIPstudio O web phone está disponível em https://voipstudio.pt/webphone/ - para o adicionar ao seu próprio website utilize a tag 'iframe' como abaixo:
<iframe id="webphone" src="https://voipstudio.pt/webphone/" height="600" width="400" allow="microphone" title="VoIPstudio Web Phone"></iframe>
Isto resultará num widget Web Softphone incorporado na página web.
Fazer e Receber chamadas¶
Para começar a fazer e receber chamadas usando VoIPstudio Web Softphone login com o seu VoIPstudio endereço de correio eletrónico e palavra-passe. Em seguida, utilizando o teclado, introduza o número que deseja marcar e clique no botão 'Call'.
JavaScript API¶
VoIPstudio WebPhone inclui API JavaScript simples de usar com métodos que permitem gerir o softphone a partir de código de terceiros. A instância WebPhone também emite eventos que podem ser utilizados por qualquer aplicação Web para adicionar facilmente a funcionalidade de telefonia VoIP.
Para utilizar o JavaScript API, para além de adicionar o elemento IFRAME
como descrito acima, adicione também o seguinte à sua secção da página <head>
:
<script type="text/javascript" src="https://voipstudio.pt/webphone/api.js"></script>
Em seguida, uma instância WebSoftphone pode ser rubricada como abaixo:
var webPhone = __webphone.init(document.getElementById('webphone'));
Eventos¶
A instância WebSoftphone emite eventos como descrito abaixo:
ready
: A instância WebSoftphone está pronta a ser utilizada, para além disso, estão disponíveis os seguintes dados:- para utilizador registado:
{"logged":true,"userId":10002,"userToken":"abcdef9dcec5185987654321"}
- para softphone não autenticado:
{"logged":false}
- para utilizador registado:
login
: utilizador entrou com sucesso no WebSoftphone:- event data:
{"userId":10002,"userToken":"abcdef9dcec5185987654321"}
- event data:
logout
: o utilizador saiu do WebSoftphone
Além disso, os eventos seguintes são ativados quando o estado da chamada muda:
initial
: chamada de saída está a ser ligadaringing
: chamada recebida está a tocaraccepted
: chamada de entrada ou de saída está ligadahangup
: as chamadas de entrada ou de saída são terminadashold
: a chamada é colocada em espera-
unhold
: a chamada é tirada de espera -
callstate
: apanhar todos os eventos de mudança de estado de chamada, ativado em qualquer um dos eventos de chamada acima descritos
Métodos¶
Os seguintes métodos podem ser executados em instância WebSoftphone:
WebSoftphone.login(email, password, successCalback, failureCallback)
: iniciar sessão com e-mail e palavra-chave e executarsuccessCalback
orfailureCallback
WebSoftphone.logout()
: logout a partir de WebSoftphoneWebSoftphone.call(number)
: fazer uma chamada de saída para onumber
WebSoftphone.answer()
: atender chamada recebida em estado de toqueWebSoftphone.hangup()
: terminar a chamadaWebSoftphone.hold()
: colocar chamada em esperaWebSoftphone.unhold()
: tirar chamada em esperaWebSoftphone.mute()
: entrada de microfone silenciosoWebSoftphone.unmute()
: entrada de microfone ligado
Pode ser encontrada uma implementação de demonstração on Github here