v 8.0 Certified 41

399.00 €

You bought this module and need support ? Click here !
Technical name crm_voip
Read description for
Included Dependencies VOIP Core


Automate Calls, Transfer, Logs and Mails

Handle your phone calls

Manage your phone calls directly from Odoo. Call your customers, manage a call queue, log your calls, schedule calls.

Call In One Click

Odoo VOIP allows you to make calls to your customers from your browser. Once your call queue is filled, select a phone number and dial it in one click.

Automate Calls

Automate calls and increase the amount of phone numbers you ring. You don't need to dial the number anymore, process the call queue in one click. After one call is finished and logged, the next call is automatically triggered.

Log Calls

Keep a history of all your calls. After each call, the log window is opened. You can reschedule a call, define a new action or describe the call.

Send Email And Transfer Calls

The panel lets you transfer the call or send an email to the customer. For emails, you can use templates created by the sales team. You can also easily find and use information on customers or opportunities.


The module has been tested with an Asterisk 13.7.0 server with Chrome Version 45.0.2454.101. Then we only support this module working with an Asterisk PBX


Installing Asterisk server

Before installing Asterisk you need to install the following dependencies:

  • wget
  • gcc
  • g++
  • ncurses-devel
  • libxml2-devel
  • sqlite-devel
  • libsrtp-devel
  • libuuid-devel
  • openssl-devel
  • pkg-config

In order to install libsrtp, follow the instructions below:

You also need to install PJSIP, you can download the source here. Once the source directory is extracted:

  • Change to the pjproject source directory:
    • # cd pjproject
  • run :
    • # ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr CFLAGS='-O2 -DNDEBUG'
  • Build and install pjproject:
    • # make dep
    • # make
    • # make install
  • update shared library links:
    • # ldconfig
  • Verify that pjproject is installed,:
    • # ldconfig -p | grep pj

    • The result should be:

      libpjsua.so (libc6,x86-64) => /usr/lib/libpjsua.so
      libpjsip.so (libc6,x86-64) => /usr/lib/libpjsip.so
      libpjsip-ua.so (libc6,x86-64) => /usr/lib/libpjsip-ua.so
      libpjsip-simple.so (libc6,x86-64) => /usr/lib/libpjsip-simple.so
      libpjnath.so (libc6,x86-64) => /usr/lib/libpjnath.so
      libpjmedia.so (libc6,x86-64) => /usr/lib/libpjmedia.so
      libpjmedia-videodev.so (libc6,x86-64) => /usr/lib/libpjmedia-videodev.so
      libpjmedia-codec.so (libc6,x86-64) => /usr/lib/libpjmedia-codec.so
      libpjmedia-audiodev.so (libc6,x86-64) => /usr/lib/libpjmedia-audiodev.so
      libpjlib-util.so (libc6,x86-64) => /usr/lib/libpjlib-util.so
      libpj.so (libc6,x86-64) => /usr/lib/libpj.so

In order to install Asterisk 13.7.0, you can download the source directly here.

  • Extract Asterisk: tar zxvf asterisk*
  • Enter the Asterisk directory: cd ./asterisk*
  • Run the Asterisk configure script: ./configure --with-pjproject --with-ssl --with-srtp
  • Run the Asterisk menuselect tool: make menuselect
  • In the menuselect, go to the resources option and ensure that res_srtp is enabled. If there are 3 x’s next to res_srtp, there is a problem with the srtp library and you must reinstall it. Save the configuration (press x). You should also see stars in front of the res_pjsip lines.
  • Compile and install Asterisk: make && make install
  • If you need the sample configs you can run 'make samples' to install the sample configs. If you need to install the Asterisk startup script you can run 'make config'.

After you need to setup the DTLS certificates.

  • mkdir /etc/asterisk/keys
  • Enter the Asterisk scripts directory: cd ./asterisk*/contrib/scripts.
  • Create the DTLS certificates (replace pbx.mycompany.com with your ip address or dns name, replace My Super Company with your company name): ./ast_tls_cert -C pbx.mycompany.com -O "My Super Company" -d /etc/asterisk/keys

Configure Asterisk server

For WebRTC, a lot of the settings that are needed MUST be in the peer settings. The global settings do not flow down into the peer settings very well. By default, Asterisk config files are located in /etc/asterisk/. Start by editing http.conf and make sure that the following lines are uncommented:

bindaddr= ; Replace this with your IP address
bindport=8088 ; Replace this with the port you want to listen on

