Professional Documents
Culture Documents
Webrtc Agent Console Manual Rev 1.1
Webrtc Agent Console Manual Rev 1.1
By mreyesvera@digital-merge.com 1
Introduction.
Thank you for installing the addon WebRTC Agent Console. This addon enable another Agent console for the Elastixs Call Center Module, but this console has an embedded telephone and instant messaging service based on the WebRTC API SIPML5.
Background.
These set of RPMs install the Doubangos media gateway Webrtc2sip and edit/add the agent console to provide a phone based on the Doubangos WebRTC API SIPML5.
Notes.
You need to login in the Agent Console with the mode Callback Login, because the API is a javascript code. If you reload the page the connection between the API and the sip server will be lost. Since the support of the WebRTC API is very limited you need to wor5k only with Google Chrome browser.
Dependencies Table.
Package
elastix-agent_console_webrtc-0.11.noarch webrtc2sip-2.5.1r114-DMv1Elastix.i386.rpm doubango-2.0r985-DMv1.i386.rpm ffmpeg-1.2-DMv1.i386.rpm x264-snapshot20130810.2245DMv1.i386.rpm libvpx-1.2.0-DMv1.i386.rpm yasm-1.2.0-DMv1.i386.rpm libsrtp-1.4.5-DMv1.i386.rpm libtool-2.4.2-DMv1.i386.rpm
Dependency
webrtc2sip, elastix-callcenter
Description
Provides the embedded phone based on the sipml5 api. Screen, doubango framework Provides the media gateway webrtc2sip mandatory to convert websocket to sip signaling. Libtool, ffmpeg, openssl, libvpx, libsrtp Provides the framework for the media gateway webrtc2sip. Libvpx, x264, yasm, libvpx Provides the conversion tool for the framework. Provides the x264 codec to the framework. Provides the VP8 codec to the framework. Needed to compile FFMPEG. Provides the secure layer to the framework. Provides the tool for compiling the framework.
By mreyesvera@digital-merge.com 2
Installation.
In order to install the addon go to the Elastixs Market Place and download it, from console run the next command: yum install y elastix-agent_console_webrtc-0.1-1.noarch
By mreyesvera@digital-merge.com 3
5. Add the field: accept_outofcall_message = yes 6. Press the button Add Fields. 7. Add the field: outofcall_message_context = sipsms
By mreyesvera@digital-merge.com 4
By mreyesvera@digital-merge.com 5
When you are logged in, you will see this new agent console(remember login with the Callback login mode):
By mreyesvera@digital-merge.com 6
Phone Elements.
Text field for dial. Here you will see all pressed digits before and during the call session. The label with the connection status. Here you will see the current status of the connection with the asterisk server. Dialpad. Used for sending digits before or during the call session. Call button. On outgoing calls is used to send the call to the sip server. On incoming calls the text will change to Answer and is used to answer the call. Hangup button. On active call session is used to terminate the call. On incoming call the text will change to Reject and is used to decline the incoming call. The call status label. Here you will see the progress of the current call.
By mreyesvera@digital-merge.com 7
Chat Window.
The SIP list contact. Here you will see all the created peers on the PBX menu, it is important to note that many of those peers maybe arent using the webrtc console, so sending messages will be useless. When you change between peers on the list the chat window will be erased. Sent messages. All sent messages will look as in the image preceded by the symbol >. Received messages. All received messages will look as in the image preceded by the hour and the peer s number. Text field to write the message. Send button. You can use the button to send the messages or just press the key ENTER.
By mreyesvera@digital-merge.com 8
Outgoing call
Incoming Call
By mreyesvera@digital-merge.com 9
Gateway WebRTC2SIP.
This addon use the media Gateway webrtc2sip to connect the web browser with the asterisk server. The gateway ran during the installation process and its added to the startup of the system. The gateway runs behind a screen session, and you can access the session by running the command: screen r wrtc To leave the screen session without stopping the gateway use this key combination: CTRL+A+D.
Stopping the Gateway. To stop the gateway you need to access to the session with the command: screen r wrtc Then type: quit+ENTER. When you stop the gateway no one can use the webrtc agent console.
Starting the Gateway. If you stopped the gateway for debugging or anything else and then you need to start again the gateway run this command: screen -dmS wrtc /usr/local/sbin/webrtc2sip --config=/usr/local/sbin/config.xml
By mreyesvera@digital-merge.com 10
Configuring the Gateway. The gateway comes with a default configuration, but you can edit some parameters like the DNS or the supported codecs. The configuration file config.xml is located at /usr/local/sbin. To change the DNS parameters use your preferred text editor and change the IP address between the text: <nameserver id=1>10.0.1.1</nameserver> <nameserver id=2>8.8.8.8</nameserver> To change the codec list edit the next line <codecs>pcma;pcmu;gsm;</codecs> All changes requires a gateway restart, if you want to more help about configuring the gateway please visit this URL: http://webrtc2sip.org/technical-guide-1.0.pdf
By mreyesvera@digital-merge.com 11
FAQS
1. Do I need internet access, even if I am on a local network? Yes, you need internet Access in order to use the ICE servers. The ICE server set the IP address to use in the SDP transaction. 2. I am on a local network, but the SDP show and use my Public IP and that result in no audio at all. What can I do? For some reason the ICE server set the Public IP to use in the SDP and this result in no audio in the conversation, to fix this you need to edit the follow file: /var/www/html/modules/agent_console_webrtc/themes/default/js/ml5.js Uncomment the ICE server line and replace with this line: ice_servers: [{url:stun:null}], With that the SDP will use always the local IP. 3. An incoming call arrives, I answer, but there is a delay in the audio. What can I do? This happen when the ICE servers arent finished to set the IP address, in a local network the workaround is the solution of the question 2. For a public network there is no solution yet.
4. The gateway supports the G729 codec? No, for now the gateway only support the codecs G711, GSM and some video codecs. 5. All the standard functions of the call center module are available? Yes, the behavior of the webrtc console must be the same as the normal console.
6. I can receive call but when I made an outgoing call the call never reach the asterisk server. What can I do? This can happen when the gateway cant resolve the hostname asterisk, to fix that open the file /etc/hosts and add in the localhost section the word asterisk.
By mreyesvera@digital-merge.com 12
By mreyesvera@digital-merge.com 13