Технічне завдання на створення чату в K2 ERP: відмінності між версіями

Немає опису редагування
Немає опису редагування
 
(Не показані 3 проміжні версії цього користувача)
Рядок 12: Рядок 12:


Модуль '''K2 Chat''' призначений для організації внутрішньої, зовнішньої, клієнтської, технічної, проєктної та міжхмарної комунікації в екосистемі K2 ERP.
Модуль '''K2 Chat''' призначений для організації внутрішньої, зовнішньої, клієнтської, технічної, проєктної та міжхмарної комунікації в екосистемі K2 ERP.
K2 Chat повинен стати єдиним комунікаційним середовищем компанії, де повідомлення пов’язані не тільки з людьми, а й із документами, задачами, клієнтами, лідами, контрагентами, зверненнями, баг-репортами, файлами, відеозустрічами, записами, транскрибаціями та бізнес-процесами.


Модуль повинен забезпечувати:
Модуль повинен забезпечувати:
Рядок 22: Рядок 24:
* особисті чати;
* особисті чати;
* групові чати;
* групові чати;
* канали;
* корпоративні канали;
* треди;
* треди;
* теми обговорень;
* теми обговорень;
Рядок 39: Рядок 41:
* створення баг-репортів;
* створення баг-репортів;
* передачу інформації з ERP у чат;
* передачу інформації з ERP у чат;
* інтеграцію з іншими месенджерами;
* інтеграцію із зовнішніми месенджерами та каналами комунікації;
* інтеграцію з CRM;
* інтеграцію з CRM;
* інтеграцію з VDoc;
* інтеграцію з VDoc;
Рядок 52: Рядок 54:


<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Важливо:''' K2 Chat повинен бути не просто аналогом месенджера, а повноцінним комунікаційним шаром K2 ERP, який пов’язує людей, документи, задачі, контрагентів, ліди, заявки, баг-репорти, підтримку, відеозустрічі, навчання та бізнес-процеси.
'''Важливо:''' K2 Chat повинен бути не просто месенджером, а повноцінним комунікаційним шаром K2 ERP, який пов’язує людей, документи, задачі, контрагентів, ліди, заявки, баг-репорти, підтримку, відеозустрічі, навчання та бізнес-процеси.
</div>
</div>


Рядок 77: Рядок 79:
# Надати інструмент для проведення вебінарів і великих онлайн-подій.
# Надати інструмент для проведення вебінарів і великих онлайн-подій.


# Надати можливість інтегрувати K2 Chat із сайтами, CRM, Helpdesk, ERP-модулями та зовнішніми месенджерами.
# Надати можливість інтегрувати K2 Chat із сайтами, CRM, Helpdesk, ERP-модулями та зовнішніми каналами комунікації.


# Забезпечити високий рівень безпеки для компаній із підвищеними вимогами до захисту інформації.
# Забезпечити високий рівень безпеки для компаній із підвищеними вимогами до захисту інформації.
Рядок 93: Рядок 95:
* '''Helpdesk-система''' для обробки звернень;
* '''Helpdesk-система''' для обробки звернень;
* '''інструмент комунікації між хмарами K2 ERP''';
* '''інструмент комунікації між хмарами K2 ERP''';
* '''шлюз інтеграції з іншими месенджерами''';
* '''шлюз інтеграції із зовнішніми месенджерами''';
* '''канал передачі ERP-об’єктів у комунікацію''';
* '''канал передачі ERP-об’єктів у комунікацію''';
* '''модуль голосових і відеокомунікацій''';
* '''модуль голосових і відеокомунікацій''';
Рядок 105: Рядок 107:
</div>
</div>


== 4. Режими роботи ==
== 4. Початковий мінімум розробки K2 Chat ==
 
<div style="background:#ffebee; border-left:6px solid #c62828; padding:14px; margin:14px 0;">
'''Найважливіше на першому етапі — не намагатися одразу зробити всі можливості великого корпоративного месенджера. Першочергова задача — створити стабільне ядро K2 Chat: повідомлення, користувачі, групи, історія, права доступу, файли, API, інтеграція з K2 ERP та збереження даних у хмарі K2 ERP.'''
</div>
 
Початковий мінімум повинен бути розроблений так, щоб на його основі можна було поступово нарощувати Helpdesk, відеоконференції, стрімінг, AI, телефонію, зовнішні інтеграції та міжхмарний обмін.


{| class="wikitable" style="width:100%; border-collapse:collapse;"
На першому етапі потрібно створити не демонстраційний чат, а повноцінну технічну основу майбутнього модуля.
! style="width:25%;" | Режим


| ! Опис                                                                                                              |
=== 4.1. Головна ціль першого етапу ===
| ------------------------------------------------------------------------------------------------------------------- |
| '''Веб-додаток'''                                                                                                  |
| Робота користувачів через браузер у хмарі K2 ERP.                                                                   |
| -                                                                                                                  |
| '''API-додаток'''                                                                                                  |
| Можливість створення зовнішніх клієнтів, мобільних додатків, десктопних додатків та інтеграцій через API.           |
| -                                                                                                                  |
| '''Віджет для сайту'''                                                                                              |
| Звернення відвідувача сайту до технічної підтримки або менеджера.                                                  |
| -                                                                                                                  |
| '''Helpdesk'''                                                                                                      |
| Прийом, класифікація, обробка та закриття звернень.                                                                |
| -                                                                                                                  |
| '''Міжхмарний чат'''                                                                                                |
| Обмін повідомленнями між різними інсталяціями або хмарами K2 ERP.                                                  |
| -                                                                                                                  |
| '''ERP-комунікація'''                                                                                              |
| Передача в чат інформації про документи, контрагентів, ліди, контакти, задачі, рахунки, замовлення та інші об’єкти. |
| -                                                                                                                  |
| '''Інтеграційний шлюз'''                                                                                            |
| Обмін повідомленнями з Telegram, Slack, Viber, WhatsApp, Email та іншими каналами за наявності відповідних API.    |
| -                                                                                                                  |
| '''Голосові комунікації'''                                                                                          |
| Голосові повідомлення, дзвінки, записи та транскрибація.                                                            |
| -                                                                                                                  |
| '''Відеоконференції'''                                                                                              |
| Проведення відеозустрічей, запис зустрічей, транскрибація та прив’язка до ERP-об’єктів.                            |
| -                                                                                                                  |
| '''Стрімінг'''                                                                                                      |
| Проведення великих онлайн-подій, вебінарів і трансляцій для сотень або тисяч користувачів.                          |
| -                                                                                                                  |
| '''Контакт-центр'''                                                                                                |
| Єдиний центр обробки повідомлень із сайту, месенджерів, соцмереж, email, телефонії та CRM-форм.                    |
| }                                                                                                                  |


== 5. Основні користувачі модуля ==
Головна ціль першого етапу — зробити робочий корпоративний чат усередині K2 ERP, який дозволяє користувачам хмари:


У системі повинні бути передбачені такі типи користувачів:
* писати один одному повідомлення;
* створювати групові чати;
* бачити історію переписки;
* отримувати повідомлення в реальному часі;
* прикріплювати файли;
* мати базові права доступу;
* зберігати всю переписку на сервері K2 ERP;
* працювати через веб-інтерфейс;
* мати базовий API для подальшого розвитку;
* передавати у чат базову інформацію з ERP.


* адміністратор хмари K2 ERP;
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
* адміністратор K2 Chat;
'''Перший результат розробки:''' користувач K2 ERP заходить у хмару, відкриває K2 Chat, бачить список чатів, пише повідомлення, отримує відповідь у реальному часі, прикріплює файл, бачить історію і може перейти до пов’язаного ERP-об’єкта.
* адміністратор безпеки;
</div>
* співробітник компанії;
* керівник підрозділу;
* оператор технічної підтримки;
* менеджер із продажу;
* менеджер проєкту;
* розробник;
* тестувальник;
* бухгалтер-консультант;
* клієнт;
* відвідувач сайту;
* зовнішній користувач іншої хмари K2 ERP;
* партнер;
* інтегратор;
* викладач;
* студент або слухач курсу;
* бот або системний користувач;
* інтеграційний користувач API.


== 6. Основні функціональні можливості чату ==
=== 4.2. Що обов’язково розробити першим ===


=== 6.1. Особисті повідомлення ===
До першочергового ядра K2 Chat входять такі блоки:


Система повинна підтримувати особисте листування між користувачами.
# Авторизація користувачів через K2 ERP.


Необхідно передбачити:
# Список користувачів хмари.


* відправку текстових повідомлень;
# Особисті чати між двома користувачами.
* редагування повідомлень;
 
* видалення повідомлень або позначення їх як видалених;
# Групові чати.
* відповідь на конкретне повідомлення;
 
* пересилання повідомлень;
# Відправка текстових повідомлень.
* цитування повідомлень;
 
* реакції на повідомлення;
# Отримання повідомлень у реальному часі.
* закріплення важливих повідомлень;
 
* додавання повідомлень в обране;
# Збереження історії повідомлень.
* позначення повідомлень як прочитаних або непрочитаних;
 
* пошук по переписці;
# Перегляд історії переписки.
* перегляд історії повідомлень;
 
* обмеження доступу до історії відповідно до прав користувача;
# Позначення повідомлень як прочитаних.
* передачу ERP-об’єктів у повідомленні;
* створення задачі з повідомлення;
* створення баг-репорту з повідомлення;
* створення Helpdesk-звернення з повідомлення.


<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
# Лічильник непрочитаних повідомлень.
'''Важливо:''' фізичне видалення повідомлень повинно бути обмежене. Для корпоративного середовища доцільно використовувати позначення повідомлення як видаленого із збереженням службового аудиту.
</div>


=== 6.2. Групові чати ===
# Прикріплення файлів.


Система повинна підтримувати групові чати.
# Базові права доступу.


Функції групових чатів:
# Базовий журнал дій.


* створення групи;
# Пошук по повідомленнях.
* додавання учасників;
* видалення учасників;
* призначення адміністраторів групи;
* встановлення назви групи;
* встановлення опису групи;
* встановлення аватару групи;
* закріплення повідомлень;
* додавання повідомлень в обране;
* опитування;
* нотатки;
* файли;
* посилання;
* треди;
* теми;
* налаштування прав учасників;
* перегляд списку учасників;
* запрошення користувачів за посиланням;
* обмеження доступу до групи;
* архівація групи;
* пошук у межах групи;
* історія змін групи.


=== 6.3. Канали ===
# API для відправки та отримання повідомлень.


Потрібно передбачити канали, аналогічні публічним або корпоративним каналам повідомлень.
# Зв’язок повідомлення з ERP-об’єктом.


Канали можуть використовуватись для:
# Базовий інтерфейс адміністратора.


* новин компанії;
# Зберігання всіх даних у хмарі K2 ERP.
* повідомлень від керівництва;
* оновлень K2 ERP;
* оголошень;
* технічних повідомлень;
* повідомлень для клієнтів;
* навчальних матеріалів;
* інформування про зміни в бізнес-процесах;
* внутрішніх регламентів;
* повідомлень про релізи;
* навчальних вебінарів;
* стрімінгових подій.


Канал повинен підтримувати:
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;">
'''Ключовий принцип:''' спочатку потрібно зробити простий, швидкий і стабільний чат, який працює щодня. Усі складні функції мають нарощуватися тільки після того, як ядро повідомлень працює надійно.
</div>


* публікацію повідомлень адміністраторами;
=== 4.3. Мінімальний інтерфейс користувача першої версії ===
* підписку користувачів;
* перегляд історії;
* коментарі до публікацій, якщо це дозволено;
* реакції;
* опитування;
* закріплення важливих повідомлень;
* права на публікацію;
* права на перегляд;
* вкладення файлів;
* прикріплення ERP-карток;
* запуск відеоконференції або стріму з каналу.


=== 6.4. Теми та обговорення ===
На першому етапі інтерфейс користувача повинен містити:


У великих групах і каналах потрібно передбачити теми обговорень.
* ліву панель зі списком чатів;
* список особистих і групових чатів;
* поле пошуку чатів;
* центральну область повідомлень;
* поле введення повідомлення;
* кнопку відправки повідомлення;
* кнопку прикріплення файлу;
* індикатор нових повідомлень;
* індикатор прочитання;
* відображення автора повідомлення;
* дату і час повідомлення;
* можливість прокрутки історії;
* кнопку створення нового чату;
* кнопку створення групового чату;
* базову панель інформації про чат.


Теми повинні дозволяти:
На першій версії не потрібно перевантажувати інтерфейс десятками функцій. Він повинен бути простим, зрозумілим і швидким.


* структурувати переписку;
=== 4.4. Мінімальна структура даних першої версії ===
* відокремлювати технічні питання від організаційних;
* створювати обговорення по конкретному документу, задачі, клієнту, ліду або багу;
* швидко знаходити потрібну інформацію;
* зменшувати хаос у великих чатах;
* формувати окремі гілки по спринтах, релізах, клієнтах, модулях або проблемах.


=== 6.5. Тредові обговорення ===
На першому етапі потрібно створити базові сутності:


Потрібно передбачити треди, аналогічні Slack.
* користувачі чату;
* чати;
* учасники чатів;
* повідомлення;
* файли повідомлень;
* статуси прочитання;
* права доступу;
* журнал дій;
* посилання на ERP-об’єкти.


Тред повинен дозволяти:
Мінімальна структура повинна дозволяти надалі додати:


* відповідати на конкретне повідомлення в окремій гілці;
* треди;
* не засмічувати основний чат;
* реакції;
* вести технічну дискусію по одному питанню;
* голосові повідомлення;
* прив’язувати тред до задачі, документа, ліда, клієнта або баг-репорту;
* Helpdesk;
* створювати підзадачу з треду;
* баг-репорти;
* створювати короткий підсумок треду;
* відеоконференції;
* переносити важливі рішення в задачу або VDoc.
* зовнішні інтеграції;
* міжхмарний обмін;
* AI-помічника.


<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Рекомендація:''' для великих корпоративних чатів треди є критично важливими, оскільки дозволяють не перетворювати загальний канал у хаотичну стрічку повідомлень.
'''Архітектурна вимога:''' навіть якщо частина функцій не реалізується в першій версії, структура даних і API не повинні блокувати їх додавання в майбутньому.
</div>
</div>


