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

Немає опису редагування
Немає опису редагування
 
(Не показано одну проміжну версію цього користувача)
Рядок 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="border:1px solid #cfd8dc; margin:12px 0;">
<div style="background:#ffebee; border-left:6px solid #c62828; padding:14px; margin:14px 0;">
<div style="background:#eceff1; padding:10px; font-weight:bold;">Режими роботи K2 Chat</div>
'''Найважливіше на першому етапі — не намагатися одразу зробити всі можливості великого корпоративного месенджера. Першочергова задача — створити стабільне ядро K2 Chat: повідомлення, користувачі, групи, історія, права доступу, файли, API, інтеграція з K2 ERP та збереження даних у хмарі K2 ERP.'''
</div>


<div style="padding:10px; border-top:1px solid #cfd8dc;">
Початковий мінімум повинен бути розроблений так, щоб на його основі можна було поступово нарощувати Helpdesk, відеоконференції, стрімінг, AI, телефонію, зовнішні інтеграції та міжхмарний обмін.
'''Веб-додаток'''<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;">
=== 4.1. Головна ціль першого етапу ===
'''Віджет для сайту'''<br />
Звернення відвідувача сайту до технічної підтримки або менеджера.
</div>


<div style="padding:10px; border-top:1px solid #cfd8dc;">
Головна ціль першого етапу — зробити робочий корпоративний чат усередині K2 ERP, який дозволяє користувачам хмари:
'''Helpdesk'''<br />
Прийом, класифікація, обробка та закриття звернень.
</div>


<div style="padding:10px; border-top:1px solid #cfd8dc;">
* писати один одному повідомлення;
'''Міжхмарний чат'''<br />
* створювати групові чати;
Обмін повідомленнями між різними інсталяціями або хмарами K2 ERP.
* бачити історію переписки;
</div>
* отримувати повідомлення в реальному часі;
* прикріплювати файли;
* мати базові права доступу;
* зберігати всю переписку на сервері K2 ERP;
* працювати через веб-інтерфейс;
* мати базовий API для подальшого розвитку;
* передавати у чат базову інформацію з ERP.


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


<div style="padding:10px; border-top:1px solid #cfd8dc;">
=== 4.2. Що обов’язково розробити першим ===
'''Інтеграційний шлюз'''<br />
Обмін повідомленнями з Telegram, Slack, Viber, WhatsApp, Email та іншими каналами за наявності відповідних API.
</div>


<div style="padding:10px; border-top:1px solid #cfd8dc;">
До першочергового ядра K2 Chat входять такі блоки:
'''Голосові комунікації'''<br />
 
Голосові повідомлення, дзвінки, записи та транскрибація.
# Авторизація користувачів через K2 ERP.
</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>
 
# Лічильник непрочитаних повідомлень.
 
# Прикріплення файлів.
 
# Базові права доступу.
 
# Базовий журнал дій.
 
# Пошук по повідомленнях.
 
# API для відправки та отримання повідомлень.
 
# Зв’язок повідомлення з ERP-об’єктом.
 
# Базовий інтерфейс адміністратора.
 
# Зберігання всіх даних у хмарі K2 ERP.
 
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;">
'''Ключовий принцип:''' спочатку потрібно зробити простий, швидкий і стабільний чат, який працює щодня. Усі складні функції мають нарощуватися тільки після того, як ядро повідомлень працює надійно.
</div>
 
=== 4.3. Мінімальний інтерфейс користувача першої версії ===
 
На першому етапі інтерфейс користувача повинен містити:
 
* ліву панель зі списком чатів;
* список особистих і групових чатів;
* поле пошуку чатів;
* центральну область повідомлень;
* поле введення повідомлення;
* кнопку відправки повідомлення;
* кнопку прикріплення файлу;
* індикатор нових повідомлень;
* індикатор прочитання;
* відображення автора повідомлення;
* дату і час повідомлення;
* можливість прокрутки історії;
* кнопку створення нового чату;
* кнопку створення групового чату;
* базову панель інформації про чат.
 
