Compare commits
207 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7d43958d7b | |||
| b84e81d3a1 | |||
| 4f098945d7 | |||
| 86fac322d3 | |||
| 958fa599e1 | |||
| 0604fb56f9 | |||
| 3fe09dd653 | |||
| 06eaf3a0c7 | |||
| 14c0438764 | |||
| db3db3c727 | |||
| 1be6f341dd | |||
| 39541bb745 | |||
| 157c1e18ea | |||
| ab5c9feb40 | |||
| 6c3385cf90 | |||
| b53427ddde | |||
| e6dbd3d9e4 | |||
| 646bfe2e2c | |||
| e620f27378 | |||
| f10c8d4ad2 | |||
| b4cab2a3db | |||
| 999c8db465 | |||
| 6ec9eb1fcc | |||
| baab56946f | |||
| 73499c595e | |||
| 2c1277d0f7 | |||
| fc98af5814 | |||
| d0b7363de5 | |||
| 65f1e3ce0a | |||
| a48ebe55bf | |||
| 3d28850a40 | |||
| 83a68e4b9b | |||
| be60243eff | |||
| d07052aa57 | |||
| b89d3e56c2 | |||
| 8d87bfe462 | |||
| b72d340b3c | |||
| a197b6c57d | |||
| f0cf3c68ac | |||
| 1f31ba3f06 | |||
| 2f0d98c9f7 | |||
| 4210a31408 | |||
| 080dc64e54 | |||
| 95f8067ed5 | |||
| f453b2266f | |||
| d88b185c27 | |||
| 62a4db0c7d | |||
| de2999c01d | |||
| 494ae5a555 | |||
| 283c843eeb | |||
| b0cc13d4fe | |||
| 6016ed4e93 | |||
| 6c561112a8 | |||
| 7a8f551d67 | |||
| 67adf2fc3b | |||
| 6f3ca9f4a3 | |||
| d1836f349f | |||
| e765370016 | |||
| 15beccfd50 | |||
| cec2e1f322 | |||
| 9cb186f87b | |||
| 075eea9326 | |||
| b5507c4940 | |||
| 64fabeb801 | |||
| 6667e3ec35 | |||
| 7b917cd1c3 | |||
| 884c1b3126 | |||
| b339573354 | |||
| 668420655f | |||
| abb3589471 | |||
| 588801185a | |||
| 78d1f23686 | |||
| e72b21d734 | |||
| 5ff951e927 | |||
| 78b3ca7521 | |||
| 9e3cb9eeaf | |||
| 9115d5d7a4 | |||
| c5b4336b52 | |||
| 78d289c677 | |||
| 14a9073ac9 | |||
| 4eb1baa5c5 | |||
| a2fbef0bc9 | |||
| 0f8e20e0aa | |||
| dfc42d4b62 | |||
| 5bd89e30b9 | |||
| 35602b9f50 | |||
| 79fa32eb3d | |||
| 3905b642fa | |||
| 5b581c31a5 | |||
| 90fffd3039 | |||
| 6fb216f70d | |||
| d4eece9b5f | |||
| 52e107681a | |||
| be6f7e1662 | |||
| 28f9d0c02c | |||
| 643ec40050 | |||
| 629a2852b6 | |||
| 77c1f6ff95 | |||
| 045fb847e8 | |||
| b963e4c7f9 | |||
| 3a3a224b17 | |||
| 86bd9fd91b | |||
| 6935a84404 | |||
| 31387885d6 | |||
| f8dce88995 | |||
| 78d998f5fc | |||
| 3ef14b8254 | |||
| 6d219133e0 | |||
| 2a52e0979b | |||
| f72e7a25e0 | |||
| c21233db05 | |||
| 5d7abe69ac | |||
| f18c11cb41 | |||
| 8c4cb060f0 | |||
| 07e7787668 | |||
| d4b8665fe2 | |||
| 3e7c00af02 | |||
| eff6545537 | |||
| 41cdeab0fa | |||
| 630d4385f4 | |||
| 30b173ff25 | |||
| 620b50f9e2 | |||
| 7612732f7f | |||
| f08db8544a | |||
| de4795724b | |||
| 556b5c4bc3 | |||
| 0c162ecf18 | |||
| 922f540fa6 | |||
| 1defbf7383 | |||
| fd3f3ca5cf | |||
| f10dcbdaf6 | |||
| 883442e483 | |||
| 41442270a3 | |||
| 58d246b8f4 | |||
| eb0c42803d | |||
| 2b8a578c9b | |||
| c27c6f8928 | |||
| 0a2b5e76e1 | |||
| 37af135d31 | |||
| b093bdc871 | |||
| 392d99c2fb | |||
| 38f66dd0f9 | |||
| 688285086b | |||
| 5264899901 | |||
| 70a99d8f87 | |||
| d5f2bf3b8c | |||
| 9be26ea17a | |||
| 48321d0e6b | |||
| 8e548bf770 | |||
| 6fd7446ad9 | |||
| 0dd8974ca1 | |||
| 4cad0e2f82 | |||
| 1a412b334a | |||
| e96721a308 | |||
| 829eb7b851 | |||
| d0af3f6bd1 | |||
| b2a37a0129 | |||
| a7e8e9724a | |||
| a70258c823 | |||
| 16e10c53db | |||
| 4219829976 | |||
| c2190a438c | |||
| 5b44376e52 | |||
| 7067cf372a | |||
| ebbd736540 | |||
| 4fe046b9d0 | |||
| 07c50eae7a | |||
| 671cca36a6 | |||
| 246450c957 | |||
| cc37e41de0 | |||
| 6cff316d86 | |||
| 03c9226547 | |||
| d87112ddef | |||
| 6605ec1988 | |||
| d105f614af | |||
| 10f936247a | |||
| 6a198ad1ce | |||
| 7dc0dc37d2 | |||
| 09e0b8affc | |||
| f3a6cc6779 | |||
| 36b20ff16c | |||
| 068020901c | |||
| 6da7dcccea | |||
| 48679b52e9 | |||
| f85a667236 | |||
| 44f202cff9 | |||
| 4b1b3db6f2 | |||
| db2ee387a9 | |||
| f7cb830798 | |||
| 86bd83705d | |||
| b4eaf1c223 | |||
| 5ec7aff3c5 | |||
| 49ad6221a8 | |||
| 32441c88fc | |||
| 89539f7379 | |||
| 4d88c4ec20 | |||
| 66b08cd4fd | |||
| 4e6983c135 | |||
| f53aca7b32 | |||
| cdc510295c | |||
| 86207443b1 | |||
| d25eecbe13 | |||
| dd6bf8b6c7 | |||
| d53c676288 | |||
| dbb82d83e2 | |||
| a8ef31f215 | |||
| a3e1378919 |
@@ -26,7 +26,7 @@ SOURCE_DIR = content
|
||||
|
||||
HTML_BUILD_DIR = $(BUILD_DIR)/html
|
||||
ifdef VERSIONS
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/17.0
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/master
|
||||
endif
|
||||
ifneq ($(CURRENT_LANG),en)
|
||||
HTML_BUILD_DIR := $(HTML_BUILD_DIR)/$(CURRENT_LANG)
|
||||
|
||||
@@ -22,7 +22,7 @@ copyright = 'Odoo S.A.'
|
||||
# `version` is the version info for the project being documented, acts as replacement for |version|,
|
||||
# also used in various other places throughout the built documents.
|
||||
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
|
||||
version = release = '17.0'
|
||||
version = release = 'master'
|
||||
|
||||
# `current_branch` is the technical name of the current branch.
|
||||
# E.g., saas-15.4 -> saas-15.4; 12.0 -> 12.0, master -> master (*).
|
||||
@@ -213,7 +213,6 @@ sphinx.transforms.i18n.docname_to_domain = (
|
||||
# is populated. If a version is passed to `versions` but is not listed here, it will not be shown.
|
||||
versions_names = {
|
||||
'master': "Master",
|
||||
'saas-17.1': "Odoo Online",
|
||||
'17.0': "Odoo 17",
|
||||
'saas-16.4': "Odoo Online",
|
||||
'saas-16.3': "Odoo Online",
|
||||
|
||||
@@ -31,18 +31,12 @@ This matrix shows the support status of every version.
|
||||
- On-Premise
|
||||
- Release date
|
||||
- End of support
|
||||
* - Odoo saas~17.1
|
||||
- |green|
|
||||
- N/A
|
||||
- N/A
|
||||
- January 2024
|
||||
-
|
||||
* - **Odoo 17.0**
|
||||
- |green|
|
||||
- |green|
|
||||
- |green|
|
||||
- November 2023
|
||||
- October 2026 (planned)
|
||||
- November 2026 (planned)
|
||||
* - Odoo saas~16.4
|
||||
- |green|
|
||||
- N/A
|
||||
|
||||
@@ -29,3 +29,24 @@ We advise that:
|
||||
- Your scheduled actions should be
|
||||
`idempotent <https://stackoverflow.com/a/1077421/3332416>`_: they must not
|
||||
cause side-effects if they are started more often than expected.
|
||||
|
||||
How do I know if I need more workers ?
|
||||
--------------------------------------
|
||||
|
||||
Workers are abstract units of resources allocated to your database. The more workers you have the more it can be accessed concurrently.
|
||||
|
||||
As a general rule of thumb, you should allocate about **1 worker per 25 users and 1 worker for every 5000 daily visitors**. However, this can vary considerably based on database usage, website characteristics, and code customizations.
|
||||
|
||||
Speed is only impacted if you have too much concurrency.
|
||||
|
||||
If things are getting slow, here are a couple of indications to tell if it's due to a high concurrency.
|
||||
|
||||
- When things gets slow, **everything is slowed down**, not just specific operations.
|
||||
- **The slowness comes and goes**, typically it's better outside of business hours. (There can be other reasons for this as well.)
|
||||
- :ref:`Open your monitoring <odoosh-gettingstarted-branches-tabs-monitoring>`, there is a graph indicating the number of **"concurrent requests (max)"**. This graphs is often high or shows a flat upper bound during a prolonged period of time.
|
||||
- Some requests get a **"429 Too Many Requests"** response code.
|
||||
|
||||
If you have these symptoms it's advisable to try increasing your workers.
|
||||
|
||||
.. warning::
|
||||
Sometimes this high concurrency is temporary or illegitimate, it's possible your website is being crawled or that you have misconfigured third party applications excessively sollicitating your database. To identify this, have a look at the IP adresses in your odoo logs to see if some are flooding.
|
||||
|
||||
@@ -208,6 +208,8 @@ You can also open terminals, Python consoles and even Odoo Shell consoles.
|
||||
You can open multiple tabs and drag-and-drop them to arrange the layout as you wish,
|
||||
for instance side by side.
|
||||
|
||||
.. _odoosh-gettingstarted-branches-tabs-monitoring:
|
||||
|
||||
Monitoring
|
||||
----------
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ Resulting entry
|
||||
The resulting entry section on the top right displays the selected bank transaction matched with
|
||||
the counterpart entries and includes any remaining debits or credits. In this section, you can
|
||||
validate the reconciliation or mark it as :guilabel:`To Check`. Any :ref:`reconciliation model
|
||||
buttons <reconciliation/button>` are also available in the resulting entry section.
|
||||
buttons <reconciliation_models_button>` are also available in the resulting entry section.
|
||||
|
||||
Reconcile transactions
|
||||
======================
|
||||
@@ -62,13 +62,13 @@ Transactions can be matched automatically with the use of :doc:`reconciliation m
|
||||
<reconciliation_models>`, or they can be matched with :ref:`existing entries
|
||||
<reconciliation/existing-entries>`, :ref:`batch payments <reconciliation/batch-payments>`,
|
||||
:ref:`manual operations <reconciliation/manual-operations>`, and :ref:`reconciliation model buttons
|
||||
<reconciliation/button>`.
|
||||
<reconciliation_models_button>`.
|
||||
|
||||
#. Select a transaction among unmatched bank transactions.
|
||||
#. Define the counterpart. There are several options for defining a counterpart, including
|
||||
:ref:`matching existing entries <reconciliation/existing-entries>`, :ref:`manual operations
|
||||
<reconciliation/manual-operations>`, :ref:`batch payments <reconciliation/batch-payments>`, and
|
||||
:ref:`reconciliation model buttons <reconciliation/button>`.
|
||||
:ref:`reconciliation model buttons <reconciliation_models_button>`.
|
||||
#. If the resulting entry is not fully balanced, balance it by adding another existing counterpart
|
||||
entry or writing it off with a :ref:`manual operation <reconciliation/manual-operations>`.
|
||||
#. Click the :guilabel:`Validate` button to confirm the reconciliation and move to the next
|
||||
@@ -90,8 +90,8 @@ Match existing entries
|
||||
----------------------
|
||||
|
||||
This tab contains matching entries Odoo automatically pre-selects according to the reconciliation
|
||||
models. The entry order is based on :doc:`reconciliation models <reconciliation_models>`, with
|
||||
suggested entries appearing first.
|
||||
models. The entry order is based on :ref:`reconciliation models <reconciliation_models_suggestion>`,
|
||||
with suggested entries appearing first.
|
||||
|
||||
.. tip::
|
||||
The search bar within the :guilabel:`Match Existing Entries` tab allows you to search for
|
||||
@@ -130,11 +130,10 @@ of the relevant optional fields.
|
||||
.. image:: reconciliation/fully-paid.png
|
||||
:alt: Click on fully paid to manually set an invoice as entirely paid.
|
||||
|
||||
.. _reconciliation/button:
|
||||
|
||||
Reconciliation model buttons
|
||||
----------------------------
|
||||
|
||||
Use a :doc:`reconciliation model <reconciliation_models>` button for manual operations that are
|
||||
frequently used. These custom buttons allow you to quickly reconcile bank transactions manually and
|
||||
can also be used in combination with existing entries.
|
||||
Use a :ref:`reconciliation model button <reconciliation_models_button>` for manual operations that
|
||||
are frequently used. These custom buttons allow you to quickly reconcile bank transactions manually
|
||||
and can also be used in combination with existing entries.
|
||||
|
||||
@@ -1,123 +1,129 @@
|
||||
=====================
|
||||
Reconciliation models
|
||||
Reconciliation Models
|
||||
=====================
|
||||
|
||||
Reconciliation models are used to automate the :doc:`bank reconciliation <reconciliation>` process,
|
||||
which is especially handy when dealing with recurring entries like bank fees. Reconciliation models
|
||||
can also be helpful in handling :doc:`cash discounts <../customer_invoices/cash_discounts>`.
|
||||
Once the bank statements are correctly imported, it is essential to *reconcile* the records properly
|
||||
and ensure all *Journal Entries* are balanced and in agreement. To ease and speed up the
|
||||
reconciliation process, you can configure **Reconciliation Models**, which are particularly useful
|
||||
with recurrent entries such as bank fees.
|
||||
|
||||
Each model is created based on a :ref:`model type <models/type>` and :guilabel:`bank transaction
|
||||
conditions`.
|
||||
.. todo:: Add a link to the Reconciliation process in the paragraph above, once the doc will have
|
||||
been updated.
|
||||
|
||||
.. seealso::
|
||||
- :doc:`bank_synchronization`
|
||||
- `Odoo Tutorials: Reconciliation models <https://www.odoo.com/slides/slide/reconciliation-models-1841?fullscreen=1>`_
|
||||
.. note::
|
||||
Reconciliation Models are also useful to handle *Cash Discounts*. Please refer to
|
||||
:doc:`this documentation <../customer_invoices/cash_discounts>` for more
|
||||
information.
|
||||
|
||||
.. _models/type:
|
||||
.. _reconciliation_models_types:
|
||||
|
||||
Reconciliation model types
|
||||
==========================
|
||||
Types of Reconciliation Models
|
||||
==============================
|
||||
|
||||
The reconciliation models are available by going to :menuselection:`Accounting --> Configuration
|
||||
--> Banks: Reconciliation Models`. For each reconciliation model, a :guilabel:`Type` must be set.
|
||||
Three types of models exist:
|
||||
There are three types of Reconciliation Models:
|
||||
|
||||
- :guilabel:`Button to generate counterpart entry`: a button is created in the resulting entry
|
||||
section of the bank reconciliation view. If clicked, this button generates a counterpart entry to
|
||||
reconcile with the active transaction based on the rules set in the model. The rules specified in
|
||||
the model determine the counterpart entry's account(s), amount(s), label(s), and analytic
|
||||
distribution;
|
||||
- :guilabel:`Rule to suggest counterpart entry`: used for recurring transactions to match the
|
||||
transaction to a new entry based on conditions that must match the information on the transaction;
|
||||
- :guilabel:`Rule to match invoices/bills`: used for recurring transactions to match the transaction
|
||||
to existing invoices, bills, or payments based on conditions that must match the information on
|
||||
the transaction.
|
||||
#. :ref:`Write-off Button <reconciliation_models_button>`
|
||||
#. :ref:`Suggestion of counterpart values <reconciliation_models_suggestion>`
|
||||
#. :ref:`Match existing invoices/bills <reconciliation_models_match>`
|
||||
|
||||
Default reconciliation models
|
||||
=============================
|
||||
.. _reconciliation_models_button:
|
||||
|
||||
In Odoo, different models are available by default depending on the company's fiscal localization.
|
||||
These can be updated if needed. Users can also create their own reconciliation models by clicking
|
||||
:guilabel:`New`.
|
||||
Manually create a write-off on clicked button
|
||||
---------------------------------------------
|
||||
|
||||
When you are reconciling an entry with an *Open Balance*, you can use the buttons available under
|
||||
the *Manual Operations* tab to pre-fill all the values automatically, before validating the
|
||||
reconciliation. Each button is a different Reconciliation Model.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_button.png
|
||||
:align: center
|
||||
:alt: Example of a Reconciliation Model with a write-off button in Odoo Accounting
|
||||
|
||||
.. _reconciliation_models_suggestion:
|
||||
|
||||
Suggest counterpart values
|
||||
--------------------------
|
||||
|
||||
This type of Reconciliation Model suggests immediately counterpart values that only need to be
|
||||
validated. This automation is based on a set of rules defined in the reconciliation model.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_suggestion.png
|
||||
:align: center
|
||||
:alt: Example of a Reconciliation Model that suggests counterpart values in Odoo Accounting
|
||||
|
||||
.. _reconciliation_models_match:
|
||||
|
||||
Match existing invoices/bills
|
||||
-----------------------------
|
||||
|
||||
This type of Reconciliation Model automatically selects the right Customer Invoice or Vendor Bill
|
||||
that matches the payment. All that is left to do is to validate the entry. This automation is based
|
||||
on a set of rules defined in the reconciliation model.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_match.png
|
||||
:align: center
|
||||
:alt: Example of a Reconciliation Model that matches existing invoices and bills automatically
|
||||
in Odoo Accounting
|
||||
|
||||
Configuration
|
||||
=============
|
||||
|
||||
To manage or create new **Reconciliation Models**, go to :menuselection:`Accounting -->
|
||||
Reconciliation --> Reconciliation Models`. Alternatively, you can also open this menu from the
|
||||
Accounting Overview, by going to your Bank Journal card, clicking on the three little dots, and then
|
||||
on *Reconciliation Models*.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_overview.png
|
||||
:align: center
|
||||
:alt: Open the Reconciliation Model menu from the overview dashboard in Odoo Accounting
|
||||
|
||||
.. important::
|
||||
If a record matches with several reconciliation models, the first one in the *sequence* of models
|
||||
is applied. You can rearrange the order by dragging and dropping the handle next to the name.
|
||||
The first entry, named *Invoices Matching Rule*, is the one responsible for the current matching
|
||||
of invoices and bills. Therefore, it is advised to leave it at the top of the list and not to
|
||||
delete it.
|
||||
|
||||
.. image:: reconciliation_models/list-view.png
|
||||
:alt: Rearrange the sequence of models in the list view.
|
||||
Open the model you want to modify, or click on *Create* to create a new one, then fill out the form.
|
||||
|
||||
Invoices/Bills perfect match
|
||||
----------------------------
|
||||
Type
|
||||
----
|
||||
|
||||
This model should be at the top of the *sequence* of models, as it enables Odoo to suggest matching
|
||||
existing invoices or bills with a bank transaction based on set conditions.
|
||||
|
||||
.. image:: reconciliation_models/invoices-bills-perfect-match.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
|
||||
Odoo automatically reconciles the payment when the :guilabel:`Auto-validate` option is selected, and
|
||||
the model conditions are perfectly met. In this case, it expects to find on the bank statement's
|
||||
line the invoice/payment's reference (as :guilabel:`Label` is selected) and the partner's name
|
||||
(as :guilabel:`Partner is set` is selected) to suggest the correct counterpart entry and reconcile
|
||||
the payment automatically.
|
||||
|
||||
Invoices/Bills partial match if underpaid
|
||||
-----------------------------------------
|
||||
|
||||
This model suggests a customer invoice or vendor bill that partially matches the payment when the
|
||||
amount received is slightly lower than the invoice amount, for example in the case of
|
||||
**cash discounts**. The difference is reconciled with the account indicated in the
|
||||
:guilabel:`counterpart entries` tab.
|
||||
|
||||
The reconciliation model :guilabel:`Type` is :guilabel:`Rule to match invoices/bills`, and the
|
||||
:guilabel:`Payment tolerance` should be set.
|
||||
|
||||
.. image:: reconciliation_models/partial-match.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
See :ref:`above <reconciliation_models_types>` for an explanation about the different types of
|
||||
Reconciliation Models.
|
||||
|
||||
.. note::
|
||||
The :guilabel:`Payment tolerance` is only applicable to lower payments. It is disregarded when an
|
||||
overpayment is received.
|
||||
If the *Documents* application is installed on your database, an additional **Activity type**
|
||||
field appears when *To check* is ticked. Selecting the value *Reconciliation request* implies
|
||||
that, whenever you use this model, a *Request Document* window pops up to request a document from
|
||||
a user.
|
||||
|
||||
Conditions on Bank Statement Line
|
||||
---------------------------------
|
||||
|
||||
Define here all the conditions that are required for a Reconciliation Model to be applied.
|
||||
|
||||
.. important::
|
||||
If a record matches with several Reconciliation Models, the first one in the *sequence* of models
|
||||
will be applied. The sequence is simply the order of the models in the *list view*. They can be
|
||||
rearranged by dragging-and-dropping the handle next to the name.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_conditions.png
|
||||
:align: center
|
||||
:alt: Conditions for the Reconciliation Model to be applied in Odoo Accounting
|
||||
|
||||
Counterpart Values
|
||||
------------------
|
||||
|
||||
This section comprises the values that are applied by the Reconciliation Model.
|
||||
|
||||
If the value to reconcile needs to be written-off in two separate accounts, click on *Add a second
|
||||
line*.
|
||||
|
||||
.. image:: reconciliation_models/reconciliation_models_counterparts.png
|
||||
:align: center
|
||||
:alt: Counterparts values of a Reconciliation Model in Odoo Accounting
|
||||
|
||||
.. seealso::
|
||||
:doc:`../customer_invoices/cash_discounts`
|
||||
|
||||
Line with bank fees
|
||||
-------------------
|
||||
|
||||
This model suggests a counterpart entry according to the rules set in the model. In this case, the
|
||||
reconciliation model :guilabel:`Type` is :guilabel:`Rule to suggest counterpart entry`, and the
|
||||
:guilabel:`Label` can be used for example, to identify the information referring to the
|
||||
:guilabel:`Bank fees` in the label of the transaction.
|
||||
|
||||
.. image:: reconciliation_models/bank-fees.png
|
||||
:alt: Set rules to trigger the reconciliation.
|
||||
|
||||
.. note::
|
||||
`Regular expressions <https://regexone.com/>`_, often abbreviated as **Regex**, can be used in
|
||||
Odoo in various ways to search, validate, and manipulate data within the system. Regex can be
|
||||
powerful but also complex, so it's essential to use it judiciously and with a good understanding
|
||||
of the patterns you're working with.
|
||||
|
||||
To use regular expressions in your reconciliation models, set the :guilabel:`Transaction Type`
|
||||
to :guilabel:`Match Regex` and add your expression. Odoo automatically retrieves the
|
||||
transactions that match your Regex expression and the conditions specified in your model.
|
||||
|
||||
.. image:: reconciliation_models/regex.png
|
||||
:alt: Using Regex in Odoo
|
||||
|
||||
Partner mapping
|
||||
===============
|
||||
|
||||
Partner mapping allows you to establish rules for automatically matching transactions to the correct
|
||||
partner account, saving time and reducing the risk of errors that can occur during manual
|
||||
reconciliation. For example, you can create a partner mapping rule for incoming payments with
|
||||
specific reference numbers or keywords in the transaction description. When an incoming payment
|
||||
meets these criteria, Odoo automatically maps it to the corresponding customer's account.
|
||||
|
||||
To create a partner mapping rule, go to the :guilabel:`Partner Mapping` tab and enter the
|
||||
:guilabel:`Find Text in Label`, :guilabel:`Find Text in Notes`, and :guilabel:`Partner`.
|
||||
|
||||
.. image:: reconciliation_models/partner-mapping.png
|
||||
:alt: defining partner mapping
|
||||
- :doc:`reconciliation`
|
||||
- :doc:`bank_synchronization`
|
||||
- :doc:`../customer_invoices/cash_discounts`
|
||||
|
||||
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
Before Width: | Height: | Size: 5.6 KiB |
|
Before Width: | Height: | Size: 26 KiB |
|
Before Width: | Height: | Size: 7.1 KiB |
|
After Width: | Height: | Size: 9.7 KiB |
|
After Width: | Height: | Size: 9.8 KiB |
|
After Width: | Height: | Size: 6.8 KiB |
|
After Width: | Height: | Size: 5.2 KiB |
|
After Width: | Height: | Size: 8.5 KiB |
|
After Width: | Height: | Size: 5.1 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
@@ -93,11 +93,12 @@ available on Odoo.
|
||||
- :doc:`Kenya - Accounting <fiscal_localizations/kenya>`
|
||||
- Lithuania - Accounting
|
||||
- :doc:`Luxembourg - Accounting <fiscal_localizations/luxembourg>`
|
||||
- :doc:`Malaysia - Accounting <fiscal_localizations/malaysia>`
|
||||
- Maroc - Accounting
|
||||
- :doc:`Mexico - Accounting <fiscal_localizations/mexico>`
|
||||
- Mongolia - Accounting
|
||||
- :doc:`Netherlands - Accounting <fiscal_localizations/netherlands>`
|
||||
- New Zealand - Accounting
|
||||
- :doc:`New Zealand - Accounting <fiscal_localizations/new_zealand>`
|
||||
- Norway - Accounting
|
||||
- OHADA - Accounting
|
||||
- Pakistan - Accounting
|
||||
@@ -146,8 +147,10 @@ available on Odoo.
|
||||
fiscal_localizations/italy
|
||||
fiscal_localizations/kenya
|
||||
fiscal_localizations/luxembourg
|
||||
fiscal_localizations/malaysia
|
||||
fiscal_localizations/mexico
|
||||
fiscal_localizations/netherlands
|
||||
fiscal_localizations/new_zealand
|
||||
fiscal_localizations/romania
|
||||
fiscal_localizations/peru
|
||||
fiscal_localizations/philippines
|
||||
@@ -159,3 +162,4 @@ available on Odoo.
|
||||
fiscal_localizations/vietnam
|
||||
fiscal_localizations/united_arab_emirates
|
||||
fiscal_localizations/united_kingdom
|
||||
fiscal_localizations/employment_hero
|
||||
|
||||
@@ -35,9 +35,6 @@ Configuration
|
||||
- `l10n_account_customer_statements`
|
||||
- Allows the management and sending of monthly customer statements from the partner ledger and
|
||||
the contact form. Also used in New Zealand.
|
||||
* - :guilabel:`Employment Hero Australian Payroll`
|
||||
- `l10n_au_keypay`
|
||||
- Synchronises all pay runs from Employment Hero with Odoo’s journal entries.
|
||||
|
||||
.. _australia/coa:
|
||||
|
||||
@@ -861,70 +858,12 @@ from the batch.
|
||||
|
||||
.. _australia/employment-hero:
|
||||
|
||||
Employment Hero Australian Payroll
|
||||
==================================
|
||||
Employment Hero payroll
|
||||
=======================
|
||||
|
||||
If your business is already up and running with `Employment Hero <https://employmenthero.com/>`_,
|
||||
you can use our connector as an alternative payroll solution.
|
||||
|
||||
The Employment Hero module synchronises payslip accounting entries (e.g., expenses, social charges,
|
||||
liabilities, taxes) automatically from Employment Hero to Odoo. Payroll administration is still done
|
||||
in Employment Hero. We only record the **journal entries** in Odoo.
|
||||
If your business is already up and running with :doc:`Employment Hero <employment_hero>`, you can
|
||||
use our connector as an alternative payroll solution.
|
||||
|
||||
.. important::
|
||||
KeyPay was rebranded as **Employment Hero** in March 2023.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
#. :ref:`Activate <general/install>` the :guilabel:`Employment Hero Australian Payroll` module
|
||||
(`l10n_au_keypay`).
|
||||
#. Configure the **Employment Hero API** by going to :menuselection:`Accounting --> Configuration
|
||||
--> Settings`. More fields become visible after clicking on :guilabel:`Enable Employment Hero
|
||||
Integration`.
|
||||
|
||||
.. image:: australia/employment-hero-integration.png
|
||||
:alt: Enabling Employment Hero Integration in Odoo Accounting displays new fields in the
|
||||
settings
|
||||
|
||||
- You can find the API Key in the :guilabel:`My Account` section of the Employment Hero platform.
|
||||
|
||||
.. image:: australia/employment-hero-myaccount.png
|
||||
:alt: "Account Details" section on the Employment Hero dashboard
|
||||
|
||||
- The **Payroll URL** is pre-filled with `https://keypay.yourpayroll.com.au`.
|
||||
|
||||
.. warning::
|
||||
Do not change the **pre-filled Payroll URL**
|
||||
|
||||
- You can find the **Business ID** in the Employment Hero URL. (i.e., `189241`)
|
||||
|
||||
.. image:: australia/employment-hero-business-id.png
|
||||
:alt: The Employment Hero "Business ID" number is in the URL
|
||||
|
||||
- You can choose any Odoo journal to post the payslip entries.
|
||||
|
||||
How does the API work?
|
||||
----------------------
|
||||
|
||||
The API syncs the journal entries from Employment Hero to Odoo and leaves them in draft mode. The
|
||||
reference includes the Employment Hero payslip entry ID in brackets for the user to easily retrieve
|
||||
the same record in Employment Hero and Odoo.
|
||||
|
||||
.. image:: australia/employment-hero-journal-entry.png
|
||||
:alt: Example of a Employment Hero Journal Entry in Odoo Accounting (Australia)
|
||||
|
||||
By default, the synchronisation happens once per week. You can fetch the records manually by going
|
||||
to :menuselection:`Accounting --> Configuration --> Settings` and, in the :guilabel:`Enable
|
||||
Employment Hero Integration` option, click on :guilabel:`Fetch Payruns Manually`.
|
||||
|
||||
Employment Hero payslip entries also work based on double-entry bookkeeping.
|
||||
|
||||
The accounts used by Employment Hero are defined in the section :guilabel:`Payroll settings`.
|
||||
|
||||
.. image:: australia/employment-hero-chart-of-accounts.png
|
||||
:alt: Chart of Accounts menu in Employment Hero
|
||||
|
||||
For the API to work, you need to create the same accounts as the default accounts of your Employment
|
||||
Hero business (**same name and same code**) in Odoo. You also need to choose the correct account
|
||||
types in Odoo to generate accurate financial reports.
|
||||
To :ref:`configure the Employment Hero API <employment_hero/configuration>` for **Australia**,
|
||||
use the following value as :guilabel:`Payroll URL`: `https://api.yourpayroll.com.au/`.
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB |
@@ -259,8 +259,7 @@ The configuration must be done on each client database. In the following
|
||||
instructions, we will refer to your client's company as *Company* and to your
|
||||
accounting firm as *Accounting Firm*.
|
||||
|
||||
You must first :ref:`Install <general/install>` :guilabel:`CodaBox` and :guilabel:`CodaBox Bridge`
|
||||
to start.
|
||||
You must first :ref:`Install <general/install>` :guilabel:`CodaBox` to start.
|
||||
|
||||
.. important::
|
||||
Make sure the company settings are correctly configured, i.e., the country is set to
|
||||
@@ -316,14 +315,15 @@ being setup for a first client or an additional one.
|
||||
#. Click on :guilabel:`Connect`, where you are redirected to
|
||||
the **CodaBox** platform, here validate the connection.
|
||||
#. Once redirected back to Odoo, the :guilabel:`Status` should be set to
|
||||
:guilabel:`Connected` and a new field :guilabel:`Access Token` should appear.
|
||||
:guilabel:`Connected` and a new field :guilabel:`Access Token` should appear
|
||||
with a unique value generated by Odoo.
|
||||
|
||||
.. image:: belgium/codabox_configuration_connection_ok.png
|
||||
:align: center
|
||||
:alt: Configured connection.
|
||||
|
||||
.. note::
|
||||
This :guilabel:`Access Token` will be used to create new connections
|
||||
This Odoo :guilabel:`Access Token` will be used to create new connections
|
||||
for other clients without having to validate the connection again.
|
||||
|
||||
.. tab:: Following connection
|
||||
@@ -333,7 +333,7 @@ being setup for a first client or an additional one.
|
||||
|
||||
The **CodaBox** connection linked to the :guilabel:`Access Token` should still exist,
|
||||
therefore there is no need to validate the connection again. A new and different
|
||||
:guilabel:`Access Token` is generated, and the :guilabel:`Status` should be set to
|
||||
:guilabel:`Access Token` is generated by Odoo, and the :guilabel:`Status` should be set to
|
||||
:guilabel:`Connected`.
|
||||
|
||||
.. note::
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
=======================
|
||||
Employment Hero Payroll
|
||||
=======================
|
||||
|
||||
The `Employment Hero <https://employmenthero.com/>`_ module synchronises payslip accounting entries
|
||||
(e.g., expenses, social charges, liabilities, taxes) automatically from Employment Hero to Odoo.
|
||||
Payroll administration is still done in Employment Hero. We only record the **journal entries** in
|
||||
Odoo.
|
||||
|
||||
.. important::
|
||||
KeyPay was rebranded as **Employment Hero** in March 2023.
|
||||
|
||||
.. _employment_hero/configuration:
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
#. :ref:`Activate <general/install>` the :guilabel:`Employment Hero Payroll` module
|
||||
(`l10n_employment_hero`).
|
||||
#. Configure the **Employment Hero API** by going to :menuselection:`Accounting --> Configuration
|
||||
--> Settings`. More fields become visible after clicking on :guilabel:`Enable Employment Hero
|
||||
Integration`.
|
||||
|
||||
.. image:: employment_hero/employment-hero-integration.png
|
||||
:alt: Enabling Employment Hero Integration in Odoo Accounting displays new fields in the
|
||||
settings
|
||||
|
||||
- You can find the API Key in the :guilabel:`My Account` section of the Employment Hero platform.
|
||||
|
||||
.. image:: employment_hero/employment-hero-myaccount.png
|
||||
:alt: "Account Details" section on the Employment Hero dashboard
|
||||
|
||||
- The **Payroll URL** is left empty by default to avoid any confusion. Please fill it according
|
||||
to the documentation specific to your localization.
|
||||
|
||||
.. note::
|
||||
Employment hero is available for :ref:`Australia <australia/employment-hero>`,
|
||||
:ref:`Malaysia <malaysia/employment-hero>`,
|
||||
:ref:`New Zealand <new-zealand/employment-hero>`,
|
||||
:ref:`Singapore <singapore/employment-hero>`,
|
||||
and the :ref:`United Kingdom <united-kingdom/employment-hero>`.
|
||||
|
||||
- You can find the **Business ID** in the Employment Hero URL. (i.e., `189241`)
|
||||
|
||||
.. image:: employment_hero/employment-hero-business-id.png
|
||||
:alt: The Employment Hero "Business ID" number is in the URL
|
||||
|
||||
- You can choose any Odoo journal to post the payslip entries.
|
||||
|
||||
How does the API work?
|
||||
----------------------
|
||||
|
||||
The API syncs the journal entries from Employment Hero to Odoo and leaves them in draft mode. The
|
||||
reference includes the Employment Hero payslip entry ID in brackets for the user to easily retrieve
|
||||
the same record in Employment Hero and Odoo.
|
||||
|
||||
.. image:: employment_hero/employment-hero-journal-entry.png
|
||||
:alt: Example of a Employment Hero Journal Entry in Odoo Accounting (Australia)
|
||||
|
||||
By default, the synchronisation happens once per week. You can fetch the records manually by going
|
||||
to :menuselection:`Accounting --> Configuration --> Settings` and, in the :guilabel:`Enable
|
||||
Employment Hero Integration` option, click on :guilabel:`Fetch Payruns Manually`.
|
||||
|
||||
Employment Hero payslip entries also work based on double-entry bookkeeping.
|
||||
|
||||
The accounts used by Employment Hero are defined in the section :guilabel:`Payroll settings`.
|
||||
|
||||
.. image:: employment_hero/employment-hero-chart-of-accounts.png
|
||||
:alt: Chart of Accounts menu in Employment Hero
|
||||
|
||||
For the API to work, you need to create the same accounts as the default accounts of your Employment
|
||||
Hero business (**same name and same code**) in Odoo. You also need to choose the correct account
|
||||
types in Odoo to generate accurate financial reports.
|
||||
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 8.8 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
@@ -126,3 +126,59 @@ Correct an invoice that has been posted but not downloaded yet: Reset e-Faktur
|
||||
|
||||
.. image:: indonesia/indonesia-e-faktur-reset.png
|
||||
:align: center
|
||||
|
||||
.. _localization_indonesia/qris-qr:
|
||||
|
||||
QRIS QR code on invoices
|
||||
========================
|
||||
|
||||
`QRIS <https://qris.online/homepage/>`_ is a digital payment system that allows customers to make
|
||||
payments by scanning the QR code from their preferred e-wallet.
|
||||
|
||||
.. important::
|
||||
According to the `QRIS API documentation <https://qris.online/api-doc/create-invoice.php>`_,
|
||||
QRIS expires after 30 minutes. Due to this restriction, the QR code is not included in reports
|
||||
sent to customers and is only available on the customer portal.
|
||||
|
||||
Activate QR codes
|
||||
-----------------
|
||||
|
||||
Go to :menuselection:`Accounting --> Configuration --> Settings`. Under the :guilabel:`Customer
|
||||
Payments` section, activate the :guilabel:`QR Codes` feature.
|
||||
|
||||
QRIS bank account configuration
|
||||
-------------------------------
|
||||
|
||||
Go to :menuselection:`Contacts --> Configuration --> Bank Accounts` and select the bank account for
|
||||
which you want to activate QRIS. Set the :guilabel:`QRIS API Key` and :guilabel:`QRIS Merchant ID`
|
||||
based on the information provided by QRIS.
|
||||
|
||||
.. important::
|
||||
The account holder's country must be set to `Indonesia` on its contact form.
|
||||
|
||||
.. image:: indonesia/qris-setup.png
|
||||
:alt: QRIS bank account configuration
|
||||
|
||||
.. seealso::
|
||||
:doc:`../accounting/bank`
|
||||
|
||||
Bank journal configuration
|
||||
--------------------------
|
||||
|
||||
Go to :menuselection:`Accounting --> Configuration --> Journals`, open the bank journal, then fill
|
||||
out the :guilabel:`Account Number` and :guilabel:`Bank` under the :guilabel:`Journal Entries` tab.
|
||||
|
||||
.. image:: indonesia/journal-bank-config.png
|
||||
:alt: Bank journal configuration
|
||||
|
||||
Issue invoices with QRIS QR codes
|
||||
---------------------------------
|
||||
|
||||
When creating a new invoice, open the :guilabel:`Other Info` tab and set the :guilabel:`Payment
|
||||
QR-code` option to `QRIS`.
|
||||
|
||||
.. image:: indonesia/invoice-qris.png
|
||||
:alt: Select QRIS QR-code option
|
||||
|
||||
Ensure that the :guilabel:`Recipient Bank` is the one you configured, as Odoo uses this field to
|
||||
generate the QRIS QR code.
|
||||
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
|
After Width: | Height: | Size: 4.1 KiB |
|
After Width: | Height: | Size: 10 KiB |
@@ -0,0 +1,15 @@
|
||||
========
|
||||
Malaysia
|
||||
========
|
||||
|
||||
.. _malaysia/employment-hero:
|
||||
|
||||
Employment Hero payroll
|
||||
=======================
|
||||
|
||||
If your business is already up and running with :doc:`Employment Hero <employment_hero>`, you can
|
||||
use our connector as an alternative payroll solution.
|
||||
|
||||
.. important::
|
||||
To :ref:`configure the Employment Hero API <employment_hero/configuration>` for **Malaysia**, use
|
||||
the following value as :guilabel:`Payroll URL`: `https://apimy.yourpayroll.io/`.
|
||||
@@ -0,0 +1,15 @@
|
||||
===========
|
||||
New Zealand
|
||||
===========
|
||||
|
||||
.. _new-zealand/employment-hero:
|
||||
|
||||
Employment Hero payroll
|
||||
=======================
|
||||
|
||||
If your business is already up and running with :doc:`Employment Hero <employment_hero>`, you can
|
||||
use our connector as an alternative payroll solution.
|
||||
|
||||
.. important::
|
||||
To :ref:`configure the Employment Hero API <employment_hero/configuration>` for **New Zealand**,
|
||||
use the following value as :guilabel:`Payroll URL`: `https://api.nzpayroll.co.nz/`.
|
||||
@@ -52,3 +52,16 @@ QR-code` option to *EMV Merchant-Presented QR-code*.
|
||||
|
||||
Ensure that the :guilabel:`Recipient Bank` is the one you configured, as Odoo uses this field to
|
||||
generate the PayNow QR code.
|
||||
|
||||
.. _singapore/employment-hero:
|
||||
|
||||
Employment Hero payroll
|
||||
=======================
|
||||
|
||||
If your business is already up and running with :doc:`Employment Hero <employment_hero>`, you can
|
||||
use our connector as an alternative payroll solution.
|
||||
|
||||
.. important::
|
||||
To :ref:`configure the Employment Hero API <employment_hero/configuration>` for **Singapore**,
|
||||
use the following value as :guilabel:`Payroll URL`: `https://apisg.yourpayroll.io/`.
|
||||
|
||||
|
||||
@@ -118,3 +118,15 @@ each submission:
|
||||
.. note::
|
||||
During this process, the :guilabel:`Connect to HMRC` button no longer appears for other UK-based
|
||||
companies.
|
||||
|
||||
.. _united-kingdom/employment-hero:
|
||||
|
||||
Employment Hero payroll
|
||||
=======================
|
||||
|
||||
If your business is already up and running with :doc:`Employment Hero <employment_hero>`, you can
|
||||
use our connector as an alternative payroll solution.
|
||||
|
||||
.. important::
|
||||
To :ref:`configure the Employment Hero API <employment_hero/configuration>` for **United
|
||||
Kingdom**, use the following value as :guilabel:`Payroll URL`: `https://api.yourpayroll.co.uk/`.
|
||||
|
||||
@@ -2,114 +2,101 @@
|
||||
Stripe
|
||||
======
|
||||
|
||||
`Stripe <https://stripe.com/>`_ is a United States-based online payment solution provider allowing
|
||||
`Stripe <https://stripe.com/>`_ is a United States-based online payment solution provider, allowing
|
||||
businesses to accept **credit cards** and other payment methods.
|
||||
|
||||
Create your Stripe account with Odoo
|
||||
====================================
|
||||
Link your Stripe Account with Odoo
|
||||
==================================
|
||||
|
||||
.. seealso::
|
||||
- :ref:`payment_providers/add_new`
|
||||
|
||||
The method to acquire your credentials depends on your hosting type:
|
||||
|
||||
.. tabs::
|
||||
.. group-tab:: Odoo Online
|
||||
|
||||
#. :ref:`Navigate to the payment provider Stripe <payment_providers/supported_providers>` and
|
||||
click :guilabel:`Connect Stripe`.
|
||||
#. Go through the setup process and confirm your email address when Stripe sends you a
|
||||
confirmation email.
|
||||
#. At the end of the process, click :guilabel:`Agree and submit`. If all requested information
|
||||
has been submitted, you are then redirected to Odoo, and your payment provider is enabled.
|
||||
#. Go to the **eCommerce** or the **Sales** app and click on the *Activate Stripe* or the *Set
|
||||
payments* button on the onboarding banner.
|
||||
#. Fill in the requested information and submit the form.
|
||||
#. Confirm your email address when Stripe sends you a confirmation email.
|
||||
#. At the end of the process, you are redirected to Odoo. If you submitted all the requested
|
||||
information, you are all set and your payment provider is enabled.
|
||||
|
||||
.. tip::
|
||||
To use your own API keys, :ref:`activate the Developer mode <developer-mode>` and
|
||||
:ref:`enable Stripe manually <payment_providers/add_new>`. You can then :ref:`Fill in your
|
||||
credentials <stripe/api_keys>`, :ref:`generate a webhook <stripe/webhook>` and enable the
|
||||
payment provider.
|
||||
|
||||
.. group-tab:: Odoo.sh or On-premise
|
||||
|
||||
#. :ref:`Navigate to the payment provider Stripe <payment_providers/supported_providers>` and
|
||||
click :guilabel:`Connect Stripe`.
|
||||
#. Go through the setup process and confirm your email address when Stripe sends you a
|
||||
confirmation email.
|
||||
#. At the end of the process, click :guilabel:`Agree and submit`; you are then redirected to
|
||||
the payment provider **Stripe** in Odoo.
|
||||
#. Go to the **eCommerce** or the **Sales** app and click on the *Activate Stripe* or the *Set
|
||||
payments* button on the onboarding banner.
|
||||
#. Fill in the requested information and submit the form.
|
||||
#. Confirm your email address when Stripe sends you a confirmation email.
|
||||
#. At the end of the process, you are redirected to the payment provider **Stripe** on Odoo.
|
||||
#. :ref:`Fill in your credentials <stripe/api_keys>`.
|
||||
#. :ref:`Generate a webhook <stripe/webhook>`.
|
||||
#. Set the :guilabel:`State` field to :guilabel:`Enabled`.
|
||||
#. Enable the payment provider.
|
||||
|
||||
.. tip::
|
||||
- To use an existing Stripe account, :ref:`activate the Developer mode <developer-mode>` and
|
||||
:ref:`enable Stripe manually <payment_providers/add_new>`. You can then :ref:`Fill in your
|
||||
credentials <stripe/api_keys>`, :ref:`generate a webhook <stripe/webhook>`, and enable the
|
||||
payment provider.
|
||||
- You can also test Stripe using the :ref:`payment_providers/test-mode`. To do so, first,
|
||||
`log into your Stripe dashboard <https://dashboard.stripe.com/dashboard>`_ and switch to the
|
||||
**Test mode**. Then, in Odoo, :ref:`activate the Developer mode <developer-mode>`,
|
||||
:ref:`navigate to the payment provider Stripe <payment_providers/supported_providers>`,
|
||||
:ref:`fill in your API credentials <stripe/api_keys>` with the test keys, and set the
|
||||
:guilabel:`State` field to :guilabel:`Test Mode`.
|
||||
To connect your Stripe account after the onboarding is already completed, go to
|
||||
:menuselection:`Accounting --> Configuration --> Payment Providers --> Stripe` and click on the
|
||||
*Connect Stripe* button.
|
||||
|
||||
.. important::
|
||||
If you are testing Stripe (in **test mode**), change the **State** to *Test Mode*. We recommend
|
||||
doing this on a test Odoo database rather than on your main database.
|
||||
|
||||
.. _stripe/api_keys:
|
||||
|
||||
Fill in your credentials
|
||||
------------------------
|
||||
|
||||
If your **API credentials** are required to connect with your Stripe account, proceed as follows:
|
||||
In case your **API Credentials** are required to connect with your Stripe account, these are the
|
||||
credentials that must be completed:
|
||||
|
||||
#. Go to `the API keys page on Stripe <https://dashboard.stripe.com/account/apikeys>`_, or log into
|
||||
your Stripe dashboard and go to :menuselection:`Developers --> API Keys`.
|
||||
#. In the :guilabel:`Standard keys` section, copy the :guilabel:`Publishable key` and the
|
||||
:guilabel:`Secret key` and save them for later.
|
||||
#. In Odoo, :ref:`navigate to the payment provider Stripe <payment_providers/supported_providers>`.
|
||||
#. In the :guilabel:`Credentials` tab, fill in the :guilabel:`Publishable Key` and
|
||||
:guilabel:`Secret Key` fields with the values you previously saved.
|
||||
- :ref:`Publishable Key <stripe/api_keys>`: The key solely used to identify the account with Stripe.
|
||||
- :ref:`Secret Key <stripe/api_keys>`: The key to sign the merchant account with Stripe.
|
||||
- :ref:`Webhook Signing Secret <stripe/webhook>`: When you enable your webhook on your Stripe
|
||||
account, this signing secret must be set to authenticate the messages sent from Stripe to Odoo.
|
||||
|
||||
To retrieve the publishable and secret keys, follow this `link to your API keys
|
||||
<https://dashboard.stripe.com/account/apikeys>`_, or log into your Stripe dashboard and go to
|
||||
:menuselection:`Developers --> API Keys --> Standard Keys`.
|
||||
|
||||
.. _stripe/webhook:
|
||||
|
||||
Generate a webhook
|
||||
------------------
|
||||
|
||||
If your **Webhook Signing Secret** is required to connect with your Stripe account, you can create a
|
||||
webhook automatically or manually.
|
||||
In case your **Webhook Signing Secret** is required to connect with your Stripe account, you can
|
||||
create a webhook either automatically or manually.
|
||||
|
||||
.. tabs::
|
||||
.. tab:: Create the webhook automatically
|
||||
|
||||
Make sure your :ref:`Publishable and Secret keys <stripe/api_keys>` are filled in, then click
|
||||
:guilabel:`Generate your webhook`.
|
||||
on the *Generate your Webhook* button.
|
||||
|
||||
.. tab:: Create the webhook manually
|
||||
|
||||
#. Go to the `Webhooks page on Stripe <https://dashboard.stripe.com/webhooks>`_, or log into
|
||||
your Stripe dashboard and go to :menuselection:`Developers --> Webhooks`.
|
||||
#. In the :guilabel:`Hosted endpoints` section, click :guilabel:`Add endpoint`. Then, in the
|
||||
:guilabel:`Endpoint URL` field, enter your Odoo database's URL, followed by
|
||||
`/payment/stripe/webhook`, e.g., `https://yourcompany.odoo.com/payment/stripe/webhook`.
|
||||
#. Click :guilabel:`Select events` at the bottom of the form, then select the following
|
||||
events:
|
||||
Visit the `webhooks page on Stripe <https://dashboard.stripe.com/webhooks>`_, or log into your
|
||||
Stripe dashboard and go to :menuselection:`Developers --> Webhooks`. Then, click on **Add
|
||||
endpoint** in your **Hosted endpoints** and insert the following data into the pop-up form:
|
||||
|
||||
- in the :guilabel:`Charge` section: :guilabel:`charge.refunded` and
|
||||
:guilabel:`charge.refund.updated`;
|
||||
- in the :guilabel:`Payment intent` section:
|
||||
:guilabel:`payment_intent.amount_capturable_updated`,
|
||||
:guilabel:`payment_intent.payment_failed`, :guilabel:`payment_intent.processing`, and
|
||||
:guilabel:`payment_intent.succeeded`;
|
||||
- in the :guilabel:`Setup intent` section: :guilabel:`setup_intent.succeeded`.
|
||||
- | In the **Endpoint URL**, enter your Odoo database's URL followed by
|
||||
| `/payment/stripe/webhook`.
|
||||
| For example: `https://yourcompany.odoo.com/payment/stripe/webhook`
|
||||
- At the end of the form, you can **Select events** to listen to. Click on it and, in the
|
||||
**Checkout** section, select **checkout.session.completed**.
|
||||
|
||||
#. Click :guilabel:`Add events`.
|
||||
#. Click :guilabel:`Add endpoint`, then click :guilabel:`Reveal` and save your
|
||||
:guilabel:`Signing secret` for later.
|
||||
#. In Odoo, :ref:`navigate to the payment provider Stripe
|
||||
<payment_providers/supported_providers>`.
|
||||
#. In the :guilabel:`Credentials` tab, fill the :guilabel:`Webhook Signing Secret` field with
|
||||
the value you previously saved.
|
||||
.. note::
|
||||
It is possible to select other events, but they are currently not processed by Odoo.
|
||||
|
||||
.. note::
|
||||
You can select other events, but they are currently not processed by Odoo.
|
||||
|
||||
Enable Apple Pay
|
||||
================
|
||||
|
||||
To allow customers to use the Apple Pay button to pay their eCommerce orders, go to the
|
||||
:guilabel:`Configuration` tab, enable :guilabel:`Allow Express Checkout`, and click
|
||||
:guilabel:`Enable Apple Pay`.
|
||||
When you click on **Add endpoint**, your Webhook is configured. You can then click on
|
||||
**reveal** to display your signing secret.
|
||||
|
||||
.. seealso::
|
||||
- :ref:`Express checkout and Google Pay <payment_providers/express_checkout>`
|
||||
- :doc:`../payment_providers`
|
||||
- :doc:`Use Stripe as a payment terminal in Point of Sale <../../sales/point_of_sale/payment_methods/terminals/stripe>`
|
||||
|
||||
|
After Width: | Height: | Size: 11 KiB |
@@ -2,54 +2,43 @@
|
||||
Sign in with LDAP
|
||||
=================
|
||||
|
||||
- Install the Lightweight Directory Access Protocol (LDAP) module in General Settings.
|
||||
- Install the LDAP module in General Settings.
|
||||
|
||||
- Click on **Create** in Setup the :abbr:`LDAP (Lightweight Directory Access Protocol)` Server.
|
||||
- Click on **Create** in Setup your LDAP Server.
|
||||
|
||||
.. image:: ldap/ldap01.png
|
||||
:align: center
|
||||
:alt: LDAP Authentication checkbox highlighted in the integrations settings on Odoo.
|
||||
|
||||
.. image:: ldap/ldap02.png
|
||||
:align: center
|
||||
:alt: Create highlighted in the LDAP server settings.
|
||||
|
||||
- Choose the company using the LDAP.
|
||||
- Choose the company about to use the LDAP.
|
||||
|
||||
.. image:: ldap/ldap03.png
|
||||
:align: center
|
||||
:alt: Select the company drop-down menu highlighted in LDAP setup.
|
||||
|
||||
- In **Server Information**, enter the IP address of the server and the port it listens to.
|
||||
- In **Server Information**, enter the IP address of your server and the port it listens to.
|
||||
|
||||
- Tick **Use TLS** if the server is compatible.
|
||||
- Tick **User TLS** if your server is compatible.
|
||||
|
||||
.. image:: ldap/ldap04.png
|
||||
:align: center
|
||||
:alt: LDAP server settings highlighted in LDAP server setup on Odoo.
|
||||
|
||||
- In **Login Information**, enter ID and password of the account used to query the server. If left
|
||||
empty, the server queries anonymously.
|
||||
- In **Login Information**, enter ID and password of the account used to query the server. If left empty, the server will be queried anonymously.
|
||||
|
||||
.. image:: ldap/ldap05.png
|
||||
:align: center
|
||||
:alt: Login information highlighted in LDAP server setup on Odoo.
|
||||
|
||||
- In **Process Parameter**, enter the domain name of the LDAP server in :abbr:`LDAP (Lightweight
|
||||
Directory Access Protocol)` nomenclature (e.g. ``dc=example,dc=com``).
|
||||
- In **Process Parameter**, enter the domain name of your LDAP server in LDAP nomenclature (e.g. ``dc=example,dc=com``).
|
||||
|
||||
- In **LDAP filter**, enter ``uid=%s``
|
||||
|
||||
.. image:: ldap/ldap06.png
|
||||
:align: center
|
||||
:alt: Process parameter highlighted in LDAP server setup on Odoo.
|
||||
|
||||
- In **User Information**, tick *Create User* if Odoo should create a User profile the first time
|
||||
someone logs in with :abbr:`LDAP (Lightweight Directory Access Protocol)`.
|
||||
- In **User Information**, tick *Create User* if you want Odoo to create a User profile the first time someone log in with LDAP.
|
||||
|
||||
- In **Template User**, indicate a template for the new profiles created. If left blanked, the admin
|
||||
profile will be used as template.
|
||||
- In **Template User**, indicate a template for the new profiles created. If left blanked, the admin profile will be used as template.
|
||||
|
||||
.. image:: ldap/ldap07.png
|
||||
:align: center
|
||||
:alt: User information highlighted on LDAP server setup on Odoo.
|
||||
|
||||
@@ -1,192 +1,59 @@
|
||||
=====================
|
||||
In-app purchase (IAP)
|
||||
In-App Purchase (IAP)
|
||||
=====================
|
||||
|
||||
.. |IAP| replace:: :abbr:`IAP (In-app purchases)`
|
||||
|
||||
In-app purchases (IAP) are optional services that enhance Odoo databases. Each service provides its
|
||||
own specific features and functionality. A full list of services is available on the `Odoo IAP
|
||||
Catalog <https://iap.odoo.com/iap/all-in-app-services>`_.
|
||||
|
||||
.. image:: in_app_purchase/iap.png
|
||||
:align: center
|
||||
:alt: The IAP catalog with various services available on IAP.Odoo.com.
|
||||
|
||||
.. example::
|
||||
The :guilabel:`SMS` service sends text messages to contacts directly from the database, and the
|
||||
:guilabel:`Documents Digitization` service digitizes scanned or PDF vendor bills, expenses, and
|
||||
resumes with optical character recognition (OCR) and artificial intelligence (AI).
|
||||
|
||||
|IAP| services do **not** need to be configured or set up before use. Odoo users can simply click on
|
||||
the service in the app to activate it. However, each service requires its own prepaid credits, and
|
||||
when they run out, users **must** :ref:`buy more <iap/buying_credits>` in order to keep using it.
|
||||
|
||||
.. note::
|
||||
Users with an Enterprise version of Odoo Online get free credits to test IAP features.
|
||||
|
||||
.. _in_app_purchase/portal:
|
||||
|
||||
IAP services
|
||||
============
|
||||
|
||||
|IAP| services are provided by Odoo, as well as third-parties, and have a wide range of uses.
|
||||
|
||||
The following |IAP| services are provided by Odoo:
|
||||
|
||||
- :guilabel:`Documents Digitization`: digitizes scanned or PDF vendor bills, expenses, and resumes
|
||||
with OCR and AI.
|
||||
- :guilabel:`Partner Autocomplete`: automatically populates contact records with corporate data.
|
||||
- :guilabel:`SMS`: sends SMS text messages to contacts directly from the database.
|
||||
- :guilabel:`Lead Generation`: generates leads based on a set of criteria, and converts web visitors
|
||||
into quality leads and opportunities.
|
||||
- :guilabel:`Snailmail`: sends customer invoices and follow-up reports by post, worldwide.
|
||||
|
||||
For more information on every service currently available, visit the `Odoo IAP Catalog
|
||||
<https://iap.odoo.com/iap/all-in-app-services>`_.
|
||||
|
||||
Use IAP services
|
||||
----------------
|
||||
|
||||
|IAP| services are automatically integrated with Odoo, and do **not** require users to configure any
|
||||
settings. To use a service, simply interact with it wherever it appears in the database.
|
||||
|
||||
.. example::
|
||||
The following flow focuses on the *SMS* |IAP| service being used from a contact's record.
|
||||
|
||||
This can be done by clicking the :guilabel:`📱 (phone) SMS` icon within the database.
|
||||
|
||||
.. image:: in_app_purchase/sms-icon.png
|
||||
:align: center
|
||||
:alt: The SMS icon on a typical contact information form located within an Odoo database.
|
||||
|
||||
One way to utilize the *SMS* |IAP| service with Odoo is showcased in the following steps:
|
||||
|
||||
#. Navigate to the :menuselection:`Contacts application`, and click on a contact with a mobile
|
||||
phone number entered in either the :guilabel:`Phone` or :guilabel:`Mobile` field of the
|
||||
contact form.
|
||||
#. Hover the mouse over the :guilabel:`Phone` or :guilabel:`Mobile` field, and a :guilabel:`📱
|
||||
(phone) SMS` icon appears to the right.
|
||||
#. Click the :guilabel:`📱 (phone) SMS` icon, and a :guilabel:`Send SMS Text Message` pop-up
|
||||
window appears.
|
||||
#. Type a message in the :guilabel:`Message` field of the :guilabel:`Send SMS Text Message`
|
||||
pop-up window. Then, click the :guilabel:`Send SMS` button. Odoo then sends the message, via
|
||||
SMS, to the contact, and logs what was sent in the *chatter* of the contact's form.
|
||||
|
||||
Upon sending the SMS message, the prepaid credits for the *SMS* |IAP| service are automatically
|
||||
deducted from the existing credits. If there are not enough credits to send the message, Odoo
|
||||
prompts the user to purchase more.
|
||||
|
||||
.. seealso::
|
||||
For more information on how to use various |IAP| services, and for more in-depth instructions
|
||||
related to SMS functionality in Odoo, review the documentation below:
|
||||
|
||||
- :doc:`Lead mining </applications/sales/crm/acquire_leads/lead_mining>`
|
||||
- :doc:`Enrich your contacts base with Partner Autocomplete
|
||||
</applications/sales/crm/optimize/partner_autocomplete>`
|
||||
- :doc:`SMS essentials </applications/marketing/sms_marketing/essentials/sms_essentials>`
|
||||
|
||||
.. _in_app_purchase/credits:
|
||||
|
||||
IAP credits
|
||||
===========
|
||||
|
||||
Every time an |IAP| service is used, the prepaid credits for that service are spent. Odoo prompts
|
||||
the purchase of more credits when there are not enough credits left to continue using a service.
|
||||
Email alerts can also be set up for when :ref:`credits are low <in_app_purchase/low-credits>`.
|
||||
|
||||
Credits are purchased in *Packs* from the `Odoo IAP Catalog
|
||||
<https://iap.odoo.com/iap/all-in-app-services>`_, and pricing is specific to each service.
|
||||
|
||||
.. example::
|
||||
The `SMS service <https://iap.odoo.com/iap/in-app-services/1>`_ has four packs available, in
|
||||
denominations of:
|
||||
|
||||
- :guilabel:`Starter Pack`: 10 credits
|
||||
- :guilabel:`Standard Pack`: 100 credits
|
||||
- :guilabel:`Advanced Pack`: 500 credits
|
||||
- :guilabel:`Expert Pack`: 1,000 credits
|
||||
|
||||
.. image:: in_app_purchase/packs.png
|
||||
:align: center
|
||||
:alt: Four different packs of credits for the SMS IAP service.
|
||||
|
||||
The number of credits consumed depends on the length of the SMS and the country of destination.
|
||||
|
||||
For more information, refer to the :doc:`SMS Pricing and FAQ
|
||||
</applications/marketing/sms_marketing/pricing/pricing_and_faq>` documentation.
|
||||
In-App Purchases (IAP) gives access to additional services through Odoo. For instance, it allows you
|
||||
to send SMS Text Messages or to send Invoices by post directly from your database.
|
||||
|
||||
.. _iap/buying_credits:
|
||||
|
||||
Buy credits
|
||||
-----------
|
||||
Buying Credits
|
||||
==============
|
||||
|
||||
If there are not enough credits to perform a task, the database automatically prompts the purchase
|
||||
of more credits.
|
||||
Each IAP Service relies on prepaid credits to work and has its own pricing. To consult your current
|
||||
balance or to recharge your account, go to :menuselection:`Settings --> Odoo IAP --> View my
|
||||
Services`.
|
||||
|
||||
Users can check the current balance of credits for each service, and manually purchase more credits,
|
||||
by navigating to the :menuselection:`Settings app --> Search IAP --> View My Services`.
|
||||
.. image:: in_app_purchase/image1.png
|
||||
:align: center
|
||||
|
||||
Doing so reveals an :guilabel:`IAP Account` page, listing the various |IAP| services in the
|
||||
database. From here, click an |IAP| service to open its :guilabel:`Account Information` page, where
|
||||
additional credits can be purchased.
|
||||
.. tip::
|
||||
If you are on Odoo Online and have the Enterprise version, you benefit from free credits to test our
|
||||
IAP features.
|
||||
|
||||
Manually buy credits
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
IAP accounts
|
||||
============
|
||||
|
||||
To manually buy credits in Odoo, follow these steps:
|
||||
Credits to use IAP services are stored on IAP accounts, which are specific to each service.
|
||||
By default, IAP accounts are common to all companies, but can be restricted to specific
|
||||
ones. Activate the :ref:`developer mode <developer-mode>`, then go to :menuselection:`Technical
|
||||
Settings --> IAP Account`.
|
||||
|
||||
#. Go to the :menuselection:`Settings application`.
|
||||
#. Type `IAP` in the search bar.
|
||||
#. Click :guilabel:`View My Services`.
|
||||
.. image:: in_app_purchase/image2.png
|
||||
:align: center
|
||||
|
||||
.. image:: in_app_purchase/view-services.png
|
||||
:align: center
|
||||
:alt: The Settings app showing the Odoo IAP heading and View My Services button.
|
||||
.. tip::
|
||||
An IAP account can be disabled by appending `+disabled` to its token.
|
||||
Reverting this change will re-enable the account.
|
||||
|
||||
#. Doing so reveals an :guilabel:`IAP Account` page, listing the various |IAP| services in the
|
||||
database. From here, click an |IAP| service to open its :guilabel:`Account Information` page,
|
||||
where additional credits can be purchased.
|
||||
#. On the :guilabel:`Account Information` page, click the :guilabel:`Buy Credit` button.
|
||||
IAP Portal
|
||||
==========
|
||||
|
||||
.. image:: in_app_purchase/account-info.png
|
||||
:align: center
|
||||
:alt: The Account Information page for an IAP service showing the Buy Credit button.
|
||||
The IAP Portal is a platform regrouping your IAP Services. It is accessible from
|
||||
:menuselection:`Settings app --> Odoo IAP --> View my Services`. From there, you can view your current
|
||||
balance, recharge your credits and set a reminder when your balance falls below a threshold.
|
||||
|
||||
#. Doing so loads a :guilabel:`Buy Credits for (IAP Account)` page in a new tab. From here, click
|
||||
:guilabel:`Buy` on the desired pack of credits. Then, follow the prompts to enter payment
|
||||
details, and confirm the order.
|
||||
.. image:: in_app_purchase/image3.png
|
||||
:align: center
|
||||
|
||||
.. image:: in_app_purchase/buy-pack.png
|
||||
:align: center
|
||||
:alt: The SMS service page on IAP.Odoo.com with four packs of credits available for purchase.
|
||||
Get notified when credits are low
|
||||
=================================
|
||||
|
||||
#. Once the transaction is complete, the credits are available for use in the database.
|
||||
To be notified when it’s time to recharge your credits, you can go to your IAP Portal through
|
||||
:menuselection:`Settings app --> Odoo IAP --> View my Services`, unfold a service and check the
|
||||
Receive threshold warning option. Then, you can provide a minimum amount of credits and email
|
||||
addresses. Now, every time that the limit is reached, an automatic reminder will be sent by
|
||||
email!
|
||||
|
||||
.. _in_app_purchase/low-credits:
|
||||
|
||||
Low-credit notification
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
It is possible to be notified when credits are low, in order to avoid running out of credits, while
|
||||
using an |IAP| service. To do that, follow this process:
|
||||
|
||||
#. Go to the :menuselection:`Settings application`.
|
||||
#. Type `IAP` in the search bar.
|
||||
#. Click :guilabel:`View My Services`.
|
||||
#. The available |IAP| accounts appear in a list view on the :guilabel:`IAP Account` page. From
|
||||
here, click on the desired |IAP| account to view that service's :guilabel:`Account Information`
|
||||
page.
|
||||
#. On the :guilabel:`Account Information` page, tick the :guilabel:`Warn Me` box. Doing so reveals
|
||||
two fields on the form: :guilabel:`Threshold` and :guilabel:`Warning Email`.
|
||||
|
||||
.. image:: in_app_purchase/low-credits.png
|
||||
:align: center
|
||||
:alt: Odoo will send an email alert when credits for this service fall below the threshold.
|
||||
|
||||
#. In the :guilabel:`Threshold` field, enter an amount of credits Odoo should use as the minimum
|
||||
threshold for this service.
|
||||
#. In the :guilabel:`Warning Email` field, enter the email address that should receive the
|
||||
notification.
|
||||
|
||||
Odoo sends a low-credit alert to the :guilabel:`Warning Email` when the balance of credits falls
|
||||
below the amount listed as the :guilabel:`Threshold`.
|
||||
.. image:: in_app_purchase/image4.png
|
||||
:align: center
|
||||
|
||||
|
Before Width: | Height: | Size: 8.7 KiB |
|
Before Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 10 KiB |
|
After Width: | Height: | Size: 37 KiB |
|
After Width: | Height: | Size: 50 KiB |
|
After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 9.1 KiB |
|
Before Width: | Height: | Size: 12 KiB |
@@ -1,20 +1,11 @@
|
||||
:show-content:
|
||||
:hide-page-toc:
|
||||
:show-toc:
|
||||
:nosearch:
|
||||
|
||||
===================================
|
||||
VoIP (Voice over Internet Protocol)
|
||||
===================================
|
||||
|
||||
.. seealso::
|
||||
For more information, reference the `Odoo eLearning (video tutorials) on VoIP
|
||||
<https://www.odoo.com/slides/voip-voice-over-ip-315>`_
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
|
||||
voip/onsip
|
||||
voip/axivox
|
||||
voip/voip_widget
|
||||
voip/devices_integrations
|
||||
voip/transfer_forward
|
||||
|
||||
@@ -1,17 +1,85 @@
|
||||
:nosearch:
|
||||
=====================================
|
||||
Use VoIP services in Odoo with Axivox
|
||||
=====================================
|
||||
|
||||
====================
|
||||
Axivox configuration
|
||||
====================
|
||||
Introduction
|
||||
============
|
||||
|
||||
.. toctree::
|
||||
:titlesonly:
|
||||
Odoo VoIP can be set up to work together with `Axivox <https://www.axivox.com/>`_. In that case, an
|
||||
Asterisk server is not necessary as the infrastructure, as it is hosted and managed by Axivox.
|
||||
|
||||
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
|
||||
To use this service, `contact Axivox <https://www.axivox.com/contact/>`_ 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
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
=================================
|
||||
VoIP services in Odoo with Axivox
|
||||
=================================
|
||||
|
||||
Introduction
|
||||
============
|
||||
|
||||
Odoo VoIP (Voice over Internet Protocol) can be set up to work together with `Axivox
|
||||
<https://www.axivox.com/>`_. In that case, an Asterisk server is **not** necessary, as the
|
||||
infrastructure is hosted and managed by Axivox.
|
||||
|
||||
To use this service, `contact Axivox <https://www.axivox.com/contact/>`_ 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/
|
||||
<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:`VoIP username` / :guilabel:`Extension number`: (Axivox) :guilabel:`SIP username`
|
||||
- :guilabel:`OnSip Auth Username`: (Axivox) :guilabel:`SIP username`
|
||||
- :guilabel:`VoIP Secret`: (Axivox) :guilabel:`SIP Password`
|
||||
- :guilabel:`Call from another device`: option to always transfer phone calls to handset
|
||||
- :guilabel:`External device number`: SIP external phone extension
|
||||
- :guilabel:`Reject incoming calls`: option to reject all incoming calls
|
||||
- :guilabel:`How to place calls on mobile`: method to make calls on a mobile device
|
||||
|
||||
.. 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/
|
||||
<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`.
|
||||
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 7.7 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
@@ -1,245 +0,0 @@
|
||||
===========
|
||||
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
|
||||
<https://manage.axivox.com>`_. 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
|
||||
<https://manage.axivox.com>`_.
|
||||
#. 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 <https://manage.axivox.com>`_.
|
||||
|
||||
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 <https://manage.axivox.com>`_ 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
|
||||
<https://manage.axivox.com>`_, 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
|
||||
<https://manage.axivox.com>`_, 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.
|
||||
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 17 KiB |
@@ -1,98 +0,0 @@
|
||||
================
|
||||
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
|
||||
<https://manage.axivox.com>`_. 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 <https://manage.axivox.com>`_, 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.
|
||||
|
Before Width: | Height: | Size: 6.4 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 16 KiB |
@@ -1,411 +0,0 @@
|
||||
===================
|
||||
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 <https://manage.axivox.com>`_.
|
||||
|
||||
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
|
||||
<https://manage.axivox.com>`_. 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 <https://manage.axivox.com>`_. 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 <https://manage.axivox.com>`_. 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 <https://manage.axivox.com>`_, 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 <https://manage.axivox.com>`_ 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
|
||||
<https://manage.axivox.com>`_, 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
|
||||
<https://manage.axivox.com>`_. 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
|
||||
<https://manage.axivox.com>`_, 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.
|
||||
|
Before Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 12 KiB |
@@ -1,204 +0,0 @@
|
||||
================
|
||||
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 <https://manage.axivox.com>`_, 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
|
||||
<https://manage.axivox.com>`_ , 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`.
|
||||
|
Before Width: | Height: | Size: 64 KiB |
|
Before Width: | Height: | Size: 23 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 23 KiB |
@@ -1,113 +0,0 @@
|
||||
=================
|
||||
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 <https://manage.axivox.com>`_,
|
||||
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
|
||||
<https://manage.axivox.com>`_. 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 <https://manage.axivox.com>`_. 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.
|
||||
|
Before Width: | Height: | Size: 29 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 7.2 KiB After Width: | Height: | Size: 7.2 KiB |
@@ -1,346 +0,0 @@
|
||||
======================
|
||||
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
|
||||
<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
|
||||
<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 <axivox_config>`
|
||||
- :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 <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.
|
||||
|
Before Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
@@ -1,263 +0,0 @@
|
||||
=============================
|
||||
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 <axivox_admin_>`_. 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 <axivox_admin_>`_. 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 <axivox_admin_>`_ 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 <axivox_admin_>`_ 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 <axivox_admin_>`_ 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 <axivox_admin_>`_, 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.
|
||||
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 20 KiB |
|
After Width: | Height: | Size: 14 KiB |