== 7. Можливості рівня Telegram, Slack та Bitrix24 ==
=== 4.5. Базова інтеграція з K2 ERP у першій версії ===
 
У першій версії K2 Chat повинен бути інтегрований із K2 ERP на базовому рівні.


K2 Chat повинен включати ключові можливості сучасних корпоративних месенджерів.
Потрібно передбачити:


{| class="wikitable" style="width:100%; border-collapse:collapse;"
* авторизацію через користувачів K2 ERP;
! style="width:30%;" | Можливість
* використання ролей K2 ERP;
* використання прав доступу K2 ERP;
* відкриття K2 Chat з інтерфейсу K2 ERP;
* можливість передати в чат посилання на ERP-об’єкт;
* можливість показати в чаті коротку ERP-картку;
* перевірку прав доступу при відкритті ERP-об’єкта;
* збереження повідомлень у базі даних хмари K2 ERP;
* збереження файлів у файловому сховищі хмари K2 ERP.


| ! Опис реалізації в K2 Chat                                                                                          |
ERP-картка першої версії може бути простою. Вона повинна містити:
| --------------------------------------------------------------------------------------------------------------------- |
| Особисті чати                                                                                                        |
| Переписка між двома користувачами.                                                                                    |
| -                                                                                                                    |
| Групові чати                                                                                                          |
| Спільне обговорення між багатьма учасниками.                                                                          |
| -                                                                                                                    |
| Канали                                                                                                                |
| Одностороннє або обмежене інформування аудиторії.                                                                    |
| -                                                                                                                    |
| Треди                                                                                                                |
| Окремі гілки обговорення під повідомленнями.                                                                          |
| -                                                                                                                    |
| Теми                                                                                                                  |
| Структурування великих груп і каналів.                                                                                |
| -                                                                                                                    |
| Реакції                                                                                                              |
| Швидкі реакції на повідомлення.                                                                                      |
| -                                                                                                                    |
| Файли                                                                                                                |
| Надсилання файлів, документів, зображень, архівів.                                                                    |
| -                                                                                                                    |
| Голосові повідомлення                                                                                                |
| Запис, відправка, зберігання, прослуховування та транскрибація голосових повідомлень.                                |
| -                                                                                                                    |
| Голосові дзвінки                                                                                                      |
| Особисті та групові голосові дзвінки із можливістю запису та транскрибації.                                          |
| -                                                                                                                    |
| Відеоконференції                                                                                                      |
| Створення відеозустрічей із демонстрацією екрана, записом і транскрибацією.                                          |
| -                                                                                                                    |
| Стрімінг                                                                                                              |
| Проведення онлайн-трансляцій, вебінарів і великих подій для сотень або тисяч глядачів.                                |
| -                                                                                                                    |
| Пошук                                                                                                                |
| Пошук по чатах, файлах, користувачах, задачах та ERP-об’єктах.                                                        |
| -                                                                                                                    |
| Боти                                                                                                                  |
| Системні та користувацькі боти.                                                                                      |
| -                                                                                                                    |
| Webhook                                                                                                              |
| Вхідні та вихідні webhooks для інтеграцій.                                                                            |
| -                                                                                                                    |
| API                                                                                                                  |
| Повноцінний API для створення клієнтів та інтеграцій.                                                                |
| -                                                                                                                    |
| Статуси користувачів                                                                                                  |
| Онлайн, офлайн, зайнятий, не турбувати, у відпустці.                                                                  |
| -                                                                                                                    |
| Нагадування                                                                                                          |
| Нагадування по повідомленнях, задачах та зверненнях.                                                                  |
| -                                                                                                                    |
| Закріплені повідомлення                                                                                              |
| Важлива інформація у верхній частині чату.                                                                            |
| -                                                                                                                    |
| Згадки                                                                                                                |
| Згадки користувачів через @.                                                                                          |
| -                                                                                                                    |
| Ролі                                                                                                                  |
| Адміністратори, модератори, учасники, гості.                                                                          |
| -                                                                                                                    |
| Гостьовий доступ                                                                                                      |
| Обмежений доступ для клієнтів або зовнішніх користувачів.                                                            |
| -                                                                                                                    |
| Опитування                                                                                                            |
| Створення публічних або анонімних опитувань у чатах, каналах, проєктах і навчальних групах.                          |
| -                                                                                                                    |
| Обране                                                                                                                |
| Збереження важливих повідомлень користувачем для швидкого доступу.                                                    |
| -                                                                                                                    |
| Нотатки                                                                                                              |
| Публічні або приватні нотатки в чаті, зокрема для операторів підтримки.                                              |
| -                                                                                                                    |
| Бокова панель чату                                                                                                    |
| Швидкий доступ до учасників, файлів, медіа, посилань, обраних повідомлень, ERP-карток і записів зустрічей.            |
| -                                                                                                                    |
| Автоочищення повідомлень                                                                                              |
| Налаштування строку зберігання повідомлень, архівації або логічного видалення.                                        |
| -                                                                                                                    |
| Проєктні чати                                                                                                        |
| Автоматичні чати для робочих груп, проєктів, задач і спринтів.                                                        |
| -                                                                                                                    |
| Чат задачі                                                                                                            |
| Повноцінний робочий простір задачі з файлами, дзвінками, рішеннями та підсумками.                                    |
| -                                                                                                                    |
| AI-помічник                                                                                                          |
| Підсумки переписки, створення задач, аналіз дзвінків, транскрибація, відповіді клієнтам і автоматизація рутинних дій. |
| -                                                                                                                    |
| Відкриті лінії                                                                                                        |
| Єдиний центр обробки повідомлень із сайту, месенджерів, соцмереж, email і CRM-форм.                                  |
| -                                                                                                                    |
| Приватні нотатки оператора                                                                                            |
| Внутрішні коментарі в клієнтському діалозі, які не бачить клієнт.                                                    |
| -                                                                                                                    |
| Готові відповіді                                                                                                      |
| Шаблони відповідей для операторів підтримки, продажів і сервісних команд.                                            |
| -                                                                                                                    |
| CRM-форми в чаті                                                                                                      |
| Відправка форм клієнту прямо в діалог із автоматичним збереженням даних у CRM.                                        |
| -                                                                                                                    |
| Мультиакаунти                                                                                                        |
| Робота з кількома хмарами K2 ERP в одному додатку.                                                                    |
| -                                                                                                                    |
| Desktop-додаток                                                                                                      |
| Окремий клієнт для Windows, Linux і macOS із фоновими сповіщеннями та дзвінками.                                      |
| -                                                                                                                    |
| Телефонія в чаті                                                                                                      |
| Відображення дзвінків, запис, транскрибація та прив’язка до CRM, Helpdesk або задач.                                  |
| -                                                                                                                    |
| Інтеграції                                                                                                            |
| Передача повідомлень у Telegram, Slack, Email та інші канали.                                                         |
| }                                                                                                                    |


== 8. Робота з хмарою K2 ERP ==
* тип об’єкта;
* назву або номер;
* короткий опис;
* статус;
* посилання на відкриття об’єкта.


Модуль K2 Chat повинен бути частиною хмарної архітектури K2 ERP.
Наприклад:


Потрібно передбачити:
* документ;
* контрагент;
* контакт;
* лід;
* задача;
* звернення;
* баг-репорт.


* роботу в публічній хмарі K2 ERP;
=== 4.6. Мінімальні права доступу першої версії ===
* роботу в приватній хмарі клієнта;
 
* роботу в окремій хмарі замовника;
У першій версії потрібно реалізувати базові права:
* роботу в гібридній інфраструктурі;
 
* окреме зберігання даних кожної хмари;
* право бачити чат;
* ізоляцію переписки між хмарами;
* право писати в чат;
* налаштування міжхмарної взаємодії;
* право створювати особистий чат;
* централізоване адміністрування в межах конкретної хмари;
* право створювати груповий чат;
* можливість обмеження доступу до чату згідно ролей K2 ERP;
* право додавати учасників;
* можливість відключення зовнішніх інтеграцій у приватній хмарі;
* право видаляти учасників;
* можливість використання підвищеного режиму безпеки.
* право прикріплювати файли;
* право переглядати файли;
* право переглядати історію;
* право адмініструвати чат;
* право бачити посилання на ERP-об’єкт;
* право відкривати ERP-об’єкт згідно прав K2 ERP.


<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
'''Ключова вимога:''' дані переписки не повинні зберігатися на сторонніх серверах без явного налаштування інтеграції. Основним місцем зберігання є сервер K2 ERP тієї хмари, де працює модуль.
'''Критична вимога:''' якщо користувач отримав у чаті посилання на документ, контрагента, ліда або інший ERP-об’єкт, це не означає, що він автоматично має право його відкрити. Права доступу повинні перевірятися окремо.
</div>
</div>


== 9. Міжхмарна відправка повідомлень ==
=== 4.7. Мінімальний API першої версії ===
 
На першому етапі API повинен забезпечити базову роботу чату.
 
Потрібно реалізувати API для таких дій:


Потрібно передбачити можливість обміну повідомленнями між різними хмарами K2 ERP.
* отримати список чатів користувача;
* отримати список повідомлень чату;
* відправити повідомлення;
* створити особистий чат;
* створити груповий чат;
* додати учасника в груповий чат;
* видалити учасника з групового чату;
* прикріпити файл до повідомлення;
* отримати файл;
* позначити повідомлення як прочитане;
* отримати кількість непрочитаних повідомлень;
* отримати список користувачів;
* передати ERP-об’єкт у чат;
* отримати коротку ERP-картку;
* перевірити права доступу.


Наприклад:
API першої версії повинен бути достатньо простим, але стабільним, бо на ньому будуть будуватися:


