| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
CRM (crm)
• Discuss (mail) • Calendar (calendar) • Contacts (contacts) |
| Community Apps Dependencies | Show |
| Lines of code | 4735 |
| Technical Name |
us_viber |
| License | OPL-1 |
| Website | https://unitsoft.com.ua/ |
| Versions | 16.0 17.0 18.0 19.0 |
Viber Integration powered by UnitSoft
Communicate with Viber users directly within Odoo
Features
1. Convenient communication in Odoo
Chat with your Viber customers directly in Discuss. Get more options for working with leads, partners, and session statuses.
2. Easy Bot Creation
Create and configure multiple Viber bots directly within the system.
3. Interaction Flows
Build your own communication flow with users using scripts with step-by-step logic.
4. Chatter
Send and receive Viber messages directly from the chatter of any Odoo document (Leads, Orders, etc.).
5. Operator Management
Monitor operator activity, follow specific channels, and manage agent workloads efficiently.
6. Customer Session Tracking
Track all client sessions, bot interactions, and operator responses in a centralized history.
Step-by-Step Instruction
1. Module Deployment
To ensure messengers work correctly in your system, you need to have the following modules: us_messenger and us_viber.
Library dependency: This module requires the viberbot library to be installed on your environment.
Deployment Instructions
Please note that installing these modules through the standard Odoo interface (Apps → Import Module) will not work for the initial setup.
The correct way to install these modules is as follows:
- Upload the module folders directly to your server's custom addons directory.
- Restart the Odoo service via terminal to allow the system to detect the new files.
2. Module Activation
After installing the module, navigate to Apps menu and search for "Viber Integration". Click Activate to activate the module in your Odoo instance.
3. Creating a New Bot
Once all the necessary modules are activated, we can create a bot in our system. To do this, go to the Messengers menu and click the New button in the upper-left corner. Now we see the form for a new bot. To launch and continue working with the bot, you need to fill in the basic bot fields. Let's take a look at these fields:
The type of bot you are creating. In our case, you need to select Viber. If you are using integration modules with other messengers, there may be other options here.
API token for connecting to the Viber bot.
The name of the bot that Viber users will see. If this field is empty, the bot's name in the system will be used.
In this field, you can select a script with specific steps for user interaction with the bot. In the script, you can configure the receipt of email, phone number, connection to the operator, as well as sending buttons with a choice of answer options. If you leave this field blank, a available operator will be added to the channel with the user, without any intermediate steps. We will talk about scripts in more detail later.
An optional field for storing a link to the bot, useful if many bots are used in the system and it is necessary to understand which Viber bot corresponds to our system bot.
In the Operators section, you can specify system users among whom an automatic search for an available operator will be performed. Then, such a user is added to the channel with the client for further communication. The Priority field allows you to control the selection of available operators. A user with a higher priority will only be selected if all other operators with a lower priority already have more than 5 open channels, or if there are no available operators. The User nickname field should be highlighted separately. The bot settings allow you to sign the author's name in messages that will be sent to the client. In User nickname, you can write the signature that you want your clients to see. If the field is empty, the user's name will be used.
4. Other Useful Parameters
Great, we've filled in all the important fields, now let's take a look at the other bot settings in Parameters page:
When executing script steps, the messenger user's language is taken into account in order to correctly determine the language of the text steps. Sometimes users may have a language that is not activated in our system, in which case the default language from this field will be selected.
If enabled, the author's name will be added at the end of the message, so the messenger client will better understand who they are communicating with.
Template for creating a channel name in Discuss. Consists of the messenger username and bot name.
Determines whether bot operators can assign channels where they are defined by the operator to other operators. If disabled, only the administrator can change the operator.
If enabled, when a messenger user sends a message (without explicit reply) and the last message in the channel was from a document chatter, the message will be duplicated to that document's chatter.
Now that we have finished configuring all the fields, we can click the Run Now button to start the bot. If everything was set up correctly, a notification confirming the successful bot launch should appear in the upper corner of the screen.
5. User Interaction With The Bot
At this stage, Viber users can already contact our bot. Here's what interaction with the bot looks like from the client's side in Viber and the operator's side in Odoo.
As we can see, the client has reached the step of connecting with an operator, so the system searched for an available operator, which turned out to be Mithell Admin, and added him to the channel. Once the operator has communicated with the client, he can click the End Session button, after which the operator will be removed from the channel, and the client will continue to the next step of the script.
6. Channel Statuses
Channel statuses are usually accompanied by a color change or the addition of an icon in the Discuss channel list. The operator can change the status depending on the current state of the channel. Options include waiting for a customer response or seeking help, which is used when the operator has added another system user. In this case, the user will see the channel highlighted in blue. Without Operator highlights the channel in orange and is used when no free operator could be found. This may be the case if the request was made outside of working hours and no users were online. In this case, the system adds all operators to the channel, and the first one to come online can click the Become Operator button to become an operator and exclude other operators from the channel.
7. Viber Scripts
The Viber messenger integration module allows you to build scripts with step-by-step interaction between the bot and the customer. Each step of the script is responsible for one message sent to Viber. After installing the module, you will have a demo script so that you can better familiarize yourself with the work and capabilities of scripts.
8. Step Types
Each step has its own type and defines the logic of interaction between the bot and the user. Here are the types of steps that will be available in the Viber script:
Sending a regular text message. Please note that this step does not require a response from the user, so if you have two text steps in a row, they will both be sent at once.
Receiving customer email. The step waits for the customer to send email. If the email is invalid, the step will ask to enter the email again.
Step is waiting for user input.
Step awaits receipt of the phone number. Please note that there is also another field in the step, Apply For Partner. If it is enabled, the customer will be able to transfer the number by clicking on the button, and the number will also be saved immediately in the partner card. If the field is disabled, the customer will need to enter the number manually. It is recommended to keep this option enabled if we expect the customer to enter their number, as in this case we can be sure that the number belongs to this user.
At this step, a search for an available operator is performed, and it is added to the channel. Note that when the client is at this step, the other steps are not performed, since all text or commands go to the channel with the operator.
A special Viber step that sends text with attached buttons to Viber. When the user clicks on one of the response buttons, we can move on to other steps. This step can be used as a poll or to build branches in the script.
9. Script Step Example
Let's look at an example of fields in a step with the Question Selection type:
Required field for each step. Contains text that will be sent to the customer.
The step can send a message about the user's successful response, or vice versa, if the user has entered the wrong answer. The message about the successful completion of the step is optional and can be left blank.
The execution of a step can be linked to a command.
When a user changes the order of steps or creates new steps in a script, the steps are recalculated to automatically determine the next step for each step. If this field is enabled, the next step will not be determined for the current step.
A special field for a step with the Question Selection type. Answer Text will contain the text in the button with the answer option.
If the user has selected an option, we can specify the next step to be taken. It is also possible to create a survey without specifying the next steps in all answer options, in which case the next step specified in the step itself will be performed.
Покрокова інструкція
1. Встановлення Модуля
Щоб месенджери працювали у вашій системі належним чином, вам необхідні наступні модулі: us_messenger та us_viber.
Залежність від бібліотек: Цей модуль вимагає наявності наступної бібліотеки у вашому середовищі: viberbot.
Інструкція з розгортання
Зверніть увагу, що встановлення цих модулів через стандартний інтерфейс Odoo (Додатки → Імпорт модуля) не буде працювати в нашому випадку.
Правильний спосіб встановлення цих модулів наступний:
- Завантажте папки модулів безпосередньо в каталог зі сторонніми модулями вашого сервера.
- Перезапустіть службу Odoo через термінал, щоб система виявила нові файли.
2. Активація модуля
Після встановлення модуля перейдіть до меню Додатки та знайдіть "Viber Integration". Натисніть Активувати, щоб активувати модуль у вашому екземплярі Odoo.
3. Створення нового бота
Після активації всіх необхідних модулів ми можемо створити бота в нашій системі. Для цього перейдіть до меню Месенджери та натисніть кнопку Новий у верхньому лівому кутку екрану. Тепер ми бачимо форму нового бота. Щоб запустити та продовжити роботу з ботом, потрібно заповнити основні поля бота. Розглянемо ці поля:
Тип бота, який ви створюєте. У нашому випадку потрібно вибрати Viber. Якщо ви використовуєте модулі інтеграції з іншими месенджерами, тут можуть бути інші варіанти.
API токен для підключення до Viber бота.
Назва бота, яку бачитимуть користувачі Viber. Якщо це поле порожнє, буде використано назву бота в системі.
У цьому полі ви можете вибрати скрипт з певними кроками для взаємодії користувача з ботом. У скрипті можна налаштувати отримання електронної пошти, номера телефону, з'єднання з оператором, а також надсилання кнопок з варіантами відповідей. Якщо залишити це поле порожнім, до каналу з користувачем буде додано доступного оператора без будь-яких проміжних кроків. Про скрипти ми поговоримо детальніше пізніше.
Необов'язкове поле для зберігання посилання на бота, корисне, якщо в системі використовується багато ботів і потрібно розуміти, який Viber бот відповідає нашому системному боту.
У розділі Оператори ви можете вказати користувачів системи, серед яких буде виконуватися автоматичний пошук доступного оператора. Потім такий користувач додається до каналу з клієнтом для подальшого спілкування. Поле Пріоритет дозволяє контролювати вибір доступних операторів. Користувач з вищим пріоритетом буде обраний лише якщо всі інші оператори з нижчим пріоритетом вже мають більше 5 відкритих каналів, або якщо немає доступних операторів. Окремо слід виділити поле Нікнейм користувача. Налаштування бота дозволяють підписувати ім'я автора в повідомленнях, які будуть надіслані клієнту. У Нікнеймі користувача ви можете написати підпис, який хочете, щоб бачили ваші клієнти. Якщо поле порожнє, буде використано ім'я користувача.
4. Інші корисні параметри
Чудово, ми заповнили всі важливі поля, тепер розглянемо інші налаштування бота на сторінці Параметри:
При виконанні кроків скрипта враховується мова користувача месенджера для правильного визначення мови текстових кроків. Іноді користувачі можуть мати мову, яка не активована в нашій системі, у такому випадку буде обрано мову за замовчуванням з цього поля.
Якщо увімкнено, ім'я автора буде додано в кінці повідомлення, щоб клієнт месенджера краще розумів, з ким він спілкується.
Шаблон для створення назви каналу в Discuss. Складається з імені користувача месенджера та назви бота.
Визначає, чи можуть оператори бота призначати канали, де вони визначені як оператор, іншим операторам. Якщо вимкнено, лише адміністратор може змінювати оператора.
Якщо увімкнено, коли користувач месенджера надсилає повідомлення (без явної відповіді) і останнє повідомлення в каналі було з чату документа, повідомлення буде продубльовано в чат цього документа.
Тепер, коли ми закінчили налаштування всіх полів, ми можемо натиснути кнопку Запустити, щоб запустити бота. Якщо все було налаштовано правильно, у верхньому куті екрана повинно з'явитися сповіщення про успішний запуск бота.
5. Взаємодія користувача з ботом
На цьому етапі користувачі Viber вже можуть зв'язатися з нашим ботом. Ось як виглядає взаємодія з ботом з боку клієнта у Viber та з боку оператора в Odoo.
Як ми бачимо, клієнт досяг кроку з'єднання з оператором, тому система виконала пошук доступного оператора, яким виявився Mithell Admin, і додала його до каналу. Після того, як оператор поспілкувався з клієнтом, він може натиснути кнопку Завершити сесію, після чого оператор буде видалений з каналу, а клієнт отримає наступний крок скрипта.
6. Статуси каналів
Статуси каналів зазвичай супроводжуються зміною кольору або додаванням іконки в списку каналів Discuss. Оператор може змінювати статус залежно від поточного стану каналу. Варіанти включають очікування відповіді клієнта або пошук допомоги, який використовується, коли оператор додав іншого користувача системи(У цьому випадку новий учасник побачить канал, підсвічений синім кольором). Статус "Без оператора" виділяє канал помаранчевим кольором і використовується, коли не вдалося знайти вільного оператора. Це може статися, якщо запит був зроблений поза робочим часом і жоден оператор не був онлайн. У цьому випадку система додає всіх операторів до каналу, тоді кожен користувач, коли знову зайде в систему зможе натиснути кнопку "Стати оператором", щоб стати оператором і виключити інших операторів з каналу.
7. Скрипти Viber
Модуль інтеграції месенджера Viber дозволяє створювати скрипти з покроковою взаємодією між ботом і клієнтом. Кожен крок скрипта відповідає за одне повідомлення, надіслане у Viber. Після встановлення модуля ви зможете переглянути демо-скрипт, щоб краще ознайомитися з роботою та можливостями скриптів.
8. Типи кроків
Кожен крок має свій тип і визначає логіку взаємодії між ботом і користувачем. Ось типи кроків, які будуть доступні в скрипті Viber:
Надсилання звичайного текстового повідомлення. Зверніть увагу, що цей крок не вимагає відповіді від користувача, тому якщо у вас два текстові кроки поспіль, вони обидва будуть надіслані одразу.
Отримання електронної пошти клієнта. Крок очікує, поки клієнт надішле email. Якщо email недійсний, крок попросить ввести email ще раз.
Крок очікує повідомлення від користувача.
Крок очікує отримання номера телефону. Зверніть увагу, що в кроці є ще одне поле, Застосувати для партнера. Якщо воно увімкнене, клієнт зможе передати номер, натиснувши на кнопку, і номер також буде одразу збережено в картці партнера. Якщо поле вимкнене, клієнту потрібно буде ввести номер вручну. Рекомендується залишати цю опцію увімкненою, якщо ми очікуємо, що клієнт введе свій номер, оскільки в цьому випадку ми можемо бути впевнені, що номер належить цьому користувачу.
На цьому кроці виконується пошук доступного оператора, і він додається до каналу. Зверніть увагу, що коли клієнт знаходиться на цьому кроці, інші кроки не виконуються, оскільки весь текст або команди надходять до каналу з оператором.
Спеціальний крок Viber, який надсилає текст з прикріпленими кнопками відповіді. Коли користувач натискає на одну з кнопок відповіді, ми можемо перейти до інших кроків. Цей крок можна використовувати як опитування або для побудови гілок у скрипті.
9. Приклад кроку скрипта
Розглянемо приклад полів у кроці з типом "Viber: Вибір відповіді":
Обов'язкове поле для кожного кроку. Містить текст, який буде надіслано клієнту.
Крок може надіслати повідомлення про успішну відповідь користувача, або навпаки, якщо користувач ввів неправильну відповідь. Повідомлення про успішне завершення кроку є необов'язковим і може бути порожнім.
Виконання кроку може бути прив'язане до команди.
Коли користувач змінює порядок кроків або створює нові кроки в скрипті, то виконується автоматичне визначення наступного кроку для кожного з кроків скрипта. Включіть опцію "Не перераховувати наступний крок", якщо ваш поточний крок не підтримує стандартний порядок виконання кроків.
Спеціальне поле для кроку з типом Вибір відповіді. Текст відповіді міститиме текст у кнопці з варіантом відповіді.
Якщо користувач вибрав варіант відповіді, ми можемо вказати наступний крок, який буде виконано. Також можна створити опитування без вказівки наступних кроків у всіх варіантах відповідей, у такому випадку буде виконано наступний крок, вказаний у самому кроці.
Support
We provide free bug fixes and updates for all our modules for 1 year after purchase.
The warranty is for a clean installation of Odoo.
If you need help, please submit a request through our Support Portal at https://unitsoft.com.ua/support. Our support team, which consists of the developers who created the product, is always ready to help you.
We will not provide support (for free) if our modules do not work on your server or conflict with other modules.
We are ready to consider your requests regarding the functionality of our modules, and if they prove useful, we can take them into account when releasing new versions.
We also provide all types of Odoo support services, such as installing Odoo on your server, maintaining your Odoo server, custom development.
We invite you to familiarize yourself with our support packages here: https://unitsoft.com.ua/services-plan
Our Odoo Apps
Viber Integration
Installation
- Install this module in according to us_messenger Documentation
Configuration
In Viber
Create Viber bot and get Token of the bot.
In Odoo
- Activate Developer Mode
- Open menu [[ Settings ]] >> Technical >> Parameters >> System Parameters
- Check that parameter web.base.url is properly set and it's accessible over internet (it should not be a localhost). Also, viber accepts https addresses only (i.e. not http). If you can use only localhost, use ngrok
- Open menu [[ Messengers ]] >> Messengers
- Select Kanban card with viber icon and name 'Enter_bot_name' project
- Enter new bot token to field token
- Enter bot name and select the operators with which the user will contact
- Unarchive the project
- Click button [Run Now] in the upper left corner
Usage
Conversation in any document where there is a chatter
In Odoo:
- Make sure that in the [[ Messengers ]] >> Messengers >> <Your bot name> >> Parameters you have 'yes' written in CHATTER
- Add followers to chatter by clicking on button 'Add followers'. Select only parent contacts (without any bot name)
- Click on button 'Send Message'. Select to whom and in which messenger to send a message. Write message and send. Note: the message will be sent not only in the selected messenger but also by mail. To disable sending by mail you can click button Followers, select follower, click 'Edit subscription', and disable 'Discussions' and enable 'Note'
- In [[ Discuss ]] menu you will see the message from document with message with signature from which document it was written
In Viber:
- RESULT: A new message will appear
- Answer on this message
In Odoo:
- RESULT: the message from Viber you will see in chatter document
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module