Технічне завдання на створення чату в K2 ERP: відмінності між версіями
R (обговорення | внесок) Створена сторінка: Сайти K2 ERP Публічна хмара для безкоштовної роботи не обмеженої кількості користувачів та обліку не обмеженої кількості організацій: https://cloud.corp2.eu Публікації та відео про K2 ERP: https://erp.kyiv.ua Документація Wiki по K2 ERP: https://wiki.erp.kyiv.ua Офіційний сайт K2: https://corp2.eu... |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
= Технічне завдання на створення модуля K2 Chat для K2 ERP = | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''K2 Chat''' — це корпоративний чат, модуль комунікацій, технічної підтримки, Helpdesk, баг-трекінгу, відеоконференцій, стрімінгу, міжхмарного обміну повідомленнями та інтеграції з бізнес-об’єктами K2 ERP. | |||
</div> | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Головна ідея модуля:''' уся переписка, файли, голосові повідомлення, записи дзвінків, відеоконференції, транскрибації, Helpdesk-звернення, службові події та пов’язані бізнес-дані повинні зберігатися на сервері тієї хмари K2 ERP, де піднятий модуль K2 Chat. | |||
</div> | |||
== 1. Призначення модуля == | |||
Модуль '''K2 Chat''' призначений для організації внутрішньої, зовнішньої, клієнтської, технічної, проєктної та міжхмарної комунікації в екосистемі K2 ERP. | |||
Модуль повинен забезпечувати: | |||
* корпоративне спілкування співробітників; | |||
* роботу в хмарі K2 ERP; | |||
* роботу через веб-інтерфейс; | |||
* роботу через API; | |||
* можливість створення мобільних, десктопних або сторонніх додатків на основі API; | |||
* особисті чати; | |||
* групові чати; | |||
* канали; | |||
* треди; | |||
* теми обговорень; | |||
* голосові повідомлення; | |||
* голосові дзвінки; | |||
* запис голосу; | |||
* транскрибацію голосу; | |||
* відеоконференції; | |||
* запис відеоконференцій; | |||
* транскрибацію відеоконференцій; | |||
* стрімінг для сотень або тисяч користувачів; | |||
* міжхмарну відправку повідомлень; | |||
* звернення з сайту в технічну підтримку; | |||
* функції Helpdesk; | |||
* створення задач; | |||
* створення баг-репортів; | |||
* передачу інформації з ERP у чат; | |||
* інтеграцію з іншими месенджерами; | |||
* інтеграцію з CRM; | |||
* інтеграцію з VDoc; | |||
* інтеграцію з K2 Mantis або іншим баг-трекінгом; | |||
* інтеграцію з K2 Projects; | |||
* інтеграцію з телефонією; | |||
* роботу з файлами; | |||
* пошук; | |||
* аудит; | |||
* шифрування трафіку; | |||
* режими підвищеної безпеки. | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' K2 Chat повинен бути не просто аналогом месенджера, а повноцінним комунікаційним шаром K2 ERP, який пов’язує людей, документи, задачі, контрагентів, ліди, заявки, баг-репорти, підтримку, відеозустрічі, навчання та бізнес-процеси. | |||
</div> | |||
== 2. Цілі створення модуля == | |||
Основні цілі створення K2 Chat: | |||
# Забезпечити швидку комунікацію всередині компанії. | |||
# Забезпечити комунікацію між користувачами різних хмар K2 ERP. | |||
# Надати інструмент технічної підтримки для клієнтів. | |||
# Об’єднати чат, Helpdesk, баг-репорти, задачі та ERP-дані в єдиному середовищі. | |||
# Зменшити залежність компаній від зовнішніх месенджерів. | |||
# Забезпечити контроль, історію, аудит та збереження переписки. | |||
# Забезпечити голосову та відеокомунікацію всередині K2 ERP. | |||
# Забезпечити запис і транскрибацію зустрічей. | |||
# Надати інструмент для проведення вебінарів і великих онлайн-подій. | |||
# Надати можливість інтегрувати K2 Chat із сайтами, CRM, Helpdesk, ERP-модулями та зовнішніми месенджерами. | |||
# Забезпечити високий рівень безпеки для компаній із підвищеними вимогами до захисту інформації. | |||
# Сформувати єдиний центр комунікації компанії з клієнтами, співробітниками, партнерами, підрядниками та користувачами K2 ERP. | |||
== 3. Загальна концепція == | |||
K2 Chat повинен працювати як: | |||
* '''веб-додаток''' у складі K2 ERP; | |||
* '''окремий корпоративний чат''' у хмарі K2 ERP; | |||
* '''API-сервіс''' для зовнішніх додатків; | |||
* '''віджет підтримки''' для сайту; | |||
* '''Helpdesk-система''' для обробки звернень; | |||
* '''інструмент комунікації між хмарами K2 ERP'''; | |||
* '''шлюз інтеграції з іншими месенджерами'''; | |||
* '''канал передачі ERP-об’єктів у комунікацію'''; | |||
* '''модуль голосових і відеокомунікацій'''; | |||
* '''система запису та транскрибації зустрічей'''; | |||
* '''платформа для онлайн-трансляцій і вебінарів'''; | |||
* '''контакт-центр для роботи з клієнтами'''; | |||
* '''центр комунікації по задачах, проєктах і спринтах'''. | |||
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;"> | |||
'''Архітектурний принцип:''' K2 Chat має бути модульним. Його можна використовувати як окремий чат, як частину CRM, як Helpdesk, як корпоративний месенджер, як сервіс повідомлень для інших модулів K2 ERP, як відеоплатформу, як контакт-центр або як міжхмарний канал комунікації. | |||
</div> | |||
== 4. Режими роботи == | |||
{| class="wikitable" style="width:100%; border-collapse:collapse;" | |||
! style="width:25%;" | Режим | |||
| ! Опис | | |||
| ------------------------------------------------------------------------------------------------------------------- | | |||
| '''Веб-додаток''' | | |||
| Робота користувачів через браузер у хмарі K2 ERP. | | |||
| - | | |||
| '''API-додаток''' | | |||
| Можливість створення зовнішніх клієнтів, мобільних додатків, десктопних додатків та інтеграцій через API. | | |||
| - | | |||
| '''Віджет для сайту''' | | |||
| Звернення відвідувача сайту до технічної підтримки або менеджера. | | |||
| - | | |||
| '''Helpdesk''' | | |||
| Прийом, класифікація, обробка та закриття звернень. | | |||
| - | | |||
| '''Міжхмарний чат''' | | |||
| Обмін повідомленнями між різними інсталяціями або хмарами K2 ERP. | | |||
| - | | |||
| '''ERP-комунікація''' | | |||
| Передача в чат інформації про документи, контрагентів, ліди, контакти, задачі, рахунки, замовлення та інші об’єкти. | | |||
| - | | |||
| '''Інтеграційний шлюз''' | | |||
| Обмін повідомленнями з Telegram, Slack, Viber, WhatsApp, Email та іншими каналами за наявності відповідних API. | | |||
| - | | |||
| '''Голосові комунікації''' | | |||
| Голосові повідомлення, дзвінки, записи та транскрибація. | | |||
| - | | |||
| '''Відеоконференції''' | | |||
| Проведення відеозустрічей, запис зустрічей, транскрибація та прив’язка до ERP-об’єктів. | | |||
| - | | |||
| '''Стрімінг''' | | |||
| Проведення великих онлайн-подій, вебінарів і трансляцій для сотень або тисяч користувачів. | | |||
| - | | |||
| '''Контакт-центр''' | | |||
| Єдиний центр обробки повідомлень із сайту, месенджерів, соцмереж, email, телефонії та CRM-форм. | | |||
| } | | |||
== 5. Основні користувачі модуля == | |||
У системі повинні бути передбачені такі типи користувачів: | |||
* адміністратор хмари K2 ERP; | |||
* адміністратор K2 Chat; | |||
* адміністратор безпеки; | |||
* співробітник компанії; | |||
* керівник підрозділу; | |||
* оператор технічної підтримки; | |||
* менеджер із продажу; | |||
* менеджер проєкту; | |||
* розробник; | |||
* тестувальник; | |||
* бухгалтер-консультант; | |||
* клієнт; | |||
* відвідувач сайту; | |||
* зовнішній користувач іншої хмари K2 ERP; | |||
* партнер; | |||
* інтегратор; | |||
* викладач; | |||
* студент або слухач курсу; | |||
* бот або системний користувач; | |||
* інтеграційний користувач API. | |||
== 6. Основні функціональні можливості чату == | |||
=== 6.1. Особисті повідомлення === | |||
Система повинна підтримувати особисте листування між користувачами. | |||
Необхідно передбачити: | |||
* відправку текстових повідомлень; | |||
* редагування повідомлень; | |||
* видалення повідомлень або позначення їх як видалених; | |||
* відповідь на конкретне повідомлення; | |||
* пересилання повідомлень; | |||
* цитування повідомлень; | |||
* реакції на повідомлення; | |||
* закріплення важливих повідомлень; | |||
* додавання повідомлень в обране; | |||
* позначення повідомлень як прочитаних або непрочитаних; | |||
* пошук по переписці; | |||
* перегляд історії повідомлень; | |||
* обмеження доступу до історії відповідно до прав користувача; | |||
* передачу ERP-об’єктів у повідомленні; | |||
* створення задачі з повідомлення; | |||
* створення баг-репорту з повідомлення; | |||
* створення Helpdesk-звернення з повідомлення. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' фізичне видалення повідомлень повинно бути обмежене. Для корпоративного середовища доцільно використовувати позначення повідомлення як видаленого із збереженням службового аудиту. | |||
</div> | |||
=== 6.2. Групові чати === | |||
Система повинна підтримувати групові чати. | |||
Функції групових чатів: | |||
* створення групи; | |||
* додавання учасників; | |||
* видалення учасників; | |||
* призначення адміністраторів групи; | |||
* встановлення назви групи; | |||
* встановлення опису групи; | |||
* встановлення аватару групи; | |||
* закріплення повідомлень; | |||
* додавання повідомлень в обране; | |||
* опитування; | |||
* нотатки; | |||
* файли; | |||
* посилання; | |||
* треди; | |||
* теми; | |||
* налаштування прав учасників; | |||
* перегляд списку учасників; | |||
* запрошення користувачів за посиланням; | |||
* обмеження доступу до групи; | |||
* архівація групи; | |||
* пошук у межах групи; | |||
* історія змін групи. | |||
=== 6.3. Канали === | |||
Потрібно передбачити канали, аналогічні публічним або корпоративним каналам повідомлень. | |||
Канали можуть використовуватись для: | |||
* новин компанії; | |||
* повідомлень від керівництва; | |||
* оновлень K2 ERP; | |||
* оголошень; | |||
* технічних повідомлень; | |||
* повідомлень для клієнтів; | |||
* навчальних матеріалів; | |||
* інформування про зміни в бізнес-процесах; | |||
* внутрішніх регламентів; | |||
* повідомлень про релізи; | |||
* навчальних вебінарів; | |||
* стрімінгових подій. | |||
Канал повинен підтримувати: | |||
* публікацію повідомлень адміністраторами; | |||
* підписку користувачів; | |||
* перегляд історії; | |||
* коментарі до публікацій, якщо це дозволено; | |||
* реакції; | |||
* опитування; | |||
* закріплення важливих повідомлень; | |||
* права на публікацію; | |||
* права на перегляд; | |||
* вкладення файлів; | |||
* прикріплення ERP-карток; | |||
* запуск відеоконференції або стріму з каналу. | |||
=== 6.4. Теми та обговорення === | |||
У великих групах і каналах потрібно передбачити теми обговорень. | |||
Теми повинні дозволяти: | |||
* структурувати переписку; | |||
* відокремлювати технічні питання від організаційних; | |||
* створювати обговорення по конкретному документу, задачі, клієнту, ліду або багу; | |||
* швидко знаходити потрібну інформацію; | |||
* зменшувати хаос у великих чатах; | |||
* формувати окремі гілки по спринтах, релізах, клієнтах, модулях або проблемах. | |||
=== 6.5. Тредові обговорення === | |||
Потрібно передбачити треди, аналогічні Slack. | |||
Тред повинен дозволяти: | |||
* відповідати на конкретне повідомлення в окремій гілці; | |||
* не засмічувати основний чат; | |||
* вести технічну дискусію по одному питанню; | |||
* прив’язувати тред до задачі, документа, ліда, клієнта або баг-репорту; | |||
* створювати підзадачу з треду; | |||
* створювати короткий підсумок треду; | |||
* переносити важливі рішення в задачу або VDoc. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Рекомендація:''' для великих корпоративних чатів треди є критично важливими, оскільки дозволяють не перетворювати загальний канал у хаотичну стрічку повідомлень. | |||
</div> | |||
== 7. Можливості рівня Telegram, Slack та Bitrix24 == | |||
K2 Chat повинен включати ключові можливості сучасних корпоративних месенджерів. | |||
{| class="wikitable" style="width:100%; border-collapse:collapse;" | |||
! style="width:30%;" | Можливість | |||
| ! Опис реалізації в K2 Chat | | |||
| --------------------------------------------------------------------------------------------------------------------- | | |||
| Особисті чати | | |||
| Переписка між двома користувачами. | | |||
| - | | |||
| Групові чати | | |||
| Спільне обговорення між багатьма учасниками. | | |||
| - | | |||
| Канали | | |||
| Одностороннє або обмежене інформування аудиторії. | | |||
| - | | |||
| Треди | | |||
| Окремі гілки обговорення під повідомленнями. | | |||
| - | | |||
| Теми | | |||
| Структурування великих груп і каналів. | | |||
| - | | |||
| Реакції | | |||
| Швидкі реакції на повідомлення. | | |||
| - | | |||
| Файли | | |||
| Надсилання файлів, документів, зображень, архівів. | | |||
| - | | |||
| Голосові повідомлення | | |||
| Запис, відправка, зберігання, прослуховування та транскрибація голосових повідомлень. | | |||
| - | | |||
| Голосові дзвінки | | |||
| Особисті та групові голосові дзвінки із можливістю запису та транскрибації. | | |||
| - | | |||
| Відеоконференції | | |||
| Створення відеозустрічей із демонстрацією екрана, записом і транскрибацією. | | |||
| - | | |||
| Стрімінг | | |||
| Проведення онлайн-трансляцій, вебінарів і великих подій для сотень або тисяч глядачів. | | |||
| - | | |||
| Пошук | | |||
| Пошук по чатах, файлах, користувачах, задачах та 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; | |||
* роботу в приватній хмарі клієнта; | |||
* роботу в окремій хмарі замовника; | |||
* роботу в гібридній інфраструктурі; | |||
* окреме зберігання даних кожної хмари; | |||
* ізоляцію переписки між хмарами; | |||
* налаштування міжхмарної взаємодії; | |||
* централізоване адміністрування в межах конкретної хмари; | |||
* можливість обмеження доступу до чату згідно ролей K2 ERP; | |||
* можливість відключення зовнішніх інтеграцій у приватній хмарі; | |||
* можливість використання підвищеного режиму безпеки. | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''Ключова вимога:''' дані переписки не повинні зберігатися на сторонніх серверах без явного налаштування інтеграції. Основним місцем зберігання є сервер K2 ERP тієї хмари, де працює модуль. | |||
</div> | |||
== 9. Міжхмарна відправка повідомлень == | |||
Потрібно передбачити можливість обміну повідомленнями між різними хмарами K2 ERP. | |||
Наприклад: | |||
* хмара розробника K2 ERP; | |||
* хмара клієнта; | |||
* хмара партнера; | |||
* хмара інтегратора; | |||
* хмара бухгалтерської компанії; | |||
* хмара постачальника; | |||
* хмара навчального закладу. | |||
=== 9.1. Принцип роботи міжхмарного обміну === | |||
Міжхмарний обмін повинен працювати через захищений API. | |||
Потрібно передбачити: | |||
* реєстрацію довірених хмар; | |||
* обмін ключами; | |||
* перевірку автентичності хмари; | |||
* налаштування дозволених напрямків комунікації; | |||
* журнал міжхмарних повідомлень; | |||
* обмеження прав на міжхмарне листування; | |||
* можливість блокування хмари; | |||
* можливість відкликання доступу; | |||
* логування службових подій; | |||
* контроль доставки повідомлень; | |||
* правила маршрутизації повідомлень; | |||
* шифрування міжхмарного трафіку. | |||
=== 9.2. Сценарії міжхмарного обміну === | |||
Міжхмарний обмін потрібен для таких сценаріїв: | |||
* клієнт пише в підтримку K2 ERP зі своєї хмари; | |||
* партнерська компанія спілкується з розробником; | |||
* бухгалтерська компанія спілкується з клієнтом; | |||
* інтегратор супроводжує впровадження; | |||
* користувач іншої хмари надсилає баг-репорт; | |||
* компанії обмінюються документами або службовими повідомленнями; | |||
* навчальна хмара передає питання в технічну підтримку; | |||
* учасники різних хмар проводять спільну відеоконференцію; | |||
* різні хмари обмінюються статусами задач або звернень. | |||
<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:12px; margin:12px 0;"> | |||
'''Особлива вимога:''' міжхмарна комунікація не повинна порушувати ізоляцію даних. Передаватися мають тільки ті повідомлення, файли та об’єкти, які явно дозволені правилами доступу. | |||
</div> | |||
== 10. Віджет звернення з сайту == | |||
K2 Chat повинен підтримувати режим віджета для сайту. | |||
Віджет повинен дозволяти відвідувачу сайту: | |||
* написати повідомлення в технічну підтримку; | |||
* звернутися до менеджера; | |||
* залишити контактні дані; | |||
* прикріпити файл або скриншот; | |||
* обрати тему звернення; | |||
* отримати номер звернення; | |||
* отримати відповідь у віджеті; | |||
* отримати відповідь на email або в месенджер; | |||
* продовжити діалог після закриття сторінки; | |||
* переглянути статус звернення; | |||
* створити заявку на консультацію; | |||
* створити заявку на демонстрацію; | |||
* створити заявку на навчання; | |||
* створити заявку на впровадження K2 ERP. | |||
=== 10.1. Типи звернень із сайту === | |||
Потрібно передбачити такі типи звернень: | |||
* технічна підтримка; | |||
* консультація; | |||
* продаж; | |||
* помилка на сайті; | |||
* помилка в 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. Життєвий цикл звернення === | |||
Стандартний життєвий цикл звернення: | |||
# Створення звернення. | |||
# Автоматичне присвоєння номера. | |||
# Визначення типу звернення. | |||
# Призначення відповідального. | |||
# Встановлення пріоритету. | |||
# Передача в роботу. | |||
# Уточнення інформації. | |||
# Перетворення на задачу або баг-репорт. | |||
# Виконання. | |||
# Тестування, якщо потрібно. | |||
# Надання відповіді користувачу. | |||
# Закриття звернення. | |||
# Оцінка якості відповіді. | |||
=== 11.2. Статуси звернень === | |||
{| class="wikitable" style="width:100%; border-collapse:collapse;" | |||
! Статус | |||
| ! Опис | | |||
| ---------------------------------------------- | | |||
| Нове | | |||
| Звернення створено, але ще не взято в роботу. | | |||
| - | | |||
| Прийнято | | |||
| Звернення переглянуто оператором. | | |||
| - | | |||
| У роботі | | |||
| Відповідальний виконує задачу. | | |||
| - | | |||
| Очікує уточнення | | |||
| Потрібна додаткова інформація від користувача. | | |||
| - | | |||
| Передано розробнику | | |||
| Звернення передано в розробку. | | |||
| - | | |||
| Створено баг-репорт | | |||
| На основі звернення створено баг. | | |||
| - | | |||
| Створено задачу | | |||
| На основі звернення створено задачу. | | |||
| - | | |||
| Виконано | | |||
| Роботу виконано. | | |||
| - | | |||
| На тестуванні | | |||
| Результат перевіряється. | | |||
| - | | |||
| Очікує підтвердження | | |||
| Користувач повинен підтвердити результат. | | |||
| - | | |||
| Закрито | | |||
| Звернення завершено. | | |||
| - | | |||
| Відхилено | | |||
| Звернення відхилено із зазначенням причини. | | |||
| } | | |||
=== 11.3. Пріоритети звернень === | |||
Потрібно передбачити пріоритети: | |||
* низький; | |||
* звичайний; | |||
* високий; | |||
* критичний; | |||
* аварійний. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Критичні звернення''' повинні мати окремі правила сповіщення, ескалації та контролю строків виконання. | |||
</div> | |||
=== 11.4. SLA та строки виконання === | |||
Потрібно передбачити налаштування SLA: | |||
* час першої відповіді; | |||
* час взяття в роботу; | |||
* час виконання; | |||
* час реакції для критичних звернень; | |||
* дедлайни; | |||
* автоматичні нагадування; | |||
* ескалації керівнику; | |||
* контроль прострочених звернень; | |||
* звіти по виконанню SLA. | |||
== 12. Перетворення звернення на баг-репорт == | |||
K2 Chat повинен дозволяти створювати баг-репорт на основі повідомлення або звернення. | |||
Баг-репорт повинен містити: | |||
* номер звернення; | |||
* автора звернення; | |||
* дату створення; | |||
* текст повідомлення; | |||
* прикріплені файли; | |||
* скриншоти; | |||
* голосові повідомлення; | |||
* транскрибації; | |||
* записи дзвінків; | |||
* записи відеоконференцій; | |||
* посилання на чат; | |||
* посилання на ERP-об’єкт; | |||
* модуль K2 ERP; | |||
* опис помилки; | |||
* очікувану поведінку; | |||
* фактичну поведінку; | |||
* пріоритет; | |||
* відповідального розробника; | |||
* статус обробки; | |||
* історію змін; | |||
* відповідь користувачу після виправлення. | |||
=== 12.1. Зворотна відповідь користувачу === | |||
Після опрацювання баг-репорту система повинна дозволяти: | |||
* автоматично повідомити користувача; | |||
* написати ручну відповідь; | |||
* повідомити про виправлення; | |||
* повідомити про включення в оновлення; | |||
* повідомити про неможливість відтворення помилки; | |||
* запросити додаткові дані; | |||
* закрити звернення після підтвердження. | |||
== 13. Інтеграція з ERP-об’єктами == | |||
K2 Chat повинен мати можливість передавати в чат інформацію з ERP. | |||
Потрібно передбачити передачу таких об’єктів: | |||
* документ; | |||
* рахунок; | |||
* акт; | |||
* накладна; | |||
* замовлення; | |||
* договір; | |||
* контрагент; | |||
* контакт; | |||
* лід; | |||
* клієнт; | |||
* задача; | |||
* проєкт; | |||
* баг-репорт; | |||
* складська операція; | |||
* платіж; | |||
* заявка; | |||
* звернення; | |||
* курс навчання; | |||
* співробітник; | |||
* підрозділ; | |||
* файл із VDoc; | |||
* запис історії змін; | |||
* відеозапис; | |||
* аудіозапис; | |||
* транскрибація; | |||
* протокол зустрічі. | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''Приклад:''' менеджер може надіслати в чат картку ліда, бухгалтер — рахунок, розробник — баг-репорт, керівник — задачу, а служба підтримки — звернення клієнта. | |||
</div> | |||
=== 13.1. Формат ERP-картки в чаті === | |||
ERP-об’єкт у чаті повинен відображатися як компактна картка. | |||
Картка повинна містити: | |||
* тип об’єкта; | |||
* назву або номер; | |||
* короткий опис; | |||
* статус; | |||
* відповідального; | |||
* дату створення; | |||
* суму, якщо це фінансовий документ; | |||
* контрагента, якщо є; | |||
* кнопку відкриття об’єкта; | |||
* кнопку копіювання посилання; | |||
* службові права доступу. | |||
=== 13.2. Права доступу до ERP-об’єктів === | |||
Якщо користувач отримав у чаті посилання на ERP-об’єкт, система повинна перевірити його права. | |||
Потрібно передбачити: | |||
* доступ дозволено; | |||
* доступ заборонено; | |||
* доступ тільки на перегляд; | |||
* доступ тільки до частини даних; | |||
* запит доступу; | |||
* логування спроби доступу; | |||
* повідомлення адміністратору при порушенні політики безпеки. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' передача посилання на ERP-об’єкт у чаті не повинна автоматично відкривати доступ до цього об’єкта. Доступ визначається ролями та правами K2 ERP. | |||
</div> | |||
== 14. Інтеграція з іншими месенджерами == | |||
K2 Chat повинен мати можливість комунікації з іншими месенджерами та каналами. | |||
Потрібно передбачити інтеграції з: | |||
* Telegram; | |||
* Slack; | |||
* Viber; | |||
* WhatsApp; | |||
* Facebook Messenger; | |||
* Instagram Direct; | |||
* Email; | |||
* SMS; | |||
* телефонією; | |||
* зовнішніми Helpdesk-системами; | |||
* зовнішніми CRM; | |||
* webhook-сервісами. | |||
=== 14.1. Принцип інтеграції === | |||
Інтеграція повинна працювати через: | |||
* API; | |||
* webhook; | |||
* ботів; | |||
* поштові шлюзи; | |||
* інтеграційні токени; | |||
* черги повідомлень; | |||
* налаштування каналів зв’язку. | |||
=== 14.2. Логіка маршрутизації повідомлень === | |||
Система повинна дозволяти налаштовувати правила: | |||
* з якого каналу прийшло повідомлення; | |||
* у який чат його направити; | |||
* якому оператору призначити; | |||
* чи створювати звернення Helpdesk; | |||
* чи створювати лід у CRM; | |||
* чи створювати баг-репорт; | |||
* чи відправляти автоматичну відповідь; | |||
* чи дублювати повідомлення в інший канал; | |||
* чи потрібно зберегти вкладення; | |||
* чи потрібно зробити транскрибацію голосу; | |||
* чи потрібно призначити пріоритет. | |||
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;"> | |||
'''Розширення:''' K2 Chat може стати єдиним центром комунікацій компанії, де повідомлення з сайту, месенджерів, email, CRM, телефонії та ERP збираються в одному інтерфейсі. | |||
</div> | |||
== 15. API модуля K2 Chat == | |||
K2 Chat повинен мати відкритий API для інтеграції з іншими системами та створення клієнтських додатків. | |||
API повинен дозволяти: | |||
* авторизувати користувача; | |||
* отримувати список чатів; | |||
* отримувати повідомлення; | |||
* відправляти повідомлення; | |||
* редагувати повідомлення; | |||
* видаляти або позначати повідомлення як видалене; | |||
* створювати групи; | |||
* додавати учасників; | |||
* видаляти учасників; | |||
* створювати канали; | |||
* створювати опитування; | |||
* отримувати список користувачів; | |||
* отримувати статуси користувачів; | |||
* завантажувати файли; | |||
* отримувати файли; | |||
* відправляти голосові повідомлення; | |||
* отримувати транскрибації; | |||
* створювати відеоконференції; | |||
* отримувати записи відеоконференцій; | |||
* створювати звернення Helpdesk; | |||
* створювати баг-репорти; | |||
* передавати ERP-об’єкти; | |||
* працювати з webhook; | |||
* працювати з міжхмарними повідомленнями; | |||
* отримувати службові події. | |||
=== 15.1. API для веб-додатку === | |||
Для веб-додатку потрібно передбачити: | |||
* REST API для стандартних операцій; | |||
* WebSocket або аналогічний механізм для повідомлень у реальному часі; | |||
* механізм повторного підключення; | |||
* кешування останніх повідомлень; | |||
* пагінацію історії; | |||
* контроль прав доступу; | |||
* захист від масових запитів; | |||
* логування помилок. | |||
=== 15.2. API для зовнішніх додатків === | |||
Для зовнішніх додатків потрібно передбачити: | |||
* токени доступу; | |||
* refresh-токени; | |||
* обмеження прав API-користувача; | |||
* обмеження швидкості запитів; | |||
* журнал API-звернень; | |||
* відкликання токенів; | |||
* окремі права для ботів; | |||
* документацію API; | |||
* тестове середовище. | |||
== 16. WebSocket та повідомлення в реальному часі == | |||
K2 Chat повинен підтримувати доставку повідомлень у реальному часі. | |||
Потрібно передбачити: | |||
* миттєву доставку повідомлень; | |||
* індикатор набору тексту; | |||
* статус доставки; | |||
* статус прочитання; | |||
* оновлення списку чатів; | |||
* оновлення кількості непрочитаних повідомлень; | |||
* push-події для веб-клієнта; | |||
* автоматичне перепідключення при обриві зв’язку; | |||
* чергу недоставлених повідомлень; | |||
* синхронізацію після відновлення з’єднання. | |||
== 17. Масштабованість == | |||
K2 Chat повинен бути розрахований на велику кількість користувачів і переписки. | |||
Потрібно передбачити: | |||
* одночасну роботу великої кількості користувачів; | |||
* велику кількість чатів; | |||
* велику кількість повідомлень; | |||
* зберігання великих історій переписки; | |||
* індексацію повідомлень для пошуку; | |||
* архівацію старих повідомлень; | |||
* оптимізацію завантаження історії; | |||
* пагінацію повідомлень; | |||
* горизонтальне масштабування сервісів; | |||
* розділення сервісу повідомлень і сервісу файлів; | |||
* розділення сервісу повідомлень і сервісу відео; | |||
* моніторинг навантаження; | |||
* обмеження розміру вкладень; | |||
* обмеження частоти повідомлень при потребі. | |||
<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:12px; margin:12px 0;"> | |||
'''Важливо для великих клієнтів:''' модуль повинен стабільно працювати при великій кількості співробітників, клієнтів, каналів, Helpdesk-звернень, файлів, відеозаписів та інтеграцій. | |||
</div> | |||
== 18. Зберігання даних == | |||
Усі дані K2 Chat повинні зберігатися на сервері тієї хмари K2 ERP, де встановлений модуль. | |||
Потрібно зберігати: | |||
* повідомлення; | |||
* чати; | |||
* групи; | |||
* канали; | |||
* учасників; | |||
* права доступу; | |||
* файли; | |||
* вкладення; | |||
* голосові повідомлення; | |||
* записи дзвінків; | |||
* записи відеоконференцій; | |||
* записи стрімів; | |||
* транскрибації; | |||
* реакції; | |||
* треди; | |||
* опитування; | |||
* нотатки; | |||
* історію редагування; | |||
* історію видалення; | |||
* Helpdesk-звернення; | |||
* баг-репорти; | |||
* службові події; | |||
* API-журнали; | |||
* міжхмарні повідомлення; | |||
* дані інтеграцій; | |||
* налаштування безпеки; | |||
* ключі інтеграцій, у захищеному вигляді; | |||
* журнали аудиту. | |||
=== 18.1. Історія змін === | |||
Потрібно передбачити історію змін для: | |||
* повідомлень; | |||
* груп; | |||
* каналів; | |||
* прав доступу; | |||
* звернень Helpdesk; | |||
* баг-репортів; | |||
* інтеграцій; | |||
* налаштувань безпеки; | |||
* транскрибацій; | |||
* записів; | |||
* опитувань; | |||
* нотаток. | |||
=== 18.2. Видалення повідомлень === | |||
Для корпоративної безпеки бажано використовувати логічне видалення. | |||
Потрібно передбачити: | |||
* позначення повідомлення як видаленого; | |||
* збереження службового запису про видалення; | |||
* збереження автора видалення; | |||
* збереження дати видалення; | |||
* можливість приховати повідомлення від звичайних користувачів; | |||
* можливість перегляду аудиту адміністратором із відповідними правами. | |||
== 19. Файли та вкладення == | |||
K2 Chat повинен підтримувати роботу з файлами. | |||
Потрібно передбачити: | |||
* завантаження файлів; | |||
* відправку файлів у чат; | |||
* перегляд файлів; | |||
* завантаження файлів користувачем; | |||
* обмеження розміру файлу; | |||
* обмеження типів файлів; | |||
* антивірусну перевірку, якщо така інтеграція підключена; | |||
* зв’язок файлу з VDoc; | |||
* історію файлів; | |||
* заборону фізичного видалення важливих файлів при відповідних налаштуваннях; | |||
* позначення файлу як неактивного через механізми K2 ERP; | |||
* контроль прав доступу до файлів. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Інтеграція з VDoc:''' файли, що мають юридичне, технічне або бізнес-значення, можуть зберігатися і контролюватися через механізми VDoc із версіями, історією та обмеженням видалення. | |||
</div> | |||
== 20. Голосові повідомлення, запис голосу та транскрибація == | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''K2 Chat повинен підтримувати не тільки текстову переписку, а й повноцінну голосову комунікацію: голосові повідомлення, голосові дзвінки, запис голосу, транскрибацію та пошук по розшифрованому тексту.''' | |||
</div> | |||
=== 20.1. Голосові повідомлення === | |||
K2 Chat повинен підтримувати можливість запису, передачі, зберігання та прослуховування голосових повідомлень. | |||
Потрібно передбачити: | |||
* запис голосового повідомлення з веб-інтерфейсу; | |||
* запис голосового повідомлення з мобільного або зовнішнього додатку через API; | |||
* відправку голосового повідомлення в особистий чат; | |||
* відправку голосового повідомлення в груповий чат; | |||
* відправку голосового повідомлення в канал, якщо це дозволено правами; | |||
* збереження голосового повідомлення на сервері хмари K2 ERP; | |||
* відтворення голосового повідомлення в інтерфейсі чату; | |||
* паузу, перемотування та повторне прослуховування; | |||
* відображення тривалості голосового повідомлення; | |||
* обмеження максимальної тривалості повідомлення; | |||
* обмеження розміру аудіофайлу; | |||
* контроль прав доступу до голосового повідомлення; | |||
* журналювання факту створення, редагування або видалення голосового повідомлення; | |||
* можливість прикріпити голосове повідомлення до Helpdesk-звернення, задачі, баг-репорту, ліда, контакту, документа або іншого ERP-об’єкта. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' голосові повідомлення повинні зберігатися в тій самій хмарі K2 ERP, де працює модуль K2 Chat, якщо адміністратор явно не налаштував інший захищений сценарій зберігання. | |||
</div> | |||
=== 20.2. Транскрибація голосових повідомлень === | |||
Потрібно передбачити автоматичну транскрибацію голосових повідомлень у текст. | |||
Транскрибація повинна дозволяти: | |||
* перетворювати голосове повідомлення в текст; | |||
* зберігати текстову розшифровку поруч із голосовим повідомленням; | |||
* виконувати пошук по транскрибованому тексту; | |||
* копіювати текст транскрибації; | |||
* редагувати текст транскрибації користувачем із відповідними правами; | |||
* зберігати історію змін транскрибації; | |||
* визначати мову повідомлення, якщо це підтримується сервісом транскрибації; | |||
* підтримувати українську мову як пріоритетну; | |||
* підтримувати кілька мов для міжнародного використання; | |||
* передавати транскрибацію в Helpdesk-звернення; | |||
* передавати транскрибацію в задачу; | |||
* передавати транскрибацію в баг-репорт; | |||
* передавати транскрибацію в CRM-картку ліда, контакту або контрагента; | |||
* використовувати транскрибацію для подальшого аналізу, пошуку та автоматизації. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Практична цінність:''' транскрибація дозволяє не втрачати зміст голосових повідомлень, швидко знаходити потрібну інформацію через пошук і перетворювати усні домовленості на задачі, баг-репорти або записи CRM. | |||
</div> | |||
=== 20.3. Запис голосових дзвінків === | |||
K2 Chat повинен підтримувати можливість голосових дзвінків між користувачами та їх запису, якщо це дозволено налаштуваннями безпеки і правами доступу. | |||
Потрібно передбачити: | |||
* голосовий дзвінок між двома користувачами; | |||
* груповий голосовий дзвінок; | |||
* запис голосового дзвінка; | |||
* збереження запису на сервері хмари K2 ERP; | |||
* прив’язку запису до чату; | |||
* прив’язку запису до Helpdesk-звернення; | |||
* прив’язку запису до CRM-картки клієнта; | |||
* прив’язку запису до задачі або баг-репорту; | |||
* автоматичну транскрибацію запису; | |||
* пошук по транскрибованому тексту; | |||
* контроль доступу до запису; | |||
* журналювання факту початку, завершення та запису дзвінка; | |||
* попередження учасників про запис розмови. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Критична вимога:''' запис голосового дзвінка повинен виконуватися тільки згідно з налаштуваннями безпеки, правами користувачів і правилами компанії. Учасники повинні бачити, що розмова записується. | |||
</div> | |||
== 21. Відеоконференції, запис зустрічей і стрімінг == | |||
=== 21.1. Відеоконференції === | |||
K2 Chat повинен підтримувати створення відеоконференцій для користувачів K2 ERP. | |||
Потрібно передбачити: | |||
* створення відеоконференції з особистого чату; | |||
* створення відеоконференції з групового чату; | |||
* створення відеоконференції з каналу; | |||
* створення відеоконференції з Helpdesk-звернення; | |||
* створення відеоконференції з задачі; | |||
* створення відеоконференції з CRM-картки клієнта; | |||
* створення відеоконференції з документа або ERP-об’єкта; | |||
* запрошення учасників; | |||
* підключення за посиланням; | |||
* підключення авторизованих користувачів K2 ERP; | |||
* підключення зовнішніх гостей за дозволом; | |||
* очікувальну кімнату для гостей; | |||
* керування мікрофоном; | |||
* керування камерою; | |||
* демонстрацію екрана; | |||
* демонстрацію вікна або вкладки браузера; | |||
* текстовий чат під час конференції; | |||
* реакції під час конференції; | |||
* список учасників; | |||
* ролі модератора, доповідача та слухача; | |||
* видалення учасника з конференції; | |||
* блокування повторного входу небажаного учасника; | |||
* завершення конференції модератором. | |||
=== 21.2. Запис відеоконференції === | |||
Потрібно передбачити запис відеоконференції. | |||
Запис повинен включати: | |||
* відео учасників; | |||
* звук; | |||
* демонстрацію екрана; | |||
* чат конференції; | |||
* службову інформацію про учасників; | |||
* час початку; | |||
* час завершення; | |||
* тривалість; | |||
* автора запису; | |||
* модератора конференції. | |||
Після завершення запису система повинна: | |||
* зберегти запис у хмарі K2 ERP; | |||
* прив’язати запис до чату; | |||
* прив’язати запис до задачі, звернення, документа або CRM-картки, якщо конференція була створена з відповідного об’єкта; | |||
* створити текстову транскрибацію зустрічі; | |||
* дозволити пошук по транскрибації; | |||
* дозволити перегляд запису користувачам із відповідними правами; | |||
* дозволити завантаження запису, якщо це дозволено адміністратором; | |||
* дозволити обмеження строку зберігання запису; | |||
* вести журнал доступу до запису. | |||
<div style="background:#fff3e0; border-left:6px solid #ef6c00; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' запис відеоконференції може містити конфіденційну бізнес-інформацію, тому доступ до нього повинен регулюватися правами K2 ERP, політиками безпеки та журналом аудиту. | |||
</div> | |||
=== 21.3. Транскрибація відеоконференцій === | |||
Потрібно передбачити автоматичну транскрибацію відеоконференцій. | |||
Транскрибація повинна дозволяти: | |||
* перетворювати мову учасників у текст; | |||
* розділяти текст за учасниками, якщо це технічно можливо; | |||
* визначати часові мітки; | |||
* швидко переходити від тексту до відповідного моменту запису; | |||
* шукати по тексту зустрічі; | |||
* формувати короткий підсумок зустрічі; | |||
* формувати список домовленостей; | |||
* формувати список задач; | |||
* формувати список ризиків; | |||
* формувати список питань, які залишились відкритими; | |||
* передавати задачі в K2 Projects або інший модуль задач; | |||
* передавати баги в K2 Mantis або баг-трекінг; | |||
* передавати комерційні домовленості в CRM; | |||
* передавати технічні рішення в VDoc або базу знань. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Розширена можливість:''' на основі транскрибації відеоконференції система може автоматично готувати протокол зустрічі, список задач, відповідальних і дедлайнів. | |||
</div> | |||
=== 21.4. Відеоконференції для великої кількості користувачів === | |||
K2 Chat повинен підтримувати окремий режим масштабних відеоконференцій і трансляцій для великої кількості учасників. | |||
Потрібно передбачити два режими: | |||
* '''інтерактивна відеоконференція''' — для обмеженої кількості активних учасників із камерою, мікрофоном і демонстрацією екрана; | |||
* '''стрімінг або вебінар''' — для великої кількості глядачів, зокрема для сотень або тисяч користувачів. | |||
=== 21.5. Режим стрімінгу === | |||
Режим стрімінгу повинен дозволяти проводити онлайн-події з великою кількістю глядачів. | |||
Потрібно передбачити: | |||
* створення стрімінгової події; | |||
* підключення тисяч користувачів у режимі перегляду; | |||
* одного або кількох ведучих; | |||
* модераторів; | |||
* чат глядачів; | |||
* питання від глядачів; | |||
* модерацію питань; | |||
* реакції; | |||
* опитування; | |||
* демонстрацію презентації; | |||
* демонстрацію екрана; | |||
* запис трансляції; | |||
* транскрибацію трансляції; | |||
* збереження запису в хмарі K2 ERP; | |||
* обмеження доступу за ролями; | |||
* доступ за запрошенням; | |||
* публічний або приватний режим; | |||
* статистику переглядів; | |||
* список учасників; | |||
* звіт по активності; | |||
* експорт списку учасників; | |||
* інтеграцію з навчальним модулем K2; | |||
* інтеграцію з CRM; | |||
* інтеграцію з подіями, курсами або презентаціями. | |||
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;"> | |||
'''Сценарії використання стрімінгу:''' навчання користувачів K2 ERP, презентації для клієнтів, вебінари для бухгалтерів, демонстрації оновлень, конференції партнерів, онлайн-курси, внутрішні збори великих компаній. | |||
</div> | |||
=== 21.6. Архітектура відео та стрімінгу === | |||
Для відеоконференцій і стрімінгу потрібно передбачити окремий технічний контур. | |||
Архітектура повинна підтримувати: | |||
* WebRTC для інтерактивних відеодзвінків і конференцій; | |||
* SFU-сервер для групових відеоконференцій; | |||
* стрімінговий сервер для великої кількості глядачів; | |||
* HLS або аналогічний механізм для масштабного перегляду; | |||
* запис відеопотоку; | |||
* збереження записів у файловому сховищі K2 ERP; | |||
* масштабування відеосерверів; | |||
* розділення активних учасників і глядачів; | |||
* черги обробки записів; | |||
* черги транскрибації; | |||
* моніторинг якості зв’язку; | |||
* контроль навантаження; | |||
* резервування сервісів для критичних подій. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Технічна вимога:''' інтерактивна відеоконференція і стрімінг на тисячі глядачів мають різну архітектуру. Для великих подій потрібно використовувати режим трансляції, а не намагатися підключати тисячі користувачів як повноцінних відеоучасників. | |||
</div> | |||
== 22. Опитування, обране, нотатки та бокова панель чату == | |||
=== 22.1. Опитування в чатах і каналах === | |||
Потрібно передбачити можливість створення опитувань у чатах, групах, каналах, проєктних чатах і Helpdesk-діалогах. | |||
Опитування повинні підтримувати: | |||
* створення опитування з чату; | |||
* створення опитування з каналу; | |||
* створення опитування з проєктного чату; | |||
* створення опитування з Helpdesk-діалогу; | |||
* один варіант відповіді; | |||
* кілька варіантів відповіді; | |||
* анонімне опитування; | |||
* публічне опитування; | |||
* завершення опитування автором або адміністратором; | |||
* закріплення опитування в чаті; | |||
* копіювання опитування; | |||
* видалення або архівацію опитування; | |||
* перегляд результатів; | |||
* експорт результатів; | |||
* прив’язку результатів до задачі, проєкту, курсу навчання або CRM-об’єкта. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Практична цінність:''' опитування дозволяють швидко приймати рішення всередині команди, збирати думку співробітників, клієнтів або учасників навчання без використання зовнішніх сервісів. | |||
</div> | |||
=== 22.2. Обрані повідомлення === | |||
Користувач повинен мати можливість додавати повідомлення в обране. | |||
Потрібно передбачити: | |||
* додавання повідомлення в обране; | |||
* видалення з обраного; | |||
* перегляд усіх обраних повідомлень у межах чату; | |||
* перегляд усіх обраних повідомлень користувача; | |||
* пошук по обраних повідомленнях; | |||
* фільтр обраного за чатами; | |||
* фільтр обраного за датою; | |||
* фільтр обраного за ERP-об’єктом. | |||
=== 22.3. Нотатки в чаті === | |||
Потрібно передбачити нотатки в чаті. | |||
Нотатки можуть використовуватись для: | |||
* фіксації домовленостей; | |||
* коротких висновків після обговорення; | |||
* службових приміток оператора підтримки; | |||
* внутрішніх коментарів команди; | |||
* підготовки відповіді клієнту; | |||
* збереження важливих технічних деталей; | |||
* створення майбутньої задачі або баг-репорту. | |||
Нотатка повинна мати: | |||
* автора; | |||
* дату створення; | |||
* текст; | |||
* прив’язку до чату; | |||
* прив’язку до повідомлення, якщо нотатка створена з повідомлення; | |||
* права доступу; | |||
* історію змін; | |||
* можливість видалення або позначення як неактивної. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' нотатки можуть бути публічними для учасників чату або приватними для операторів підтримки, менеджерів чи адміністраторів. | |||
</div> | |||
=== 22.4. Бокова панель чату === | |||
У кожному чаті потрібно передбачити бокову панель швидкого доступу. | |||
Бокова панель повинна містити: | |||
* опис чату; | |||
* список учасників; | |||
* адміністраторів чату; | |||
* закріплені повідомлення; | |||
* обрані повідомлення; | |||
* нотатки; | |||
* усі файли; | |||
* усі зображення; | |||
* усі відео; | |||
* усі голосові повідомлення; | |||
* усі посилання; | |||
* усі ERP-картки; | |||
* усі задачі, створені з чату; | |||
* усі Helpdesk-звернення; | |||
* усі баг-репорти; | |||
* усі записи відеоконференцій; | |||
* усі транскрибації. | |||
== 23. Автоматичне очищення, архівація та політики зберігання == | |||
Потрібно передбачити політики зберігання повідомлень. | |||
Адміністратор повинен мати можливість налаштувати: | |||
* безстрокове зберігання; | |||
* зберігання повідомлень певну кількість днів; | |||
* автоархівацію старих повідомлень; | |||
* автоматичне приховування старих повідомлень; | |||
* автоматичне логічне видалення через Active=false; | |||
* різні політики для різних чатів; | |||
* різні політики для різних каналів; | |||
* різні політики для Helpdesk-звернень; | |||
* різні політики для відеозаписів; | |||
* різні політики для голосових повідомлень; | |||
* винятки для юридично важливих чатів; | |||
* винятки для чатів із клієнтами; | |||
* винятки для повідомлень, прив’язаних до ERP-документів, задач, багів або CRM. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Критична вимога:''' автоочищення не повинно знищувати важливі юридичні, фінансові, технічні або Helpdesk-дані без політики збереження, архівації та аудиту. | |||
</div> | |||
== 24. Проєктні чати, чати робочих груп і чат задачі == | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''K2 Chat повинен підтримувати автоматичне створення чатів для проєктів, робочих груп, задач, спринтів, Helpdesk-звернень, баг-репортів і CRM-угод.''' | |||
</div> | |||
=== 24.1. Чат робочої групи === | |||
Для кожної робочої групи або підрозділу потрібно передбачити окремий чат. | |||
Потрібно передбачити: | |||
* автоматичне створення чату робочої групи; | |||
* автоматичне додавання учасників групи; | |||
* автоматичне виключення користувача з чату при виході з групи; | |||
* синхронізацію прав із робочою групою; | |||
* зв’язок чату з документами, задачами, файлами та подіями групи; | |||
* можливість вимкнути чат для конкретної групи; | |||
* історію змін складу групи; | |||
* журнал доступу до чату. | |||
=== 24.2. Чат проєкту === | |||
Для кожного проєкту K2 ERP потрібно передбачити проєктний чат. | |||
Проєктний чат повинен містити: | |||
* учасників проєкту; | |||
* задачі проєкту; | |||
* файли проєкту; | |||
* обговорення проєкту; | |||
* рішення; | |||
* ризики; | |||
* протоколи зустрічей; | |||
* відеоконференції; | |||
* записи зустрічей; | |||
* транскрибації; | |||
* дедлайни; | |||
* повідомлення про зміни статусів задач. | |||
=== 24.3. Чат задачі === | |||
Кожна важлива задача може мати власний чат. | |||
Чат задачі повинен дозволяти: | |||
* обговорювати задачу без втрати контексту; | |||
* бачити постановника; | |||
* бачити відповідального; | |||
* бачити спостерігачів; | |||
* бачити дедлайн; | |||
* бачити статус задачі; | |||
* прикріплювати файли; | |||
* проводити дзвінок по задачі; | |||
* створювати підзадачі з повідомлень; | |||
* створювати чекліст із повідомлень; | |||
* фіксувати рішення; | |||
* формувати короткий підсумок обговорення; | |||
* автоматично переносити важливі повідомлення в історію задачі. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' чат задачі повинен бути не додатковим коментарем, а повноцінним робочим простором: обговорення, файли, дзвінки, рішення, підсумки, відповідальні та дедлайни. | |||
</div> | |||
== 25. Відкриті лінії, контакт-центр і робота з клієнтськими діалогами == | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''K2 Chat повинен мати режим відкритих ліній — єдиного центру обробки повідомлень із сайту, месенджерів, соціальних мереж, email, CRM-форм, телефонії та зовнішніх каналів.''' | |||
</div> | |||
=== 25.1. Єдиний список клієнтських діалогів === | |||
Оператор повинен бачити всі клієнтські діалоги в одному інтерфейсі. | |||
Потрібно передбачити: | |||
* нові діалоги; | |||
* діалоги без відповіді; | |||
* діалоги в роботі; | |||
* діалоги, передані іншому оператору; | |||
* діалоги, що очікують відповіді клієнта; | |||
* закриті діалоги; | |||
* прострочені діалоги; | |||
* діалоги з високим пріоритетом; | |||
* діалоги з VIP-клієнтами; | |||
* діалоги з різних каналів комунікації. | |||
=== 25.2. Передача діалогу іншому оператору === | |||
Потрібно передбачити можливість передати діалог: | |||
* іншому оператору; | |||
* іншій групі підтримки; | |||
* менеджеру з продажу; | |||
* бухгалтеру; | |||
* розробнику; | |||
* тестувальнику; | |||
* керівнику; | |||
* зовнішньому інтегратору, якщо це дозволено правами. | |||
Передача діалогу повинна зберігати: | |||
* історію переписки; | |||
* файли; | |||
* нотатки; | |||
* статус звернення; | |||
* пріоритет; | |||
* CRM-картку клієнта; | |||
* пов’язані задачі; | |||
* пов’язані баг-репорти; | |||
* попереднього відповідального; | |||
* нового відповідального; | |||
* дату передачі; | |||
* причину передачі. | |||
=== 25.3. Додавання колег у клієнтський діалог === | |||
Оператор повинен мати можливість додати колегу до діалогу. | |||
Потрібно передбачити: | |||
* додавання співробітника в діалог; | |||
* згадку співробітника через @; | |||
* внутрішній коментар без показу клієнту; | |||
* запит консультації; | |||
* тимчасове підключення експерта; | |||
* видалення експерта після консультації; | |||
* журнал підключення колег. | |||
=== 25.4. Приватні нотатки оператора === | |||
У клієнтському діалозі потрібно передбачити приватні нотатки. | |||
Приватні нотатки повинні бути видимі: | |||
* оператору; | |||
* керівнику підтримки; | |||
* менеджеру; | |||
* адміністратору; | |||
* іншим співробітникам із відповідними правами. | |||
Клієнт не повинен бачити приватні нотатки. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Критична вимога:''' приватні нотатки оператора не повинні випадково відправлятися клієнту або в зовнішній месенджер. | |||
</div> | |||
=== 25.5. Готові відповіді === | |||
Потрібно передбачити готові відповіді для операторів. | |||
Готові відповіді можуть використовуватись для: | |||
* привітання; | |||
* уточнення контактних даних; | |||
* запиту скриншоту; | |||
* запиту доступу; | |||
* повідомлення про прийняття в роботу; | |||
* повідомлення про передачу розробнику; | |||
* повідомлення про виправлення; | |||
* повідомлення про оновлення; | |||
* закриття звернення; | |||
* типових бухгалтерських питань; | |||
* типових технічних питань; | |||
* типових комерційних питань. | |||
=== 25.6. CRM-форми в чаті === | |||
Оператор повинен мати можливість відправити клієнту CRM-форму прямо в чат. | |||
CRM-форма може використовуватись для: | |||
* збору контактів; | |||
* запиту на впровадження; | |||
* заявки на демонстрацію; | |||
* заявки на навчання; | |||
* реєстрації на вебінар; | |||
* збору технічної інформації; | |||
* оформлення звернення; | |||
* уточнення реквізитів компанії; | |||
* створення ліда; | |||
* створення угоди; | |||
* створення контакту; | |||
* створення контрагента. | |||
=== 25.7. Автоматичне створення CRM-контакту === | |||
Якщо користувач звернувся з сайту, месенджера, соціальної мережі або email, система повинна перевірити наявність такого контакту в CRM. | |||
Потрібно передбачити: | |||
* пошук контакту за email; | |||
* пошук контакту за телефоном; | |||
* пошук контакту за зовнішнім ID месенджера; | |||
* пошук контакту за соціальним профілем; | |||
* створення нового контакту; | |||
* створення нового ліда; | |||
* прив’язку діалогу до існуючого контакту; | |||
* прив’язку діалогу до контрагента; | |||
* прив’язку діалогу до угоди; | |||
* захист від дублювання контактів. | |||
=== 25.8. Статистика клієнтських діалогів === | |||
Потрібно передбачити статистику відкритих ліній. | |||
Звіти повинні показувати: | |||
* кількість діалогів; | |||
* кількість нових звернень; | |||
* кількість закритих звернень; | |||
* середній час першої відповіді; | |||
* середній час вирішення; | |||
* кількість прострочених звернень; | |||
* навантаження на операторів; | |||
* ефективність операторів; | |||
* популярні канали звернень; | |||
* оцінку задоволеності клієнтів; | |||
* кількість діалогів, що стали лідами; | |||
* кількість діалогів, що стали задачами; | |||
* кількість діалогів, що стали баг-репортами. | |||
== 26. Зв’язок із CRM == | |||
K2 Chat повинен бути інтегрований із CRM. | |||
Потрібно передбачити: | |||
* створення ліда з повідомлення; | |||
* прив’язку переписки до ліда; | |||
* прив’язку переписки до контакту; | |||
* прив’язку переписки до контрагента; | |||
* створення задачі менеджеру; | |||
* передачу історії комунікації в CRM; | |||
* відображення CRM-картки в чаті; | |||
* автоматичне визначення клієнта за email або телефоном; | |||
* створення нагадування; | |||
* передавання звернення у воронку продажів; | |||
* збереження записів дзвінків у CRM; | |||
* збереження транскрибацій у CRM; | |||
* прив’язку відеоконференцій до угод або лідів. | |||
== 27. Зв’язок із системою задач == | |||
З повідомлення або звернення потрібно мати можливість створити задачу. | |||
Задача повинна містити: | |||
* текст повідомлення; | |||
* автора; | |||
* чат; | |||
* дату; | |||
* вкладення; | |||
* посилання на повідомлення; | |||
* відповідального; | |||
* дедлайн; | |||
* пріоритет; | |||
* статус; | |||
* пов’язані ERP-об’єкти; | |||
* транскрибацію, якщо задача створена з голосу або відеозустрічі; | |||
* посилання на запис, якщо задача створена за результатами дзвінка або конференції. | |||
== 28. Зв’язок із K2 Mantis або баг-трекінгом == | |||
K2 Chat повинен мати інтеграцію з баг-трекінгом. | |||
Потрібно передбачити: | |||
* створення багу з повідомлення; | |||
* створення багу зі звернення Helpdesk; | |||
* створення багу з голосового повідомлення; | |||
* створення багу з транскрибації; | |||
* створення багу з відеоконференції; | |||
* прив’язку багу до клієнта; | |||
* прив’язку багу до модуля K2 ERP; | |||
* відправку статусу багу в чат; | |||
* повідомлення користувача про виправлення; | |||
* автоматичне закриття звернення після підтвердження. | |||
== 29. Зв’язок із VDoc == | |||
K2 Chat повинен мати зв’язок із VDoc. | |||
Потрібно передбачити: | |||
* прикріплення файлу з VDoc у чат; | |||
* створення обговорення навколо файлу; | |||
* передавання посилання на версію документа; | |||
* збереження історії обговорення документа; | |||
* контроль прав доступу; | |||
* неможливість фізичного видалення важливих документів; | |||
* збереження протоколів зустрічей; | |||
* збереження транскрибацій; | |||
* збереження важливих записів відеоконференцій; | |||
* використання Active=false для позначення неактивного або видаленого запису згідно логіки K2 ERP. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Технічна примітка:''' для позначення запису або файлу як неактивного в K2 ERP використовується поле '''Active=false''', а не окреме поле deleted_mark. | |||
</div> | |||
== 30. Зв’язок із навчальним модулем K2 == | |||
K2 Chat може використовуватись у навчальному модулі. | |||
Потрібно передбачити: | |||
* чат курсу; | |||
* чат групи студентів; | |||
* чат із куратором; | |||
* питання по уроку; | |||
* обговорення завдання; | |||
* повідомлення про дедлайн; | |||
* повідомлення про оцінку; | |||
* повідомлення про сертифікат; | |||
* звернення в підтримку навчального курсу; | |||
* навчальні вебінари; | |||
* стрімінгові лекції; | |||
* запис занять; | |||
* транскрибацію занять; | |||
* опитування студентів; | |||
* автоматичне створення навчальних матеріалів із записів. | |||
== 31. AI-помічник у K2 Chat == | |||
<div style="background:#f3e5f5; border-left:6px solid #7b1fa2; padding:12px; margin:12px 0;"> | |||
'''K2 Chat повинен підтримувати AI-помічника для обробки повідомлень, голосу, дзвінків, задач, Helpdesk-звернень, CRM-комунікацій і підготовки відповідей.''' | |||
</div> | |||
=== 31.1. AI-можливості в чаті === | |||
AI-помічник повинен допомагати: | |||
* писати відповіді; | |||
* скорочувати довгі повідомлення; | |||
* робити підсумок переписки; | |||
* виділяти ключові домовленості; | |||
* виділяти задачі; | |||
* виділяти ризики; | |||
* виділяти питання без відповіді; | |||
* формувати баг-репорт із переписки; | |||
* формувати Helpdesk-відповідь; | |||
* формувати CRM-коментар; | |||
* формувати протокол зустрічі; | |||
* створювати чекліст; | |||
* перекладати повідомлення; | |||
* покращувати стиль повідомлення; | |||
* визначати тональність клієнта; | |||
* визначати терміновість звернення. | |||
=== 31.2. Голосове розпізнавання для задач === | |||
Потрібно передбачити можливість створення задачі голосом. | |||
Користувач може надиктувати: | |||
* назву задачі; | |||
* опис задачі; | |||
* відповідального; | |||
* дедлайн; | |||
* пріоритет; | |||
* чекліст; | |||
* пов’язаний ERP-об’єкт; | |||
* пов’язаний документ; | |||
* пов’язаного клієнта або ліда. | |||
Система повинна перетворити голос у структуровану задачу. | |||
=== 31.3. AI-аналіз дзвінків і відеоконференцій === | |||
Після дзвінка або відеоконференції AI-помічник повинен мати можливість сформувати: | |||
* короткий підсумок; | |||
* повну транскрибацію; | |||
* список задач; | |||
* список відповідальних; | |||
* список дедлайнів; | |||
* список домовленостей; | |||
* список ризиків; | |||
* список питань, що залишились відкритими; | |||
* пропозицію тексту відповіді клієнту; | |||
* пропозицію створення задачі; | |||
* пропозицію створення баг-репорту; | |||
* пропозицію створення CRM-активності. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:12px; margin:12px 0;"> | |||
'''Важливо:''' AI-помічник не повинен автоматично виконувати критичні дії без підтвердження користувача, якщо це впливає на документи, клієнтів, задачі, фінансові дані або права доступу. | |||
</div> | |||
== 32. Боти та автоматизація == | |||
Потрібно передбачити можливість створення ботів. | |||
Боти можуть використовуватись для: | |||
* автоматичних відповідей; | |||
* створення задач; | |||
* створення баг-репортів; | |||
* повідомлень про оновлення K2 ERP; | |||
* повідомлень про нові документи; | |||
* нагадувань; | |||
* повідомлень про дедлайни; | |||
* контролю SLA; | |||
* інтеграцій із зовнішніми системами; | |||
* навчальних сценаріїв; | |||
* збору даних від користувача; | |||
* передачі інформації в CRM; | |||
* запуску опитувань; | |||
* підготовки підсумків; | |||
* створення протоколів зустрічей. | |||
=== 32.1. Системні боти === | |||
Потрібно передбачити системних ботів: | |||
* бот технічної підтримки; | |||
* бот повідомлень ERP; | |||
* бот задач; | |||
* бот баг-репортів; | |||
* бот оновлень; | |||
* бот навчання; | |||
* бот SLA; | |||
* бот інтеграцій; | |||
* бот безпеки; | |||
* бот транскрибації; | |||
* бот відеоконференцій; | |||
* AI-бот. | |||
== 33. Desktop-додаток, мультиакаунти та телефонія == | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''K2 Chat повинен мати можливість роботи не тільки у браузері, а й через окремий додаток або клієнт, який може працювати з кількома хмарами K2 ERP одночасно.''' | |||
</div> | |||
=== 33.1. Desktop-додаток === | |||
Потрібно передбачити можливість створення desktop-додатку для: | |||
* Windows; | |||
* Linux; | |||
* macOS. | |||
Desktop-додаток повинен підтримувати: | |||
* особисті чати; | |||
* групові чати; | |||
* канали; | |||
* Helpdesk; | |||
* повідомлення про нові події; | |||
* дзвінки; | |||
* відеоконференції; | |||
* запис дзвінків; | |||
* роботу з файлами; | |||
* відкриття ERP-карток; | |||
* швидкий перехід у веб-інтерфейс K2 ERP; | |||
* роботу у фоновому режимі; | |||
* системні сповіщення операційної системи. | |||
=== 33.2. Мультиакаунти та кілька хмар === | |||
Користувач повинен мати можливість працювати з кількома хмарами K2 ERP. | |||
Потрібно передбачити: | |||
* підключення кількох хмар; | |||
* швидке перемикання між хмарами; | |||
* одночасну роботу з кількома хмарами; | |||
* окремі сповіщення по кожній хмарі; | |||
* окремі права доступу по кожній хмарі; | |||
* окреме зберігання переписки в кожній хмарі; | |||
* заборону змішування даних різних хмар; | |||
* маркування повідомлень за хмарою; | |||
* контроль міжхмарної безпеки. | |||
=== 33.3. Телефонія в чаті === | |||
Потрібно передбачити інтеграцію телефонії з K2 Chat. | |||
Система повинна дозволяти: | |||
* показувати телефонний дзвінок у Messenger; | |||
* створювати окремий чат для кожного дзвінка; | |||
* створювати єдиний чат для всіх дзвінків із клієнтом; | |||
* не показувати телефонні дзвінки в чаті, якщо так налаштовано; | |||
* записувати телефонний дзвінок; | |||
* транскрибувати телефонний дзвінок; | |||
* створювати задачу з дзвінка; | |||
* створювати CRM-активність із дзвінка; | |||
* створювати Helpdesk-звернення з дзвінка; | |||
* прив’язувати дзвінок до клієнта, ліда, контакту або контрагента; | |||
* показувати історію дзвінків у картці клієнта. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''Перевага для бізнесу:''' телефонні дзвінки, чати, відеоконференції, Helpdesk і CRM повинні працювати як єдина історія комунікації з клієнтом. | |||
</div> | |||
== 34. Сповіщення == | |||
K2 Chat повинен мати систему сповіщень. | |||
Потрібно передбачити: | |||
* сповіщення в інтерфейсі K2 ERP; | |||
* звукові сповіщення; | |||
* push-сповіщення для веб-додатку; | |||
* email-сповіщення; | |||
* сповіщення в зовнішні месенджери; | |||
* сповіщення про згадки; | |||
* сповіщення про нові звернення; | |||
* сповіщення про критичні баги; | |||
* сповіщення про прострочені SLA; | |||
* сповіщення про відповідь клієнта; | |||
* сповіщення про зміну статусу задачі; | |||
* сповіщення про новий ERP-об’єкт у чаті; | |||
* сповіщення про початок відеоконференції; | |||
* сповіщення про готовність транскрибації; | |||
* сповіщення про готовність запису. | |||
=== 34.1. Налаштування сповіщень користувачем === | |||
Користувач повинен мати можливість налаштувати: | |||
* отримувати всі сповіщення; | |||
* отримувати тільки згадки; | |||
* вимкнути сповіщення на певний час; | |||
* вимкнути звук; | |||
* вимкнути сповіщення конкретного чату; | |||
* налаштувати робочий час; | |||
* налаштувати режим “Не турбувати”. | |||
== 35. Пошук == | |||
Потрібно передбачити потужний пошук. | |||
Пошук повинен працювати по: | |||
* повідомленнях; | |||
* чатах; | |||
* групах; | |||
* каналах; | |||
* користувачах; | |||
* файлах; | |||
* зверненнях; | |||
* баг-репортах; | |||
* ERP-картках; | |||
* лідах; | |||
* контрагентах; | |||
* документах; | |||
* задачах; | |||
* тредах; | |||
* голосових транскрибаціях; | |||
* відеотранскрибаціях; | |||
* нотатках; | |||
* опитуваннях; | |||
* протоколах зустрічей. | |||
Фільтри пошуку: | |||
* дата; | |||
* автор; | |||
* чат; | |||
* канал; | |||
* тип повідомлення; | |||
* наявність файлу; | |||
* статус звернення; | |||
* пріоритет; | |||
* ERP-об’єкт; | |||
* тег; | |||
* хмара; | |||
* інтеграційний канал; | |||
* наявність запису; | |||
* наявність транскрибації; | |||
* тип медіа. | |||
== 36. Адміністративний інтерфейс == | |||
Адміністратор повинен мати можливість: | |||
* створювати чати; | |||
* створювати канали; | |||
* керувати користувачами; | |||
* керувати ролями; | |||
* налаштовувати права; | |||
* налаштовувати Helpdesk; | |||
* налаштовувати SLA; | |||
* налаштовувати інтеграції; | |||
* налаштовувати API-доступ; | |||
* налаштовувати міжхмарні з’єднання; | |||
* переглядати журнали; | |||
* переглядати статистику; | |||
* блокувати користувачів; | |||
* блокувати зовнішні хмари; | |||
* відкликати токени; | |||
* вмикати режим підвищеної безпеки; | |||
* налаштовувати відеосервери; | |||
* налаштовувати політики запису; | |||
* налаштовувати політики транскрибації; | |||
* налаштовувати правила зберігання повідомлень. | |||
== 37. Безпека == | |||
K2 Chat повинен відповідати підвищеним вимогам безпеки корпоративних клієнтів. | |||
Потрібно передбачити: | |||
* авторизацію користувачів через K2 ERP; | |||
* рольову модель доступу; | |||
* контроль прав на чати; | |||
* контроль прав на канали; | |||
* контроль прав на файли; | |||
* контроль прав на ERP-об’єкти; | |||
* контроль прав на записи дзвінків; | |||
* контроль прав на записи відеоконференцій; | |||
* контроль прав на транскрибації; | |||
* журнал входів; | |||
* журнал дій користувачів; | |||
* журнал API-запитів; | |||
* журнал міжхмарних обмінів; | |||
* обмеження доступу за IP, якщо потрібно; | |||
* двофакторну автентифікацію, якщо вона підключена в K2 ERP; | |||
* сесії користувачів; | |||
* примусове завершення сесій; | |||
* політики паролів; | |||
* обмеження спроб входу; | |||
* захист від brute-force; | |||
* захист від XSS; | |||
* захист від CSRF; | |||
* захист від SQL injection; | |||
* захист API від перевантаження. | |||
=== 37.1. Шифрування трафіку === | |||
Потрібно передбачити шифрування трафіку між клієнтом і сервером. | |||
Мінімальні вимоги: | |||
* HTTPS; | |||
* TLS; | |||
* захищені WebSocket-з’єднання; | |||
* захищена передача API-запитів; | |||
* захищена передача файлів; | |||
* захищена передача аудіо; | |||
* захищена передача відео; | |||
* захищена міжхмарна комунікація. | |||
=== 37.2. Підвищений рівень безпеки === | |||
Для клієнтів із підвищеними вимогами до безпеки потрібно передбачити спеціальний режим. | |||
У цьому режимі можуть використовуватися: | |||
* посилене шифрування трафіку; | |||
* окремі ключі хмари; | |||
* додаткове шифрування повідомлень; | |||
* обмеження міжхмарних повідомлень; | |||
* обмеження інтеграцій із зовнішніми месенджерами; | |||
* заборона передачі файлів назовні; | |||
* заборона передачі записів назовні; | |||
* обов’язкова двофакторна автентифікація; | |||
* журналювання всіх дій; | |||
* зберігання даних тільки в приватній хмарі клієнта; | |||
* відключення зовнішніх webhook; | |||
* контроль пристроїв користувачів. | |||
<div style="background:#ffebee; border-left:6px solid #c62828; padding:12px; margin:12px 0;"> | |||
'''Критична вимога:''' у режимі підвищеної безпеки жодна переписка, запис голосу, запис відеоконференції, транскрибація або файл не повинні передаватися у зовнішні сервіси без явного дозволу адміністратора хмари. | |||
</div> | |||
== 38. Права доступу == | |||
Потрібно передбачити гнучку систему прав доступу. | |||
Права повинні налаштовуватись для: | |||
* користувача; | |||
* ролі; | |||
* групи; | |||
* підрозділу; | |||
* чату; | |||
* каналу; | |||
* Helpdesk-черги; | |||
* інтеграції; | |||
* API-користувача; | |||
* зовнішньої хмари; | |||
* відеоконференції; | |||
* стрімінгу; | |||
* запису; | |||
* транскрибації. | |||
=== 38.1. Приклади прав === | |||
{| class="wikitable" style="width:100%; border-collapse:collapse;" | |||
! Право | |||
| ! Опис | | |||
| ------------------------------------------------------------- | | |||
| Перегляд чату | | |||
| Користувач може бачити чат. | | |||
| - | | |||
| Відправка повідомлень | | |||
| Користувач може писати повідомлення. | | |||
| - | | |||
| Редагування своїх повідомлень | | |||
| Користувач може редагувати власні повідомлення. | | |||
| - | | |||
| Видалення своїх повідомлень | | |||
| Користувач може видаляти або приховувати власні повідомлення. | | |||
| - | | |||
| Модерація | | |||
| Користувач може керувати повідомленнями інших учасників. | | |||
| - | | |||
| Керування учасниками | | |||
| Користувач може додавати та видаляти учасників. | | |||
| - | | |||
| Керування каналом | | |||
| Користувач може змінювати налаштування каналу. | | |||
| - | | |||
| Робота з Helpdesk | | |||
| Користувач може приймати і обробляти звернення. | | |||
| - | | |||
| Створення баг-репортів | | |||
| Користувач може створювати баги зі звернень. | | |||
| - | | |||
| Міжхмарна комунікація | | |||
| Користувач може спілкуватися з користувачами інших хмар. | | |||
| - | | |||
| API-доступ | | |||
| Користувач або сервіс може працювати через API. | | |||
| - | | |||
| Створення відеоконференції | | |||
| Користувач може створювати відеоконференції. | | |||
| - | | |||
| Запис конференції | | |||
| Користувач може вмикати запис відеозустрічі. | | |||
| - | | |||
| Перегляд записів | | |||
| Користувач може переглядати записи відповідно до прав. | | |||
| - | | |||
| Створення стрімінгу | | |||
| Користувач може створювати великі онлайн-трансляції. | | |||
| } | | |||
== 39. Звіти та аналітика == | |||
Потрібно передбачити звіти: | |||
* кількість повідомлень; | |||
* активність користувачів; | |||
* активність чатів; | |||
* кількість звернень; | |||
* кількість закритих звернень; | |||
* середній час відповіді; | |||
* середній час закриття звернення; | |||
* прострочені SLA; | |||
* завантаженість операторів; | |||
* кількість баг-репортів; | |||
* кількість задач із чату; | |||
* джерела звернень; | |||
* ефективність каналів підтримки; | |||
* статистика міжхмарних повідомлень; | |||
* статистика інтеграцій; | |||
* кількість відеоконференцій; | |||
* кількість записів; | |||
* кількість транскрибацій; | |||
* активність у стрімах; | |||
* статистика переглядів вебінарів; | |||
* оцінка задоволеності клієнтів. | |||
== 40. Журнали та аудит == | |||
Потрібно вести аудит: | |||
* входів користувачів; | |||
* відправки повідомлень; | |||
* редагування повідомлень; | |||
* видалення повідомлень; | |||
* створення чатів; | |||
* зміни прав; | |||
* створення Helpdesk-звернень; | |||
* зміни статусів звернень; | |||
* створення баг-репортів; | |||
* API-запитів; | |||
* міжхмарної комунікації; | |||
* підключення зовнішніх месенджерів; | |||
* помилок доставки; | |||
* дій адміністраторів; | |||
* початку дзвінків; | |||
* завершення дзвінків; | |||
* увімкнення запису; | |||
* перегляду записів; | |||
* завантаження записів; | |||
* редагування транскрибацій; | |||
* створення стрімінгів; | |||
* підключення зовнішніх гостей. | |||
<div style="background:#e3f2fd; border-left:6px solid #1565c0; padding:12px; margin:12px 0;"> | |||
'''Аудит''' є обов’язковим для корпоративного використання, оскільки чат може містити критичну бізнес-інформацію, юридично важливу переписку, записи переговорів, технічні рішення та комерційні домовленості. | |||
</div> | |||
== 41. Структура бази даних == | |||
На етапі проєктування потрібно передбачити такі основні сутності: | |||
* chat_users; | |||
* chat_rooms; | |||
* chat_room_users; | |||
* chat_messages; | |||
* chat_message_files; | |||
* chat_message_reactions; | |||
* chat_threads; | |||
* chat_channels; | |||
* chat_channel_subscribers; | |||
* chat_polls; | |||
* chat_poll_answers; | |||
* chat_notes; | |||
* chat_favorites; | |||
* chat_helpdesk_tickets; | |||
* chat_ticket_statuses; | |||
* chat_ticket_priorities; | |||
* chat_ticket_history; | |||
* chat_integrations; | |||
* chat_webhooks; | |||
* chat_api_tokens; | |||
* chat_cloud_links; | |||
* chat_cloud_messages; | |||
* chat_bots; | |||
* chat_notifications; | |||
* chat_voice_messages; | |||
* chat_voice_calls; | |||
* chat_video_meetings; | |||
* chat_video_records; | |||
* chat_streams; | |||
* chat_transcriptions; | |||
* chat_audit_log; | |||
* chat_security_settings. | |||
=== 41.1. Основні поля повідомлення === | |||
Повідомлення повинно містити: | |||
* ідентифікатор; | |||
* ідентифікатор чату; | |||
* ідентифікатор автора; | |||
* текст повідомлення; | |||
* тип повідомлення; | |||
* дата створення; | |||
* дата редагування; | |||
* ознака активності; | |||
* ознака прочитання; | |||
* відповідь на повідомлення; | |||
* тред; | |||
* вкладення; | |||
* ERP-об’єкт; | |||
* службові метадані. | |||
== 42. Типи повідомлень == | |||
Потрібно передбачити такі типи повідомлень: | |||
* текст; | |||
* файл; | |||
* зображення; | |||
* голосове повідомлення; | |||
* відеоповідомлення; | |||
* системне повідомлення; | |||
* ERP-картка; | |||
* Helpdesk-звернення; | |||
* баг-репорт; | |||
* задача; | |||
* повідомлення від бота; | |||
* повідомлення з сайту; | |||
* повідомлення з Telegram; | |||
* повідомлення зі Slack; | |||
* email-повідомлення; | |||
* міжхмарне повідомлення; | |||
* службова подія; | |||
* запис дзвінка; | |||
* запис відеоконференції; | |||
* транскрибація; | |||
* опитування; | |||
* нотатка. | |||
== 43. Інтерфейс користувача == | |||
Інтерфейс K2 Chat повинен бути зручним для великої кількості користувачів. | |||
Основні елементи інтерфейсу: | |||
* список чатів; | |||
* список каналів; | |||
* список Helpdesk-звернень; | |||
* область повідомлень; | |||
* поле введення повідомлення; | |||
* кнопка запису голосу; | |||
* кнопка прикріплення файлу; | |||
* кнопка відправки ERP-об’єкта; | |||
* кнопка створення задачі; | |||
* кнопка створення баг-репорту; | |||
* кнопка відеоконференції; | |||
* кнопка стрімінгу; | |||
* пошук; | |||
* фільтри; | |||
* панель інформації про чат; | |||
* панель учасників; | |||
* панель треду; | |||
* панель пов’язаного звернення; | |||
* панель пов’язаного ERP-об’єкта; | |||
* бокова панель файлів, медіа, посилань і нотаток; | |||
* налаштування сповіщень; | |||
* статус користувача. | |||
=== 43.1. Інтерфейс оператора підтримки === | |||
Оператор підтримки повинен бачити: | |||
* нові звернення; | |||
* звернення в роботі; | |||
* прострочені звернення; | |||
* критичні звернення; | |||
* історію діалогу; | |||
* дані клієнта; | |||
* пов’язані ERP-об’єкти; | |||
* кнопки створення задачі; | |||
* кнопки створення баг-репорту; | |||
* шаблони відповідей; | |||
* приватні нотатки; | |||
* SLA; | |||
* відповідального; | |||
* статус звернення; | |||
* записи дзвінків; | |||
* транскрибації; | |||
* історію попередніх звернень. | |||
=== 43.2. Інтерфейс адміністратора === | |||
Адміністратор повинен бачити: | |||
* користувачів; | |||
* ролі; | |||
* чати; | |||
* канали; | |||
* інтеграції; | |||
* API-токени; | |||
* міжхмарні підключення; | |||
* журнали безпеки; | |||
* статистику; | |||
* налаштування шифрування; | |||
* налаштування Helpdesk; | |||
* налаштування SLA; | |||
* налаштування відео; | |||
* налаштування записів; | |||
* налаштування транскрибацій; | |||
* налаштування стрімінгу. | |||
== 44. Шаблони відповідей == | |||
Для Helpdesk потрібно передбачити шаблони відповідей. | |||
Шаблони можуть використовуватись для: | |||
* першої відповіді; | |||
* запиту додаткової інформації; | |||
* повідомлення про прийняття в роботу; | |||
* повідомлення про передачу розробнику; | |||
* повідомлення про виправлення; | |||
* повідомлення про відмову; | |||
* повідомлення про закриття звернення; | |||
* повідомлення про оновлення системи; | |||
* відповіді після відеозустрічі; | |||
* відповіді після аналізу транскрибації. | |||
== 45. Автоматичні правила == | |||
Потрібно передбачити механізм автоматичних правил. | |||
Приклади правил: | |||
* якщо звернення з сайту має тему “помилка”, створити Helpdesk-звернення; | |||
* якщо повідомлення містить слово “критично”, встановити високий пріоритет; | |||
* якщо клієнт прикріпив скриншот, додати його до звернення; | |||
* якщо звернення не оброблено 30 хвилин, повідомити керівника; | |||
* якщо баг закрито, повідомити автора звернення; | |||
* якщо повідомлення прийшло з Telegram, направити його в потрібну чергу; | |||
* якщо звернення від VIP-клієнта, встановити підвищений пріоритет; | |||
* якщо завершено відеоконференцію, створити транскрибацію; | |||
* якщо транскрибація містить домовленість, запропонувати створити задачу; | |||
* якщо в дзвінку згадується помилка, запропонувати створити баг-репорт. | |||
== 46. Надійність і відмовостійкість == | |||
Потрібно передбачити: | |||
* чергу недоставлених повідомлень; | |||
* повторну доставку; | |||
* захист від дублювання повідомлень; | |||
* резервне копіювання; | |||
* відновлення після збою; | |||
* контроль цілісності повідомлень; | |||
* моніторинг сервісу; | |||
* логування помилок; | |||
* повідомлення адміністратора про збої; | |||
* можливість тимчасового відключення інтеграцій; | |||
* резервування відеосервісів; | |||
* збереження запису конференції при нестабільному з’єднанні; | |||
* відновлення обробки транскрибації після збою. | |||
== 47. Резервне копіювання == | |||
Дані K2 Chat повинні входити в політику резервного копіювання хмари K2 ERP. | |||
Потрібно резервувати: | |||
* повідомлення; | |||
* файли; | |||
* звернення; | |||
* баг-репорти; | |||
* журнали; | |||
* налаштування; | |||
* інтеграції; | |||
* ключі, у захищеному вигляді; | |||
* міжхмарні зв’язки; | |||
* голосові повідомлення; | |||
* записи дзвінків; | |||
* записи відеоконференцій; | |||
* записи стрімів; | |||
* транскрибації; | |||
* нотатки; | |||
* опитування. | |||
== 48. Вимоги до продуктивності == | |||
Модуль повинен забезпечувати: | |||
* швидке відкриття списку чатів; | |||
* швидке завантаження останніх повідомлень; | |||
* миттєву доставку нових повідомлень; | |||
* швидкий пошук; | |||
* стабільну роботу при великій кількості користувачів; | |||
* оптимізовану роботу з файлами; | |||
* стабільну роботу Helpdesk; | |||
* стабільну роботу API; | |||
* контроль навантаження на сервер; | |||
* стабільну роботу голосових повідомлень; | |||
* стабільну роботу відеоконференцій; | |||
* масштабований стрімінг для великої кількості глядачів; | |||
* фонову обробку транскрибацій. | |||
== 49. Вимоги до сумісності == | |||
K2 Chat повинен працювати: | |||
* у сучасних браузерах; | |||
* у хмарі K2 ERP; | |||
* у приватних інсталяціях K2 ERP; | |||
* через API; | |||
* із зовнішніми сайтами; | |||
* із зовнішніми месенджерами через інтеграції; | |||
* із модулями K2 ERP; | |||
* із системою ролей K2 ERP; | |||
* із системою файлів K2 ERP; | |||
* із VDoc; | |||
* із CRM; | |||
* із Helpdesk; | |||
* із баг-трекінгом; | |||
* із K2 Projects; | |||
* із навчальним модулем; | |||
* із телефонією; | |||
* із відеосерверами; | |||
* із сервісами транскрибації. | |||
== 50. MVP першої версії == | |||
У першій версії модуля потрібно реалізувати мінімально необхідний функціонал. | |||
До MVP входить: | |||
* особисті повідомлення; | |||
* групові чати; | |||
* канали; | |||
* відправка файлів; | |||
* WebSocket-повідомлення в реальному часі; | |||
* історія переписки; | |||
* пошук; | |||
* базові ролі; | |||
* базова авторизація через K2 ERP; | |||
* Helpdesk-звернення; | |||
* створення задачі з повідомлення; | |||
* створення баг-репорту з повідомлення; | |||
* віджет звернення з сайту; | |||
* API для відправки та отримання повідомлень; | |||
* передача ERP-картки в чат; | |||
* журнал дій; | |||
* базові сповіщення; | |||
* зберігання даних у хмарі K2 ERP; | |||
* голосові повідомлення; | |||
* базова транскрибація голосових повідомлень; | |||
* базові відеоконференції для невеликих груп; | |||
* запис відеоконференції; | |||
* збереження записів у хмарі K2 ERP; | |||
* готові відповіді для Helpdesk; | |||
* приватні нотатки оператора; | |||
* обране; | |||
* бокова панель файлів і посилань. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:12px; margin:12px 0;"> | |||
'''MVP повинен дати компанії можливість замінити частину внутрішніх комунікацій, приймати звернення з сайту, створювати задачі та баг-репорти, передавати ERP-об’єкти, записувати голос і проводити базові відеозустрічі без виходу з K2 ERP.''' | |||
</div> | |||
== 51. Наступні етапи розвитку == | |||
Після MVP потрібно передбачити розвиток: | |||
* міжхмарний обмін повідомленнями; | |||
* інтеграція з Telegram; | |||
* інтеграція зі Slack; | |||
* інтеграція з Email; | |||
* інтеграція з телефонією; | |||
* розширені боти; | |||
* розширений Helpdesk; | |||
* SLA; | |||
* треди; | |||
* теми в групах; | |||
* розширена аналітика; | |||
* мобільний додаток; | |||
* десктопний додаток; | |||
* режим підвищеної безпеки; | |||
* шифрування повідомлень; | |||
* інтеграція з навчальним модулем; | |||
* інтеграція з VDoc; | |||
* інтеграція з CRM; | |||
* інтеграція з K2 Projects; | |||
* стрімінг на сотні або тисячі користувачів; | |||
* розширена транскрибація відеозустрічей; | |||
* AI-помічник; | |||
* автоматичні протоколи зустрічей; | |||
* автоматичне створення задач із транскрибацій. | |||
== 52. Критерії приймання == | |||
Модуль вважається прийнятим, якщо: | |||
# Користувач може увійти в K2 Chat через K2 ERP. | |||
# Користувач може створити особистий чат. | |||
# Користувач може створити груповий чат. | |||
# Користувач може створити канал. | |||
# Користувач може відправити повідомлення. | |||
# Користувач може прикріпити файл. | |||
# Повідомлення доставляється в реальному часі. | |||
# Історія повідомлень зберігається на сервері хмари K2 ERP. | |||
# Користувач може знайти повідомлення через пошук. | |||
# Адміністратор може керувати правами. | |||
# Відвідувач сайту може створити звернення через віджет. | |||
# Оператор бачить звернення в Helpdesk. | |||
# Зі звернення можна створити задачу. | |||
# Зі звернення можна створити баг-репорт. | |||
# Користувач отримує відповідь по зверненню. | |||
# У чат можна передати ERP-об’єкт. | |||
# Доступ до ERP-об’єкта перевіряється правами K2 ERP. | |||
# API дозволяє відправляти та отримувати повідомлення. | |||
# Дії користувачів логуються. | |||
# Передача даних відбувається через захищене з’єднання. | |||
# Користувач може записати голосове повідомлення. | |||
# Система може створити транскрибацію голосового повідомлення. | |||
# Користувач може створити відеоконференцію. | |||
# Система може записати відеоконференцію. | |||
# Запис відеоконференції зберігається в хмарі K2 ERP. | |||
# Транскрибація доступна для пошуку. | |||
# Оператор може використати готову відповідь. | |||
# Оператор може створити приватну нотатку. | |||
# Користувач може додати повідомлення в обране. | |||
# Адміністратор може налаштувати політики зберігання. | |||
== 53. Очікуваний результат == | |||
У результаті розробки компанія повинна отримати модуль '''K2 Chat''', який: | |||
* працює всередині K2 ERP; | |||
* підтримує велику кількість користувачів; | |||
* зберігає переписку в хмарі K2 ERP; | |||
* дозволяє створювати чати, групи та канали; | |||
* підтримує Helpdesk; | |||
* приймає звернення з сайту; | |||
* створює задачі та баг-репорти; | |||
* передає інформацію з ERP у чат; | |||
* інтегрується з іншими месенджерами; | |||
* підтримує API; | |||
* підтримує міжхмарну комунікацію; | |||
* забезпечує аудит і контроль; | |||
* підтримує голосові повідомлення; | |||
* підтримує запис і транскрибацію голосу; | |||
* підтримує відеоконференції; | |||
* підтримує запис і транскрибацію відеозустрічей; | |||
* підтримує стрімінг для великої кількості користувачів; | |||
* підтримує відкриті лінії та контакт-центр; | |||
* підтримує AI-помічника; | |||
* підтримує desktop-додаток і мультиакаунти; | |||
* підтримує телефонію; | |||
* може працювати в режимі підвищеної безпеки. | |||
<div style="background:#e8f5e9; border-left:6px solid #2e7d32; padding:14px; margin:14px 0;"> | |||
'''K2 Chat''' повинен стати єдиним центром комунікацій у K2 ERP: для співробітників, клієнтів, партнерів, підтримки, розробників, бухгалтерів, менеджерів, керівників, студентів, викладачів, інтеграторів та зовнішніх користувачів. | |||
</div> | |||
== 54. Висновок == | |||
Модуль '''K2 Chat''' є стратегічним компонентом K2 ERP, який об’єднує корпоративний месенджер, Helpdesk, баг-трекінг, CRM-комунікації, інтеграції, міжхмарну комунікацію, голосові повідомлення, відеоконференції, стрімінг, транскрибацію, AI-помічника та передачу ERP-даних у єдиному середовищі. | |||
На відміну від звичайних месенджерів, K2 Chat повинен бути тісно пов’язаний із бізнес-процесами компанії. Повідомлення мають бути не просто текстом, а частиною управління задачами, документами, клієнтами, зверненнями, помилками, навчанням, підтримкою, зустрічами, домовленостями та розвитком підприємства. | |||
<div style="background:#fff8e1; border-left:6px solid #f9a825; padding:14px; margin:14px 0;"> | |||
'''Головна перевага K2 Chat:''' комунікація залишається всередині ERP-системи, під контролем компанії, з історією, правами доступу, аудитом, інтеграціями, записами, транскрибаціями та можливістю масштабування на велику кількість користувачів і хмар. | |||
</div> | |||