* хмара розробника K2 ERP;
* веб-інтерфейс;
* хмара клієнта;
* мобільний додаток;
* хмара партнера;
* desktop-додаток;
* хмара інтегратора;
* зовнішні інтеграції;
* хмара бухгалтерської компанії;
* Helpdesk;
* хмара постачальника;
* міжхмарний обмін.
* хмара навчального закладу.


=== 9.1. Принцип роботи міжхмарного обміну ===
=== 4.8. Повідомлення в реальному часі ===


Міжхмарний обмін повинен працювати через захищений API.
У першій версії потрібно забезпечити доставку повідомлень у реальному часі.


Потрібно передбачити:
Потрібно передбачити:


* реєстрацію довірених хмар;
* миттєве отримання нового повідомлення;
* обмін ключами;
* оновлення лічильника непрочитаних повідомлень;
* перевірку автентичності хмари;
* статус доставки;
* налаштування дозволених напрямків комунікації;
* статус прочитання;
* журнал міжхмарних повідомлень;
* перепідключення при обриві з’єднання;
* обмеження прав на міжхмарне листування;
* повторну синхронізацію після відновлення з’єднання.
* можливість блокування хмари;
 
* можливість відкликання доступу;
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;">
* логування службових подій;
'''Важливо:''' чат без реального часу не буде сприйматися як повноцінний робочий інструмент. Тому WebSocket або інший механізм live-оновлень потрібно закладати з першої версії.
* контроль доставки повідомлень;
</div>
* правила маршрутизації повідомлень;
* шифрування міжхмарного трафіку.


=== 9.2. Сценарії міжхмарного обміну ===
=== 4.9. Файли в першій версії ===


Міжхмарний обмін потрібен для таких сценаріїв:
У першій версії потрібно передбачити базову роботу з файлами:


* клієнт пише в підтримку K2 ERP зі своєї хмари;
* прикріплення файлу до повідомлення;
* партнерська компанія спілкується з розробником;
* збереження файлу в хмарі K2 ERP;
* бухгалтерська компанія спілкується з клієнтом;
* відображення назви файлу;
* інтегратор супроводжує впровадження;
* відображення розміру файлу;
* користувач іншої хмари надсилає баг-репорт;
* завантаження файлу користувачем;
* компанії обмінюються документами або службовими повідомленнями;
* перевірку прав доступу до файлу;
* навчальна хмара передає питання в технічну підтримку;
* обмеження максимального розміру файлу;
* учасники різних хмар проводять спільну відеоконференцію;
* журнал завантаження файлу.
* різні хмари обмінюються статусами задач або звернень.


<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:12px; margin:12px 0;">
У першій версії не обов’язково робити складний переглядач усіх типів файлів. Головне — стабільно прикріпити, зберегти, відкрити або завантажити файл.
'''Особлива вимога:''' міжхмарна комунікація не повинна порушувати ізоляцію даних. Передаватися мають тільки ті повідомлення, файли та об’єкти, які явно дозволені правилами доступу.
</div>


== 10. Віджет звернення з сайту ==
=== 4.10. Що не потрібно робити в першій версії ===


K2 Chat повинен підтримувати режим віджета для сайту.
Щоб не розмити розробку, на першому етапі не потрібно одразу реалізовувати всі складні функції.


Віджет повинен дозволяти відвідувачу сайту:
До наступних етапів можна винести:


* написати повідомлення в технічну підтримку;
* відеоконференції;
* звернутися до менеджера;
* стрімінг на тисячі користувачів;
* залишити контактні дані;
* телефонію;
* прикріпити файл або скриншот;
* AI-помічника;
* обрати тему звернення;
* складну транскрибацію;
* отримати номер звернення;
* зовнішні месенджери;
* отримати відповідь у віджеті;
* міжхмарний обмін;
* отримати відповідь на email або в месенджер;
* складний Helpdesk;
* продовжити діалог після закриття сторінки;
* SLA;
* переглянути статус звернення;
* повноцінний контакт-центр;
* створити заявку на консультацію;
* автоматичні сценарії;
* створити заявку на демонстрацію;
* складні звіти;
* створити заявку на навчання;
* desktop-додаток;
* створити заявку на впровадження K2 ERP.
* мобільний додаток;
* опитування;
* треди;
* реакції;
* ботів;
* розширену аналітику.
 
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Не означає відмову:''' ці функції потрібно передбачити архітектурно, але не обов’язково реалізовувати в першому релізі. Перший реліз має довести, що ядро K2 Chat стабільно працює всередині K2 ERP.
</div>
 
=== 4.11. Порядок розробки першої версії ===


=== 10.1. Типи звернень із сайту ===
Розробку першої версії доцільно виконувати в такій послідовності:


Потрібно передбачити такі типи звернень:
# Створити структуру бази даних для чатів, учасників, повідомлень і файлів.


* технічна підтримка;
# Реалізувати авторизацію через користувачів K2 ERP.
* консультація;
* продаж;
* помилка на сайті;
* помилка в ERP;
* запит на впровадження;
* запит на навчання;
* бухгалтерське питання;
* питання по документах;
* питання по оплаті;
* запит на інтеграцію;
* запит на міграцію з 1С/BAS;
* інше.


=== 10.2. Ідентифікація відвідувача ===
# Реалізувати список користувачів.


Для відвідувача сайту потрібно передбачити кілька режимів ідентифікації:
# Реалізувати створення особистого чату.


* анонімний користувач;
# Реалізувати створення групового чату.
* користувач із email;
* користувач із телефоном;
* авторизований клієнт;
* користувач, пов’язаний із контрагентом у CRM;
* користувач, пов’язаний із лідами або контактами K2 ERP;
* користувач, який повернувся до попереднього звернення;
* користувач із зовнішнього месенджера.


== 11. Helpdesk-функції ==
# Реалізувати відправку текстового повідомлення.


K2 Chat повинен включати функції Helpdesk.
# Реалізувати отримання історії повідомлень.


Кожне звернення може бути перетворене на:
# Реалізувати доставку повідомлень у реальному часі.


* заявку;
# Реалізувати статуси прочитання.
* задачу;
* баг-репорт;
* інцидент;
* консультаційний запит;
* запит на доопрацювання;
* запит на інтеграцію;
* запит на навчання;
* CRM-лід;
* сервісний запит.


<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
# Реалізувати лічильник непрочитаних повідомлень.
'''Важливо:''' Helpdesk у K2 Chat повинен бути пов’язаний із системою задач, баг-трекінгом, CRM та ERP-об’єктами.
</div>


=== 11.1. Життєвий цикл звернення ===
# Реалізувати прикріплення файлів.


Стандартний життєвий цикл звернення:
# Реалізувати базові права доступу.


# Створення звернення.
# Реалізувати журнал дій.


# Автоматичне присвоєння номера.
# Реалізувати базовий пошук.


# Визначення типу звернення.
# Реалізувати передачу ERP-об’єкта в чат.


# Призначення відповідального.
# Реалізувати базовий API.


# Встановлення пріоритету.
# Реалізувати мінімальний адміністративний інтерфейс.


# Передача в роботу.
# Провести навантажувальне тестування.


# Уточнення інформації.
# Провести тестування прав доступу.


# Перетворення на задачу або баг-репорт.
# Підготувати перший реліз для використання всередині K2 ERP.


# Виконання.
=== 4.12. Критерії готовності першої версії ===


# Тестування, якщо потрібно.
Перша версія K2 Chat вважається готовою, якщо:


# Надання відповіді користувачу.
# Користувач K2 ERP може відкрити K2 Chat.
 
# Користувач бачить список доступних чатів.
 
# Користувач може створити особистий чат.


# Закриття звернення.
# Користувач може створити груповий чат.


# Оцінка якості відповіді.
# Користувач може написати повідомлення.


=== 11.2. Статуси звернень ===
# Інший користувач отримує повідомлення без перезавантаження сторінки.


{| class="wikitable" style="width:100%; border-collapse:collapse;"
# Повідомлення зберігається в історії.
! Статус


| ! Опис                                        |
# Користувач бачить непрочитані повідомлення.
| ---------------------------------------------- |
| Нове                                          |
| Звернення створено, але ще не взято в роботу.  |
| -                                              |
| Прийнято                                      |
| Звернення переглянуто оператором.              |
| -                                              |
| У роботі                                      |
| Відповідальний виконує задачу.                |
| -                                              |
| Очікує уточнення                              |
| Потрібна додаткова інформація від користувача. |
| -                                              |
| Передано розробнику                            |
| Звернення передано в розробку.                |
| -                                              |
| Створено баг-репорт                            |
| На основі звернення створено баг.              |
| -                                              |
| Створено задачу                                |
| На основі звернення створено задачу.          |
| -                                              |
| Виконано                                      |
| Роботу виконано.                              |
| -                                              |
| На тестуванні                                  |
| Результат перевіряється.                      |
| -                                              |
| Очікує підтвердження                          |
| Користувач повинен підтвердити результат.      |
| -                                              |
| Закрито                                        |
| Звернення завершено.                          |
| -                                              |
| Відхилено                                      |
| Звернення відхилено із зазначенням причини.   |
| }                                              |


=== 11.3. Пріоритети звернень ===
# Користувач може прикріпити файл.


Потрібно передбачити пріоритети:
# Файл зберігається на сервері хмари K2 ERP.


* низький;
# Користувач може відкрити або завантажити файл.
* звичайний;
* високий;
* критичний;
* аварійний.


<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
# Права доступу до чату працюють.
'''Критичні звернення''' повинні мати окремі правила сповіщення, ескалації та контролю строків виконання.
</div>


=== 11.4. SLA та строки виконання ===
# Права доступу до ERP-об’єкта перевіряються.


Потрібно передбачити налаштування SLA:
# Адміністратор може керувати базовими налаштуваннями.


* час першої відповіді;
# Є базовий журнал дій.
* час взяття в роботу;
* час виконання;
* час реакції для критичних звернень;
* дедлайни;
* автоматичні нагадування;
* ескалації керівнику;
* контроль прострочених звернень;
* звіти по виконанню SLA.


== 12. Перетворення звернення на баг-репорт ==
# Є базовий API.


K2 Chat повинен дозволяти створювати баг-репорт на основі повідомлення або звернення.
# Дані не зберігаються на сторонніх серверах.


Баг-репорт повинен містити:
# Чат працює стабільно при одночасній роботі багатьох користувачів.


* номер звернення;
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:14px; margin:14px 0;">
* автора звернення;
'''Головний критерій першого релізу:''' K2 Chat повинен стати щоденним робочим інструментом для команди всередині K2 ERP. Якщо користувачі можуть стабільно писати, отримувати повідомлення, прикріплювати файли, бачити історію і працювати з ERP-об’єктами — перше ядро модуля виконано правильно.
* дату створення;
</div>
* текст повідомлення;
 
* прикріплені файли;
=== 4.13. Чому саме такий мінімум є правильним ===
* скриншоти;
 
* голосові повідомлення;
Перший мінімум повинен фокусуватися на базовій комунікації, тому що всі інші функції залежать від стабільного ядра повідомлень.
* транскрибації;
 
* записи дзвінків;
Без надійного ядра неможливо якісно реалізувати:
* записи відеоконференцій;
 
* посилання на чат;
* Helpdesk;
* посилання на ERP-об’єкт;
* баг-репорти;
* модуль K2 ERP;
* комунікацію з клієнтами;
* опис помилки;
* зовнішні інтеграції;
* очікувану поведінку;
* відеоконференції;
* фактичну поведінку;
* запис зустрічей;
* пріоритет;
* AI-помічника;
* відповідального розробника;
* міжхмарну комунікацію;
* статус обробки;
* контакт-центр;
* історію змін;
* телефонію;
* відповідь користувачу після виправлення.
* аналітику.
 
 
=== 12.1. Зворотна відповідь користувачу ===
Тому перший етап повинен бути не найбільшим за кількістю функцій, а найміцнішим технічно.
 
<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:14px; margin:14px 0;">
'''Правильний підхід:''' спочатку — стабільне ядро повідомлень і зберігання даних у K2 ERP. Потім — Helpdesk. Потім — зовнішні канали. Потім — голос, відео, AI, стрімінг, телефонія та складна автоматизація.
</div>
 
== 5. Режими роботи ==
 
<div style="border:1px solid #cfd8dc; margin:12px 0;">
<div style="background:#eceff1; padding:10px; font-weight:bold;">Режими роботи K2 Chat</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Веб-додаток'''<br />
Робота користувачів через браузер у хмарі K2 ERP.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''API-додаток'''<br />
Можливість створення зовнішніх клієнтів, мобільних додатків, десктопних додатків та інтеграцій через API.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Віджет для сайту'''<br />
Звернення відвідувача сайту до технічної підтримки або менеджера.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Helpdesk'''<br />
Прийом, класифікація, обробка та закриття звернень.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Міжхмарний чат'''<br />
Обмін повідомленнями між різними інсталяціями або хмарами K2 ERP.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''ERP-комунікація'''<br />
Передача в чат інформації про документи, контрагентів, ліди, контакти, задачі, рахунки, замовлення та інші об’єкти.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Інтеграційний шлюз'''<br />
Обмін повідомленнями із зовнішніми месенджерами, email, телефонією, сайтами та іншими каналами за наявності відповідних API.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Голосові комунікації'''<br />
Голосові повідомлення, дзвінки, записи та транскрибація.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Відеоконференції'''<br />
Проведення відеозустрічей, запис зустрічей, транскрибація та прив’язка до ERP-об’єктів.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Стрімінг'''<br />
Проведення великих онлайн-подій, вебінарів і трансляцій для сотень або тисяч користувачів.
</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">
'''Контакт-центр'''<br />
Єдиний центр обробки повідомлень із сайту, зовнішніх месенджерів, соціальних мереж, email, телефонії та CRM-форм.
</div>
</div>
 
== 6. Основні користувачі модуля ==
 
У системі повинні бути передбачені такі типи користувачів:
 
* адміністратор хмари K2 ERP;
* адміністратор K2 Chat;
* адміністратор безпеки;
* співробітник компанії;
* керівник підрозділу;
* оператор технічної підтримки;
* менеджер із продажу;
* менеджер проєкту;
* розробник;
* тестувальник;
* бухгалтер-консультант;
* клієнт;
* відвідувач сайту;
* зовнішній користувач іншої хмари K2 ERP;
* партнер;
* інтегратор;
* викладач;
* студент або слухач курсу;
* бот або системний користувач;
* інтеграційний користувач API.
 
== 7. Основні функціональні можливості чату ==
 
=== 7.1. Особисті повідомлення ===
 
Система повинна підтримувати особисте листування між користувачами.
 
Необхідно передбачити:
 
* відправку текстових повідомлень;
* редагування повідомлень;
* видалення повідомлень або позначення їх як видалених;
* відповідь на конкретне повідомлення;
* пересилання повідомлень;
* цитування повідомлень;
* реакції на повідомлення;
* закріплення важливих повідомлень;
* додавання повідомлень в обране;
* позначення повідомлень як прочитаних або непрочитаних;
* пошук по переписці;
* перегляд історії повідомлень;
* обмеження доступу до історії відповідно до прав користувача;
* передачу ERP-об’єктів у повідомленні;
* створення задачі з повідомлення;
* створення баг-репорту з повідомлення;
* створення Helpdesk-звернення з повідомлення.
 
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
'''Важливо:''' фізичне видалення повідомлень повинно бути обмежене. Для корпоративного середовища доцільно використовувати позначення повідомлення як видаленого із збереженням службового аудиту.
</div>
 
=== 7.2. Групові чати ===
 
Система повинна підтримувати групові чати.
 
Функції групових чатів:
 
* створення групи;
* додавання учасників;
* видалення учасників;
* призначення адміністраторів групи;
* встановлення назви групи;
* встановлення опису групи;
* встановлення аватару групи;
* закріплення повідомлень;
* додавання повідомлень в обране;
* опитування;
* нотатки;
* файли;
* посилання;
* треди;
* теми;
* налаштування прав учасників;
* перегляд списку учасників;
* запрошення користувачів за посиланням;
* обмеження доступу до групи;
* архівація групи;
* пошук у межах групи;
* історія змін групи.
 
=== 7.3. Корпоративні канали ===
 
Потрібно передбачити корпоративні канали для публікації важливих повідомлень, новин, оголошень та службової інформації.
 
Канали можуть використовуватись для:
 
* новин компанії;
* повідомлень від керівництва;
* оновлень K2 ERP;
* оголошень;
* технічних повідомлень;
* повідомлень для клієнтів;
* навчальних матеріалів;
* інформування про зміни в бізнес-процесах;
* внутрішніх регламентів;
* повідомлень про релізи;
* навчальних вебінарів;
* стрімінгових подій.
 
Канал повинен підтримувати:
 
* публікацію повідомлень адміністраторами;
* підписку користувачів;
* перегляд історії;
* коментарі до публікацій, якщо це дозволено;
* реакції;
* опитування;
* закріплення важливих повідомлень;
* права на публікацію;
* права на перегляд;
* вкладення файлів;
* прикріплення ERP-карток;
* запуск відеоконференції або стріму з каналу.
 
=== 7.4. Теми та обговорення ===
 
У великих групах і каналах потрібно передбачити теми обговорень.
 
Теми повинні дозволяти:
 
* структурувати переписку;
* відокремлювати технічні питання від організаційних;
* створювати обговорення по конкретному документу, задачі, клієнту, ліду або багу;
* швидко знаходити потрібну інформацію;
* зменшувати хаос у великих чатах;
* формувати окремі гілки по спринтах, релізах, клієнтах, модулях або проблемах.
 
=== 7.5. Тредові обговорення ===
 
Потрібно передбачити треди.
 
Тред повинен дозволяти:
 
* відповідати на конкретне повідомлення в окремій гілці;
* не засмічувати основний чат;
* вести технічну дискусію по одному питанню;
* прив’язувати тред до задачі, документа, ліда, клієнта або баг-репорту;
* створювати підзадачу з треду;
* створювати короткий підсумок треду;
* переносити важливі рішення в задачу або VDoc.
 
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
'''Рекомендація:''' для великих корпоративних чатів треди є критично важливими, оскільки дозволяють не перетворювати загальний канал у хаотичну стрічку повідомлень.
</div>
 
== 8. Розширені можливості корпоративного чату ==
 
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''K2 Chat повинен включати ключові можливості сучасного корпоративного месенджера, контакт-центру, Helpdesk-системи та комунікаційного шару ERP.'''
</div>
 
