Уведомления и повторные вопросы
Что означает push и почему ответ может ещё ждать компьютер.

В этой главе · 8 разделов
Уведомления GrantTap возвращают вас к конкретному решению: разрешить действие, ответить на вопрос, разобраться с доставкой или принять решение по проекту. Они связаны с теми же элементами, которые вы видите в Needs You. Баннер — приглашение открыть запрос, а не отдельная копия поручения.
Начните с подключения телефона и одного безопасного сценария в тестовом проекте. Проверяйте уведомления без удаления существующих подключений и без выдачи лишних разрешений агенту.
Что может потребовать внимания#
| Событие | Что нужно сделать | Где смотреть контекст |
|---|---|---|
| Запрос разрешения | Изучить действие и выбрать допустимое решение | Полная карточка запроса и исходный чат |
| Вопрос агента | Выбрать вариант или написать свой ответ | Форма вопроса, задача и исполнение |
| Ошибка доставки | Проверить исходную операцию | Детали доставки и очередь |
| Решение по проекту | Понять последствия и подтвердить или отклонить | Проект и связанная задача |
Разрешение на конкретное действие, ответ на вопрос и обычное сообщение в чат — разные операции. Например, «Да» в вопросе не должно молча превращаться в глобальное разрешение всех будущих команд. Подробности — в Вопросах и разрешениях и Governance.
Включить уведомления#
- Завершите подключение телефона к нужному компьютеру.
- Разрешите уведомления, когда iPhone покажет системный запрос GrantTap.
- Если ранее отказали, проверьте системные настройки уведомлений для GrantTap. Приложение не может самостоятельно отменить ваш системный запрет.
- Проверьте, что компьютер доступен и его модуль работает: регистрация уведомлений и наличие реального запроса — разные условия.
- При проблеме с фоновым получением откройте GrantTap и проверьте состояние подключения и регистрации. При необходимости используйте доступное действие повторной регистрации.
Для фоновой доставки нужны и подключение, и корректная регистрация устройства на используемом реле. При собственном развёртывании серверу нужна настроенная push-интеграция. Успешный локальный тест баннера не подтверждает весь путь от компьютера через сервер.
Как баннер связан с настоящим запросом#
Данные уведомления выбирают идентичность запроса. Содержимое и доступные действия приложение получает из аутентифицированных зашифрованных данных. Текст push сам по себе не должен давать право выполнить команду.
После нажатия открывается соответствующая форма поверх текущего экрана. Если телефон защищён, для чувствительного действия требуется предусмотренная системой аутентификация. Если исходные данные ещё не загружены, приложение может сначала обновить состояние. Старый баннер также может вести к запросу, который уже завершён.
Сопоставляйте задачу, исполнение и компьютер, особенно если у вас несколько подключений. Одинаковая фраза может встретиться в разных настоящих вопросах. Их нельзя объединять только по тексту.
Ответить и проверить доставку#
- Откройте уведомление или карточку в Needs You.
- Прочитайте весь вопрос. При необходимости откройте исходный чат для контекста.
- Выберите вариант или напишите свой ответ. Для совместимого вопроса можно добавить фото или файл.
- Нажмите Send один раз. После принятой отправки ответ получает собственную сохраняемую операцию.
- Если подтверждение задержалось, откройте её статус доставки, а не создавайте второй такой же ответ.
После локального принятия ответа карточка внимания закрывается, а доставка остаётся под контролем очереди. Это избавляет от повторного заполнения той же формы. Но только квитанция компьютера или соответствующая нативная история подтверждает, что исходный вопрос действительно принят как отвеченный.
Для нативного вопроса сохраняются его исходные идентификатор, разговор и компьютер. Совместимый модуль не должен запускать отдельный конкурирующий чат только потому, что оригинальное приложение сейчас недоступно.
Закрыть, пропустить или отказать#
Эти действия имеют разные последствия:
- Done или закрытие формы возвращает вас на предыдущий экран. Это само по себе не ответ и не отказ.
- Смахнуть системный баннер убирает уведомление из текущего просмотра. Не считайте это подтверждением решения на компьютере.
- Skip question скрывает конкретный вопрос на этом iPhone. Предпочтение сохраняется после повторной загрузки и перезапуска; ответ не отправляется.
- Deny / Decline — реальное отрицательное решение там, где его предлагает запрос. Оно передаётся по предусмотренному маршруту.
- Cancel очереди относится к сохранённой отправке, а не к самой нативной сущности вопроса. См. очередь и отмена.
Почему вопросов кажется больше#
При восстановлении соединения компьютер может повторно прислать ещё актуальные вопросы. Приложение должно показывать одну карточку для одной и той же идентичности запроса в её разговоре и подключении. Сохранённый ответ не должен создавать новую просьбу ответить повторно.
При этом два различных вопроса с одинаковой формулировкой остаются двумя вопросами. Если агент действительно задал новую просьбу позже, приложение не должно скрывать её только из-за похожего текста. Поэтому сравнивайте контекст, а не только заголовок баннера.
У нативных вопросов есть окно ответа. После его истечения карточка может исчезнуть без утверждения, что агент получил ответ. Для других интеграций сроки могут отличаться. Исходный разговор остаётся источником состояния запроса.
Приватность и Apple Watch#
В настройках безопасности можно скрыть подробности уведомлений. Тогда вместо текста вопроса или команды показывается нейтральное сообщение о необходимости внимания. Это полезно на экране блокировки; при открытии запроса проверьте полные данные внутри приложения.
Поддержанные действия могут отображаться на Apple Watch через системное зеркалирование уведомлений. Их доступность зависит от подключения часов и настроек iPhone. Нажатие с часов всё равно относится к исходному запросу и его политике. Другие возможности часов описаны в Devices и Watch.
Если баннер повторяется или ответ завис#
- Откройте GrantTap и проверьте, осталась ли карточка в Needs You.
- Убедитесь, что это тот же вопрос, задача и компьютер.
- Если ответ уже сохранён, проверьте его квитанции: Saved on relay ещё не означает получения компьютером.
- Нажмите Refresh status для исходной отправки и проверьте native conversation.
- Если вопрос не нужен только на этом телефоне, используйте Skip. Если он уже разрешён, форма должна показывать соответствующее состояние.
- Для неисправности сохраните контекст и идентификатор операции из деталей. Не отправляйте повторный ответ «для проверки».
Дальнейшие шаги находятся в общей диагностике и разборе подтверждений.