diff --git a/content/applications/general/voip.rst b/content/applications/general/voip.rst index 1a354d096..b176355f1 100644 --- a/content/applications/general/voip.rst +++ b/content/applications/general/voip.rst @@ -1,12 +1,21 @@ -:nosearch: +:show-content: +:hide-page-toc: +:show-toc: =================================== VoIP (Voice over Internet Protocol) =================================== +.. seealso:: + For more information, reference the `Odoo eLearning (video tutorials) on VoIP + `_ + .. toctree:: :titlesonly: voip/asterisk voip/onsip voip/axivox + voip/voip_widget + voip/devices_integrations + voip/transfer_forward diff --git a/content/applications/general/voip/axivox.rst b/content/applications/general/voip/axivox.rst index 8ccc52b05..09cf1f994 100644 --- a/content/applications/general/voip/axivox.rst +++ b/content/applications/general/voip/axivox.rst @@ -1,86 +1,17 @@ -===================================== -Use VoIP services in Odoo with Axivox -===================================== +:nosearch: -Introduction -============ +==================== +Axivox configuration +==================== -Odoo VoIP can be set up to work together with `Axivox `_. In that case, an -:doc:`Asterisk server ` is not necessary as the infrastructure is hosted and managed by -Axivox. +.. toctree:: + :titlesonly: -To use this service, `contact Axivox `_ to open an account. Before -doing so, verify that Axivox covers your area and the areas you wish to call. - -Configuration -============= - -Go to :menuselection:`Apps` and install the **VoIP Module**. - -.. image:: axivox/voip-installation.png - :align: center - :alt: VoIP module installation on an Odoo database - -Go to :menuselection:`Settings --> General Settings --> Integrations`, and fill out the **Asterisk -(VoIP)** field: - -- **PBX Server IP**: set the domain created by Axivox for your account (e.g., - *yourcompany.axivox.com*) -- **WebSocket**: type in ``wss://pabx.axivox.com:3443`` -- **VoIP Environment**: set as *Production* - -.. image:: axivox/voip-configuration.png - :align: center - :alt: Integration of Axivox as VoIP provider in an Odoo database - -Configure the VOIP user in the Odoo's user ------------------------------------------- - -Go to :menuselection:`Settings --> Users & Companies --> Users`, then open the user's form you want -to configure. Under the **Preferences** tab, fill out the section **PBX Configuration**: - -- **SIP Login / Browser's Extension**: the Axivox *username* -- **SIP Password**: the Axivox *SIP Password* - -.. image:: axivox/odoo-user.png - :align: center - :alt: Integration of Axivox user in the Odoo user preference - -.. note:: - You can find all this information by logging in at https://manage.axivox.com/, selecting the user - you want to configure, and referring to the fields as pictured below. - - .. image:: axivox/manager-sip.png - :align: center - :alt: SIP credentials in the Axivox manager - -Phone Calls -=========== - -You can make phone calls by clicking on the phone icon in the navigation bar. - -You can also receive phone calls. Odoo rings and displays a notification. - -.. note:: - Your number is the one provided by Axivox. - -.. image:: axivox/incoming-call.png - :align: center - :alt: Incoming VoIP call in Odoo - -.. tip:: - If you see a *Missing Parameter* message in the **Odoo softphone**, refresh your Odoo window and - try again. - - .. image:: axivox/missing-parameter.png - :align: center - :alt: "Missing Parameter" error message in the Odoo softphone - -.. tip:: - If you see an *Incorrect Number* message in the Odoo softphone, make sure to use the - international format, leading with the plus (+) sign followed by the international country code. - E.g., +16506913277 (where +1 is the international prefix for the United States). - - .. image:: axivox/incorrect-number.png - :align: center - :alt: "Incorrect Number" error message in the Odoo softphone + axivox/axivox_config + axivox/manage_users + axivox/vm_audio_messages + axivox/dynamic_caller_id + axivox/conference_calls + axivox/dial_plan_basics + axivox/dial_plan_advanced + axivox/call_queues diff --git a/content/applications/general/voip/axivox/axivox_config.rst b/content/applications/general/voip/axivox/axivox_config.rst new file mode 100644 index 000000000..5c228a7d9 --- /dev/null +++ b/content/applications/general/voip/axivox/axivox_config.rst @@ -0,0 +1,73 @@ +================================= +VoIP services in Odoo with Axivox +================================= + +Introduction +============ + +Odoo VoIP (Voice over Internet Protocol) can be set up to work together with `Axivox +`_. In that case, an :doc:`Asterisk server <../asterisk>` is **not** +necessary, as the infrastructure is hosted and managed by Axivox. + +To use this service, `contact Axivox `_ to open an account. Before +doing so, verify that Axivox covers the company's area, along with the areas the company's users +wish to call. + +Configuration +============= + +To configure Axivox in Odoo, go to the :menuselection:`Apps` application, and search for `VoIP`. +Then, install the :guilabel:`VoIP` module. + +Next, go to :menuselection:`Settings app --> General Settings --> Integrations section`, and fill +out the :guilabel:`Asterisk (VoIP)` field: + +- :guilabel:`OnSIP Domain`: set the domain created by Axivox for the account (e.g., + `yourcompany.axivox.com`) +- :guilabel:`WebSocket`: type in `wss://pabx.axivox.com:3443` +- :guilabel:`VoIP Environment`: set as :guilabel:`Production` + +.. image:: axivox_config/voip-configuration.png + :align: center + :alt: Integration of Axivox as VoIP provider in an Odoo database. + +.. tip:: + Access the domain on the Axivox administrative panel by navigating to `https://manage.axivox.com/ + `_. After logging into the portal, go to :menuselection:`Users --> + Edit (next to any user) --> SIP Identifiers tab --> Domain`. + +Configure VoIP user in Odoo +--------------------------- + +Next, the user is configured in Odoo, which **must** take place for every Axivox/Odoo user using +VoIP. + +In Odoo, go to :menuselection:`Settings app --> Users & Companies --> Users`, then open the desired +user's form to configure :abbr:`VoIP (Voice over Internet Protocol)`. Under the +:guilabel:`Preferences` tab, fill out the :guilabel:`VOIP Configuration` section: + +- :guilabel:`SIP Login` / :guilabel:`Browser's Extension`: (Axivox) :guilabel:`SIP username` +- :guilabel:`Handset Extension`: SIP external phone extension +- :guilabel:`SIP Password`: (Axivox) :guilabel:`SIP Password` +- :guilabel:`Mobile call`: method to make calls on a mobile device +- :guilabel:`OnSIP authorization User`: (Axivox) :guilabel:`SIP username` +- :guilabel:`Always Redirect to Handset`: option to always transfer phone calls to handset +- :guilabel:`Reject All Incoming Calls`: option to reject all incoming calls + +.. image:: axivox_config/odoo-user.png + :align: center + :alt: Integration of Axivox user in the Odoo user preference. + +.. tip:: + Access the domain on the Axivox administrative panel by navigating to `https://manage.axivox.com/ + `_. After logging into the portal, go to :menuselection:`Users --> + Edit (next to the user) --> SIP Identifiers tab --> SIP username / SIP password`. + + .. image:: axivox_config/manager-sip.png + :align: center + :alt: SIP credentials in the Axivox manager. + +.. important:: + When entering the :guilabel:`SIP Password` into the user's :guilabel:`Preferences` tab, this + value **must** be typed out manually and **not** pasted in. Pasting in causes a `401 server + rejection error`. diff --git a/content/applications/general/voip/axivox/axivox_config/manager-sip.png b/content/applications/general/voip/axivox/axivox_config/manager-sip.png new file mode 100644 index 000000000..a37fbb185 Binary files /dev/null and b/content/applications/general/voip/axivox/axivox_config/manager-sip.png differ diff --git a/content/applications/general/voip/axivox/axivox_config/odoo-user.png b/content/applications/general/voip/axivox/axivox_config/odoo-user.png new file mode 100644 index 000000000..5368ef8be Binary files /dev/null and b/content/applications/general/voip/axivox/axivox_config/odoo-user.png differ diff --git a/content/applications/general/voip/axivox/axivox_config/voip-configuration.png b/content/applications/general/voip/axivox/axivox_config/voip-configuration.png new file mode 100644 index 000000000..e5412c8a3 Binary files /dev/null and b/content/applications/general/voip/axivox/axivox_config/voip-configuration.png differ diff --git a/content/applications/general/voip/axivox/call_queues.rst b/content/applications/general/voip/axivox/call_queues.rst new file mode 100644 index 000000000..28ea2aae5 --- /dev/null +++ b/content/applications/general/voip/axivox/call_queues.rst @@ -0,0 +1,245 @@ +=========== +Call queues +=========== + +A call queue is a system that organizes and routes incoming calls. When customers call a business, +and all of the agents are busy, the call queue lines up the callers in sequential order, based on +the time they called in. + +The callers then wait on hold to be connected to the next available call center agent. + +Implementing a call queue system reduces stress for employees, and helps build brand trust with +customers. Many companies use call queues to set expectations with customers, and to distribute the +workload equally amongst employees. + +This document covers the process required to configure call queues (with advanced settings), as well +as how to log into a call queue from the Odoo database. + +.. seealso:: + :ref:`voip/axivox/music_on_hold` + +Add a queue +=========== + +To add a call queue in Axivox, navigate to the `Axivox management console +`_. In the left menu, click :guilabel:`Queues`. Next, click +:guilabel:`Add a queue`. Doing so reveals a blank :guilabel:`New queue` form with various fields to +fill out. + +Name +---- + +Once the :guilabel:`New queue` page appears, enter the :guilabel:`Name` of the queue. + +Internal extension +------------------ + +Choose an :guilabel:`Internal extension` for the queue. This is a number to be dialed by users of +the database to reach the login prompt for the queue. + +Strategy +-------- + +Next, is the :guilabel:`Strategy` field. This field determines the call routing of received calls +into this queue. + +The following choices are available in the :guilabel:`Strategy` drop-down menu: + +- :guilabel:`Call all available agents` +- :guilabel:`Calls the agent who has received the call for the longest time` +- :guilabel:`Calls the agent who has received the least call` +- :guilabel:`Call a random agent` +- :guilabel:`Call agents one after the other` +- :guilabel:`Call agents one after the other starting with the first in the list` + +Choose a strategy that best meets the company's needs for customers in the queue. + +Maximum waiting time in seconds +------------------------------- + +In the :guilabel:`Maximum waiting time in seconds` field, determine the longest time a customer +waits in the queue before going to a voicemail, or wherever else they are directed to in a dial +plan. Enter a time in seconds. + +Maximum duration of ringing at an agent +--------------------------------------- + +In the :guilabel:`Maximum duration of ringing at an agent` field, determine the longest time an +individual agent's line rings before moving on to another agent, or moving to the next step in the +dial plan. Enter a time in seconds. + +.. seealso:: + For more information on dial plans, visit: + + - :doc:`dial_plan_basics` + - :doc:`dial_plan_advanced` + +Adding agents +------------- + +The final two fields on the :guilabel:`New queue` form revolve around adding agents. Adding +:guilabel:`Static agents` and :guilabel:`Dynamic agents` are two pre-configured methods for adding +agents onto the call queue during the configuration. + +.. _voip/axivox/static-agents: + +Static agents +~~~~~~~~~~~~~ + +When :guilabel:`Static agents` are added, these agents are automatically added to the queue without +the need to log in to receive calls. + +.. _voip/axivox/dynamic-agents: + +Dynamic agents +~~~~~~~~~~~~~~ + +When :guilabel:`Dynamic agents` are added, these agents have the ability to log into this queue. +They are **not** logged-in automatically, and **must** log in to receive calls. + +Be sure to :guilabel:`Save` the changes, and click :guilabel:`Apply changes` in the upper-right +corner to implement the change in production. + +Agent connection +================ + +There are three ways call agents can connect to an Axivox call queue: + +#. Dynamic agents connect automatically. +#. Manager logs in specific agent(s), via the `Axivox management console + `_. +#. Agent connects to the queue in Odoo, via the *VoIP* widget. + +.. seealso:: + See the documentation on setting :ref:`voip/axivox/dynamic-agents` in the `Axivox management + console `_. + +Connect via Axivox queue +------------------------ + +After the initial configuration of the call queue is completed, with the changes saved and +implemented, a manager can log into the `Axivox management console `_ and +connect dynamic agents to the queue manually. + +To connect an agent, click :guilabel:`Queues`, located in the left-hand column. Doing so reveals the +:guilabel:`Queues` dashboard, with a few different columns listed: + +- :guilabel:`Name`: name of the queue. +- :guilabel:`Extension`: number of the extension to be dialed to reach the queue. +- :guilabel:`Agent Connection`: number to dial to log into the queue. +- :guilabel:`Agent disconnection`: number to dial to log out of the queue. +- :guilabel:`Connected Agents`: name of agent connected to the queue. + +The following buttons are also available on the :guilabel:`Queues` dashboard: + +- :guilabel:`Connect an agent`: manually connect an agent to the queue. +- :guilabel:`Report`: run a report on the queue. +- :guilabel:`Delete`: delete the queue. +- :guilabel:`Edit`: make changes to the settings of the queue. + +When agents are connected to the queue, or are live with a customer, they are displayed under the +:guilabel:`Connected Agents` column. + +If they are static agents, they **always** show up as connected. + +Connect an agent by clicking the orange button labeled, :guilabel:`Connect an agent`. Then, select +the desired agent's name from the drop-down menu, and click :guilabel:`Connect`. + +.. image:: call_queues/call-queue.png + :align: center + :alt: Call queue with connected agents column highlighted and connect an agent and report buttons + highlighted. + +.. seealso:: + For more information on static and dynamic agents, see this documentation: + + - :ref:`voip/axivox/static-agents` + - :ref:`voip/axivox/dynamic-agents` + +Report +~~~~~~ + +Click :guilabel:`Report` to check on the reporting for a particular queue, in order to see who +connected when, and what phone calls came in and out of the queue. This information is showcased on +a separate :guilabel:`Queue report` page, when the green :guilabel:`Report` button is clicked. + +Reports can be customized by date in the :guilabel:`Period` field, and specified in the +:guilabel:`From` and :guilabel:`to` fields. The information can be organized by :guilabel:`Event +type`, and :guilabel:`Call ID`. + +When the custom configurations have been entered, click :guilabel:`Apply`. + +Each report can be exported to a :abbr:`CSV (comma separated value)` file for further use and +analysis, via the :guilabel:`Export to CSV` button. + +When the :guilabel:`Event type` field is clicked, a drop-down menu appears with the following +options: + +- :guilabel:`The caller quit` +- :guilabel:`An agent is connecting` +- :guilabel:`An agent is disconnecting` +- :guilabel:`The call was terminated (agent hangs up)` +- :guilabel:`The call was terminated (caller hangs up)` +- :guilabel:`The caller is connected to an agent.` +- :guilabel:`Someone is entering the queue` +- :guilabel:`The caller exits the queue (no agent is connected)` +- :guilabel:`The caller exits the queue (timeout)` +- :guilabel:`No one is answering` +- :guilabel:`No one is answering, the caller hangs up` +- :guilabel:`Transfer` +- :guilabel:`Blind Transfer` + +.. image:: call_queues/event-type.png + :align: center + :alt: Event types in the Axivox queue reporting feature. + +There is no limit to how many options can be selected from the :guilabel:`Event type` drop-down +menu. + +Clicking :guilabel:`Check all` selects all the available options from the drop-down menu, and +clicking :guilabel:`Uncheck all` removes all selections from the drop-down menu. + +To select an individual :guilabel:`Event type`, click on the desired option in the drop-down menu. + +.. image:: call_queues/report.png + :align: center + :alt: Axivox queue report with result, event type, and period highlighted. + +Connect to queue on Odoo +------------------------ + +Dynamic agents can connect manually to the Axivox call queue from the Odoo *VoIP* widget, once the +*VoIP* app is configured for the individual user in Odoo. + +.. seealso:: + :doc:`axivox_config` + +To access the Odoo *VoIP* widget, click the :guilabel:`📞 (phone)` icon in the upper-right corner of +the screen, from any window within Odoo. + +.. seealso:: + For more information on the Odoo *VoIP* widget, see this documentation: :doc:`../voip_widget` + +For an agent to connect to the call queue, simply dial the :guilabel:`Agent connection` number, and +press the green call button :guilabel:`📞 (phone)` icon in the *VoIP* widget. Then, the agent hears +a short, two-second message indicating the agent is logged in. The call automatically ends +(disconnects). + +To view the connected agents in a call queue, navigate to the `Axivox management console +`_, and click :guilabel:`Queues`, located in the left-hand column. + +Then, click the green :guilabel:`Refresh` button at the top of the :guilabel:`Connected agents` +column. Any agent (static or dynamic) that is connected to the queue currently, appears in the +column next to the queue they are logged into. + +To log out of the queue, open the Odoo *VoIP* widget, dial the :guilabel:`Agent disconnection` +number, and press the green call button :guilabel:`📞 (phone)` icon. The agent is disconnected from +the queue after a short, two-second message. + +To manually log a dynamic agent out of a call queue, navigate to the `Axivox management console +`_, and click :guilabel:`Queues`, located in the left-hand column. Then, +click the green :guilabel:`Refresh` button at the top of the :guilabel:`Connected agents` column. + +To disconnect an agent manually, click the red :guilabel:`Disconnect` button, and they are +immediately disconnected. This can be helpful in situations where agents forget to log out at the +end of the day. diff --git a/content/applications/general/voip/axivox/call_queues/call-queue.png b/content/applications/general/voip/axivox/call_queues/call-queue.png new file mode 100644 index 000000000..b8690aafa Binary files /dev/null and b/content/applications/general/voip/axivox/call_queues/call-queue.png differ diff --git a/content/applications/general/voip/axivox/call_queues/event-type.png b/content/applications/general/voip/axivox/call_queues/event-type.png new file mode 100644 index 000000000..f8982c2e9 Binary files /dev/null and b/content/applications/general/voip/axivox/call_queues/event-type.png differ diff --git a/content/applications/general/voip/axivox/call_queues/report.png b/content/applications/general/voip/axivox/call_queues/report.png new file mode 100644 index 000000000..498730982 Binary files /dev/null and b/content/applications/general/voip/axivox/call_queues/report.png differ diff --git a/content/applications/general/voip/axivox/conference_calls.rst b/content/applications/general/voip/axivox/conference_calls.rst new file mode 100644 index 000000000..d704aa345 --- /dev/null +++ b/content/applications/general/voip/axivox/conference_calls.rst @@ -0,0 +1,98 @@ +================ +Conference calls +================ + +Conference calls help employees connect quickly and efficiently, so matters can be discussed in an +open forum of sorts. Attendees can be limited, via a sign-in code. That way, confidential matters +stay private. + +This document covers the configuration of conference calls in Axivox for use in Odoo *VoIP*. + +Add a virtual conference +======================== + +To add a virtual conference room, navigate to the `Axivox management console +`_. After logging in, click on :guilabel:`Conferences` in the menu on the +left. + +Next, click the green button labeled, :guilabel:`Add a conference`, and a :guilabel:`New conference` +form appears. + +.. image:: conference_calls/new-conference.png + :align: center + :alt: New conference form on Axivox. + +From here, fill in the :guilabel:`Name` field, and set an :guilabel:`Internal extension`. + +The internal extension is what everyone in the network uses to quickly dial into the conference +call, instead of typing in the whole phone number. + +.. tip:: + Pick a number between three and five digits long, making it easy to remember and dial. + +Next, set the :guilabel:`Access code`, if the conference room requires security. This is a password +to get into the conference, once the extension for the conference is dialed. Immediately after +dialing the extension, a digital receptionist prompts for the :guilabel:`Access code`. + +In the :guilabel:`Administrator extension` field, click the drop-down menu, and select the user's +extension that manages the call. + +Finally, in the :guilabel:`Wait for the administrator to start the conference` field, click the +drop-down menu, and select :guilabel:`Yes` or :guilabel:`No`. + +Should the selection be :guilabel:`Yes`, then nobody is allowed to utilize the virtual conference +room until the administrator is present, and logged into the conference call. + +When all fields are filled in, be sure to :guilabel:`Save` the configuration. Then, click +:guilabel:`Apply changes` in the upper-right corner to implement the change in production. + +Upon doing so, the conference is added, and the Axivox administrator has the option to +:guilabel:`Delete` or :guilabel:`Edit` the conference from the Axivox :guilabel:`Conference` main +dashboard. + +To invite an Axivox user to a specific conference call, click :guilabel:`Invite` to the right of the +desired conference, and proceed to enter the extension or phone number of the invitee in the pop-up +window that appears. + +Once the extension or number is added into the :guilabel:`Please enter the phone number of the +person you want to invite` field, click the green :guilabel:`Invite` button, and the recipient +immediately receives a phone call, automatically linking them to the conference. + +.. image:: conference_calls/conference-invite.png + :align: center + :alt: New conference form on Axivox. + +Incoming numbers +================ + +To open a conference to a wider audience, an Axivox conference can be linked to *Incoming numbers*. + +To do that, log into the `Axivox management console `_, and click +:guilabel:`Incoming numbers` in the menu on the left. + +On the :guilabel:`Incoming numbers` dashboard, click :guilabel:`Edit` to the far-right of the +:guilabel:`Number` to which the conference should be attached. + +Then, under the first field, labeled, :guilabel:`Destination type for voice call`, click the +drop-down menu, and select :guilabel:`Conference`. + +Next, in the :guilabel:`Conference` field, click the drop-down menu, and select the specific +conference that should be attached to this incoming number. + +Now, whenever this incoming number is dialed, the caller is let into the conference, if there is not +an :guilabel:`Access code` required. If there *is* an :guilabel:`Access code` required, the caller +is then prompted to enter the :guilabel:`Access code` to enter the conference. + +Start call in Odoo +================== + +Anywhere in the Odoo database, open the *VoIP* widget, by clicking the :guilabel:`📞 (phone)` icon, +located in the upper-right corner. Then, dial the specific extension number for the conference, and +click the :guilabel:`📞 (phone)` icon. + +.. image:: conference_calls/phone-widget.png + :align: center + :alt: Connecting to a conference extension using the Odoo VoIP widget. + +Once the digital receptionist answers, enter the :guilabel:`Access code` (if needed), and press the +:guilabel:`# (pound)` icon/key. diff --git a/content/applications/general/voip/axivox/conference_calls/conference-invite.png b/content/applications/general/voip/axivox/conference_calls/conference-invite.png new file mode 100644 index 000000000..10d20d811 Binary files /dev/null and b/content/applications/general/voip/axivox/conference_calls/conference-invite.png differ diff --git a/content/applications/general/voip/axivox/conference_calls/new-conference.png b/content/applications/general/voip/axivox/conference_calls/new-conference.png new file mode 100644 index 000000000..b8a86a991 Binary files /dev/null and b/content/applications/general/voip/axivox/conference_calls/new-conference.png differ diff --git a/content/applications/general/voip/axivox/conference_calls/phone-widget.png b/content/applications/general/voip/axivox/conference_calls/phone-widget.png new file mode 100644 index 000000000..e33159d0e Binary files /dev/null and b/content/applications/general/voip/axivox/conference_calls/phone-widget.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced.rst b/content/applications/general/voip/axivox/dial_plan_advanced.rst new file mode 100644 index 000000000..f5b908520 --- /dev/null +++ b/content/applications/general/voip/axivox/dial_plan_advanced.rst @@ -0,0 +1,411 @@ +=================== +Advanced dial plans +=================== + +Typically, companies have a lot of incoming calls every day, but many do not want their teams to +answer calls 24 hours a day, 7 days a week. + +By using Axivox advanced dial plan features, the process can be automated, and routing can be set up +for all scenarios. This way, customers are never left waiting, or frustrated, because they cannot +get in touch with anyone. + +By utilizing the advanced elements in dial plans, companies can automate call routing for certain +days or times, like company holidays. Companies can also allow callers to enter extensions +themselves, and get transferred automatically using a digital receptionist. This way, an +administrative team does **not** have to be available around the clock. + +There is even the option to route callers, depending on where they are calling from in the world, +thus maximizing efficiency. + +.. important:: + For more information on basic dial plans, and how to add elements, visit :doc:`dial_plan_basics`. + +.. warning:: + Using a browser add-on for spelling may hinder the use of the visual editor in dial plans. Do + **not** use a translator with the Axivox management console. + +Advanced elements +================= + +In Axivox dial plans (as described in :doc:`dial_plan_basics`), there are two advanced elements that +can be used. + +- :guilabel:`Record`: recording feature is enabled (requires plan change, enabled in Axivox + settings). +- :guilabel:`Caller ID`: replace the caller ID by the called number or free text. + +To add one of these elements, navigate to the :guilabel:`Dial plans` page, located in the menu on +the left side of the `Axivox management console `_. + +Next, click on the :guilabel:`Visual Editor` button to the right of the desired dial plan to edit +it. Finally, open the :guilabel:`New element` drop-down menu, select the element, and click +:guilabel:`Add`. + +.. image:: dial_plan_advanced/visual-editor.png + :align: center + :alt: Visual editor for a dial plan in Axivox, with Add and the dispatcher element highlighted. + +For more information, visit :ref:`voip/axivox/dial_plans`. + +.. important:: + The :guilabel:`Record` element records calls that are routed through this element, and requires + an additional plan change in Axivox. + +To enable recording on Axivox, navigate to :guilabel:`Settings` in the `Axivox management console +`_. Then, go to the :guilabel:`Recording` drop-down menu, near the bottom +of the page. From there, select :guilabel:`Enabled` from the drop-down menu to enable recording +using the :guilabel:`Record` element in a dial plan. + +.. tip:: + If the :guilabel:`Recording` drop-down menu is unavailable and unable to change, then consult + Axivox to enable the feature. + +The :guilabel:`Caller ID` element allows for the replacement of the caller ID downstream, after +routing. + +Upon adding the :guilabel:`Caller ID` element to the dial plan, and double-clicking it to configure +it, two options appear. + +The first is a :guilabel:`Free text` field, where any text can be input to replace the caller ID. +The second option is :guilabel:`Replace the caller ID by the called number`. This option replaces +the caller's ID with the :guilabel:`Incoming number`. + +.. tip:: + A company may want to use the :guilabel:`Caller ID` element to replace the :guilabel:`Incoming + number`, so employees, or outside transfers, cannot see the number, and information is kept + private. + +Basic routing elements +====================== + +Basic routing elements in Axivox dial plans provide extension-based routing. This can be done by +adding either a *Menu* to numerically link the dial-by-numbers to an action, or by using a *Digital +Receptionist* to automatically route or listen for an extension, based on a key input from the +caller. + +The main difference between the two elements is that the *Digital Receptionist* does **not** need to +be pre-configured numerically with actions. Instead, it acts as a virtual receptionist. + +- :guilabel:`Menu`: add a dial-by-number directory and configured downstream actions (not + terminal). For example, a dial-by-numbers function could feature an element, wherein clicking '2' + takes the caller to the element linked to '2' on the Menu element in the dial plan. +- :guilabel:`Digital Receptionist`: attach a virtual dispatcher to listen for extensions. + +To add one of these elements, navigate to the :guilabel:`Dial plans` page, located in the menu on +the left side of the `Axivox management console `_. Next, click on the +:guilabel:`Visual Editor` button to the right of the dial plan, to edit the dial plan. Then, open +the :guilabel:`New element` drop-down menu, select the element, and click :guilabel:`Add`. + +For more information, visit :ref:`voip/axivox/dial_plans`. + +Digital receptionist scenario +----------------------------- + +The *Digital Receptionist* element is a listen-feature that accurately routes callers through a dial +plan, based on the extension they enter, via the key pad. + +Set a *Digital Receptionist* to eliminate the need of a team, or live receptionist, to be on-call +all the time. With that element in place, calls now reach their destination, without a real person +interjecting. + +After adding the :guilabel:`Digital Receptionist` element to a dial plan, connect the appropriate +endpoints, and double-click on the element to set the :guilabel:`Timeout` on the +:guilabel:`receptionist` pop-up window that appears. + +The :guilabel:`Timeout` can be set in `5` second increments, from `5` seconds to `60` seconds. + +.. important:: + The :guilabel:`Digital Receptionist` element **requires** a :guilabel:`Play a file` element on + either side of it, to explain what action to take, and when a wrong extension is entered. + +.. example:: + While customizing a dial plan in a :guilabel:`Dialplan Editor` pop-up window, add a + :guilabel:`Menu` element, with a :guilabel:`Greeting message` that might read, `Press star to + dial an extension`. + + Then, on the :guilabel:`Menu` element, for the :guilabel:`* (star)` option, link a + :guilabel:`Play a file` element, that plays an :guilabel:`Audio message` saying, 'Enter the + extension of the person you are trying to reach'. + + Following the first :guilabel:`Play a file` element, add the :guilabel:`Digital Receptionist` + element, followed by another :guilabel:`Play a file` element, which states, 'That is not a valid + extension'. + + This last element is in place to close the loop, should the caller not enter a correct extension. + + Finally, this last :guilabel:`Play a file` element is looped back into the :guilabel:`Menu` + element. + + .. image:: dial_plan_advanced/receptionist.png + :align: center + :alt: A digital receptionist element highlighted in an example dial plan. + +.. important:: + Dial plan elements can be configured by double-clicking them, and selecting different features + of the Axivox console to them. + + For example, an :guilabel:`Audio message` needs to be made, and then selected in a + :guilabel:`Play a file` or :guilabel:`Menu` element. + + For more information, see this documentation :ref:`voip/axivox/audio_messages`. + +Advanced routing elements +========================= + +Advanced routing elements route calls automatically as they are received into the incoming +number(s). This can be configured using geo-location, whitelisting, or time-based variables. Calls +pass through a filter prior to their final destination, and are routed, based on the set +variable(s). + +The following are advanced routing elements: + +- :guilabel:`Dispatcher`: create a call filter to route traffic, based on the geo-location of the + caller ID. +- :guilabel:`Access List`: create a tailored access list, with VIP customer preference. +- :guilabel:`Time Condition`: create time conditions to route incoming traffic around holidays, or + other sensitive time-frames. + +.. tip:: + Whitelisting is a technical term used to create a list of allowed numbers. Conversely, + blacklisting is used to create a list of denied numbers. + +To add one of these elements, navigate to the :guilabel:`Dial plans` page, located in the menu on +the left side of the `Axivox management console `_. Next, click on the +:guilabel:`Visual Editor` button to the right of the dial plan, to edit the dial plan. Then, open +the :guilabel:`New element` drop-down menu, select the element, and click :guilabel:`Add`. For more +information, visit :ref:`voip/axivox/dial_plans`. + +Dispatcher scenario +------------------- + +A *Dispatcher* element is a dial plan feature that directs calls, based on region or geo-location. +In most cases, the :guilabel:`Dispatcher` element in a dial plan is linked to the :guilabel:`Start` +element, in order to filter or screen calls as they come into an incoming number. + +Double-click the :guilabel:`Dispatcher` element in the :guilabel:`Dialplan Editor` pop-up window to +configure it. + +This element checks numbers (routed through this element), according to regular expressions. To add +a regular expression, click :guilabel:`Add a line` on the bottom of the :guilabel:`Dispatcher` +pop-up window. + +Then, under :guilabel:`Name`, enter a recognizable name to identify this expression. This is the +name that appears in the :guilabel:`Dispatcher` element on the dial plan showcased in the +:guilabel:`Dialplan Editor` pop-up window. + +In the :guilabel:`Regular expression` field, enter the country code, or area code, which Axivox +should route for incoming calls. This is especially helpful when a company would like to filter +their customers to certain queues, or users based on the customer's geo-location. + +To specify all numbers behind a certain country code, or area code, include `\d+` after the country +code, or country code + area code. + +.. image:: dial_plan_advanced/dispatcher.png + :align: center + :alt: Dispatcher configuration panel, with name, regular expression and add a line highlighted. + +.. example:: + - `02\\d+`: validates the numbers starting with `02` + - `00\\d+`: validates all numbers beginning with `00` + - `0052\\d+` validates all numbers beginning with `0052` (Mexico country code) + - `001716\\d+`: validates all numbers beginning with `001716` (USA country code + Western New York + area code) + +.. tip:: + A regular expression (shortened to "regex" or "regexp"), sometimes referred to as a "rational + expression," is a sequence of characters that specifies a match pattern in text. In other words, + a match is made within the given range of numbers. + +When the desired configurations are complete on the :guilabel:`Dispatcher` pop-up window, be sure to +click :guilabel:`Save`. + +Upon doing so, the :guilabel:`Dispatcher` element appears with different routes available to +configure, based on the :guilabel:`Regular Expressions` that were set. + +Attach these routes to any :guilabel:`New element` in the :guilabel:`Dialplan Editor` pop-up window. + +By default, there is an :guilabel:`Unknown` path that appears on the :guilabel:`Dispatcher` element +after setting at least one :guilabel:`Regular Expression`. + +Calls follow this route/path when their number does not match any :guilabel:`Regular Expression` set +on the :guilabel:`Dispatcher` element. + +.. image:: dial_plan_advanced/dispatcher-element.png + :align: center + :alt: Dial plan with dispatcher element highlighted. + +Time condition scenario +----------------------- + +When a :guilabel:`Time Condition` element is added to a dial plan, it has a simple :guilabel:`True` +and :guilabel:`False` routing. + +After adding the :guilabel:`Time Condition` element to a dial plan, double-click it to configure the +variables. :guilabel:`Hour/Minute`, :guilabel:`Days of the week`, :guilabel:`Day of the month`, and +:guilabel:`Month` can all be configured. + +If the time which the caller contacts the incoming number matches the set time conditions, then the +:guilabel:`True` path is followed, otherwise the :guilabel:`False` path is followed. + +.. example:: + For a company that is closed yearly for the American Independence Day holiday (July 4th) the + following time conditions should be set: + + - :guilabel:`Hour/Minute` - `0:0 to 23:59` + - :guilabel:`Day of the week` - `All to All` + - :guilabel:`Day of the month` - `From 4 to 4` + - :guilabel:`Month` - `July` + +The :guilabel:`Time Condition` element is especially useful for holidays, weekends, and to set +working hours. When a caller reaches a destination where they can be helped, either with a real +person or voicemail, this reduces wasted time and hangups. + +.. image:: dial_plan_advanced/time-condition.png + :align: center + :alt: Time condition element set in a dial plan on Axivox. Time condition is highlighted. + +.. important:: + To set the :guilabel:`Timezone` that the :guilabel:`Time Condition` operates under, navigate to + `Axivox management console `_, and click :guilabel:`Settings` in the + menu on the left. Then, set the :guilabel:`Timezone` using the second field from the bottom, by + clicking the drop-down menu. + +Access list scenario +-------------------- + +An *Access List* element in a dial plan allows for the routing of certain numbers, and disallows +(denies) other numbers. + +After adding an :guilabel:`Access List` element to a dial plan, it can be configured by +double-clicking on the element directly in the :guilabel:`Dialplan Editor` pop-up window. + +Two fields appear where regular expressions can based in the :guilabel:`Allow` and :guilabel:`Deny` +fields of the :guilabel:`Access List` pop-up window. + +.. example:: + For a very important customer, their number can be set in the :guilabel:`Allow` field, and these + callers can be sent directly to management. + +.. tip:: + A regular expression (shortened to "regex" or "regexp"), sometimes also referred to as a + "rational expression," is a sequence of characters that specifies a match pattern in text. + +.. image:: dial_plan_advanced/access-config.png + :align: center + :alt: Access list element configuration with the allow/deny fields highlighted. + +.. example:: + - `2\\d\\d`: validates numbers from `200 to 299` + - `02\\d*`: validates all numbers beginning with `02` + - `0017165551212`: validates the number (`0017165551212`) + +After setting the :guilabel:`Allow` and :guilabel:`Deny` fields with regular expressions or numbers, +click :guilabel:`Save` on the :guilabel:`Access List` pop-up window. + +Then, on the :guilabel:`Access list` element in the dial plan, three paths (or routes) are available +to link to further actions. + +Unknown calls can be routed through the regular menu flow by adding a :guilabel:`Menu` element, and +connecting it to the :guilabel:`Unknown` path. :guilabel:`Refused` calls can be routed to the +:guilabel:`Hang up` element. Lastly, :guilabel:`Authorized` callers can be sent to a specific +extension or queue. + +.. image:: dial_plan_advanced/access-list.png + :align: center + :alt: Access list element highlighted in an example dial plan. + +Switches +======== + +A *Switch* element in Axivox is a simple activated/deactivated route action. + +These can be activated or chosen quickly, allowing for quick routing changes, without altering the +dial plan. + +Alternate routes can be configured, so that in a moments notice, they can be switched to. This could +be for new availability, or to adjust traffic flow for any number of reasons. + +Axivox allows for a simple on/off switch, and a multi-switch, which can have several paths to choose +from. + +- :guilabel:`Switch`: a manual on/off control that can divert traffic, based on whether it is opened + (on) or closed (off). +- :guilabel:`Multi-Switch`: a mechanism to create paths, and turn them on and off, to divert + incoming calls. + +Basic switch +------------ + +A :guilabel:`Switch` can be set in the `Axivox management console `_ by +navigating to :guilabel:`Switches` in the left menu. To create a new switch click :guilabel:`Add a +switch` from the :guilabel:`Switches` dashboard, configure a :guilabel:`Name` for it, and click +:guilabel:`Save`. + +Then, toggle the desired switch to either :guilabel:`On` or :guilabel:`Off`, from the +:guilabel:`State` column on the :guilabel:`Switches` dashboard. + +This :guilabel:`On` / :guilabel:`Off` state automatically routes traffic in a dial plan, in which +this switch is set. + +The traffic travels to the :guilabel:`Active` route when :guilabel:`On` is toggled in the switch. +The call traffic travels to the :guilabel:`Inactive` route when :guilabel:`Off` is toggled in the +switch. + +Changes can be made on the fly, just be sure to click :guilabel:`Apply changes` to implement the +them. + +Add a switch to dial plan +~~~~~~~~~~~~~~~~~~~~~~~~~ + +To add a :guilabel:`Switch` to a dial plan, navigate to `Axivox management console +`_, and click on :guilabel:`Dial plans` in the left menu. Then, click +:guilabel:`Visual Editor` next to the desired dial plan to open the :guilabel:`Dialplan Editor` +pop-up window. + +Then, from the :guilabel:`New element` drop-down menu, select :guilabel:`Switch`, and then click +:guilabel:`Add`. Double-click on the element to further configure the :guilabel:`Switch` element. + +.. image:: dial_plan_advanced/switch.png + :align: center + :alt: Switch configuration in a dial plan, with inactive and active routes highlighted. + +Multi-switch +------------ + +A *Multi-Switch* element in Axivox is a switch where multiple paths can be configured, and switched +between. + +To configure and set a :guilabel:`Multi-Switch` element, navigate to `Axivox management console +`_. Then, click on the :guilabel:`Switches` menu item in the left menu. + +Toggle to the :guilabel:`Multi-switch` tab to create, or set, a pre-configured +:guilabel:`Multi-Switch` element. + +To create a new :guilabel:`Multi-Switch`, click :guilabel:`Create new`. Then, enter a +:guilabel:`Name` for the element, and then enter the :guilabel:`Available choice`. Enter one +:guilabel:`Available choice` per line. Do **not** duplicate any entries. + +Remember to click :guilabel:`Save` when done. + +To select the :guilabel:`State` of the :guilabel:`Multi-Switch`, click the drop-down menu next to +the :guilabel:`Multi-Switch` name, under the :guilabel:`Multi-switch` tab on the +:guilabel:`Switches` dashboard. + +The :guilabel:`State` chosen is the route that is followed in the dial plan. The :guilabel:`State` +can be edited on the fly, just be sure to click :guilabel:`Apply changes`. + +Add a multi-switch to dial plan +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +To add a :guilabel:`Multi-Switch` element to a dial plan, navigate to `Axivox management console +`_, and click :guilabel:`Dial plans` in the left menu. + +Then, select or create a dial plan. Next, click :guilabel:`Visual Editor` on the desired dial plan. + +On the :guilabel:`Dialplan Editor` pop-up window that appears, click on the :guilabel:`New element` +drop-down menu, and select :guilabel:`Multi-Switch`. Then, click :guilabel:`Add`. Double-click on +the element to further configure the :guilabel:`Switch` element. + +.. image:: dial_plan_advanced/multi-switch.png + :align: center + :alt: Multi-switch configuration in a dial plan, with chosen route highlighted. diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/access-config.png b/content/applications/general/voip/axivox/dial_plan_advanced/access-config.png new file mode 100644 index 000000000..320b49920 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/access-config.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/access-list.png b/content/applications/general/voip/axivox/dial_plan_advanced/access-list.png new file mode 100644 index 000000000..2d14b3f3c Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/access-list.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher-element.png b/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher-element.png new file mode 100644 index 000000000..f8903214a Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher-element.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher.png b/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher.png new file mode 100644 index 000000000..9e69a37cc Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/dispatcher.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/multi-switch.png b/content/applications/general/voip/axivox/dial_plan_advanced/multi-switch.png new file mode 100644 index 000000000..f36a9e212 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/multi-switch.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/receptionist.png b/content/applications/general/voip/axivox/dial_plan_advanced/receptionist.png new file mode 100644 index 000000000..6867e7b03 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/receptionist.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/switch.png b/content/applications/general/voip/axivox/dial_plan_advanced/switch.png new file mode 100644 index 000000000..38509048c Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/switch.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/time-condition.png b/content/applications/general/voip/axivox/dial_plan_advanced/time-condition.png new file mode 100644 index 000000000..f8daf4b71 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/time-condition.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_advanced/visual-editor.png b/content/applications/general/voip/axivox/dial_plan_advanced/visual-editor.png new file mode 100644 index 000000000..cfb7c5e55 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_advanced/visual-editor.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_basics.rst b/content/applications/general/voip/axivox/dial_plan_basics.rst new file mode 100644 index 000000000..e02638501 --- /dev/null +++ b/content/applications/general/voip/axivox/dial_plan_basics.rst @@ -0,0 +1,204 @@ +================ +Dial plan basics +================ + +When someone calls a business, they might need to get in contact with customer support, a sales +team, or even a person's direct line. The caller might also be in search of some information about +the business, such as store hours. Or, they might want to leave a voicemail, so someone from the +company can call them back. With dial plans in Axivox, a company can manage how incoming calls like +this are handled. + +Using proper call architecture through a dial plan, callers get directed to the right people, or to +the right information, in a quick, efficient manner. + +This document covers the basic configuration of dial plans in Axivox. + +.. seealso:: + For more information on advanced dial plans, visit :doc:`dial_plan_advanced`. + +.. important:: + Using a browser add-on for spelling may hinder the use of the visual editor in dial plans. Do not + use a translator with the Axivox management console. + +.. _voip/axivox/dial_plans: + +Dial plans +========== + +Access dial plans by navigating to `Axivox management console `_, and +clicking on :guilabel:`Dial plans` from the menu on the left. + +To add a new dial plan from the :guilabel:`Dial plan` page, click the green button labeled, +:guilabel:`Add a new dial plan`. + +.. note:: + Axivox has no limit to the number of dial plans that can be created. These can be added, and + improved upon, at any time. This allows for sandboxes to be created with many different + configurations. + +.. image:: dial_plan_basics/dial-plan-edits.png + :align: center + :alt: Dial plan dashboard with the edit features and Add a dial plan button highlighted. + +To edit an existing dial plan, choose one of the following options to the right of the saved dial +plan: + +#. :guilabel:`Delete`: this action deletes the attached dial plan. +#. :guilabel:`Edit`: this action allows the user to edit the dial plan. +#. :guilabel:`Visual Editor`: this action opens a visual editor window, where the dial plan + architecture can be viewed and edited. +#. :guilabel:`Duplicate`: this action duplicates the dial plan, and puts it at the bottom of the + list, with an extension of one number (+1) larger than the original extension. + +Dialplan editor (visual editor) +------------------------------- + +When the :guilabel:`Visual Editor` button is clicked for a dial plan on the :guilabel:`Dial plan` +page, a pop-up :guilabel:`Dialplan Editor` window appears. + +This pop-up window is the primary place where the architecture, or structure, of the dial plan is +configured. In this window, a :abbr:`GUI (graphical user interface)` appears, where various dial +plan elements can be configured and linked together. + +.. image:: dial_plan_basics/dial-plan-visual.png + :align: center + :alt: Visual editor for an example dial plan, with the new element, Add, and Save buttons + highlighted. + +.. important:: + New dial plans come blank with :guilabel:`New element` options for the user to :guilabel:`Add` + and :guilabel:`Save`. + + The method for saving in the :guilabel:`Dialplan Editor` is different from saving any other edits + in the Axivox management console because the :guilabel:`Save` button **must** be pressed before + closing the :menuselection:`Visual editor`. + + Then, before these changes can take place on the Axivox platform, the user **must** click + :guilabel:`Apply changes` in the upper-right corner of the :guilabel:`Dial plan` page. + +From the :guilabel:`Dialplan Editor` pop-up window, users can add a new element to the dial plan. To +do that, open the :guilabel:`New element` drop-down menu, and select the desired element. Then, +click :guilabel:`Add`. + +Doing so adds that element to the visual editor display of the dial plan being modified. This +element can be moved where desired amongst the other elements present in the dial plan. + +Connect elements in the dial plan by clicking and dragging outward from the :guilabel:`(open +circle)` icon on the right side of the element. Doing so reveals an :guilabel:`(arrow)` icon. +Proceed to drag this :guilabel:`(arrow)` icon to the desired element in the dial plan that it is +meant to connect with. + +Connect the :guilabel:`(arrow)` icon to the circle on the left side of the desired element. + +Calls displayed in the dial plan flow from left-to-right in the element. + +In order to further configure a :guilabel:`New element`, double-click on the element inside the dial +plan, to reveal a subsequent pop-up window, wherein additional customizations can be entered. + +Each element has a different configuration pop-up window that appears when double-clicked. + +.. important:: + All elements **must** have a final destination in the dial plan in order to close a loop. This + can be accomplished by implementing the :guilabel:`Hang up` element, or looping the element back + to a :guilabel:`Menu` element or :guilabel:`Digital Receptionist` element elsewhere in the dial + plan. + + .. image:: dial_plan_basics/loop-back.png + :align: center + :alt: Dial plan, shown with highlight looping open end back to the beginning of the menu + element. + +Once all desired dial plan elements and configurations are complete, remember to click +:guilabel:`Save` before exiting the :guilabel:`Dialplan Editor` pop-up window. Then, click +:guilabel:`Apply changes` on the :guilabel:`Dial plans` page to ensure they are implemented into +Axivox production. + +Dial plan elements +------------------ + +The following elements are available in the :guilabel:`New element` drop-down menu, while designing +a dial plan in the :guilabel:`Dialplan Editor` pop-up window. + +Basic elements +~~~~~~~~~~~~~~ + +These are the basic elements that are used in simple dial plans in Axivox: + +- :guilabel:`Call`: call an extension or queue. +- :guilabel:`Play a file`: play an audio file or voice greeting. +- :guilabel:`Voicemail`: forward to a voicemail (terminal). +- :guilabel:`Hang up`: hang up the call (terminal). +- :guilabel:`Queue`: attach a call queue with a group of users to answer a call. +- :guilabel:`Conference`: add a conference room for a caller to connect to. + +Basic routing elements +~~~~~~~~~~~~~~~~~~~~~~ + +Routing elements change or route the path of a caller, these are some basic routing elements used in +Axivox: + +- :guilabel:`Menu`: add a dial-by-number directory and configure downstream actions (not terminal). +- :guilabel:`Switch`: attach a manual on/off control that can divert traffic based on whether it is + opened (On) or closed (Off). +- :guilabel:`Digital Receptionist`: attach a virtual dispatcher to listen for extensions to connect + to. + +Advanced routing elements +~~~~~~~~~~~~~~~~~~~~~~~~~ + +These are the more advanced elements that route calls in Axivox: + +- :guilabel:`Dispatcher`: create a call filter to route traffic based on the geo-location of the + caller ID. +- :guilabel:`Access List`: create a tailored access list with VIP customer preference. +- :guilabel:`Time Condition`: create time conditions to route incoming traffic around holidays, or + other sensitive time-frames. +- :guilabel:`Multi-Switch`: a mechanism to create paths, and turn them on and off, to divert + incoming calls. + +Advanced elements +~~~~~~~~~~~~~~~~~ + +The following are more advanced elements (not routing) in Axivox: + +- :guilabel:`Record`: recording feature is enabled (requires plan change, enabled in Axivox + settings). +- :guilabel:`Caller ID`: replace the caller ID by the called number or free text. + +.. important:: + Dial plan elements can be configured by double-clicking them, and linking different aspects of + the Axivox console to them. + +Attach to incoming number +========================= + +To attach an existing dial plan to an incoming number, go to `Axivox management console +`_ , and click on :guilabel:`Incoming numbers`. + +Next, click :guilabel:`Edit` next to the number to which the dial plan should be attached. + +Doing so reveals a separate page wherein that number's dial plan can be modified. To do that, select +:guilabel:`Dial plan` from the :guilabel:`Destination type for voice call` field drop-down menu. +Then, choose the desired dial plan from the :guilabel:`Dial plan` field that appears. + +With that in place, that means when that specific number calls in, the configured dial plan is +activated, and runs through the prompts to properly route the caller. + +Finally, :guilabel:`Save` the changes, and click :guilabel:`Apply changes` in the upper-right +corner. + +Basic dial plan scenario +------------------------ + +The following showcases a basic dial plan scenario for call routing, where additional elements can +be added to expand the setup. This basic dial plan scenario includes the following linked elements +:menuselection:`Start --> Play a file --> Menu --> (Hang-up, Calls, Queues, Conferences) --> +(Voicemail, Hang-up)`. + +.. image:: dial_plan_basics/basic-scenario.png + :align: center + :alt: Basic dial plan configuration. + +.. seealso:: + This setup does **not** include any basic or advanced call routing. For more information on call + routing, reference this documentation: :doc:`dial_plan_advanced`. diff --git a/content/applications/general/voip/axivox/dial_plan_basics/basic-scenario.png b/content/applications/general/voip/axivox/dial_plan_basics/basic-scenario.png new file mode 100644 index 000000000..7c1405d0e Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_basics/basic-scenario.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-edits.png b/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-edits.png new file mode 100644 index 000000000..25dba5030 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-edits.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-visual.png b/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-visual.png new file mode 100644 index 000000000..efac54091 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_basics/dial-plan-visual.png differ diff --git a/content/applications/general/voip/axivox/dial_plan_basics/loop-back.png b/content/applications/general/voip/axivox/dial_plan_basics/loop-back.png new file mode 100644 index 000000000..a7b041f24 Binary files /dev/null and b/content/applications/general/voip/axivox/dial_plan_basics/loop-back.png differ diff --git a/content/applications/general/voip/axivox/dynamic_caller_id.rst b/content/applications/general/voip/axivox/dynamic_caller_id.rst new file mode 100644 index 000000000..3604eafd1 --- /dev/null +++ b/content/applications/general/voip/axivox/dynamic_caller_id.rst @@ -0,0 +1,113 @@ +================= +Dynamic caller ID +================= + +*Caller ID* identifies the caller when they make a phone call. It allows the recipient of the call +to see what number the caller is calling from. Caller ID shows users and clients who is calling, so +they can choose to pick up or decline the call. + +Axivox offers a dynamic caller ID option to choose which number is displayed on outgoing calls. + +International numbers can be purchased to do business transactions internationally, via a phone +call, from a number that has an area code or country code of the destination being called. By +displaying a local number, this can increase customer engagement. + +Some companies have many employees making calls from a call center. These employees are not always +available to receive a return phone call from a prospective customer. In this case, :abbr:`VoIP +(Voice over Internet Protocol)` can be configured in such a way that dynamic caller ID shows the +main company phone number, so any number of employees in the group can answer the call. This way, a +call is never missed. + +.. _voip/axivox/dynamic-caller-id-default: + +Default outgoing number +======================= + +In Axivox a *default number* can be set. This is a company's main number. This means, when anyone +from the company (user/employee) calls a number outside the company, the default outgoing number +shows up automatically on the caller ID. + +If someone from outside the company tries to call back a user/employee, they are then funneled back +through the main line (default number). If there is a dial plan set up, they are prompted to make +selections. This is especially helpful in cases where employees change positions frequently, or if +they leave the company. + +.. seealso:: + - :doc:`dial_plan_basics` + - :doc:`dial_plan_advanced` + +To access the default number, go to the `Axivox management console `_, +and log in. Then, click into :guilabel:`Settings` in the left menu, and navigate to +:guilabel:`Default outgoing number`. + +From here, change the :guilabel:`Default outgoing number` by clicking the drop-down menu, and making +a selection from the incoming phone numbers available on Axivox. + +Be sure to :guilabel:`Save` the changes, then click :guilabel:`Apply changes` in the upper-right +corner of the :guilabel:`General Settings` page to implement the change. + +The :guilabel:`Default outgoing number` is what shows up by default in the Axivox management portal. +However, the outgoing number can also be configured differently at the user level. + +Users +----- + +To configure the outgoing number at the user level, log in to the `Axivox management console +`_. Next, click :guilabel:`Users` from the menu on the left, and then +click :guilabel:`Edit` to the right of the user that is to be configured. + +Under :guilabel:`Outgoing number`, click the drop-down menu to select either the :guilabel:`Default +outgoing number` (as specified here: :ref:`voip/axivox/dynamic-caller-id-default`), or any of the +incoming numbers on the Axivox account. + +Choosing the :guilabel:`Default` selection in the :guilabel:`Outgoing number` drop-down menu ensures +this user has the :guilabel:`Default outgoing number` shown on their caller ID when making calls. + +If a specific number is chosen, and that number is assigned to this user under :guilabel:`Incoming +numbers` (in the Axivox console's menu on the left), that means this user has a direct line for +customers to reach them. + +Once the desired changes are complete, be sure to click :guilabel:`Save`, then click +:guilabel:`Apply changes` in the upper-right corner to implement the change. + +.. tip:: + By default, when creating a new user in Axivox, the :guilabel:`Outgoing number` is automatically + set to :guilabel:`Default`. + +Advanced options +---------------- + +To access the :guilabel:`Advanced options`, navigate to the :guilabel:`Settings` option in the menu +on the left of the `Axivox management console `_. Then, click +:guilabel:`Advanced options` to the right of :guilabel:`Default outgoing number`. + +By default, there are not any advanced rules set. To create one, click the green :guilabel:`+ +(plus)` icon. Doing so reveals a line with two blank fields. From here, different caller IDs can be +set up, depending on what location the user/employee is calling from. + +To create a rule, first set the :guilabel:`Destination prefix` in the first empty field. This is the +country code, complete with zero(s) in front of it. Then, in the second empty field, select the +phone number that should be used for calling out from that country code. + +.. important:: + Check the box for :guilabel:`Apply advanced rules even for users with a default outgoing number + configured` to allow these rules to take precedent over all other outgoing configurations. + +.. tip:: + The order of the rules can be modified by dragging-and-dropping them into another order. The + first matching rule is applied. + +.. example:: + For example, a company wants all users/employees to utilize the configured number for Great + Britain when calling from the `0044` country code (Great Britain). + + To accomplish that, simply type in `0044` into the :guilabel:`Destination prefix` field, and + select the number starting with the `+44` country code. Order the rules as necessary, and select + the checkbox to supersede all other rules, if needed. + + .. image:: dynamic_caller_id/advanced-callerid.png + :align: center + :alt: Advanced options for the default outgoing number. + +Once the desired configurations are complete, be sure to click :guilabel:`Save`, then click +:guilabel:`Apply changes` in the upper-right corner to implement the change. diff --git a/content/applications/general/voip/axivox/dynamic_caller_id/advanced-callerid.png b/content/applications/general/voip/axivox/dynamic_caller_id/advanced-callerid.png new file mode 100644 index 000000000..805973dd6 Binary files /dev/null and b/content/applications/general/voip/axivox/dynamic_caller_id/advanced-callerid.png differ diff --git a/content/applications/general/voip/axivox/incoming-call.png b/content/applications/general/voip/axivox/incoming-call.png deleted file mode 100644 index 23e3dbc08..000000000 Binary files a/content/applications/general/voip/axivox/incoming-call.png and /dev/null differ diff --git a/content/applications/general/voip/axivox/manage_users.rst b/content/applications/general/voip/axivox/manage_users.rst new file mode 100644 index 000000000..64e3b696f --- /dev/null +++ b/content/applications/general/voip/axivox/manage_users.rst @@ -0,0 +1,346 @@ +====================== +Manage users in Axivox +====================== + +Managing Axivox :abbr:`VoIP (Voice over Internet Protocol)` users is an important part of setting up +:abbr:`VoIP (Voice over Internet Protocol)` in an Odoo database. Each Axivox user has a unique name, +phone number and/or extension, and a voicemail. This way, they can be reached in a variety of +convenient ways. + +Axivox users are organized in a simple, straightforward way in the Axivox console, so an +administrator can manage users quickly and easily. + +.. note:: + This documentation covers how to configure everything through a provider called, Axivox. + Depending on the chosen VoIP provider, the processes to manage users may be different. + +Overview +======== + +Begin at the Axivox management console by navigating to `https://manage.axivox.com +`_. Log in with the appropriate administrator credentials. + +.. note:: + Actions in the Axivox management console **must** be double-saved, in order for the changes to + take effect. To save any changes, click :guilabel:`Save` in the individualized changes screen. + Then, to implement those changes, click the :guilabel:`Apply Changes` button in the upper-right + corner of the console. + +.. _voip/axivox/incoming_number: + +Incoming numbers +---------------- + +Incoming numbers are all the numbers a company is paying to use to receive calls. + +Click on :menuselection:`Incoming numbers` from the menu on the left of the Axivox management +console. Doing so reveals the :guilabel:`Incoming numbers` page, where all the incoming numbers are +listed, along with their :guilabel:`Destination` and SMS information. + +The :guilabel:`Destination` determines the action that is taken, or the path the caller follows when +dialing said numbers. + +To edit the :guilabel:`Destination`, click the :guilabel:`Edit` button to the far-right of the +incoming number line to be modified. Then, on the :guilabel:`Edit number` page that appears, the +:guilabel:`Destination type for voice call` can be changed. + +The options available in the :guilabel:`Destination type for voice call` drop-down menu are as +follows: + +- :guilabel:`Not configured` +- :guilabel:`Extension` +- :guilabel:`Dial plan` +- :guilabel:`Voicemail` +- :guilabel:`Hang up` +- :guilabel:`Conference` + +Depending on the selection made in the :guilabel:`Destination type for voice call` drop-down menu, a +second, selection-specific drop-down menu is populated with further configuration options. +Additionally, more fields are revealed, based on the selection made in the :guilabel:`Destination +type for voice call` drop-down menu. + +Once the desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner to implement them. + +New users +========= + +Every employee using :abbr:`VoIP (Voice over Internet Protocol)` at the company needs an Axivox user +account associated with them. + +To view existing users in the Axivox management console, click :guilabel:`Users` from the menu on +the left of the console. Every user has a :guilabel:`Number`, :guilabel:`Name`, option for a +:guilabel:`Voicemail`, and an :guilabel:`Outgoing number` specified. + +To create a new user in the Axivox console, click :guilabel:`Add a user` to reveal a :guilabel:`New +user` form. The following tabs are available for configuring the new user: + +- :guilabel:`General`: basic information, including the extension of the user, can be set. +- :guilabel:`Forwardings`: internal forwards on 'no answer' or busy signals. +- :guilabel:`Follow Me`: external forward configuration. +- :guilabel:`Keys`: set hot-keys within the :abbr:`VoIP (Voice over Internet Protocol)` system. +- :guilabel:`SIP Identifiers`: :abbr:`SIP (Session Initiation Protocol)` username and password for + external configuration. +- :guilabel:`Permissions`: set access rights for users in the Axivox management console. + +General tab +----------- + +Under the :guilabel:`General` tab of the :guilabel:`New user` form, in the :guilabel:`Extension` +field, input an extension that is unique to the user. This is the number internal users dial to +reach a specific employee. + +In the :guilabel:`Name` field, input the employee name. + +Next, fill out the :guilabel:`Email address of the user` field. A valid email address for the +employee should be added here, where the user receives business emails. + +In the :guilabel:`GSM number` field, enter an alternative number at which the user can be reached. +Be sure to include the country code. + +.. note:: + A country code is a locator code that allows access to the desired country's phone system. The + country code is dialed first, prior to the target number. Each country in the world has its own + specific country code. + + For a list of comprehensive country codes, visit: `https://countrycode.org + `_. + +.. image:: manage_users/general-tab.png + :align: center + :alt: General tab layout in the Axivox management console. + +In the :guilabel:`Voicemail` field, select either :guilabel:`Yes` or :guilabel:`No` from the +drop-down menu. + +In the :guilabel:`Directory` field, the administrator has the option to leave it blank, by making no +changes, or selecting :guilabel:`Default` from the drop-down menu. The :guilabel:`Directory` is used +in the *Digital Receptionist* feature element of a dial-plan. + +At the bottom of the :guilabel:`General` tab, there are two separate options with selection boxes. + +The first option is :guilabel:`This user can receive multiple calls at the same time`. By selecting +this option, users are able to receive calls when on another call. + +The second option, :guilabel:`This user must log-in to call`, provides the option to make it +mandatory for the user to log in. + +.. note:: + If a company uses physical VoIP phones on desks, and wants their employees to be able to log in + from *any* phone or desk in the office, they would make the selection for :guilabel:`This user + must log-in to call`. + +Once the desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner. + +.. _voip/axivox/forwardings_tab: + +Forwardings tab +--------------- + +Under the :guilabel:`Forwardings` tab of the :guilabel:`New user` form, a company can decide what +happens if someone calls a user, and the call is not answered. + +.. important:: + Forwardings are disabled when the :guilabel:`Follow Me` option is enabled. + +For example, under the :guilabel:`Forwarding on no answer` field, when the button for :guilabel:`Add +a destination` is selected, the option to add a specific user or phone number is revealed. After +entering the :guilabel:`Destination`, a specific time frame can be selected by sliding the +:guilabel:`seconds bar` to the desired ring time. + +Additional :guilabel:`Destinations` can be added on with different ring times. + +.. note:: + Ring times can be staggered, so the call is forwarded to another user after the first user does + not pick up the call. The option to :guilabel:`Send to voicemail as a last resort` is available + to the administrator, should the :guilabel:`Destinations` not pick up. + +Under the :guilabel:`Forwarding on busy` field, an administrator can :guilabel:`Add a destination`. +When clicked, they can then set the :guilabel:`Destination` (user) and time frame. Should the +original user's :abbr:`VoIP (Voice over Internet Protocol)` extension, or incoming number, be busy, +the call is forwarded to the destination(s). + +.. image:: manage_users/forwardings-tab.png + :align: center + :alt: Manage forwarding calls to different users or phone numbers in the Forwardings tab. + +When the desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner of the page. + +Follow Me tab +------------- + +When the :guilabel:`Follow Me` option is selected, under the :guilabel:`Follow Me` tab of the +:guilabel:`New user` form, no :menuselection:`Forwardings` can be made. + +Also, when the :guilabel:`Follow Me` option is selected, the :guilabel:`Add a destination` button +can be selected to add users, or a destination phone number, to the original user's account. That +way, these added numbers ring when a call is received. + +After entering the :guilabel:`Destination`, a specific time frame can be made by sliding the +:guilabel:`seconds bar` to the desired ring time. Additional :guilabel:`Destinations` can be added +with different ring times. + +.. note:: + The original user's :abbr:`VoIP (Voice over Internet Protocol)` number does **not** ring with + this option selected. Ring times can also be staggered, so the call is forwarded to another user + after the first user does not pick up the call. + +.. image:: manage_users/follow-me-tab.png + :align: center + :alt: Ring destinations like different users or phone numbers from the Follow Me tab. + +.. important:: + The Odoo mobile app, or another :abbr:`SIP (Session Initiation Protocol)` mobile client, allows + for simultaneous ringing of the user's extension or incoming number. For more information, visit + the :doc:`VoIP Mobile Integrations <../devices_integrations>` documentation. + +Once all desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner. + +Keys tab +-------- + +Under the :guilabel:`Keys` tab of the :guilabel:`New user` form, speed dial actions for the user can +be configured. Some more advanced options are available, as well. + +The following options are available to set to numerical values `1-20`. + +These actions can be set on each number: + +- :guilabel:`Not configured`: the default action, which is nothing. +- :guilabel:`BLF (Busy lamp fields)`: this action shows the status of other users' phones connected + to the Axivox phone system. This is primarily used on a desk-phone. +- :guilabel:`Quick Call`: this action allows for a speed-dial of an external number. +- :guilabel:`Line`: this action allows the user to call another user. +- :guilabel:`Switch`: this action allows the user to switch between calls from a desk-phone. +- :guilabel:`Pickup`: this action allows the user to pick up an incoming call from a desk-phone. + +.. image:: manage_users/user-keys.png + :align: center + :alt: Manage user page with Keys tab highlighted and number 2 key drop-down menu selected (with + highlight) + +Once all the desired configurations are complete, click :guilabel:`Save`, then click +:guilabel:`Apply changes` in the upper-right corner. + +.. important:: + Many of the preceding options have secondary options available, as well, that can be used to link + a user, or external phone number. These **must** be filled out in conjunction with the initial + action. + +.. note:: + The :guilabel:`Number of keys` field can be changed by entering in the desired numerical value in + the :guilabel:`Number of keys` field, located at the top of the :guilabel:`Keys` tab of the + :guilabel:`New user` form. + +SIP Identifiers tab +------------------- + +*SIP*, which stands for Session Initiation Protocol telephony, allows one to make and receive calls +through an internet connection. The :guilabel:`SIP Identifiers` tab on the :guilabel:`New user` +form, contains credentials needed to configure Axivox users in Odoo and/or a different :abbr:`SIP +(Session Initiation Protocol)` mobile client. + +.. seealso:: + See the documentation on configuring Axivox, using the SIP identifiers: + + - :doc:`Use VoIP services in Odoo with Axivox ` + - :doc:`Axivox Mobile Integrations <../devices_integrations>` + +Under the :guilabel:`SIP Identifiers` tab, the :guilabel:`SIP username` field represents the user's +information that was entered in the :guilabel:`Extension` field, under the :guilabel:`General` tab. + +The :guilabel:`Domain` field is assigned to the company by the Axivox representative. + +The value in the :guilabel:`SIP Password` field is unique for every Axivox user. This value is used +to sign into Axivox on Odoo, and for any mobile :abbr:`SIP (Session Initiation Protocol)` clients. + +.. image:: manage_users/sip-identifiers-tab.png + :align: center + :alt: Important credentials used for external configurations of Axivox VoIP. + +The value listed in the :guilabel:`Address of the proxy server` field is typically: +`pabx.axivox.com`, but is subject to change by Axivox, so be sure to check the :guilabel:`SIP +Identifiers` tab for the most accurate value. + +Once all desired configurations have been made, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner. + +Permissions tab +--------------- + +Under the :guilabel:`Permissions` tab of a :guilabel:`New user` form, a :guilabel:`Username` and +:guilabel:`Password` can be entered for the user. + +Beneath those fields, the following permissions can be granted to Axivox users for portal access: + +- :guilabel:`User portal access` +- :guilabel:`User management` +- :guilabel:`Administrator access` +- :guilabel:`Phone management` +- :guilabel:`User group management` +- :guilabel:`Phone number management` +- :guilabel:`Dial plan management` +- :guilabel:`Pickup group management` +- :guilabel:`Switch management` +- :guilabel:`Conference management` +- :guilabel:`Queue management` +- :guilabel:`Voicemail management` +- :guilabel:`Audio messages management` +- :guilabel:`Music on hold management` +- :guilabel:`Directory management` +- :guilabel:`Call list` +- :guilabel:`Connected user list` +- :guilabel:`Global settings` +- :guilabel:`Apply changes button` +- :guilabel:`Invoice download` +- :guilabel:`Invoice details` +- :guilabel:`Blacklist management` +- :guilabel:`Conference participant management` + +To access credentials for the Axivox user portal, navigate to the top of the +:menuselection:`Permissions` tab. Then, copy the :guilabel:`Username`, and enter the correct +:guilabel:`Password` for the individual user. There is a minimum of 8 characters for a user +password. + +.. note:: + These are the same permissions granted to the Axivox administrator that are listed in the menu on + the left in the Axivox management console. Should a selection state :guilabel:`No`, or + :guilabel:`No access`, then the menu option does **not** populate for the user. + +Once all the desired configurations are complete, click :guilabel:`Save`, then click +:guilabel:`Apply changes` in the upper-right corner. + +Upon finishing the setup for a new user, an :ref:`voip/axivox/incoming_number` can be linked. + +.. image:: manage_users/user-permissions.png + :align: center + :alt: Manage a user page, with the permissions tab highlighted, along with the first permission + highlighted indicating a no selection. + +.. _voip/axivox/user_groups: + +User groups +=========== + +A user group is a grouping of Axivox users that can be linked to a queue for call center +capability. + +To begin using user groups, navigate to `https://manage.axivox.com `_. + +Then, log in with the appropriate administrator credentials. From the menu on the left of the Axivox +administrative panel, click into :guilabel:`User Groups`. + +To add a user group from the :guilabel:`User Groups` page, click :guilabel:`Add a group`. + +Next, name the group, by entering text into the :guilabel:`Name` field. Then, add a member to the +group by typing the first few letters of the user's name into the :guilabel:`Members` field. The +user populates in a drop-down menu below the field. Then, click on the desired user, and they are +added to the user group. + +Repeat this process to add more users to the group. + +Once all desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner. diff --git a/content/applications/general/voip/axivox/manage_users/follow-me-tab.png b/content/applications/general/voip/axivox/manage_users/follow-me-tab.png new file mode 100644 index 000000000..e00f36a07 Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/follow-me-tab.png differ diff --git a/content/applications/general/voip/axivox/manage_users/forwardings-tab.png b/content/applications/general/voip/axivox/manage_users/forwardings-tab.png new file mode 100644 index 000000000..38fa4ece5 Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/forwardings-tab.png differ diff --git a/content/applications/general/voip/axivox/manage_users/general-tab.png b/content/applications/general/voip/axivox/manage_users/general-tab.png new file mode 100644 index 000000000..bb9e0b6d2 Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/general-tab.png differ diff --git a/content/applications/general/voip/axivox/manage_users/sip-identifiers-tab.png b/content/applications/general/voip/axivox/manage_users/sip-identifiers-tab.png new file mode 100644 index 000000000..270789592 Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/sip-identifiers-tab.png differ diff --git a/content/applications/general/voip/axivox/manage_users/user-keys.png b/content/applications/general/voip/axivox/manage_users/user-keys.png new file mode 100644 index 000000000..f2741af51 Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/user-keys.png differ diff --git a/content/applications/general/voip/axivox/manage_users/user-permissions.png b/content/applications/general/voip/axivox/manage_users/user-permissions.png new file mode 100644 index 000000000..ab2cf12ff Binary files /dev/null and b/content/applications/general/voip/axivox/manage_users/user-permissions.png differ diff --git a/content/applications/general/voip/axivox/manager-sip.png b/content/applications/general/voip/axivox/manager-sip.png deleted file mode 100644 index d51817c04..000000000 Binary files a/content/applications/general/voip/axivox/manager-sip.png and /dev/null differ diff --git a/content/applications/general/voip/axivox/odoo-user.png b/content/applications/general/voip/axivox/odoo-user.png deleted file mode 100644 index 1d3ed8004..000000000 Binary files a/content/applications/general/voip/axivox/odoo-user.png and /dev/null differ diff --git a/content/applications/general/voip/axivox/vm_audio_messages.rst b/content/applications/general/voip/axivox/vm_audio_messages.rst new file mode 100644 index 000000000..1d257f476 --- /dev/null +++ b/content/applications/general/voip/axivox/vm_audio_messages.rst @@ -0,0 +1,263 @@ +============================= +Voicemails and audio messages +============================= + +.. _axivox_admin: https://manage.axivox.com/ + +Managing voicemail is an important part of any business. A company needs to access their messages +with ease, and stay on top of any missed calls. Recording audio messages, like thanking a caller for +reaching out, or directing them to the right extension, is also a great way to personalize the +business interaction, and set the tone with the customer. + +This document covers the configuration of both voicemail and audio messages in the Axivox +administrative portal. + +.. _voip/axivox/global_language: + +Set global language +=================== + +To start using voicemails and audio messages with Axivox, the global language should be set in the +Axivox admin portal settings. To do that, navigate to `manage.axivox.com `_. After +logging into the portal, go to :menuselection:`Settings --> Global language (e.g.: voicemail +messages,...)`. + +From here, set the language to either: :guilabel:`Francais`, :guilabel:`English`, +:guilabel:`Espanol`, or :guilabel:`Deutsch`. + +Then, click :guilabel:`Save`, followed by :guilabel:`Apply changes` in the upper-right corner of the +:guilabel:`General Settings` page to implement the change into production. + +.. _voip/axivox/activate_voicemail: + +Activate voicemail +================== + +In order for a user to utilize voicemail in Axivox, the voicemail feature **must** be turned on in +the Axivox administrative portal. To begin using voicemail with a user, navigate to +`manage.axivox.com `_. Then, log in with the appropriate administrator credentials. + +On the left menu of the Axivox administrative panel, click into :guilabel:`Users`. + +Then, click into the specific user the voicemail should be activated for. Under the section marked, +:guilabel:`Voicemail`, open the drop-down menu, and click on :guilabel:`Yes`. + +Lastly, :guilabel:`Save` the change, then click :guilabel:`Apply changes` in the upper-right corner +of the screen. + +Voicemail +========= + +The next step is to set up the individual voicemail boxes on the Axivox administrative portal. To +access the portal, visit `manage.axivox.com `_ and log in. Then, navigate to +:menuselection:`Voicemails`, located in the menu on the left. + +If the voicemail option was activated in the user profile, using this process +:ref:`voip/axivox/activate_voicemail`, then a voicemail is automatically created on the +:guilabel:`Voicemails` page. + +.. tip:: + It should be noted that some of the administrative portal language is in French, as Axivox is a + Belgian company. The global language is still set to one of the four options as seen here: + :ref:`voip/axivox/global_language`. + +Manually create voicemail +------------------------- + +To manually create a new voicemail box, click :guilabel:`Add a voicemail` on the +:guilabel:`Voicemails` page. Or, edit an existing voicemail box, by clicking :guilabel:`Edit` to the +far-right of an existing voicemail box on the :guilabel:`Voicemails` page. + +.. example:: + Suppose a sales or support team needs a general voicemail box. The voicemail would need to be + created manually, and attached to an incoming number. + +The new, manually-created voicemail box should be attached to an incoming number, so it can receive +messages. To do so, navigate to :menuselection:`Incoming numbers`, located in the menu on the left. +Then, click :guilabel:`Edit` to the far-right of the specific number the voicemail should be linked +to. + +In the :guilabel:`Destination type for voice call` field, click the drop-down menu, and select +:guilabel:`Voicemail`. Then, open the drop-down menu on the next line labeled, +:guilabel:`Voicemail`, and select the manually-created voicemail box. + +.. important:: + If an incoming number is capable of receiving SMS/text messages, an additional field, + :guilabel:`Destination email address for Incoming SMS`, is present. + + To determine whether an incoming number is capable of receiving SMS/text messages, click + :guilabel:`Incoming numbers` from the menu on the left, then check the :guilabel:`SMS compatible` + column for the incoming number. + +Then, if applicable, in the field labeled, :guilabel:`Destination email address for Incoming SMS`, +enter an email to which incoming text messages sent to the incoming number can be received. Some +incoming numbers (US +1) in Axivox are capable of receiving text messages from individuals and +automated numbers. + +Should this field be left empty, the default destination address is used, instead (as previously set +in the beginning of the process for manually creating a voicemail). + +Once all desired configurations are complete, click :guilabel:`Save`, then click :guilabel:`Apply +changes` in the upper-right corner of the screen to implement the change into production. + +Notifications +------------- + +Now, whenever a voicemail is received on any of the automatically pre-configured or manually-linked +voicemail boxes, an email is sent to the user's email address, as listed in the +:guilabel:`Voicemails` page, or in the user's Axivox profile. + +This information can be accessed by navigating to :menuselection:`Users` in the left menu, and +clicking :guilabel:`Edit` next to the specific user in question. + +.. _voip/axivox/vm_forwarding: + +Forwarding to voicemail +======================= + +In Axivox, there are also numerous forwarding settings for a user. To access these forwarding +settings, go to `manage.axivox.com `_ and log in. + +Next, navigate to :menuselection:`Users`, located in the menu on the left. + +From there, click into the specific user the forwarding should be added to. Then, open the +:guilabel:`Forwardings` tab. + +If the user is busy on another call, or away from the phone, there is an option present in this tab +to :guilabel:`Send to voicemail as a last resort`, located in the :guilabel:`Forwarding on no +answer` and :guilabel:`Forwarding on busy` fields. + +.. image:: vm_audio_messages/forwardings.png + :align: center + :alt: Send to voicemail as a last resort options highlighted on the Forwardings tab of the user. + +If the :guilabel:`Send to voicemail as a last resort` box is ticked, when the forwarding actions +stated in each section are not successful, the caller is routed to the voicemail set on the +particular user. + +.. seealso:: + For more information on forwarding and transfers, visit :ref:`voip/axivox/forwardings_tab`. + +When all the desired configurations are complete, click :guilabel:`Save`, then click +:guilabel:`Apply changes` in the upper-right corner of the screen to implement the change. + +.. _voip/axivox/audio_messages: + +Audio messages +============== + +It is possible to add audio messages *before* a customer's call is even taken, to inform them about +the waiting time for deliveries, the availability of a product, or any other important promotional +messages. + +To record an audio message in Axivox, navigate to `manage.axivox.com `_ and log in. + +Next, click on :guilabel:`Audio messages` in the menu on the left. From the :guilabel:`Audio +messages` page, click :guilabel:`Add a message`. + +Type in a :guilabel:`Name`, and click :guilabel:`Save`. + +Upon clicking :guilabel:`Save`, the browser redirects back to the main :guilabel:`Audio messages` +page, where the newly-created message can be found on the list. + +There are two different ways to make the audio message. The user could either record the message +over the phone, or type the message (in text), and select a computer-generated speaker to read the +message. + +Record audio message +-------------------- + +To record an audio message over the phone, click the orange button labeled, +:guilabel:`Record/Listen`, located to the right of the desired message on the list to record, on the +:guilabel:`Audio messages` page. + +When clicked, a :guilabel:`Record / listen to a message` pop-up window appears. From here, the +message is then recorded, via one of the extensions that is associated with the user. Under +:guilabel:`Extension to use for message management` field, click the drop-down menu, and select the +extension where Axivox should call to record the message. + +Then, click :guilabel:`OK` to begin the call. + +.. note:: + The user **must** be active in the production database with :abbr:`VoIP (Voice over Internet + Protocol)` configured. To configure :abbr:`VoIP (Voice over Internet Protocol)` for a user, see + this documentation: :doc:`axivox_config`. + +Upon connecting to the Axivox audio recorder management line, a recorded French-speaking operator +provides the following options: + +#. Press `1` to record a message. +#. Press `2` to listen to the current message. + +Press either `1` or `2`, depending on whether or not there is already a message present in the +system for this particular audio message that requires a review, before recording a new one. + +Record the new audio message after pressing `1`, then press `#` to end the recording. + +The French-speaking operator returns to the line presenting the first set of questions again: + +#. Press `1` to record a message. +#. Press `2` to listen to the current message. + +Press `#` to end the call. + +Write audio message +------------------- + +To type the message, and select a computerized speaker to say the text, navigate to the +:menuselection:`Audio messages` in the menu on the left. + +From the :guilabel:`Audio messages` page, select the blue button labeled, :guilabel:`Text message`, +next to the corresponding audio message :guilabel:`Name` that the message should be attached to. + +Doing so reveals a :guilabel:`Convert text to message` pop-up window. + +From the :guilabel:`Convert to text message` pop-up window, click the drop-down menu next to the +field labeled, :guilabel:`Voice`, and select an option for the :guilabel:`Text` to be read in. + +After the :guilabel:`Voice` selection has been made, and the message has been written in the +:guilabel:`Text` field, click :guilabel:`Generate` to process the audio file. + +The text is read in the same language it is written in the :guilabel:`Text` field. Should the +language differ in the :guilabel:`Voice` field, then an accent is used by the computerized speaker. + +Finally, when these steps are complete, click :guilabel:`Save` to save the audio message. + +To implement the changes, click :guilabel:`Apply changes` in the upper-right corner of the screen. + +.. image:: vm_audio_messages/sample-message.png + :align: center + :alt: Convert text to message window with voice, text, generate button and save highlighted. + +.. tip:: + To set a greeting or audio message in a dial plan element double-click on the element. This could + be a :guilabel:`Play a file` element, or a :guilabel:`Menu` element, in which the caller should + encounter an urgent message, or a dial-by-number directory. + + For more information on dial plans see this documentation: :doc:`dial_plan_basics` or + :doc:`dial_plan_advanced`. + +.. _voip/axivox/music_on_hold: + +Music on-hold +============= + +Axivox has the option to add custom hold music to the call whenever a caller is waiting for their +call to be answered. To add hold music to the Axivox administrative portal, navigate to the +`manage.axivox.com `_, and log in. + +Then, click on :guilabel:`Music on hold` from the menu on the left, and a :guilabel:`Change the +music on hold` pop-up window appears. + +On the :guilabel:`Change the music on hold` pop-up window, click the :guilabel:`Choose File` button +to select an MP3 (MPEG Audio Layer 3) or WAV (Waveform Audio File Format ) file to be uploaded. + +.. note:: + Only :abbr:`MP3 (MPEG Audio Layer 3)` or :abbr:`WAV (Waveform Audio File Format)` files can be + uploaded to the Axivox administrative portal. + +Once the file is selected, the :guilabel:`Progression` bar shows an upload status. When this +activity completes, the window can be closed, by clicking :guilabel:`Close`. + +When the desired changes are complete, click :guilabel:`Apply changes` in the upper-right corner of +the screen. diff --git a/content/applications/general/voip/axivox/vm_audio_messages/forwardings.png b/content/applications/general/voip/axivox/vm_audio_messages/forwardings.png new file mode 100644 index 000000000..80d208412 Binary files /dev/null and b/content/applications/general/voip/axivox/vm_audio_messages/forwardings.png differ diff --git a/content/applications/general/voip/axivox/vm_audio_messages/sample-message.png b/content/applications/general/voip/axivox/vm_audio_messages/sample-message.png new file mode 100644 index 000000000..1ed4c6ce2 Binary files /dev/null and b/content/applications/general/voip/axivox/vm_audio_messages/sample-message.png differ diff --git a/content/applications/general/voip/axivox/voip-configuration.png b/content/applications/general/voip/axivox/voip-configuration.png deleted file mode 100644 index 9ede22f10..000000000 Binary files a/content/applications/general/voip/axivox/voip-configuration.png and /dev/null differ diff --git a/content/applications/general/voip/axivox/voip-installation.png b/content/applications/general/voip/axivox/voip-installation.png deleted file mode 100644 index 5590837b2..000000000 Binary files a/content/applications/general/voip/axivox/voip-installation.png and /dev/null differ diff --git a/content/applications/general/voip/devices_integrations.rst b/content/applications/general/voip/devices_integrations.rst new file mode 100644 index 000000000..60726d0c5 --- /dev/null +++ b/content/applications/general/voip/devices_integrations.rst @@ -0,0 +1,196 @@ +======================== +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. + +Odoo *VoIP* is SIP (Session Initiation Protocol) compatible, which means it can be used with *any* +:abbr:`SIP (Session Initiation Protocol)` compatible application. + +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. + +.. 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) +================================ + +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. + +.. 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. + + For more information, see this documentation: :ref:`voip/zoiper`. + +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. + +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. + +This step is **necessary**, whether using the mobile Odoo application or web browser. + +.. image:: devices_integrations/allow-mic.png + :align: center + :alt: Allow the database to access the microphone. + +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: + +.. image:: devices_integrations/voip-odoo-dashboard.png + :align: center + :alt: Layout of what the VoIP app looks like on the a mobile device. + +.. _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 +`_. + +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. + +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. + +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. + +.. image:: devices_integrations/account-settings-zoiper-group.png + :align: center + :alt: Zoiper account setup, shown in the view from a mobile device. + +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. + +.. example:: + If the provider being configured is *Axivox*, then select :guilabel:`Belgium`. Then, choose + :guilabel:`Axivox` as the provider. + +.. image:: devices_integrations/provider-zoiper-odoo.png + :align: center + :alt: Zoiper account setup, choosing the provider. + +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. + +.. 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. + +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 +`_. + +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 begin configuring *Linphone* for use with a :abbr:`SIP (Session Initiation Protocol)` provider, +first open *Linphone*, and an assistant screen appears. + +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`. + +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. + +.. 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. + + See `Linphone's wiki-documentation page + `_. diff --git a/content/applications/general/voip/devices_integrations/account-settings-zoiper-group.png b/content/applications/general/voip/devices_integrations/account-settings-zoiper-group.png new file mode 100644 index 000000000..783a7c87b Binary files /dev/null and b/content/applications/general/voip/devices_integrations/account-settings-zoiper-group.png differ diff --git a/content/applications/general/voip/devices_integrations/allow-mic.png b/content/applications/general/voip/devices_integrations/allow-mic.png new file mode 100644 index 000000000..d4cacaf01 Binary files /dev/null and b/content/applications/general/voip/devices_integrations/allow-mic.png differ diff --git a/content/applications/general/voip/devices_integrations/crm-voip-widget.png b/content/applications/general/voip/devices_integrations/crm-voip-widget.png new file mode 100644 index 000000000..e40b5216a Binary files /dev/null and b/content/applications/general/voip/devices_integrations/crm-voip-widget.png differ diff --git a/content/applications/general/voip/devices_integrations/linphone-odoo-setup.png b/content/applications/general/voip/devices_integrations/linphone-odoo-setup.png new file mode 100644 index 000000000..257cbba6f Binary files /dev/null and b/content/applications/general/voip/devices_integrations/linphone-odoo-setup.png differ diff --git a/content/applications/general/voip/devices_integrations/provider-zoiper-odoo.png b/content/applications/general/voip/devices_integrations/provider-zoiper-odoo.png new file mode 100644 index 000000000..28a563e92 Binary files /dev/null and b/content/applications/general/voip/devices_integrations/provider-zoiper-odoo.png differ diff --git a/content/applications/general/voip/devices_integrations/sip-options-zoiper.png b/content/applications/general/voip/devices_integrations/sip-options-zoiper.png new file mode 100644 index 000000000..e75c4f582 Binary files /dev/null and b/content/applications/general/voip/devices_integrations/sip-options-zoiper.png differ diff --git a/content/applications/general/voip/devices_integrations/voip-odoo-dashboard.png b/content/applications/general/voip/devices_integrations/voip-odoo-dashboard.png new file mode 100644 index 000000000..b7a08b2b3 Binary files /dev/null and b/content/applications/general/voip/devices_integrations/voip-odoo-dashboard.png differ diff --git a/content/applications/general/voip/devices_integrations/voip-phone.png b/content/applications/general/voip/devices_integrations/voip-phone.png new file mode 100644 index 000000000..5b1830022 Binary files /dev/null and b/content/applications/general/voip/devices_integrations/voip-phone.png differ diff --git a/content/applications/general/voip/transfer_forward.rst b/content/applications/general/voip/transfer_forward.rst new file mode 100644 index 000000000..e28970577 --- /dev/null +++ b/content/applications/general/voip/transfer_forward.rst @@ -0,0 +1,147 @@ +========================================== +Make, receive, transfer, and forward calls +========================================== + +Calling prospective clients, customers, or colleagues is an essential part of any business. A +company also needs to be available when customers call, in order to build trust and make +connections. + +This document covers how to make, receive, transfer, and forward calls with Odoo *VoIP*. + +Make calls +========== + +Starting on the Odoo dashboard, a call can be made by opening the phone widget in the the +upper-right corner, which is represented by a :guilabel:`📞 (phone)` icon. + +Then, a user can click on the :guilabel:`Contacts` tab, and click into any contact in the database +to make a call. + +Additionally, one can also use the :guilabel:`Search bar` in the :guilabel:`VOIP` pop-up window to +find any desired contact. + +.. image:: transfer_forward/widget-operation.png + :align: center + :alt: Using the VoIP phone widget to make calls. + +To manually make a call, click the :guilabel:`⌨️ (keyboard)` icon, and proceed to manually key in +the desired number. Do not forget to lead with the :guilabel:`+ (plus)` icon, followed by the +international country code. + +.. example:: + For the United States of America, the country code and :guilabel:`+ (plus)` icon, would look like + this: `+1`. If one were to dial Belgium, the number would be prefixed by `+32`, and for Great + Britain it would be `+44`. + +After entering the full number, with the required :guilabel:`+ (plus)` icon prefix and country code, +click the green :guilabel:`📞 (phone)` icon to start the call. When finished, click the red +:guilabel:`📞 (phone)` icon to end the call. + +.. image:: transfer_forward/manual-call.png + :align: center + :alt: Using the VoIP phone widget to make calls. + +Receive calls +============= + +An incoming call automatically opens the *VoIP* widget, when a user is using the Odoo database. +Should the database be open in another tab, a sound plays (the sound **must** be activated on the +device). + +Once back to the tab, the calling screen of the *VoIP* phone widget appears. + +Click the green :guilabel:`📞 (phone)` icon to pick up the call, or the red :guilabel:`📞 (phone)` +icon to reject the call. + +.. image:: transfer_forward/incoming-call.png + :align: center + :alt: Incoming call on the VoIP widget, with the call answer and call reject buttons highlighted. + +Add to call queue +================= + +All the contacts and customers that need to be called can be seen in one place with the Odoo *VoIP* +phone widget, under the :guilabel:`Next activities` tab. + +.. image:: transfer_forward/next-activities.png + :align: center + :alt: VoIP widget with next activities highlighted, showing tasks below. + +To add a call to the :guilabel:`Next activities` tab, click the green :guilabel:`📞 (phone)` icon, +while in kanban view of the *CRM* application. + +To remove them from the call queue, hover over the opportunity that has a call scheduled, and click +the red :guilabel:`📞 (phone)` icon that appears with the :guilabel:`- (minus)` icon. + +When navigating back to the *VoIP* phone widget, **only** the calls that are scheduled immediately +for that day appear in the queue under the :guilabel:`Next Activities` tab of the *VoIP* pop-up +widget. + +.. image:: transfer_forward/add-call-queue.png + :align: center + :alt: Adding a call to the next activities tab in the VoIP phone widget. + +The :guilabel:`Next Activities` tab of the *VoIP* phone widget is integrated with the following Odoo +apps: *CRM*, *Project*, and *Helpdesk*. + +A call can be added in the chatter of records within those applications. + +To manually add a call, via the chatter, click :guilabel:`Activities` (next to the :guilabel:`🕗 +(clock)` icon). Under :guilabel:`Activity Type`, select :guilabel:`Call` from the drop-down menu +that appears. + +Next, set a :guilabel:`Due Date`, and add a :guilabel:`Summary`. + +Lastly, change the :guilabel:`Assigned to` field to the person that should make the call. Whomever +is set in this last field (:guilabel:`Assigned to`) has this call show up in their :guilabel:`Next +Activities` call queue in the Odoo *VoIP* phone widget. + +.. important:: + Only calls for the immediate day (today's date) appear in the :guilabel:`Next Activities` tab of + the *VoIP* phone widget for that specific user. + +If specified, click :guilabel:`Save` or :guilabel:`Open Calendar` to complete the scheduling of the +call. + +Transfer calls +============== + +A call can be transferred from one user to another in the Odoo *VoIP* phone widget. However, this +can **only** occur after speaking to the caller first. Without picking up the call in the Odoo +*VoIP* phone widget, the only way to transfer a call is automatically though the provider +console/portal. + +.. seealso:: + For more information on transfers, visit :ref:`voip/axivox/forwardings_tab`. + +To transfer a call within the Odoo *VoIP* phone widget, first, answer the call using the green +:guilabel:`📞 (phone)` icon. + +Once the incoming call is answered, click the :guilabel:`↔ (left-right arrow)` icon. Then, enter the +extension of the user the call should be forwarded to. Finally, click :guilabel:`Transfer` to route +the call to that phone number. + +.. tip:: + To find the extension for a user, consult the :abbr:`VoIP (Voice over Internet Protocol)` + administrator, or, if the user has *Settings* access rights to *Administration*, navigate to + :menuselection:`Settings App --> Manage Users --> Select the user --> Preferences --> VOIP --> + VoIP username / Extension number`. + + For more information on access rights, visit: :doc:`../users/access_rights`. + +.. image:: transfer_forward/transfer.png + :align: center + :alt: Transferring a call within the phone widget, with the transfer buttons highlighted. + +Forward calls +============= + +To forward a call within the Odoo *VoIP* phone widget, first, answer the call using the green +:guilabel:`📞 (phone)` icon. Once the incoming call is answered, click the :guilabel:`↔ (left-right +arrow)` icon. + +Then, enter the full phone number of the user the call should be forwarded to. Finally, click +:guilabel:`Transfer` to route the call to that phone number. + +.. seealso:: + For more information on forwarding, visit :ref:`voip/axivox/forwardings_tab`. diff --git a/content/applications/general/voip/transfer_forward/add-call-queue.png b/content/applications/general/voip/transfer_forward/add-call-queue.png new file mode 100644 index 000000000..b52fffda6 Binary files /dev/null and b/content/applications/general/voip/transfer_forward/add-call-queue.png differ diff --git a/content/applications/general/voip/transfer_forward/incoming-call.png b/content/applications/general/voip/transfer_forward/incoming-call.png new file mode 100644 index 000000000..40c075d13 Binary files /dev/null and b/content/applications/general/voip/transfer_forward/incoming-call.png differ diff --git a/content/applications/general/voip/transfer_forward/manual-call.png b/content/applications/general/voip/transfer_forward/manual-call.png new file mode 100644 index 000000000..0a1340e0e Binary files /dev/null and b/content/applications/general/voip/transfer_forward/manual-call.png differ diff --git a/content/applications/general/voip/transfer_forward/next-activities.png b/content/applications/general/voip/transfer_forward/next-activities.png new file mode 100644 index 000000000..f5d4bc5af Binary files /dev/null and b/content/applications/general/voip/transfer_forward/next-activities.png differ diff --git a/content/applications/general/voip/transfer_forward/transfer.png b/content/applications/general/voip/transfer_forward/transfer.png new file mode 100644 index 000000000..a495c2835 Binary files /dev/null and b/content/applications/general/voip/transfer_forward/transfer.png differ diff --git a/content/applications/general/voip/transfer_forward/widget-operation.png b/content/applications/general/voip/transfer_forward/widget-operation.png new file mode 100644 index 000000000..380923f34 Binary files /dev/null and b/content/applications/general/voip/transfer_forward/widget-operation.png differ diff --git a/content/applications/general/voip/voip_widget.rst b/content/applications/general/voip/voip_widget.rst new file mode 100644 index 000000000..524b7930e --- /dev/null +++ b/content/applications/general/voip/voip_widget.rst @@ -0,0 +1,111 @@ +=========== +VoIP widget +=========== + +The *VoIP* widget is an add-on made available to Odoo users through the *VoIP* module. It is used to +incorporate virtual telephony into the database. The widget is the control center for making and +managing calls in Odoo. + +Phone calls +=========== + +To make phone calls while in the Odoo database, click the :guilabel:`📞 (phone)` icon, located in +the top navigation bar. + +When clicked, a :guilabel:`VOIP` pop-up widget appears in the lower-left corner of the Odoo +database. The widget allows users to freely navigate throughout the database, while making and +receiving calls. + +When receiving calls in Odoo, the :guilabel:`VOIP` widget rings,and displays a notification. To +close the widget, click the :guilabel:`X (close)` icon in the upper-right of the widget's screen. + +.. note:: + The :abbr:`VoIP (Voice over Internet Protocol)` number is the one provided by Axivox. It can be + accessed by navigating to `https://manage.axivox.com/ `_. After + logging into the portal, go to :menuselection:`Users --> Outgoing number` (column). + +.. image:: voip_widget/call.png + :align: center + :alt: VoIP call in Odoo. + +Troubleshooting +=============== + +.. tip:: + If a *Missing Parameter* error message appears in the Odoo *VoIP* widget, refresh the Odoo + window, and try again. + + .. image:: voip_widget/missing-parameter.png + :align: center + :alt: "Missing Parameter" error message in the Odoo softphone. + +.. tip:: + If an *Incorrect Number* error message appears in the Odoo *VoIP* widget, make sure to use the + international format, leading with the :guilabel:`+ (plus)` sign, followed by the international + country code. + + (E.g., +16506913277, where `+1` is the international prefix for the United States.) + + .. image:: voip_widget/incorrect-number.png + :align: center + :alt: "Incorrect Number" error message in the Odoo softphone. + +Tabs +==== + +In all, there are three tabs (:guilabel:`Recent`, :guilabel:`Next Activities`, and +:guilabel:`Contacts`) present in the *VoIP* widget, which are used for managing calls and day-to-day +activities in Odoo. + +Recent +------ + +Under the :guilabel:`Recent` tab of the *VoIP* widget, the call history for the user is available. +This includes incoming and outgoing calls. Any number can be clicked to begin a call. + +Next activities +--------------- + +Under the :guilabel:`Next Activities` tab of the *VoIP* widget, a user can see any activities +assigned to them, and which ones are due to be completed for the day. + +Click an activity from this tab to perform any actions including: Sending an email, accessing their +contact, scheduling another activity, or accessing a linked record (such as a Sales Order, +Lead/Opportunity, or Project Task). + +The user can also mark the activity as complete, edit the details of the activity, or cancel it. + +To call the customer related to a scheduled activity, click the :guilabel:`📞 (phone)` icon, or +click the :guilabel:`⌨️ (keyboard)` icon to dial another number for the customer. + +.. image:: voip_widget/activity-widget.png + :align: center + :alt: Activity control center on the VoIP widget. + +Some other icons appear in the *VoIP* widget, categorized by two sections: :guilabel:`Document` and +:guilabel:`Activity`. + +Under the :guilabel:`Document` section, from right to left: + +- :guilabel:`➣ (paper airplane)` icon: sends an email +- :guilabel:`👤 (person icon)` icon: redirects to the contact card +- :guilabel:`📄 (document)` icon: redirects to the attached record in Odoo +- :guilabel:`🕓 (clock)` icon: schedule an activity + +Under the :guilabel:`Activity` section, from left to right: + +- :guilabel:`✔️ (checkmark)` icon: mark activity as done +- :guilabel:`✏️ (pencil)` icon: edit the activity +- :guilabel:`✖️ (cancel)` icon: cancel the activity + +Contacts +-------- + +Under the :guilabel:`Contacts` tab of the *VoIP* widget, a user can access a contact in the +*Contacts* app. + +Any contact can easily be called by clicking into the contact from the *VoIP* widget's +:guilabel:`Contacts` tab. + +A search feature is also available in the upper-right side of the widget, represented by a +:guilabel:`🔍 (magnifying glass)` icon. diff --git a/content/applications/general/voip/voip_widget/activity-widget.png b/content/applications/general/voip/voip_widget/activity-widget.png new file mode 100644 index 000000000..dbb5fd1b0 Binary files /dev/null and b/content/applications/general/voip/voip_widget/activity-widget.png differ diff --git a/content/applications/general/voip/voip_widget/call.png b/content/applications/general/voip/voip_widget/call.png new file mode 100644 index 000000000..aa2a0c4cf Binary files /dev/null and b/content/applications/general/voip/voip_widget/call.png differ diff --git a/content/applications/general/voip/axivox/incorrect-number.png b/content/applications/general/voip/voip_widget/incorrect-number.png similarity index 100% rename from content/applications/general/voip/axivox/incorrect-number.png rename to content/applications/general/voip/voip_widget/incorrect-number.png diff --git a/content/applications/general/voip/axivox/missing-parameter.png b/content/applications/general/voip/voip_widget/missing-parameter.png similarity index 100% rename from content/applications/general/voip/axivox/missing-parameter.png rename to content/applications/general/voip/voip_widget/missing-parameter.png