<div style="border:1px solid #cfd8dc; margin:12px 0;">
<div style="background:#eceff1; padding:10px; font-weight:bold;">Перелік основних можливостей</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Особисті чати'''<br />Переписка між двома користувачами.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Групові чати'''<br />Спільне обговорення між багатьма учасниками.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Корпоративні канали'''<br />Одностороннє або обмежене інформування аудиторії.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Треди'''<br />Окремі гілки обговорення під повідомленнями.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Теми'''<br />Структурування великих груп і каналів.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Реакції'''<br />Швидкі реакції на повідомлення.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Файли'''<br />Надсилання файлів, документів, зображень, архівів.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Голосові повідомлення'''<br />Запис, відправка, зберігання, прослуховування та транскрибація голосових повідомлень.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Голосові дзвінки'''<br />Особисті та групові голосові дзвінки із можливістю запису та транскрибації.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Відеоконференції'''<br />Створення відеозустрічей із демонстрацією екрана, записом і транскрибацією.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Стрімінг'''<br />Проведення онлайн-трансляцій, вебінарів і великих подій для сотень або тисяч глядачів.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Пошук'''<br />Пошук по чатах, файлах, користувачах, задачах та ERP-об’єктах.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Боти'''<br />Системні та користувацькі боти.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Webhook'''<br />Вхідні та вихідні webhooks для інтеграцій.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''API'''<br />Повноцінний API для створення клієнтів та інтеграцій.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Статуси користувачів'''<br />Онлайн, офлайн, зайнятий, не турбувати, у відпустці.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Нагадування'''<br />Нагадування по повідомленнях, задачах та зверненнях.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Закріплені повідомлення'''<br />Важлива інформація у верхній частині чату.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Згадки'''<br />Згадки користувачів через @.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Ролі'''<br />Адміністратори, модератори, учасники, гості.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Гостьовий доступ'''<br />Обмежений доступ для клієнтів або зовнішніх користувачів.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Опитування'''<br />Створення публічних або анонімних опитувань у чатах, каналах, проєктах і навчальних групах.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Обране'''<br />Збереження важливих повідомлень користувачем для швидкого доступу.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Нотатки'''<br />Публічні або приватні нотатки в чаті, зокрема для операторів підтримки.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Бокова панель чату'''<br />Швидкий доступ до учасників, файлів, медіа, посилань, обраних повідомлень, ERP-карток і записів зустрічей.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Автоочищення повідомлень'''<br />Налаштування строку зберігання повідомлень, архівації або логічного видалення.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Проєктні чати'''<br />Автоматичні чати для робочих груп, проєктів, задач і спринтів.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Чат задачі'''<br />Повноцінний робочий простір задачі з файлами, дзвінками, рішеннями та підсумками.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''AI-помічник'''<br />Підсумки переписки, створення задач, аналіз дзвінків, транскрибація, відповіді клієнтам і автоматизація рутинних дій.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Відкриті лінії'''<br />Єдиний центр обробки повідомлень із сайту, зовнішніх месенджерів, соцмереж, email і CRM-форм.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Приватні нотатки оператора'''<br />Внутрішні коментарі в клієнтському діалозі, які не бачить клієнт.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Готові відповіді'''<br />Шаблони відповідей для операторів підтримки, продажів і сервісних команд.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''CRM-форми в чаті'''<br />Відправка форм клієнту прямо в діалог із автоматичним збереженням даних у CRM.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Мультиакаунти'''<br />Робота з кількома хмарами K2 ERP в одному додатку.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Desktop-додаток'''<br />Окремий клієнт для Windows, Linux і macOS із фоновими сповіщеннями та дзвінками.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Телефонія в чаті'''<br />Відображення дзвінків, запис, транскрибація та прив’язка до CRM, Helpdesk або задач.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Зовнішні інтеграції'''<br />Передача повідомлень у зовнішні месенджери, email, телефонію, сайти, CRM та інші канали комунікації.</div>
 
</div>
 
== 9. Робота з хмарою K2 ERP ==
 
Модуль K2 Chat повинен бути частиною хмарної архітектури K2 ERP.
 
Потрібно передбачити:
 
* роботу в публічній хмарі K2 ERP;
* роботу в приватній хмарі клієнта;
* роботу в окремій хмарі замовника;
* роботу в гібридній інфраструктурі;
* окреме зберігання даних кожної хмари;
* ізоляцію переписки між хмарами;
* налаштування міжхмарної взаємодії;
* централізоване адміністрування в межах конкретної хмари;
* можливість обмеження доступу до чату згідно ролей K2 ERP;
* можливість відключення зовнішніх інтеграцій у приватній хмарі;
* можливість використання підвищеного режиму безпеки.
 
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Ключова вимога:''' дані переписки не повинні зберігатися на сторонніх серверах без явного налаштування інтеграції. Основним місцем зберігання є сервер K2 ERP тієї хмари, де працює модуль.
</div>
 
== 10. Міжхмарна відправка повідомлень ==
 
Потрібно передбачити можливість обміну повідомленнями між різними хмарами K2 ERP.
 
Наприклад:
 
* хмара розробника K2 ERP;
* хмара клієнта;
* хмара партнера;
* хмара інтегратора;
* хмара бухгалтерської компанії;
* хмара постачальника;
* хмара навчального закладу.
 
=== 10.1. Принцип роботи міжхмарного обміну ===
 
Міжхмарний обмін повинен працювати через захищений API.
 
Потрібно передбачити:
 