На першій версії не потрібно перевантажувати інтерфейс десятками функцій. Він повинен бути простим, зрозумілим і швидким.
 
=== 4.4. Мінімальна структура даних першої версії ===
 
На першому етапі потрібно створити базові сутності:
 
* користувачі чату;
* чати;
* учасники чатів;
* повідомлення;
* файли повідомлень;
* статуси прочитання;
* права доступу;
* журнал дій;
* посилання на ERP-об’єкти.
 
Мінімальна структура повинна дозволяти надалі додати:
 
* треди;
* реакції;
* голосові повідомлення;
* Helpdesk;
* баг-репорти;
* відеоконференції;
* зовнішні інтеграції;
* міжхмарний обмін;
* AI-помічника.
 
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Архітектурна вимога:''' навіть якщо частина функцій не реалізується в першій версії, структура даних і API не повинні блокувати їх додавання в майбутньому.
</div>
 
=== 4.5. Базова інтеграція з K2 ERP у першій версії ===
 
У першій версії K2 Chat повинен бути інтегрований із K2 ERP на базовому рівні.
 
Потрібно передбачити:
 
* авторизацію через користувачів K2 ERP;
* використання ролей K2 ERP;
* використання прав доступу K2 ERP;
* відкриття K2 Chat з інтерфейсу K2 ERP;
* можливість передати в чат посилання на ERP-об’єкт;
* можливість показати в чаті коротку ERP-картку;
* перевірку прав доступу при відкритті ERP-об’єкта;
* збереження повідомлень у базі даних хмари K2 ERP;
* збереження файлів у файловому сховищі хмари K2 ERP.
 
ERP-картка першої версії може бути простою. Вона повинна містити:
 
* тип об’єкта;
* назву або номер;
* короткий опис;
* статус;
* посилання на відкриття об’єкта.
 
Наприклад:
 
* документ;
* контрагент;
* контакт;
* лід;
* задача;
* звернення;
* баг-репорт.
 
=== 4.6. Мінімальні права доступу першої версії ===
 
У першій версії потрібно реалізувати базові права:
 
* право бачити чат;
* право писати в чат;
* право створювати особистий чат;
* право створювати груповий чат;
* право додавати учасників;
* право видаляти учасників;
* право прикріплювати файли;
* право переглядати файли;
* право переглядати історію;
* право адмініструвати чат;
* право бачити посилання на ERP-об’єкт;
* право відкривати ERP-об’єкт згідно прав K2 ERP.
 
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;">
'''Критична вимога:''' якщо користувач отримав у чаті посилання на документ, контрагента, ліда або інший ERP-об’єкт, це не означає, що він автоматично має право його відкрити. Права доступу повинні перевірятися окремо.
</div>
 
=== 4.7. Мінімальний API першої версії ===
 
На першому етапі API повинен забезпечити базову роботу чату.
 
Потрібно реалізувати API для таких дій:
 
* отримати список чатів користувача;
* отримати список повідомлень чату;
* відправити повідомлення;
* створити особистий чат;
* створити груповий чат;
* додати учасника в груповий чат;
* видалити учасника з групового чату;
* прикріпити файл до повідомлення;
* отримати файл;
* позначити повідомлення як прочитане;
* отримати кількість непрочитаних повідомлень;
* отримати список користувачів;
* передати ERP-об’єкт у чат;
* отримати коротку ERP-картку;
* перевірити права доступу.
 
API першої версії повинен бути достатньо простим, але стабільним, бо на ньому будуть будуватися:
 
* веб-інтерфейс;
* мобільний додаток;
* desktop-додаток;
* зовнішні інтеграції;
* Helpdesk;
* міжхмарний обмін.
 
=== 4.8. Повідомлення в реальному часі ===
 
У першій версії потрібно забезпечити доставку повідомлень у реальному часі.
 
Потрібно передбачити:
 
* миттєве отримання нового повідомлення;
* оновлення лічильника непрочитаних повідомлень;
* статус доставки;
* статус прочитання;
* перепідключення при обриві з’єднання;
* повторну синхронізацію після відновлення з’єднання.
 
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;">
'''Важливо:''' чат без реального часу не буде сприйматися як повноцінний робочий інструмент. Тому WebSocket або інший механізм live-оновлень потрібно закладати з першої версії.
</div>
 
=== 4.9. Файли в першій версії ===
 
У першій версії потрібно передбачити базову роботу з файлами:
 
* прикріплення файлу до повідомлення;
* збереження файлу в хмарі K2 ERP;
* відображення назви файлу;
* відображення розміру файлу;
* завантаження файлу користувачем;
* перевірку прав доступу до файлу;
* обмеження максимального розміру файлу;
* журнал завантаження файлу.
 
У першій версії не обов’язково робити складний переглядач усіх типів файлів. Головне — стабільно прикріпити, зберегти, відкрити або завантажити файл.
 
=== 4.10. Що не потрібно робити в першій версії ===
 
Щоб не розмити розробку, на першому етапі не потрібно одразу реалізовувати всі складні функції.
 
До наступних етапів можна винести:
 
* відеоконференції;
* стрімінг на тисячі користувачів;
* телефонію;
* AI-помічника;
* складну транскрибацію;
* зовнішні месенджери;
* міжхмарний обмін;
* складний Helpdesk;
* SLA;
* повноцінний контакт-центр;
* автоматичні сценарії;
* складні звіти;
* desktop-додаток;
* мобільний додаток;
* опитування;
* треди;
* реакції;
* ботів;
* розширену аналітику.
 
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;">
'''Не означає відмову:''' ці функції потрібно передбачити архітектурно, але не обов’язково реалізовувати в першому релізі. Перший реліз має довести, що ядро K2 Chat стабільно працює всередині K2 ERP.
</div>
 
=== 4.11. Порядок розробки першої версії ===
 
Розробку першої версії доцільно виконувати в такій послідовності:
 
# Створити структуру бази даних для чатів, учасників, повідомлень і файлів.
 
# Реалізувати авторизацію через користувачів K2 ERP.
 
# Реалізувати список користувачів.
 
# Реалізувати створення особистого чату.
 
# Реалізувати створення групового чату.
 
# Реалізувати відправку текстового повідомлення.
 
# Реалізувати отримання історії повідомлень.
 
# Реалізувати доставку повідомлень у реальному часі.
 
# Реалізувати статуси прочитання.
 
# Реалізувати лічильник непрочитаних повідомлень.
 
# Реалізувати прикріплення файлів.
 
# Реалізувати базові права доступу.
 
# Реалізувати журнал дій.
 
# Реалізувати базовий пошук.
 
# Реалізувати передачу ERP-об’єкта в чат.
 
# Реалізувати базовий API.
 
# Реалізувати мінімальний адміністративний інтерфейс.
 
# Провести навантажувальне тестування.
 
# Провести тестування прав доступу.
 
# Підготувати перший реліз для використання всередині K2 ERP.
 
=== 4.12. Критерії готовності першої версії ===
 
Перша версія K2 Chat вважається готовою, якщо:
 
# Користувач K2 ERP може відкрити K2 Chat.
 
# Користувач бачить список доступних чатів.
 
# Користувач може створити особистий чат.
 
# Користувач може створити груповий чат.
 
# Користувач може написати повідомлення.
 
# Інший користувач отримує повідомлення без перезавантаження сторінки.
 
# Повідомлення зберігається в історії.
 
# Користувач бачить непрочитані повідомлення.
 
# Користувач може прикріпити файл.
 
# Файл зберігається на сервері хмари K2 ERP.
 
# Користувач може відкрити або завантажити файл.
 
# Права доступу до чату працюють.
 
# Права доступу до ERP-об’єкта перевіряються.
 
# Адміністратор може керувати базовими налаштуваннями.
 
# Є базовий журнал дій.
 
# Є базовий API.
 
# Дані не зберігаються на сторонніх серверах.
 
# Чат працює стабільно при одночасній роботі багатьох користувачів.
 
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:14px; margin:14px 0;">
'''Головний критерій першого релізу:''' K2 Chat повинен стати щоденним робочим інструментом для команди всередині K2 ERP. Якщо користувачі можуть стабільно писати, отримувати повідомлення, прикріплювати файли, бачити історію і працювати з ERP-об’єктами — перше ядро модуля виконано правильно.
</div>
 
=== 4.13. Чому саме такий мінімум є правильним ===
 
Перший мінімум повинен фокусуватися на базовій комунікації, тому що всі інші функції залежать від стабільного ядра повідомлень.
 
Без надійного ядра неможливо якісно реалізувати:
 
* Helpdesk;
* баг-репорти;
* комунікацію з клієнтами;
* зовнішні інтеграції;
* відеоконференції;
* запис зустрічей;
* AI-помічника;
* міжхмарну комунікацію;
* контакт-центр;
* телефонію;
* аналітику.
 
Тому перший етап повинен бути не найбільшим за кількістю функцій, а найміцнішим технічно.
 
<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>


== 5. Основні користувачі модуля ==
== 6. Основні користувачі модуля ==


У системі повинні бути передбачені такі типи користувачів:
У системі повинні бути передбачені такі типи користувачів:
Рядок 191: Рядок 578:
* інтеграційний користувач API.
* інтеграційний користувач API.


== 6. Основні функціональні можливості чату ==
== 7. Основні функціональні можливості чату ==


=== 6.1. Особисті повідомлення ===
=== 7.1. Особисті повідомлення ===


Система повинна підтримувати особисте листування між користувачами.
Система повинна підтримувати особисте листування між користувачами.
Рядок 221: Рядок 608:
</div>
</div>


=== 6.2. Групові чати ===
=== 7.2. Групові чати ===


Система повинна підтримувати групові чати.
Система повинна підтримувати групові чати.
Рядок 250: Рядок 637:
* історія змін групи.
* історія змін групи.


=== 6.3. Канали ===
=== 7.3. Корпоративні канали ===


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


Канали можуть використовуватись для:
Канали можуть використовуватись для:
Рядок 284: Рядок 671:
* запуск відеоконференції або стріму з каналу.
* запуск відеоконференції або стріму з каналу.


=== 6.4. Теми та обговорення ===
=== 7.4. Теми та обговорення ===


У великих групах і каналах потрібно передбачити теми обговорень.
У великих групах і каналах потрібно передбачити теми обговорень.
Рядок 297: Рядок 684:
* формувати окремі гілки по спринтах, релізах, клієнтах, модулях або проблемах.
* формувати окремі гілки по спринтах, релізах, клієнтах, модулях або проблемах.


=== 6.5. Тредові обговорення ===
=== 7.5. Тредові обговорення ===


Потрібно передбачити треди, аналогічні Slack.
Потрібно передбачити треди.


Тред повинен дозволяти:
Тред повинен дозволяти:
Рядок 315: Рядок 702:
</div>
</div>


== 7. Можливості рівня Telegram, Slack та Bitrix24 ==
== 8. Розширені можливості корпоративного чату ==


<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 повинен включати ключові можливості сучасних корпоративних месенджерів рівня Telegram, Slack, Bitrix24 Messenger, Contact Center та Open Lines.'''
'''K2 Chat повинен включати ключові можливості сучасного корпоративного месенджера, контакт-центру, Helpdesk-системи та комунікаційного шару ERP.'''
</div>
</div>


