AAGO Android Design

автоматизация · готовые ответы

Готовые ответы

Библиотека шаблонов, которые оператор вставляет в поле ввода вместо того, чтобы печатать заново (в треде их открывает «/»). Список + FAB + отдельный экран-редактор — вместо десктопной «пустой строки снизу», которая не работает с экранной клавиатурой. Открывается из Ещё → Автоматизация, только у обладателя site:configure.

Ловушка целого списка (PUT всей библиотеки)

У готового ответа нет идентификатора — сервер хранит всю библиотеку одним значением на сайте и заменяет её целиком. Любое изменение — добавить, отредактировать, удалить — это правка списка в памяти и один PUT всего списка, после чего состояние пересеивается из ответа сервера, а не из запроса. Порядок сохраняется, потому что его задал оператор, а не потому что он что-то значит: с этим списком ничего не сопоставляется (в отличие от «Автоответа вне смены», где порядок — это поведение).

01

Список и пустое состояние

Каждая строка — заголовок и превью текста; тап открывает редактор. FAB добавляет новый ответ. Загрузка и ошибка чтения — общие тела LoadingBody / RefusalBody.

9:41
Готовые ответы
Приветствие
Здравствуйте! Меня зовут… Чем могу помочь?
Часы работы
Мы работаем ежедневно с 10:00 до 21:00 по МСК.
Как записаться
Записаться можно прямо в этом чате — напишите…
Отмена и перенос
Отменить или перенести запись можно за 2 часа…
Оплата
Оплатить можно картой на месте или онлайн…
Спасибо за обращение
Спасибо, что написали! Хорошего дня 🙂
/automation/canned · GET /sites/{siteId}/canned-responses

6 шаблонов. Заголовок — жирным, обрезается многоточием; вторая строка — превью тела в одну строку. Тап по строке открывает редактор именно этого ответа.

9:41
Готовые ответы

Пока нет готовых ответов

Добавьте первый шаблон — он появится в поле ввода по «/».

пустая библиотека — загруженное состояние, не ошибка

Пустой список — это нормальное загруженное состояние с FAB, а не отказ. Оператору сразу понятно, что делать.

02

Редактор — отдельный экран

Заголовок (одна строка, до 100) и текст (много строк, до 8000) со счётчиками. Сохранение отправляет весь список и пересеивает состояние из ответа сервера. У существующего ответа внизу — «Удалить» с подтверждением.

9:41
Новый ответ
Приветствие
Короткая подпись, по которой оператор выбирает ответ.
Здравствуйте! Меня зовут Анна. Чем могу помочь?
Вставляется в поле ввода как есть — можно отредактировать перед отправкой.
редактор нового ответа

Кнопка «Сохранить» неактивна, пока заголовок или текст пусты. При сохранении — «Сохранение…», затем PUT всего списка и возврат к списку.

9:41
Изменить ответ
Часы работы
Мы работаем ежедневно с 10:00 до 21:00 по МСК.
Удалить ответ
редактор существующего ответа

У существующего ответа появляется «Удалить». И правка, и удаление — это тот же PUT всего списка: элемент заменяется на своей позиции или выбрасывается, список отправляется целиком.

9:41
Изменить ответ
Часы работы
Мы работаем ежедневно с 10:00 до 21:00 по МСК.

Удалить готовый ответ?

«Часы работы» будет удалён из библиотеки. Это действие нельзя отменить.

Отмена
Удалить
подтверждение удаления

Material AlertDialog по центру. Системная кнопка «Назад» закрывает сначала диалог, потом экран (контракт кнопки «Назад»).

Крайние случаи