Next, edit sip.conf. The WebRTC peer requires encryption, avpf, and icesupport to be enabled. In most cases, directmedia should be disabled. Also under the WebRTC client, the transport needs to be listed as ‘ws’ to allow websocket connections. All of these config lines should be under the peer itself; setting these config lines globally might not work:

realm= ; Replace this with your IP address
udpbindaddr= ; Replace this with your IP address

[1060] ; This will be WebRTC client
username=1060 ; The Auth user for SIP.js
host=dynamic ; Allows any host to register
secret=password ; The SIP Password for SIP.js
encryption=yes ; Tell Asterisk to use encryption for this peer
avpf=yes ; Tell Asterisk to use AVPF for this peer
icesupport=yes ; Tell Asterisk to use ICE for this peer
context=default ; Tell Asterisk which context to use when this peer is dialing
directmedia=no ; Asterisk will relay media for this peer
transport=udp,ws ; Asterisk will allow this peer to register on UDP or WebSockets
force_avp=yes ; Force Asterisk to use avp. Introduced in Asterisk 11.11
dtlsenable=yes ; Tell Asterisk to enable DTLS for this peer
dtlsverify=no ; Tell Asterisk to not verify your DTLS certs
dtlscertfile=/etc/asterisk/keys/asterisk.pem ; Tell Asterisk where your DTLS cert file is
dtlsprivatekey=/etc/asterisk/keys/asterisk.pem ; Tell Asterisk where your DTLS private key is
dtlssetup=actpass ; Tell Asterisk to use actpass SDP parameter when setting up DTLS

In the sip.conf and rtp.conf files you also need to add or uncomment the lines:

  • icesupport = true
  • stunaddr = stun.l.google.com:19302

Lastly, set up extensions.conf:

exten => 1060,1,Dial(SIP/1060) ; Dialing 1060 will call the SIP client registered to 1060

Configure Odoo VOIP

In Odoo, the configuration should be done in the user's preferences.

The SIP Login/Browser's Extension is the number you configured previously in the sip.conf file. In our example, 1060. The SIP Password is the secret you chose in the sip.conf file. The extension of your office's phone is not a required field but it is used if you want to transfer your call from Odoo to an external phone also configured in the sip.conf file.

The configuration needs also to be done in the sale settings under the title "PBX Configuration". You need to put the IP you define in the http.conf file and the WebSocket should be: ws:// The part "" needs to be the same as the IP defined previously and the "8088" is the port you defined in the http.conf file.

Please log in to comment on this module

Grandstream and Oddo Integration
by on

Hi.. I haver already a IPPBX Grandstream and Odoo free version.. I have plan to buy the Entreprise edition with voip module.. Can I integrate this module with my IPPBX withaou problem?? Thanks so much

Does this module require Enterprise license?
by on

We are interested with this module does it require enterprise license or is it a standalone?

Can't call between intercompany usres
by on

Why intercompany users can't communicate with eachother for e.g Company A users 1, 2 ,3 can communicate eachother Intercompany B of company A users 4, 5 can communicate eachother but can't to with usres 1,2,3 why??????

Compatibility with Odoo 8 community
by on

I need to know if this module can be used in Odoo version 8 community edition. Thank you.

by on

I got this error : WebSocket connection to 'ws://ip_server:8088/ws' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT How can I fix this please ?

Odoo VOIP & Elastix 4.0
by on

Does this module work with Elastix 4.0? (WEBRTC supported) Can I config this module to use physical phones for some users? (without transfer every call manually) Can I get module manual? May be i will find answers to all my questions

V9 not working.
by on

Dont run on v9. error: Some modules could not be started Failed modules: Array [ "web.web_client" ] Non loaded modules: Array [ "web.ChangePassword", "base.apps", "account.reconciliation", "im_odoo_support.OdooSupport", "__job1", "mail.chat_client_action", "mail.composer", "mail.chat_manager", "mail.Chatter", "mail.systray", 5 mais… ] web.assets_common.js:2523:817

by on

How did I can connect with the AsteriskNow?

by on

Hello, This app is already working with V9 and also on our online offer. Regards,

odoo voip with online version
by on

does this odoo voip work with the online version?

by on

Free updates? V9? soon?

by on

Hi i install freepbx and then i copied the configuration from this page to my server and setup the module the module didnot work for me it said "the websocket uri coul be wrong.please check your configuration" my WS url is : " ws://"

by on