Рядок 326: Рядок 713:
<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>
Рядок 353: Рядок 740:
<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;">'''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 />Єдиний центр обробки повідомлень із сайту, зовнішніх месенджерів, соцмереж, 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;">'''Готові відповіді'''<br />Шаблони відповідей для операторів підтримки, продажів і сервісних команд.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Готові відповіді'''<br />Шаблони відповідей для операторів підтримки, продажів і сервісних команд.</div>
Рядок 360: Рядок 747:
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Desktop-додаток'''<br />Окремий клієнт для Windows, Linux і macOS із фоновими сповіщеннями та дзвінками.</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 />Відображення дзвінків, запис, транскрибація та прив’язка до CRM, Helpdesk або задач.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Інтеграції'''<br />Передача повідомлень у Telegram, Slack, Email та інші канали.</div>
<div style="padding:10px; border-top:1px solid #cfd8dc;">'''Зовнішні інтеграції'''<br />Передача повідомлень у зовнішні месенджери, email, телефонію, сайти, CRM та інші канали комунікації.</div>


</div>
</div>


== 8. Робота з хмарою K2 ERP ==
== 9. Робота з хмарою K2 ERP ==


Модуль K2 Chat повинен бути частиною хмарної архітектури K2 ERP.
Модуль K2 Chat повинен бути частиною хмарної архітектури K2 ERP.
Рядок 386: Рядок 773:
</div>
</div>


== 9. Міжхмарна відправка повідомлень ==
== 10. Міжхмарна відправка повідомлень ==


Потрібно передбачити можливість обміну повідомленнями між різними хмарами K2 ERP.
Потрібно передбачити можливість обміну повідомленнями між різними хмарами K2 ERP.
Рядок 400: Рядок 787:
* хмара навчального закладу.
* хмара навчального закладу.


=== 9.1. Принцип роботи міжхмарного обміну ===
=== 10.1. Принцип роботи міжхмарного обміну ===


Міжхмарний обмін повинен працювати через захищений API.
Міжхмарний обмін повинен працювати через захищений API.
Рядок 419: Рядок 806:
* шифрування міжхмарного трафіку.
* шифрування міжхмарного трафіку.


=== 9.2. Сценарії міжхмарного обміну ===
=== 10.2. Сценарії міжхмарного обміну ===


Міжхмарний обмін потрібен для таких сценаріїв:
Міжхмарний обмін потрібен для таких сценаріїв:
Рядок 437: Рядок 824:
</div>
</div>


== 10. Віджет звернення з сайту ==
== 11. Віджет звернення з сайту ==


K2 Chat повинен підтримувати режим віджета для сайту.
K2 Chat повинен підтримувати режим віджета для сайту.
Рядок 450: Рядок 837:
* отримати номер звернення;
* отримати номер звернення;
* отримати відповідь у віджеті;
* отримати відповідь у віджеті;
* отримати відповідь на email або в месенджер;
* отримати відповідь на email або в зовнішній канал комунікації;
* продовжити діалог після закриття сторінки;
* продовжити діалог після закриття сторінки;
* переглянути статус звернення;
* переглянути статус звернення;
Рядок 458: Рядок 845:
* створити заявку на впровадження K2 ERP.
* створити заявку на впровадження K2 ERP.


=== 10.1. Типи звернень із сайту ===
=== 11.1. Типи звернень із сайту ===


Потрібно передбачити такі типи звернень:
Потрібно передбачити такі типи звернень:
Рядок 476: Рядок 863:
* інше.
* інше.


=== 10.2. Ідентифікація відвідувача ===
=== 11.2. Ідентифікація відвідувача ===


Для відвідувача сайту потрібно передбачити кілька режимів ідентифікації:
Для відвідувача сайту потрібно передбачити кілька режимів ідентифікації:
Рядок 487: Рядок 874:
* користувач, пов’язаний із лідами або контактами K2 ERP;
* користувач, пов’язаний із лідами або контактами K2 ERP;
* користувач, який повернувся до попереднього звернення;
* користувач, який повернувся до попереднього звернення;
* користувач із зовнішнього месенджера.
* користувач із зовнішнього каналу комунікації.


== 11. Helpdesk-функції ==
== 12. Helpdesk-функції ==


K2 Chat повинен включати функції Helpdesk.
K2 Chat повинен включати функції Helpdesk.
Рядок 510: Рядок 897:
</div>
</div>


=== 11.1. Життєвий цикл звернення ===
=== 12.1. Життєвий цикл звернення ===


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


=== 11.2. Статуси звернень ===
=== 12.2. Статуси звернень ===


<div style="border:1px solid #cfd8dc; margin:12px 0;">
<div style="border:1px solid #cfd8dc; margin:12px 0;">
Рядок 560: Рядок 947:
</div>
</div>


=== 11.3. Пріоритети звернень ===
=== 12.3. Пріоритети звернень ===


Потрібно передбачити пріоритети:
Потрібно передбачити пріоритети:
Рядок 574: Рядок 961:
</div>
</div>


=== 11.4. SLA та строки виконання ===
=== 12.4. SLA та строки виконання ===


Потрібно передбачити налаштування SLA:
Потрібно передбачити налаштування SLA:
Рядок 588: Рядок 975:
* звіти по виконанню SLA.
* звіти по виконанню SLA.


== 12. Перетворення звернення на баг-репорт ==
== 13. Перетворення звернення на баг-репорт ==


K2 Chat повинен дозволяти створювати баг-репорт на основі повідомлення або звернення.
K2 Chat повинен дозволяти створювати баг-репорт на основі повідомлення або звернення.
Рядок 616: Рядок 1003:
* відповідь користувачу після виправлення.
* відповідь користувачу після виправлення.


=== 12.1. Зворотна відповідь користувачу ===
=== 13.1. Зворотна відповідь користувачу ===


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


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


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


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


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


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


Якщо користувач отримав у чаті посилання на ERP-об’єкт, система повинна перевірити його права.
Якщо користувач отримав у чаті посилання на ERP-об’єкт, система повинна перевірити його права.
Рядок 701: Рядок 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. Принцип інтеграції ===


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


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


Система повинна дозволяти налаштовувати правила:
Система повинна дозволяти налаштовувати правила:
Рядок 749: Рядок 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 для інтеграції з іншими системами та створення клієнтських додатків.
Рядок 784: Рядок 1170:
* отримувати службові події.
* отримувати службові події.


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


K2 Chat повинен підтримувати роботу з файлами.
K2 Chat повинен підтримувати роботу з файлами.
Рядок 941: Рядок 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;">
Рядок 947: Рядок 1333:
</div>
</div>


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


Потрібно передбачити політики зберігання повідомлень.
Потрібно передбачити політики зберігання повідомлень.
Рядок 1299: Рядок 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;">
Рядок 1305: Рядок 1691:
</div>
</div>


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


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


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


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


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


Кожна важлива задача може мати власний чат.
Кожна важлива задача може мати власний чат.
Рядок 1363: Рядок 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. Єдиний список клієнтських діалогів ===


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


K2 Chat може використовуватись у навчальному модулі.
K2 Chat може використовуватись у навчальному модулі.
Рядок 1621: Рядок 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;">
Рядок 1627: Рядок 2013:
</div>
</div>


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


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


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


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


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


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


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


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


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


Потрібно передбачити системних ботів:
Потрібно передбачити системних ботів:
Рядок 1726: Рядок 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;">
Рядок 1732: Рядок 2118:
</div>
</div>


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


<div style="border:1px solid #cfd8dc; margin:12px 0;">
<div style="border:1px solid #cfd8dc; margin:12px 0;">
Рядок 2010: Рядок 2396:
</div>
</div>


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


K2 Chat повинен працювати:
K2 Chat повинен працювати:
Рядок 2338: Рядок 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;
* інтеграція з телефонією;
* інтеграція з телефонією;
Рядок 2405: Рядок 2783:
* автоматичне створення задач із транскрибацій.
* автоматичне створення задач із транскрибацій.


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


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


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


# Користувач може створити особистий чат.
# Користувач може створити особистий чат.
Рядок 2415: Рядок 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''', який:
Рядок 2481: Рядок 2839:
* створює задачі та баг-репорти;
* створює задачі та баг-репорти;
* передає інформацію з ERP у чат;
* передає інформацію з ERP у чат;
* інтегрується з іншими месенджерами;
* інтегрується із зовнішніми каналами комунікації;
* підтримує API;
* підтримує API;
* підтримує міжхмарну комунікацію;
* підтримує міжхмарну комунікацію;
Рядок 2500: Рядок 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 повинен бути тісно пов’язаний із бізнес-процесами компанії. Повідомлення мають бути не просто текстом, а частиною управління задачами, документами, клієнтами, зверненнями, помилками, навчанням, підтримкою, зустрічами, домовленостями та розвитком підприємства.