-
Notifications
You must be signed in to change notification settings - Fork 9.5k
[IMP] VoIP: Devices + Integrations Revamp #13002
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 18.0
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
@@ -1,196 +1,134 @@ | ||||||||||
======================== | ||||||||||
Devices and integrations | ||||||||||
======================== | ||||||||||
============================= | ||||||||||
VoIP devices and integrations | ||||||||||
============================= | ||||||||||
|
||||||||||
:abbr:`VoIP (Voice over Internet Protocol)` can be used on many different devices, such as a | ||||||||||
computer, tablet, mobile phone, and many more. This is helpful in that it reduces costs, and | ||||||||||
employees can work from anywhere in the world, so long as they have a broadband internet connection. | ||||||||||
.. |VOIP| replace:: :abbr:`VoIP (Voice over Internet Protocol)` | ||||||||||
.. |SIP| replace:: :abbr:`SIP (Session Initiation Protocol)` | ||||||||||
|
||||||||||
Odoo *VoIP* is SIP (Session Initiation Protocol) compatible, which means it can be used with *any* | ||||||||||
:abbr:`SIP (Session Initiation Protocol)` compatible application. | ||||||||||
While |VOIP| is available on Odoo's desktop experience, it can also be used through the :doc:`Odoo | ||||||||||
mobile app <../../../administration/mobile>` and through third-party apps as well. As long as the | ||||||||||
app is compatible with |SIP|, it can be used to make and receive calls with Odoo |VOIP|. | ||||||||||
|
||||||||||
This document covers the process of setting up Odoo *VoIP* across different devices and | ||||||||||
integrations. | ||||||||||
|
||||||||||
Odoo is fully-integrated with all Odoo apps, allowing users to click into any app, and schedule a | ||||||||||
call as an activity in the chatter. | ||||||||||
|
||||||||||
.. example:: | ||||||||||
For example, in the *CRM* app, a user can click into an opportunity, and click on | ||||||||||
:guilabel:`Activities` in the chatter. | ||||||||||
|
||||||||||
Next, they can choose :guilabel:`Call`, and under :guilabel:`Due Date`, they can select a date. | ||||||||||
|
||||||||||
Once they click :guilabel:`Save`, an activity shows up in the chatter. | ||||||||||
|
||||||||||
Should the :guilabel:`Due Date` be for today's date, the activity shows up in the :abbr:`VoIP | ||||||||||
(Voice over Internet Protocol)` widget. | ||||||||||
|
||||||||||
.. image:: devices_integrations/crm-voip-widget.png | ||||||||||
:align: center | ||||||||||
:alt: View of CRM leads and the option to schedule an activity for Odoo Discuss. | ||||||||||
|
||||||||||
Odoo VoIP (laptop/desktop computer) | ||||||||||
=================================== | ||||||||||
|
||||||||||
The Odoo *VoIP* (Voice over Internet Protocol) module and widget can be used from any browser on a | ||||||||||
laptop or desktop device. Simply click on the :guilabel:`☎️ (phone)` icon in the upper-right corner, | ||||||||||
while in the Odoo database, and the widget appears. | ||||||||||
Odoo |VOIP| is fully integrated with the **Contacts**, **CRM**, **Sales**, and **Helpdesk** apps. | ||||||||||
While the benefits are most clearly felt when using |VOIP| from the Odoo database, it can also be | ||||||||||
used from apps like :ref:`Linphone <voip/linphone>` and :ref:`Zoiper Lite <voip/zoiper>`. | ||||||||||
|
||||||||||
.. seealso:: | ||||||||||
To see how to use the :abbr:`VoIP (Voice over Internet Protocol)` widget on a desktop/laptop | ||||||||||
computer, check out this documentation: :doc:`voip_widget`. | ||||||||||
|
||||||||||
Odoo VoIP (tablet/mobile device) | ||||||||||
================================ | ||||||||||
Using |VOIP| through the Odoo mobile app or through a third-party tool still requires a |VOIP| | ||||||||||
service provider. Learn more about signing a :doc:`VoIP service provider <../voip>`. | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Move to a "see more" admonition or finish the sentence with a prepositional phrase so it's not just a command to learn
Comment on lines
16
to
+18
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Seealso blocks should only include link text and doc links. Let's condense this into 5 words maximum |
||||||||||
|
||||||||||
The Odoo *VoIP* app can be used on tablets and mobile phones, through the Odoo Android or Apple IOS | ||||||||||
applications. Additionally, a mobile web browser can be used to access the database. | ||||||||||
VoIP via the Odoo mobile app | ||||||||||
============================ | ||||||||||
|
||||||||||
.. warning:: | ||||||||||
Odoo Android and Apple IOS applications are no longer being maintained by Odoo on the Android and | ||||||||||
Apple portals. This means Odoo support only handles limited scopes of Odoo Android or Apple IOS | ||||||||||
support tickets. | ||||||||||
|
||||||||||
.. important:: | ||||||||||
While outgoing calls can be placed using Odoo on a mobile device, be aware that Odoo is **not** a | ||||||||||
full :abbr:`VoIP (Voice over Internet Protocol)` application, and does **not** ring on incoming | ||||||||||
calls. If the user needs to be reachable on a mobile device at all times, an app, like Zoiper, | ||||||||||
should be used. Apps like that stay connected in the background at all times. | ||||||||||
Odoo |VOIP| is available through mobile browsers as well as through the Odoo app (available through | ||||||||||
the Apple App Store and Google Play Store). Odoo recommends using a mobile browser to access a | ||||||||||
database, rather than the mobile apps. | ||||||||||
|
||||||||||
For more information, see this documentation: :ref:`voip/zoiper`. | ||||||||||
.. danger:: | ||||||||||
Odoo mobile apps available in app stores are no longer supported by Odoo. Learn more about | ||||||||||
:doc:`Odoo's mobile apps <../../../administration/mobile>`. | ||||||||||
Comment on lines
+28
to
+29
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The sentence repeats “mobile apps” twice in fewer than ten words. Here are a couple of tighter options you can drop in:
Either version keeps the critical information while removing the echo. |
||||||||||
|
||||||||||
While in the mobile application on a mobile device/tablet, access the Odoo *VoIP* widget, by tapping | ||||||||||
on the :guilabel:`☎️ (phone)` icon in the upper-right corner. The widget appears in the lower-left | ||||||||||
corner. | ||||||||||
Make a call through the mobile app | ||||||||||
---------------------------------- | ||||||||||
|
||||||||||
When first making a call from the tablet using the mobile application, the user is prompted to | ||||||||||
:guilabel:`Allow` the database to use the microphone. Click :guilabel:`Allow` when prompted to | ||||||||||
continue with the call using the microphone. | ||||||||||
To make a call through the Odoo mobile app, first tap the :icon:`oi-voip` :guilabel:`VoIP` icon at | ||||||||||
the top of the screen. From here, the |VOIP| widget will appear on the screen. After that, the user | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. can remove the future case, "will" |
||||||||||
can start a call using one of three ways: | ||||||||||
|
||||||||||
This step is **necessary**, whether using the mobile Odoo application or web browser. | ||||||||||
- Enter the phone number to be called by clicking the :icon:`fa-keyboard` :guilabel:`(keyboard)` | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||||||||||
icon, and then entering the phone number. | ||||||||||
- Click the :icon:`fa-phone` :guilabel:`(phone)` icon to redial the last called contact. | ||||||||||
- Search for a specific contact's name or go to the :guilabel:`Contacts` tab. Then, select the | ||||||||||
contact and click the :icon:`fa-phone` :guilabel:`(phone)` icon. | ||||||||||
|
||||||||||
.. image:: devices_integrations/allow-mic.png | ||||||||||
:align: center | ||||||||||
:alt: Allow the database to access the microphone. | ||||||||||
When the first call from the mobile app is made, a prompt to allow the database to use the device's | ||||||||||
microphone appears. When this prompt appears, click :guilabel:`Allow` to continue with the call. | ||||||||||
|
||||||||||
Odoo then asks how to make the call. The two options are : :guilabel:`VOIP` or :guilabel:`Phone` | ||||||||||
(should the tablet be enabled for calling). Click the box next to :guilabel:`Remember ?` should this | ||||||||||
decision be the default moving forward. | ||||||||||
|
||||||||||
.. image:: devices_integrations/voip-phone.png | ||||||||||
:align: center | ||||||||||
:alt: Window prompt to choose whether to use VOIP or the devices phone to make the call. | ||||||||||
|
||||||||||
Here is the layout of what the Odoo *VoIP* app looks like on a mobile device: | ||||||||||
.. important:: | ||||||||||
Allowing the app to use the device's microphone is **necessary**, regardless of whether the | ||||||||||
mobile Odoo application or web browser is used. If permission is not granted, calls cannot be | ||||||||||
made from the app. | ||||||||||
|
||||||||||
.. image:: devices_integrations/voip-odoo-dashboard.png | ||||||||||
:align: center | ||||||||||
:alt: Layout of what the VoIP app looks like on the a mobile device. | ||||||||||
Odoo then asks how to make the call. The two options are to either use |VOIP| or use the phone's | ||||||||||
connection. Click the box next to :guilabel:`Remember ?` should this decision be the default moving | ||||||||||
forward. | ||||||||||
Comment on lines
+52
to
+54
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. possible rewrite for brevity
Suggested change
Note: Didn't format so remember to do so in your revision! |
||||||||||
|
||||||||||
.. _voip/zoiper: | ||||||||||
|
||||||||||
Zoiper Lite | ||||||||||
=========== | ||||||||||
|
||||||||||
*Zoiper Lite* is a free :abbr:`VoIP (Voice over Internet Protocol)` :abbr:`SIP (Session Initiation | ||||||||||
Protocol)` dialer with voice and video. | ||||||||||
|
||||||||||
To start using the *Zoiper* app, download it to the device, via the `Zoiper download page | ||||||||||
<https://www.zoiper.com/en/voip-softphone/download/current>`_. | ||||||||||
|
||||||||||
A mobile device is the most common installation, and this document covers how to set up on the | ||||||||||
*Zoiper* IOS application. Screenshots and steps may differ depending on the set up conditions. | ||||||||||
*Zoiper Lite* third-party alternative to Odoo |VOIP|. It is a free |VOIP| |SIP| dialer with voice | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It’s not clear how this section ties back to Odoo. If the tool works entirely outside Odoo VoIP, can you clarify the integration—or consider removing the section? |
||||||||||
and video. | ||||||||||
|
||||||||||
After installing the *Zoiper* application on the mobile phone, open the application, and tap on | ||||||||||
:guilabel:`Settings`. Navigate to :menuselection:`Accounts`, and tap on the :guilabel:`+ (plus)` | ||||||||||
icon to add an account. | ||||||||||
To start, download the *Zoiper Lite* app from either the `Google Play Store | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. One quick style tweak:
Could you please remove the italics from every instance of Zoiper Lite and Linphone after their first mention? That will keep the doc consistent with the rest of the library. Thanks for polishing the details! 👍 |
||||||||||
<https://play.google.com/store/apps/details?id=com.zoiper.android.app>`_ or `Apple's App Store | ||||||||||
<https://apps.apple.com/us/app/zoiper-lite-voip-soft-phone/id438949960>`_. This section will cover | ||||||||||
Comment on lines
+64
to
+66
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. just curious why we're linking this here but not on line 24? |
||||||||||
setting up *Zoiper Lite* for an iOS device while using :doc:`Axivox <axivox/axivox_config>` as the | ||||||||||
|VOIP| service provider, so the experience may differ for other operating systems or |VOIP| service | ||||||||||
providers. | ||||||||||
|
||||||||||
If the :abbr:`VoIP (Voice over Internet Protocol)` account is already set up, then click | ||||||||||
:guilabel:`Yes`. This means an account username and password has already been produced. | ||||||||||
Once *Zoiper Lite* is installed on the mobile device, open the app and tap :guilabel:`Settings`. | ||||||||||
Navigate to :menuselection:`Accounts`, and tap the :guilabel:`+ (plus)` icon to add an account. | ||||||||||
|
||||||||||
.. image:: devices_integrations/account-settings-zoiper-group.png | ||||||||||
:align: center | ||||||||||
:alt: Zoiper account setup, shown in the view from a mobile device. | ||||||||||
If a |VOIP| service provider is signed, then tap :guilabel:`Yes` when the app asks if the user has | ||||||||||
an account username and password. From here, tap :guilabel:`Manual configuration` unless the |VOIP| | ||||||||||
service provider's country is known (if it is, then tap :guilabel:`Select provider` and find the | ||||||||||
provider through the list). | ||||||||||
|
||||||||||
Next, tap on :guilabel:`Select a provider`. On the screen that populates, tap :guilabel:`Country`, | ||||||||||
in the upper-right corner, to narrow the providers down to a specific country. Choose the country | ||||||||||
for the provider that is being configured, then find the :guilabel:`Provider`, and select it. | ||||||||||
If :guilabel:`Manual configuration` was tapped, tap :guilabel:`SIP account`. From here, under | ||||||||||
:guilabel:`SIP OPTIONS`, fill out the fields: | ||||||||||
|
||||||||||
.. example:: | ||||||||||
If the provider being configured is *Axivox*, then select :guilabel:`Belgium`. Then, choose | ||||||||||
:guilabel:`Axivox` as the provider. | ||||||||||
- :guilabel:`Account name`: How this account appears in *Zoiper Lite*. Can be anything. | ||||||||||
- :guilabel:`Domain`: The |VOIP| service provider's domain. This is unique to each service provider | ||||||||||
account. | ||||||||||
- :guilabel:`Username`: The user's |SIP| username. This is unique to each user account in the | ||||||||||
service provider account. | ||||||||||
- :guilabel:`Password`: The user's |SIP| password. This is unique to each user account in the | ||||||||||
service provider account. | ||||||||||
|
||||||||||
.. image:: devices_integrations/provider-zoiper-odoo.png | ||||||||||
:align: center | ||||||||||
:alt: Zoiper account setup, choosing the provider. | ||||||||||
.. tip:: | ||||||||||
To access this information through the *Axivox* portal, click :guilabel:`Users`, then choose a | ||||||||||
user and click :guilabel:`Edit`, and finally click the :guilabel:`SIP Identifiers` tab. | ||||||||||
|
||||||||||
Under :abbr:`SIP (Session Initiation Protocol)` options, enter the :guilabel:`Account name`, | ||||||||||
:guilabel:`Domain`, :guilabel:`Username`, and :guilabel:`Password`. All this information varies, | ||||||||||
based on the account. | ||||||||||
Once all of this information is entered, tap the green :guilabel:`Register` button at the top of the | ||||||||||
screen. *Zoiper* will confirm the information, then show a message saying :guilabel:`Registration | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It looks like “Lite” was dropped from Zoiper Lite here—intentional, or should we add it back? 🤔 |
||||||||||
Status: OK` if everything was correct. From here, the *Zoiper Lite* app can now be used to make and | ||||||||||
take phone calls using the |VOIP| service. | ||||||||||
|
||||||||||
.. tip:: | ||||||||||
To access this information, via the *Axivox* portal, navigate to :menuselection:`Users --> Choose | ||||||||||
user --> Edit --> SIP Identifiers tab`. The :guilabel:`SIP username`, :guilabel:`Domain`, | ||||||||||
:guilabel:`SIP password`, and :guilabel:`Address of the proxy server` are all present in this | ||||||||||
tab. | ||||||||||
|
||||||||||
.. list-table:: | ||||||||||
:header-rows: 1 | ||||||||||
|
||||||||||
* - Zoiper Field | ||||||||||
- Axivox Field | ||||||||||
* - Account name | ||||||||||
- *Can be anything* | ||||||||||
* - Domain | ||||||||||
- Domain | ||||||||||
* - Username | ||||||||||
- SIP username | ||||||||||
* - Password | ||||||||||
- SIP password | ||||||||||
|
||||||||||
Once this account information is entered, click the green :guilabel:`Register` button at the top of | ||||||||||
the screen. Once the registration information is checked, *Zoiper* populates a message, stating | ||||||||||
:guilabel:`Registration Status: OK`. | ||||||||||
|
||||||||||
At this point, *Zoiper* is now set up to make phone calls using the :abbr:`VoIP (Voice over Internet | ||||||||||
Protocol)` service. | ||||||||||
|
||||||||||
.. image:: devices_integrations/sip-options-zoiper.png | ||||||||||
:align: center | ||||||||||
:alt: Zoiper account setup, registration successful. | ||||||||||
.. _voip/linphone: | ||||||||||
|
||||||||||
Linphone | ||||||||||
======== | ||||||||||
|
||||||||||
*Linphone* is an open-source :abbr:`VoIP (Voice over Internet Protocol)` :abbr:`SIP (Session | ||||||||||
Initiation Protocol)` softphone, used for voice, video, messaging (group and individual), as well as | ||||||||||
conference calls. | ||||||||||
|
||||||||||
To start using the *Linphone* app, download it to the device, via the `Linphone download page | ||||||||||
<https://new.linphone.org/technical-corner/linphone?qt-technical_corner=2#qt-technical_corner>`_. | ||||||||||
*Linphone* is a third-party alternative to Odoo |VOIP|. It is a free |VOIP| |SIP| dialer with voice, | ||||||||||
video, messaging (direct messages and group chats), and can support conference calls. | ||||||||||
Comment on lines
+104
to
+105
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Again, if it's an alternative to Odoo, how is this related to us? Is it because we can also integrate with other Odoo apps? Let's clarify that integration |
||||||||||
|
||||||||||
A mobile device is the most common installation, and this document covers how to set up the | ||||||||||
*Linphone* IOS application. Screenshots and steps may differ depending on the circumstances. | ||||||||||
To start, download the *Linphone* app from either the `Google's Play Store | ||||||||||
<https://play.google.com/store/apps/details?id=org.linphone>`_ or the `Apple App Store | ||||||||||
<https://apps.apple.com/us/app/linphone/id360065638>`_. This section will cover setting up | ||||||||||
*Linphone* for an iOS device while using :doc:`Axivox <axivox/axivox_config>` as the |VOIP| service | ||||||||||
provider, so the experience may differ for other operating systems or |VOIP| service providers. | ||||||||||
Comment on lines
+109
to
+111
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It’s unclear where Axivox fits into the flow. We say “using Axivox as the VoIP provider,” but never show when or where to obtain and enter the Axivox SIP credentials. Could you:
That context will help readers complete the configuration without guessing. |
||||||||||
|
||||||||||
To begin configuring *Linphone* for use with a :abbr:`SIP (Session Initiation Protocol)` provider, | ||||||||||
first open *Linphone*, and an assistant screen appears. | ||||||||||
Once *Linphone* is installed on the mobile device, open the app and tap on :icon:`fa-bars` | ||||||||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The phrase “tap on ” reads incomplete—consider “tap on the icon” for clearer grammar. |
||||||||||
:guilabel:`(menu)`. From here, tap :guilabel:`Assistant`, then tap :guilabel:`Use SIP ACCOUNT`. Read | ||||||||||
the warning message, then tap :guilabel:`I understand`. | ||||||||||
|
||||||||||
From this screen, select :guilabel:`Use SIP Account`. Then, on the following screen, enter the | ||||||||||
:guilabel:`Username`, :guilabel:`Password`, :guilabel:`Domain`, and :guilabel:`Display Name`. Once | ||||||||||
complete, press :guilabel:`Login`. | ||||||||||
From here, under :guilabel:`SIP OPTIONS`, fill out the fields: | ||||||||||
|
||||||||||
At this point, *Linphone* is ready to start making calls, once there is a green button at the top of | ||||||||||
the application screen that reads, :guilabel:`Connected`. | ||||||||||
|
||||||||||
.. image:: devices_integrations/linphone-odoo-setup.png | ||||||||||
:align: center | ||||||||||
:alt: Linphone account setup, registration successful. | ||||||||||
- :guilabel:`USERNAME`: The user's |SIP| username. This is unique to each user account in the | ||||||||||
service provider account. | ||||||||||
- :guilabel:`PASSWORD`: The user's |SIP| password. This is unique to each user account in the | ||||||||||
service provider account. | ||||||||||
- :guilabel:`DOMAIN`: The |VOIP| service provider's domain. This is | ||||||||||
unique to each service provider account. | ||||||||||
- :guilabel:`DISPLAY NAME`: How this account appears in *Linphone*. Can be anything. | ||||||||||
|
||||||||||
.. tip:: | ||||||||||
*Linphone* makes a variety of applications for mobile and desktop devices in operating systems, | ||||||||||
such as Windows, Linux, Apple, and Android. Because *Linphone* is an open-source project, many | ||||||||||
new updates are released on a regular basis. | ||||||||||
To access this information through the *Axivox* portal, click :guilabel:`Users`, then choose a | ||||||||||
user and click :guilabel:`Edit`, and finally click the :guilabel:`SIP Identifiers` tab. | ||||||||||
|
||||||||||
Tap :guilabel:`UDP` for :guilabel:`TRANSPORT`, then tap :guilabel:`LOGIN`. | ||||||||||
|
||||||||||
See `Linphone's wiki-documentation page | ||||||||||
<https://wiki.linphone.org/xwiki/wiki/public/view/Linphone/>`_. | ||||||||||
From here, *Linphone* can be used to make and take calls once a green banner that says | ||||||||||
:guilabel:`Connected` appears at the top of the screen. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Appreciate the effort to improve the readability of this doc compared to the ~16.0 version. The revised article has clearer and more concise writing, and it removes "sales-y benefits" from configuration steps that was present in the original. That said, a few new ambiguities crept in and some helpful context was trimmed. There are also areas where we can further improve for brevity. Let's revisit the areas pointed out in this review and ensure the doc has the necessary amounts of specificity as defined in our quality matrix.