* реєстрацію довірених хмар;
* обмін ключами;
* перевірку автентичності хмари;
* налаштування дозволених напрямків комунікації;
* журнал міжхмарних повідомлень;
* обмеження прав на міжхмарне листування;
* можливість блокування хмари;
* можливість відкликання доступу;
* логування службових подій;
* контроль доставки повідомлень;
* правила маршрутизації повідомлень;
* шифрування міжхмарного трафіку.
 
=== 10.2. Сценарії міжхмарного обміну ===
 
Міжхмарний обмін потрібен для таких сценаріїв:
 
* клієнт пише в підтримку K2 ERP зі своєї хмари;
* партнерська компанія спілкується з розробником;
* бухгалтерська компанія спілкується з клієнтом;
* інтегратор супроводжує впровадження;
* користувач іншої хмари надсилає баг-репорт;
* компанії обмінюються документами або службовими повідомленнями;
* навчальна хмара передає питання в технічну підтримку;
* учасники різних хмар проводять спільну відеоконференцію;
* різні хмари обмінюються статусами задач або звернень.
 
<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:12px; margin:12px 0;">
'''Особлива вимога:''' міжхмарна комунікація не повинна порушувати ізоляцію даних. Передаватися мають тільки ті повідомлення, файли та об’єкти, які явно дозволені правилами доступу.
</div>
 
== 11. Віджет звернення з сайту ==
 
K2 Chat повинен підтримувати режим віджета для сайту.
 
Віджет повинен дозволяти відвідувачу сайту:
 
* написати повідомлення в технічну підтримку;
* звернутися до менеджера;
* залишити контактні дані;
* прикріпити файл або скриншот;
* обрати тему звернення;
* отримати номер звернення;
* отримати відповідь у віджеті;
* отримати відповідь на email або в зовнішній канал комунікації;
* продовжити діалог після закриття сторінки;
* переглянути статус звернення;
* створити заявку на консультацію;
* створити заявку на демонстрацію;
* створити заявку на навчання;
* створити заявку на впровадження K2 ERP.
 
=== 11.1. Типи звернень із сайту ===
 
Потрібно передбачити такі типи звернень:
 
* технічна підтримка;
* консультація;
* продаж;
* помилка на сайті;
* помилка в ERP;
* запит на впровадження;
* запит на навчання;
* бухгалтерське питання;
* питання по документах;
* питання по оплаті;
* запит на інтеграцію;
* запит на міграцію з 1С/BAS;
* інше.
 
=== 11.2. Ідентифікація відвідувача ===
 
Для відвідувача сайту потрібно передбачити кілька режимів ідентифікації:
 
* анонімний користувач;
* користувач із email;
* користувач із телефоном;
* авторизований клієнт;
* користувач, пов’язаний із контрагентом у CRM;
* користувач, пов’язаний із лідами або контактами K2 ERP;
* користувач, який повернувся до попереднього звернення;
* користувач із зовнішнього каналу комунікації.
 
== 12. Helpdesk-функції ==
 
K2 Chat повинен включати функції Helpdesk.
 
Кожне звернення може бути перетворене на:
 
* заявку;
* задачу;
* баг-репорт;
* інцидент;
* консультаційний запит;
* запит на доопрацювання;
* запит на інтеграцію;
* запит на навчання;
* CRM-лід;
* сервісний запит.
 
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
'''Важливо:''' Helpdesk у K2 Chat повинен бути пов’язаний із системою задач, баг-трекінгом, CRM та ERP-об’єктами.
</div>
 
=== 12.1. Життєвий цикл звернення ===
 
Стандартний життєвий цикл звернення:
 
# Створення звернення.
 
# Автоматичне присвоєння номера.
 
# Визначення типу звернення.
 
# Призначення відповідального.
 
# Встановлення пріоритету.
 
# Передача в роботу.
 
# Уточнення інформації.
 
# Перетворення на задачу або баг-репорт.
 
# Виконання.
 
# Тестування, якщо потрібно.
 
# Надання відповіді користувачу.
 
# Закриття звернення.
 
# Оцінка якості відповіді.
 
=== 12.2. Статуси звернень ===
 
<div style="border:1px solid #cfd8dc; margin:12px 0;">
<div style="background:#eceff1; padding:10px; font-weight:bold;">Статуси Helpdesk-звернень</div>
 
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Нове'''<br />Звернення створено, але ще не взято в роботу.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Прийнято'''<br />Звернення переглянуто оператором.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''У роботі'''<br />Відповідальний виконує задачу.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Очікує уточнення'''<br />Потрібна додаткова інформація від користувача.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Передано розробнику'''<br />Звернення передано в розробку.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Створено баг-репорт'''<br />На основі звернення створено баг.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Створено задачу'''<br />На основі звернення створено задачу.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Виконано'''<br />Роботу виконано.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''На тестуванні'''<br />Результат перевіряється.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Очікує підтвердження'''<br />Користувач повинен підтвердити результат.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Закрито'''<br />Звернення завершено.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Відхилено'''<br />Звернення відхилено із зазначенням причини.</div>
 
</div>
 
=== 12.3. Пріоритети звернень ===
 
Потрібно передбачити пріоритети:
 
* низький;
* звичайний;
* високий;
* критичний;
* аварійний.
 
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
'''Критичні звернення''' повинні мати окремі правила сповіщення, ескалації та контролю строків виконання.
</div>
 
=== 12.4. SLA та строки виконання ===
 
Потрібно передбачити налаштування SLA:
 
* час першої відповіді;
* час взяття в роботу;
* час виконання;
* час реакції для критичних звернень;
* дедлайни;
* автоматичні нагадування;
* ескалації керівнику;
* контроль прострочених звернень;
* звіти по виконанню SLA.
 
== 13. Перетворення звернення на баг-репорт ==
 
K2 Chat повинен дозволяти створювати баг-репорт на основі повідомлення або звернення.
 
Баг-репорт повинен містити:
 
* номер звернення;
* автора звернення;
* дату створення;
* текст повідомлення;
* прикріплені файли;
* скриншоти;
* голосові повідомлення;
* транскрибації;
* записи дзвінків;
* записи відеоконференцій;
* посилання на чат;
* посилання на ERP-об’єкт;
* модуль K2 ERP;
* опис помилки;
* очікувану поведінку;
* фактичну поведінку;
* пріоритет;
* відповідального розробника;
* статус обробки;
* історію змін;
* відповідь користувачу після виправлення.
 
=== 13.1. Зворотна відповідь користувачу ===


Після опрацювання баг-репорту система повинна дозволяти:
Після опрацювання баг-репорту система повинна дозволяти:
Рядок 704: Рядок 1015:
* закрити звернення після підтвердження.
* закрити звернення після підтвердження.


== 13. Інтеграція з ERP-об’єктами ==
== 14. Інтеграція з ERP-об’єктами ==


K2 Chat повинен мати можливість передавати в чат інформацію з ERP.
K2 Chat повинен мати можливість передавати в чат інформацію з ERP.
Рядок 741: Рядок 1052:
</div>
</div>


=== 13.1. Формат ERP-картки в чаті ===
=== 14.1. Формат ERP-картки в чаті ===


ERP-об’єкт у чаті повинен відображатися як компактна картка.
ERP-об’єкт у чаті повинен відображатися як компактна картка.
Рядок 759: Рядок 1070:
* службові права доступу.
* службові права доступу.


=== 13.2. Права доступу до ERP-об’єктів ===
=== 14.2. Права доступу до ERP-об’єктів ===


Якщо користувач отримав у чаті посилання на ERP-об’єкт, система повинна перевірити його права.
Якщо користувач отримав у чаті посилання на ERP-об’єкт, система повинна перевірити його права.
Рядок 777: Рядок 1088:
</div>
</div>


== 14. Інтеграція з іншими месенджерами ==
== 15. Інтеграція із зовнішніми каналами комунікації ==


K2 Chat повинен мати можливість комунікації з іншими месенджерами та каналами.
K2 Chat повинен мати можливість комунікації із зовнішніми месенджерами, email, телефонією, сайтами, соціальними мережами, зовнішніми Helpdesk-системами, зовнішніми CRM та іншими сервісами.


Потрібно передбачити інтеграції з:
Потрібно передбачити інтеграції з такими типами каналів:


* Telegram;
* зовнішні месенджери;
* Slack;
* email;
* Viber;
* WhatsApp;
* Facebook Messenger;
* Instagram Direct;
* Email;
* SMS;
* SMS;
* телефонією;
* телефонія;
* зовнішніми Helpdesk-системами;
* соціальні мережі;
* зовнішніми CRM;
* форми сайту;
* webhook-сервісами.
* віджет сайту;
* зовнішні Helpdesk-системи;
* зовнішні CRM;
* webhook-сервіси;
* зовнішні системи автоматизації.


=== 14.1. Принцип інтеграції ===
=== 15.1. Принцип інтеграції ===


Інтеграція повинна працювати через:
Інтеграція повинна працювати через:
Рядок 808: Рядок 1118:
* налаштування каналів зв’язку.
* налаштування каналів зв’язку.


=== 14.2. Логіка маршрутизації повідомлень ===
=== 15.2. Логіка маршрутизації повідомлень ===


Система повинна дозволяти налаштовувати правила:
Система повинна дозволяти налаштовувати правила:
Рядок 825: Рядок 1135:


<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;">
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;">
'''Розширення:''' K2 Chat може стати єдиним центром комунікацій компанії, де повідомлення з сайту, месенджерів, email, CRM, телефонії та ERP збираються в одному інтерфейсі.
'''Розширення:''' K2 Chat може стати єдиним центром комунікацій компанії, де повідомлення з сайту, зовнішніх месенджерів, email, CRM, телефонії та ERP збираються в одному інтерфейсі.
</div>
</div>


== 15. API модуля K2 Chat ==
== 16. API модуля K2 Chat ==


K2 Chat повинен мати відкритий API для інтеграції з іншими системами та створення клієнтських додатків.
K2 Chat повинен мати відкритий API для інтеграції з іншими системами та створення клієнтських додатків.
Рядок 860: Рядок 1170:
* отримувати службові події.
* отримувати службові події.


=== 15.1. API для веб-додатку ===
=== 16.1. API для веб-додатку ===


Для веб-додатку потрібно передбачити:
Для веб-додатку потрібно передбачити:
Рядок 873: Рядок 1183:
* логування помилок.
* логування помилок.


=== 15.2. API для зовнішніх додатків ===
=== 16.2. API для зовнішніх додатків ===


Для зовнішніх додатків потрібно передбачити:
Для зовнішніх додатків потрібно передбачити:
Рядок 887: Рядок 1197:
* тестове середовище.
* тестове середовище.


== 16. WebSocket та повідомлення в реальному часі ==
== 17. WebSocket та повідомлення в реальному часі ==


K2 Chat повинен підтримувати доставку повідомлень у реальному часі.
K2 Chat повинен підтримувати доставку повідомлень у реальному часі.
Рядок 904: Рядок 1214:
* синхронізацію після відновлення з’єднання.
* синхронізацію після відновлення з’єднання.


== 17. Масштабованість ==
== 18. Масштабованість ==


K2 Chat повинен бути розрахований на велику кількість користувачів і переписки.
K2 Chat повинен бути розрахований на велику кількість користувачів і переписки.
Рядок 929: Рядок 1239:
</div>
</div>


== 18. Зберігання даних ==
== 19. Зберігання даних ==


Усі дані K2 Chat повинні зберігатися на сервері тієї хмари K2 ERP, де встановлений модуль.
Усі дані K2 Chat повинні зберігатися на сервері тієї хмари K2 ERP, де встановлений модуль.
Рядок 964: Рядок 1274:
* журнали аудиту.
* журнали аудиту.


=== 18.1. Історія змін ===
=== 19.1. Історія змін ===


Потрібно передбачити історію змін для:
Потрібно передбачити історію змін для:
Рядок 981: Рядок 1291:
* нотаток.
* нотаток.


=== 18.2. Видалення повідомлень ===
=== 19.2. Видалення повідомлень ===


Для корпоративної безпеки бажано використовувати логічне видалення.
Для корпоративної безпеки бажано використовувати логічне видалення.
Рядок 994: Рядок 1304:
* можливість перегляду аудиту адміністратором із відповідними правами.
* можливість перегляду аудиту адміністратором із відповідними правами.


== 19. Файли та вкладення ==
== 20. Файли та вкладення ==


K2 Chat повинен підтримувати роботу з файлами.
K2 Chat повинен підтримувати роботу з файлами.
Рядок 1017: Рядок 1327:
</div>
</div>


== 20. Голосові повідомлення, запис голосу та транскрибація ==
== 21. Голосові повідомлення, запис голосу та транскрибація ==


<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
Рядок 1023: Рядок 1333:
</div>
</div>


=== 20.1. Голосові повідомлення ===
=== 21.1. Голосові повідомлення ===


K2 Chat повинен підтримувати можливість запису, передачі, зберігання та прослуховування голосових повідомлень.
K2 Chat повинен підтримувати можливість запису, передачі, зберігання та прослуховування голосових повідомлень.
Рядок 1048: Рядок 1358:
</div>
</div>


=== 20.2. Транскрибація голосових повідомлень ===
=== 21.2. Транскрибація голосових повідомлень ===


Потрібно передбачити автоматичну транскрибацію голосових повідомлень у текст.
Потрібно передбачити автоматичну транскрибацію голосових повідомлень у текст.
Рядок 1073: Рядок 1383:
</div>
</div>


=== 20.3. Запис голосових дзвінків ===
=== 21.3. Запис голосових дзвінків ===


K2 Chat повинен підтримувати можливість голосових дзвінків між користувачами та їх запису, якщо це дозволено налаштуваннями безпеки і правами доступу.
K2 Chat повинен підтримувати можливість голосових дзвінків між користувачами та їх запису, якщо це дозволено налаштуваннями безпеки і правами доступу.
Рядок 1097: Рядок 1407:
</div>
</div>


== 21. Відеоконференції, запис зустрічей і стрімінг ==
== 22. Відеоконференції, запис зустрічей і стрімінг ==


=== 21.1. Відеоконференції ===
=== 22.1. Відеоконференції ===


K2 Chat повинен підтримувати створення відеоконференцій для користувачів K2 ERP.
K2 Chat повинен підтримувати створення відеоконференцій для користувачів K2 ERP.
Рядок 1129: Рядок 1439:
* завершення конференції модератором.
* завершення конференції модератором.


=== 21.2. Запис відеоконференції ===
=== 22.2. Запис відеоконференції ===


Потрібно передбачити запис відеоконференції.
Потрібно передбачити запис відеоконференції.
Рядок 1162: Рядок 1472:
</div>
</div>


=== 21.3. Транскрибація відеоконференцій ===
=== 22.3. Транскрибація відеоконференцій ===


Потрібно передбачити автоматичну транскрибацію відеоконференцій.
Потрібно передбачити автоматичну транскрибацію відеоконференцій.
Рядок 1187: Рядок 1497:
</div>
</div>


=== 21.4. Відеоконференції для великої кількості користувачів ===
=== 22.4. Відеоконференції для великої кількості користувачів ===


K2 Chat повинен підтримувати окремий режим масштабних відеоконференцій і трансляцій для великої кількості учасників.
K2 Chat повинен підтримувати окремий режим масштабних відеоконференцій і трансляцій для великої кількості учасників.
Рядок 1196: Рядок 1506:
* '''стрімінг або вебінар''' — для великої кількості глядачів, зокрема для сотень або тисяч користувачів.
* '''стрімінг або вебінар''' — для великої кількості глядачів, зокрема для сотень або тисяч користувачів.


=== 21.5. Режим стрімінгу ===
=== 22.5. Режим стрімінгу ===


Режим стрімінгу повинен дозволяти проводити онлайн-події з великою кількістю глядачів.
Режим стрімінгу повинен дозволяти проводити онлайн-події з великою кількістю глядачів.
Рядок 1231: Рядок 1541:
</div>
</div>


=== 21.6. Архітектура відео та стрімінгу ===
=== 22.6. Архітектура відео та стрімінгу ===


Для відеоконференцій і стрімінгу потрібно передбачити окремий технічний контур.
Для відеоконференцій і стрімінгу потрібно передбачити окремий технічний контур.
Рядок 1255: Рядок 1565:
</div>
</div>


== 22. Опитування, обране, нотатки та бокова панель чату ==
== 23. Опитування, обране, нотатки та бокова панель чату ==


=== 22.1. Опитування в чатах і каналах ===
=== 23.1. Опитування в чатах і каналах ===


Потрібно передбачити можливість створення опитувань у чатах, групах, каналах, проєктних чатах і Helpdesk-діалогах.
Потрібно передбачити можливість створення опитувань у чатах, групах, каналах, проєктних чатах і Helpdesk-діалогах.
Рядок 1283: Рядок 1593:
</div>
</div>


=== 22.2. Обрані повідомлення ===
=== 23.2. Обрані повідомлення ===


Користувач повинен мати можливість додавати повідомлення в обране.
Користувач повинен мати можливість додавати повідомлення в обране.
Рядок 1298: Рядок 1608:
* фільтр обраного за ERP-об’єктом.
* фільтр обраного за ERP-об’єктом.


=== 22.3. Нотатки в чаті ===
=== 23.3. Нотатки в чаті ===


Потрібно передбачити нотатки в чаті.
Потрібно передбачити нотатки в чаті.
Рядок 1327: Рядок 1637:
</div>
</div>


=== 22.4. Бокова панель чату ===
=== 23.4. Бокова панель чату ===


У кожному чаті потрібно передбачити бокову панель швидкого доступу.
У кожному чаті потрібно передбачити бокову панель швидкого доступу.
Рядок 1351: Рядок 1661:
* усі транскрибації.
* усі транскрибації.


== 23. Автоматичне очищення, архівація та політики зберігання ==
== 24. Автоматичне очищення, архівація та політики зберігання ==


Потрібно передбачити політики зберігання повідомлень.
Потрібно передбачити політики зберігання повідомлень.
Рядок 1375: Рядок 1685:
</div>
</div>


== 24. Проєктні чати, чати робочих груп і чат задачі ==
== 25. Проєктні чати, чати робочих груп і чат задачі ==


<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
Рядок 1381: Рядок 1691:
</div>
</div>


=== 24.1. Чат робочої групи ===
=== 25.1. Чат робочої групи ===


Для кожної робочої групи або підрозділу потрібно передбачити окремий чат.
Для кожної робочої групи або підрозділу потрібно передбачити окремий чат.
Рядок 1396: Рядок 1706:
* журнал доступу до чату.
* журнал доступу до чату.


=== 24.2. Чат проєкту ===
=== 25.2. Чат проєкту ===


Для кожного проєкту K2 ERP потрібно передбачити проєктний чат.
Для кожного проєкту K2 ERP потрібно передбачити проєктний чат.
Рядок 1415: Рядок 1725:
* повідомлення про зміни статусів задач.
* повідомлення про зміни статусів задач.


=== 24.3. Чат задачі ===
=== 25.3. Чат задачі ===


Кожна важлива задача може мати власний чат.
Кожна важлива задача може мати власний чат.
Рядок 1439: Рядок 1749:
</div>
</div>


== 25. Відкриті лінії, контакт-центр і робота з клієнтськими діалогами ==
== 26. Відкриті лінії, контакт-центр і робота з клієнтськими діалогами ==


<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''K2 Chat повинен мати режим відкритих ліній — єдиного центру обробки повідомлень із сайту, месенджерів, соціальних мереж, email, CRM-форм, телефонії та зовнішніх каналів.'''
'''K2 Chat повинен мати режим відкритих ліній — єдиного центру обробки повідомлень із сайту, зовнішніх месенджерів, соціальних мереж, email, CRM-форм, телефонії та зовнішніх каналів.'''
</div>
</div>


=== 25.1. Єдиний список клієнтських діалогів ===
=== 26.1. Єдиний список клієнтських діалогів ===


Оператор повинен бачити всі клієнтські діалоги в одному інтерфейсі.
Оператор повинен бачити всі клієнтські діалоги в одному інтерфейсі.
Рядок 1462: Рядок 1772:
* діалоги з різних каналів комунікації.
* діалоги з різних каналів комунікації.


=== 25.2. Передача діалогу іншому оператору ===
=== 26.2. Передача діалогу іншому оператору ===


Потрібно передбачити можливість передати діалог:
Потрібно передбачити можливість передати діалог:
Рядок 1490: Рядок 1800:
* причину передачі.
* причину передачі.


=== 25.3. Додавання колег у клієнтський діалог ===
=== 26.3. Додавання колег у клієнтський діалог ===


Оператор повинен мати можливість додати колегу до діалогу.
Оператор повинен мати можливість додати колегу до діалогу.
Рядок 1504: Рядок 1814:
* журнал підключення колег.
* журнал підключення колег.


=== 25.4. Приватні нотатки оператора ===
=== 26.4. Приватні нотатки оператора ===


У клієнтському діалозі потрібно передбачити приватні нотатки.
У клієнтському діалозі потрібно передбачити приватні нотатки.
Рядок 1522: Рядок 1832:
</div>
</div>


=== 25.5. Готові відповіді ===
=== 26.5. Готові відповіді ===


Потрібно передбачити готові відповіді для операторів.
Потрібно передбачити готові відповіді для операторів.
Рядок 1541: Рядок 1851:
* типових комерційних питань.
* типових комерційних питань.


=== 25.6. CRM-форми в чаті ===
=== 26.6. CRM-форми в чаті ===


Оператор повинен мати можливість відправити клієнту CRM-форму прямо в чат.
Оператор повинен мати можливість відправити клієнту CRM-форму прямо в чат.
Рядок 1560: Рядок 1870:
* створення контрагента.
* створення контрагента.


=== 25.7. Автоматичне створення CRM-контакту ===
=== 26.7. Автоматичне створення CRM-контакту ===


Якщо користувач звернувся з сайту, месенджера, соціальної мережі або email, система повинна перевірити наявність такого контакту в CRM.
Якщо користувач звернувся з сайту, зовнішнього месенджера, соціальної мережі або email, система повинна перевірити наявність такого контакту в CRM.


Потрібно передбачити:
Потрібно передбачити:
Рядок 1568: Рядок 1878:
* пошук контакту за email;
* пошук контакту за email;
* пошук контакту за телефоном;
* пошук контакту за телефоном;
* пошук контакту за зовнішнім ID месенджера;
* пошук контакту за зовнішнім ID;
* пошук контакту за соціальним профілем;
* пошук контакту за соціальним профілем;
* створення нового контакту;
* створення нового контакту;
Рядок 1577: Рядок 1887:
* захист від дублювання контактів.
* захист від дублювання контактів.


=== 25.8. Статистика клієнтських діалогів ===
=== 26.8. Статистика клієнтських діалогів ===


Потрібно передбачити статистику відкритих ліній.
Потрібно передбачити статистику відкритих ліній.
Рядок 1597: Рядок 1907:
* кількість діалогів, що стали баг-репортами.
* кількість діалогів, що стали баг-репортами.


== 26. Зв’язок із CRM ==
== 27. Зв’язок із CRM ==


K2 Chat повинен бути інтегрований із CRM.
K2 Chat повинен бути інтегрований із CRM.
Рядок 1617: Рядок 1927:
* прив’язку відеоконференцій до угод або лідів.
* прив’язку відеоконференцій до угод або лідів.


== 27. Зв’язок із системою задач ==
== 28. Зв’язок із системою задач ==


З повідомлення або звернення потрібно мати можливість створити задачу.
З повідомлення або звернення потрібно мати можливість створити задачу.
Рядок 1637: Рядок 1947:
* посилання на запис, якщо задача створена за результатами дзвінка або конференції.
* посилання на запис, якщо задача створена за результатами дзвінка або конференції.


== 28. Зв’язок із K2 Mantis або баг-трекінгом ==
== 29. Зв’язок із K2 Mantis або баг-трекінгом ==


K2 Chat повинен мати інтеграцію з баг-трекінгом.
K2 Chat повинен мати інтеграцію з баг-трекінгом.
Рядок 1654: Рядок 1964:
* автоматичне закриття звернення після підтвердження.
* автоматичне закриття звернення після підтвердження.


== 29. Зв’язок із VDoc ==
== 30. Зв’язок із VDoc ==


K2 Chat повинен мати зв’язок із VDoc.
K2 Chat повинен мати зв’язок із VDoc.
Рядок 1675: Рядок 1985:
</div>
</div>


== 30. Зв’язок із навчальним модулем K2 ==
== 31. Зв’язок із навчальним модулем K2 ==


K2 Chat може використовуватись у навчальному модулі.
K2 Chat може використовуватись у навчальному модулі.
Рядок 1697: Рядок 2007:
* автоматичне створення навчальних матеріалів із записів.
* автоматичне створення навчальних матеріалів із записів.


== 31. AI-помічник у K2 Chat ==
== 32. AI-помічник у K2 Chat ==


<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;">
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;">
Рядок 1703: Рядок 2013:
</div>
</div>


=== 31.1. AI-можливості в чаті ===
=== 32.1. AI-можливості в чаті ===


AI-помічник повинен допомагати:
AI-помічник повинен допомагати:
Рядок 1724: Рядок 2034:
* визначати терміновість звернення.
* визначати терміновість звернення.


=== 31.2. Голосове розпізнавання для задач ===
=== 32.2. Голосове розпізнавання для задач ===


Потрібно передбачити можливість створення задачі голосом.
Потрібно передбачити можливість створення задачі голосом.
Рядок 1742: Рядок 2052:
Система повинна перетворити голос у структуровану задачу.
Система повинна перетворити голос у структуровану задачу.


=== 31.3. AI-аналіз дзвінків і відеоконференцій ===
=== 32.3. AI-аналіз дзвінків і відеоконференцій ===


Після дзвінка або відеоконференції AI-помічник повинен мати можливість сформувати:
Після дзвінка або відеоконференції AI-помічник повинен мати можливість сформувати:
Рядок 1763: Рядок 2073:
</div>
</div>


== 32. Боти та автоматизація ==
== 33. Боти та автоматизація ==


Потрібно передбачити можливість створення ботів.
Потрібно передбачити можливість створення ботів.
Рядок 1785: Рядок 2095:
* створення протоколів зустрічей.
* створення протоколів зустрічей.


=== 32.1. Системні боти ===
=== 33.1. Системні боти ===


Потрібно передбачити системних ботів:
Потрібно передбачити системних ботів:
Рядок 1802: Рядок 2112:
* AI-бот.
* AI-бот.


== 33. Desktop-додаток, мультиакаунти та телефонія ==
== 34. Desktop-додаток, мультиакаунти та телефонія ==


<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
Рядок 1808: Рядок 2118:
</div>
</div>


=== 33.1. Desktop-додаток ===
=== 34.1. Desktop-додаток ===


Потрібно передбачити можливість створення desktop-додатку для:
Потрібно передбачити можливість створення desktop-додатку для:
Рядок 1832: Рядок 2142:
* системні сповіщення операційної системи.
* системні сповіщення операційної системи.


=== 33.2. Мультиакаунти та кілька хмар ===
=== 34.2. Мультиакаунти та кілька хмар ===


Користувач повинен мати можливість працювати з кількома хмарами K2 ERP.
Користувач повинен мати можливість працювати з кількома хмарами K2 ERP.
Рядок 1848: Рядок 2158:
* контроль міжхмарної безпеки.
* контроль міжхмарної безпеки.


=== 33.3. Телефонія в чаті ===
=== 34.3. Телефонія в чаті ===


Потрібно передбачити інтеграцію телефонії з K2 Chat.
Потрібно передбачити інтеграцію телефонії з K2 Chat.
Рядок 1870: Рядок 2180:
</div>
</div>


== 34. Сповіщення ==
== 35. Сповіщення ==


K2 Chat повинен мати систему сповіщень.
K2 Chat повинен мати систему сповіщень.
Рядок 1880: Рядок 2190:
* push-сповіщення для веб-додатку;
* push-сповіщення для веб-додатку;
* email-сповіщення;
* email-сповіщення;
* сповіщення в зовнішні месенджери;
* сповіщення в зовнішні канали комунікації;
* сповіщення про згадки;
* сповіщення про згадки;
* сповіщення про нові звернення;
* сповіщення про нові звернення;
Рядок 1892: Рядок 2202:
* сповіщення про готовність запису.
* сповіщення про готовність запису.


=== 34.1. Налаштування сповіщень користувачем ===
=== 35.1. Налаштування сповіщень користувачем ===


Користувач повинен мати можливість налаштувати:
Користувач повинен мати можливість налаштувати:
Рядок 1904: Рядок 2214:
* налаштувати режим “Не турбувати”.
* налаштувати режим “Не турбувати”.


== 35. Пошук ==
== 36. Пошук ==


Потрібно передбачити потужний пошук.
Потрібно передбачити потужний пошук.
Рядок 1948: Рядок 2258:
* тип медіа.
* тип медіа.


== 36. Адміністративний інтерфейс ==
== 37. Адміністративний інтерфейс ==


Адміністратор повинен мати можливість:
Адміністратор повинен мати можливість:
Рядок 1973: Рядок 2283:
* налаштовувати правила зберігання повідомлень.
* налаштовувати правила зберігання повідомлень.


== 37. Безпека ==
== 38. Безпека ==


K2 Chat повинен відповідати підвищеним вимогам безпеки корпоративних клієнтів.
K2 Chat повинен відповідати підвищеним вимогам безпеки корпоративних клієнтів.
Рядок 2004: Рядок 2314:
* захист API від перевантаження.
* захист API від перевантаження.


=== 37.1. Шифрування трафіку ===
=== 38.1. Шифрування трафіку ===


Потрібно передбачити шифрування трафіку між клієнтом і сервером.
Потрібно передбачити шифрування трафіку між клієнтом і сервером.
Рядок 2019: Рядок 2329:
* захищена міжхмарна комунікація.
* захищена міжхмарна комунікація.


=== 37.2. Підвищений рівень безпеки ===
=== 38.2. Підвищений рівень безпеки ===


Для клієнтів із підвищеними вимогами до безпеки потрібно передбачити спеціальний режим.
Для клієнтів із підвищеними вимогами до безпеки потрібно передбачити спеціальний режим.
Рядок 2029: Рядок 2339:
* додаткове шифрування повідомлень;
* додаткове шифрування повідомлень;
* обмеження міжхмарних повідомлень;
* обмеження міжхмарних повідомлень;
* обмеження інтеграцій із зовнішніми месенджерами;
* обмеження інтеграцій із зовнішніми каналами комунікації;
* заборона передачі файлів назовні;
* заборона передачі файлів назовні;
* заборона передачі записів назовні;
* заборона передачі записів назовні;
Рядок 2042: Рядок 2352:
</div>
</div>


== 38. Права доступу ==
== 39. Права доступу ==


Потрібно передбачити гнучку систему прав доступу.
Потрібно передбачити гнучку систему прав доступу.
Рядок 2063: Рядок 2373:
* транскрибації.
* транскрибації.


=== 38.1. Приклади прав ===
=== 39.1. Приклади прав ===


{| class="wikitable" style="width:100%; border-collapse:collapse;"
<div style="border:1px solid #cfd8dc; margin:12px 0;">
! Право
<div style="background:#eceff1; padding:10px; font-weight:bold;">Приклади прав доступу</div>


| ! Опис                                                        |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Перегляд чату'''<br />Користувач може бачити чат.</div>
| ------------------------------------------------------------- |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Відправка повідомлень'''<br />Користувач може писати повідомлення.</div>
| Перегляд чату                                                 |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Редагування своїх повідомлень'''<br />Користувач може редагувати власні повідомлення.</div>
| Користувач може бачити чат.                                   |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Видалення своїх повідомлень'''<br />Користувач може видаляти або приховувати власні повідомлення.</div>
| -                                                             |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Модерація'''<br />Користувач може керувати повідомленнями інших учасників.</div>
| Відправка повідомлень                                         |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Керування учасниками'''<br />Користувач може додавати та видаляти учасників.</div>
| Користувач може писати повідомлення.                         |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Керування каналом'''<br />Користувач може змінювати налаштування каналу.</div>
| -                                                             |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Робота з Helpdesk'''<br />Користувач може приймати і обробляти звернення.</div>
| Редагування своїх повідомлень                                 |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Створення баг-репортів'''<br />Користувач може створювати баги зі звернень.</div>
| Користувач може редагувати власні повідомлення.               |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Міжхмарна комунікація'''<br />Користувач може спілкуватися з користувачами інших хмар.</div>
| -                                                             |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''API-доступ'''<br />Користувач або сервіс може працювати через API.</div>
| Видалення своїх повідомлень                                   |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Створення відеоконференції'''<br />Користувач може створювати відеоконференції.</div>
| Користувач може видаляти або приховувати власні повідомлення. |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Запис конференції'''<br />Користувач може вмикати запис відеозустрічі.</div>
| -                                                             |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Перегляд записів'''<br />Користувач може переглядати записи відповідно до прав.</div>
| Модерація                                                     |
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Створення стрімінгу'''<br />Користувач може створювати великі онлайн-трансляції.</div>
| Користувач може керувати повідомленнями інших учасників.     |
 
| -                                                             |
</div>
| Керування учасниками                                         |
| Користувач може додавати та видаляти учасників.               |
| -                                                             |
| Керування каналом                                             |
| Користувач може змінювати налаштування каналу.               |
| -                                                             |
| Робота з Helpdesk                                             |
| Користувач може приймати і обробляти звернення.               |
| -                                                             |
| Створення баг-репортів                                       |
| Користувач може створювати баги зі звернень.                 |
| -                                                             |
| Міжхмарна комунікація                                         |
| Користувач може спілкуватися з користувачами інших хмар.     |
| -                                                             |
| API-доступ                                                   |
| Користувач або сервіс може працювати через API.               |
| -                                                             |
| Створення відеоконференції                                   |
| Користувач може створювати відеоконференції.                 |
| -                                                             |
| Запис конференції                                             |
| Користувач може вмикати запис відеозустрічі.                 |
| -                                                             |
| Перегляд записів                                             |
| Користувач може переглядати записи відповідно до прав.       |
| -                                                             |
| Створення стрімінгу                                           |
| Користувач може створювати великі онлайн-трансляції.         |
| }                                                            |


== 39. Звіти та аналітика ==
== 40. Звіти та аналітика ==


Потрібно передбачити звіти:
Потрібно передбачити звіти:
Рядок 2142: Рядок 2422:
* оцінка задоволеності клієнтів.
* оцінка задоволеності клієнтів.


== 40. Журнали та аудит ==
== 41. Журнали та аудит ==


Потрібно вести аудит:
Потрібно вести аудит:
Рядок 2157: Рядок 2437:
* API-запитів;
* API-запитів;
* міжхмарної комунікації;
* міжхмарної комунікації;
* підключення зовнішніх месенджерів;
* підключення зовнішніх каналів комунікації;
* помилок доставки;
* помилок доставки;
* дій адміністраторів;
* дій адміністраторів;
Рядок 2173: Рядок 2453:
</div>
</div>


== 41. Структура бази даних ==
== 42. Структура бази даних ==


На етапі проєктування потрібно передбачити такі основні сутності:
На етапі проєктування потрібно передбачити такі основні сутності:
Рядок 2210: Рядок 2490:
* chat_security_settings.
* chat_security_settings.


=== 41.1. Основні поля повідомлення ===
=== 42.1. Основні поля повідомлення ===


Повідомлення повинно містити:
Повідомлення повинно містити:
Рядок 2229: Рядок 2509:
* службові метадані.
* службові метадані.


== 42. Типи повідомлень ==
== 43. Типи повідомлень ==


Потрібно передбачити такі типи повідомлень:
Потрібно передбачити такі типи повідомлень:
Рядок 2245: Рядок 2525:
* повідомлення від бота;
* повідомлення від бота;
* повідомлення з сайту;
* повідомлення з сайту;
* повідомлення з Telegram;
* повідомлення із зовнішнього каналу комунікації;
* повідомлення зі Slack;
* email-повідомлення;
* email-повідомлення;
* міжхмарне повідомлення;
* міжхмарне повідомлення;
Рядок 2256: Рядок 2535:
* нотатка.
* нотатка.


== 43. Інтерфейс користувача ==
== 44. Інтерфейс користувача ==


Інтерфейс K2 Chat повинен бути зручним для великої кількості користувачів.
Інтерфейс K2 Chat повинен бути зручним для великої кількості користувачів.
Рядок 2285: Рядок 2564:
* статус користувача.
* статус користувача.


=== 43.1. Інтерфейс оператора підтримки ===
=== 44.1. Інтерфейс оператора підтримки ===


Оператор підтримки повинен бачити:
Оператор підтримки повинен бачити:
Рядок 2307: Рядок 2586:
* історію попередніх звернень.
* історію попередніх звернень.


=== 43.2. Інтерфейс адміністратора ===
=== 44.2. Інтерфейс адміністратора ===


Адміністратор повинен бачити:
Адміністратор повинен бачити:
Рядок 2328: Рядок 2607:
* налаштування стрімінгу.
* налаштування стрімінгу.


== 44. Шаблони відповідей ==
== 45. Шаблони відповідей ==


Для Helpdesk потрібно передбачити шаблони відповідей.
Для Helpdesk потрібно передбачити шаблони відповідей.
Рядок 2345: Рядок 2624:
* відповіді після аналізу транскрибації.
* відповіді після аналізу транскрибації.


== 45. Автоматичні правила ==
== 46. Автоматичні правила ==


Потрібно передбачити механізм автоматичних правил.
Потрібно передбачити механізм автоматичних правил.
Рядок 2356: Рядок 2635:
* якщо звернення не оброблено 30 хвилин, повідомити керівника;
* якщо звернення не оброблено 30 хвилин, повідомити керівника;
* якщо баг закрито, повідомити автора звернення;
* якщо баг закрито, повідомити автора звернення;
* якщо повідомлення прийшло з Telegram, направити його в потрібну чергу;
* якщо повідомлення прийшло із зовнішнього каналу, направити його в потрібну чергу;
* якщо звернення від VIP-клієнта, встановити підвищений пріоритет;
* якщо звернення від VIP-клієнта, встановити підвищений пріоритет;
* якщо завершено відеоконференцію, створити транскрибацію;
* якщо завершено відеоконференцію, створити транскрибацію;
Рядок 2362: Рядок 2641:
* якщо в дзвінку згадується помилка, запропонувати створити баг-репорт.
* якщо в дзвінку згадується помилка, запропонувати створити баг-репорт.


== 46. Надійність і відмовостійкість ==
== 47. Надійність і відмовостійкість ==


Потрібно передбачити:
Потрібно передбачити:
Рядок 2380: Рядок 2659:
* відновлення обробки транскрибації після збою.
* відновлення обробки транскрибації після збою.


== 47. Резервне копіювання ==
== 48. Резервне копіювання ==


Дані K2 Chat повинні входити в політику резервного копіювання хмари K2 ERP.
Дані K2 Chat повинні входити в політику резервного копіювання хмари K2 ERP.
Рядок 2403: Рядок 2682:
* опитування.
* опитування.


== 48. Вимоги до продуктивності ==
== 49. Вимоги до продуктивності ==


Модуль повинен забезпечувати:
Модуль повинен забезпечувати:
Рядок 2421: Рядок 2700:
* фонову обробку транскрибацій.
* фонову обробку транскрибацій.


== 49. Вимоги до сумісності ==
== 50. Вимоги до сумісності ==


K2 Chat повинен працювати:
K2 Chat повинен працювати:
Рядок 2444: Рядок 2723:
* із сервісами транскрибації.
* із сервісами транскрибації.


== 50. MVP першої версії ==
== 51. MVP першої версії ==


У першій версії модуля потрібно реалізувати мінімально необхідний функціонал.
<div style="background:#ffebee; border-left:6px solid #c62828; padding:14px; margin:14px 0;">
'''MVP K2 Chat — це не всі можливості майбутнього месенджера. MVP — це стабільне ядро: користувачі, чати, повідомлення, історія, файли, права, API, real-time доставка та зв’язок з ERP-об’єктами.'''
</div>


До MVP входить:
До MVP першої версії входить:


* особисті повідомлення;
* авторизація через K2 ERP;
* список користувачів хмари;
* особисті чати;
* групові чати;
* групові чати;
* канали;
* текстові повідомлення;
* відправка файлів;
* доставка повідомлень у реальному часі;
* WebSocket-повідомлення в реальному часі;
* історія переписки;
* історія переписки;
* пошук;
* статуси прочитання;
* базові ролі;
* лічильник непрочитаних повідомлень;
* базова авторизація через K2 ERP;
* прикріплення файлів;
* Helpdesk-звернення;
* збереження файлів у хмарі K2 ERP;
* створення задачі з повідомлення;
* базові права доступу;
* створення баг-репорту з повідомлення;
* віджет звернення з сайту;
* API для відправки та отримання повідомлень;
* передача ERP-картки в чат;
* журнал дій;
* журнал дій;
* базові сповіщення;
* базовий пошук;
* зберігання даних у хмарі K2 ERP;
* API для повідомлень;
* голосові повідомлення;
* передача ERP-об’єкта в чат;
* базова транскрибація голосових повідомлень;
* коротка ERP-картка в чаті;
* базові відеоконференції для невеликих груп;
* перевірка прав доступу до ERP-об’єкта;
* запис відеоконференції;
* мінімальний адміністративний інтерфейс.
* збереження записів у хмарі K2 ERP;
* готові відповіді для Helpdesk;
* приватні нотатки оператора;
* обране;
* бокова панель файлів і посилань.


<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;">
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;">
'''MVP повинен дати компанії можливість замінити частину внутрішніх комунікацій, приймати звернення з сайту, створювати задачі та баг-репорти, передавати ERP-об’єкти, записувати голос і проводити базові відеозустрічі без виходу з K2 ERP.'''
'''Не входить у перший MVP:''' відеоконференції, стрімінг, AI-помічник, телефонія, складний Helpdesk, зовнішні месенджери, міжхмарний обмін, desktop-додаток, мобільний додаток, складна аналітика та автоматичні сценарії. Ці функції потрібно передбачити архітектурно, але реалізовувати після стабілізації ядра.
</div>
</div>


== 51. Наступні етапи розвитку ==
== 52. Наступні етапи розвитку ==


Після MVP потрібно передбачити розвиток:
Після MVP потрібно передбачити розвиток:


* міжхмарний обмін повідомленнями;
* міжхмарний обмін повідомленнями;
* інтеграція з Telegram;
* інтеграція із зовнішніми месенджерами;
* інтеграція зі Slack;
* інтеграція з Email;
* інтеграція з Email;
* інтеграція з телефонією;
* інтеграція з телефонією;
Рядок 2511: Рядок 2783:
* автоматичне створення задач із транскрибацій.
* автоматичне створення задач із транскрибацій.


== 52. Критерії приймання ==
== 53. Критерії приймання ==


Модуль вважається прийнятим, якщо:
Модуль вважається прийнятим, якщо:


# Користувач може увійти в K2 Chat через K2 ERP.
# Користувач може увійти в K2 Chat через K2 ERP.
# Користувач може відкрити список доступних чатів.


# Користувач може створити особистий чат.
# Користувач може створити особистий чат.
Рядок 2521: Рядок 2795:
# Користувач може створити груповий чат.
# Користувач може створити груповий чат.


# Користувач може створити канал.
# Користувач може відправити текстове повідомлення.


# Користувач може відправити повідомлення.
# Інший користувач отримує повідомлення без перезавантаження сторінки.


# Користувач може прикріпити файл.
# Повідомлення зберігається в історії.


# Повідомлення доставляється в реальному часі.
# Користувач бачить непрочитані повідомлення.


# Історія повідомлень зберігається на сервері хмари K2 ERP.
# Користувач може прикріпити файл.


# Користувач може знайти повідомлення через пошук.
# Файл зберігається на сервері хмари K2 ERP.


# Адміністратор може керувати правами.
# Користувач може відкрити або завантажити файл.


# Відвідувач сайту може створити звернення через віджет.
# Права доступу до чату працюють.


# Оператор бачить звернення в Helpdesk.
# Права доступу до ERP-об’єкта перевіряються.


# Зі звернення можна створити задачу.
# Адміністратор може керувати базовими налаштуваннями.


# Зі звернення можна створити баг-репорт.
# Є базовий журнал дій.


# Користувач отримує відповідь по зверненню.
# Є базовий API.


# У чат можна передати ERP-об’єкт.
# Дані не зберігаються на сторонніх серверах.


# Доступ до ERP-об’єкта перевіряється правами K2 ERP.
# Чат працює стабільно при одночасній роботі багатьох користувачів.


# API дозволяє відправляти та отримувати повідомлення.
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:14px; margin:14px 0;">
 
'''Головний критерій першого релізу:''' K2 Chat повинен стати щоденним робочим інструментом для команди всередині K2 ERP. Якщо користувачі можуть стабільно писати, отримувати повідомлення, прикріплювати файли, бачити історію і працювати з ERP-об’єктами — перше ядро модуля виконано правильно.
# Дії користувачів логуються.
</div>
 
# Передача даних відбувається через захищене з’єднання.
 
# Користувач може записати голосове повідомлення.
 
# Система може створити транскрибацію голосового повідомлення.
 
# Користувач може створити відеоконференцію.
 
# Система може записати відеоконференцію.
 
# Запис відеоконференції зберігається в хмарі K2 ERP.
 
# Транскрибація доступна для пошуку.
 
# Оператор може використати готову відповідь.
 
# Оператор може створити приватну нотатку.
 
# Користувач може додати повідомлення в обране.
 
# Адміністратор може налаштувати політики зберігання.


== 53. Очікуваний результат ==
== 54. Очікуваний результат ==


У результаті розробки компанія повинна отримати модуль '''K2 Chat''', який:
У результаті розробки компанія повинна отримати модуль '''K2 Chat''', який:
Рядок 2587: Рядок 2839:
* створює задачі та баг-репорти;
* створює задачі та баг-репорти;
* передає інформацію з ERP у чат;
* передає інформацію з ERP у чат;
* інтегрується з іншими месенджерами;
* інтегрується із зовнішніми каналами комунікації;
* підтримує API;
* підтримує API;
* підтримує міжхмарну комунікацію;
* підтримує міжхмарну комунікацію;
Рядок 2606: Рядок 2858:
</div>
</div>


== 54. Висновок ==
== 55. Висновок ==


Модуль '''K2 Chat''' є стратегічним компонентом K2 ERP, який об’єднує корпоративний месенджер, Helpdesk, баг-трекінг, CRM-комунікації, інтеграції, міжхмарну комунікацію, голосові повідомлення, відеоконференції, стрімінг, транскрибацію, AI-помічника та передачу ERP-даних у єдиному середовищі.
Модуль '''K2 Chat''' є стратегічним компонентом K2 ERP, який об’єднує корпоративний месенджер, Helpdesk, баг-трекінг, CRM-комунікації, зовнішні інтеграції, міжхмарну комунікацію, голосові повідомлення, відеоконференції, стрімінг, транскрибацію, AI-помічника та передачу ERP-даних у єдиному середовищі.


На відміну від звичайних месенджерів, K2 Chat повинен бути тісно пов’язаний із бізнес-процесами компанії. Повідомлення мають бути не просто текстом, а частиною управління задачами, документами, клієнтами, зверненнями, помилками, навчанням, підтримкою, зустрічами, домовленостями та розвитком підприємства.
На відміну від звичайних месенджерів, K2 Chat повинен бути тісно пов’язаний із бізнес-процесами компанії. Повідомлення мають бути не просто текстом, а частиною управління задачами, документами, клієнтами, зверненнями, помилками, навчанням, підтримкою, зустрічами, домовленостями та розвитком підприємства.