Типы уведомлений
Добавить сообщение и уведомить
Фон
После того как пользователь добавит пропуск, вы можете отправить ему сообщение, связанное с пропуском, и убедиться, что он уведомлен об этом. При использовании запроса API добавления сообщения с типом message_type
, равным TEXT_AND_NOTIFY
происходит следующее:
- Элемент « Сообщение » добавляется в «обратную сторону пропуска» (также известный как « Шаблон сведений» ), и пользователям с сохраненным пропуском отправляется push-уведомление.
- Как только пользователь нажимает на уведомление, он открывает Google Кошелек в передней части карты (также известный как «Просмотр карты»), и пользователь увидит выноску в верхней части экрана с кнопкой «Просмотреть сообщение».
- Нажав на выноску, пользователи перейдут в конец пропуска, где будут выделены новые непрочитанные сообщения.
Некоторые соображения при отправке сообщений с уведомлениями пользователям
- Пользователи должны включить уведомления для своих пропусков, чтобы получать push-уведомления, связанные с сообщениями.
- Сообщения могут содержать URI вашего веб-сайта или приложения. Гиперссылки должны указывать на веб-сайт или приложение, связанное с пропуском. Отправка пользователей по ссылкам, не связанным с пропуском, является нарушением Политики допустимого использования .
- Вы можете отправить максимум 3 сообщения, которые вызовут push-уведомление, в течение 24 часов. Google может ограничить вашу квоту на доставку push-уведомлений, если сочтет, что вы рассылаете спам своим пользователям.
- Push-уведомления, которые пользователи видят на экране блокировки, контролируются Google Кошельком.
- Вы можете использовать методы UPDATE или PATCH для редактирования или удаления данных сообщения, используя конечную точку обычного класса или объекта.
Этапы интеграции
Если вы хотите уведомить пользователей о новом сообщении эмитента, добавленном с помощью API AddMessage, вам необходимо обновить AddMessageRequest , чтобы сообщение , содержащее ваш новый текст, имело MessageType TEXT_AND_NOTIFY вместо TEXT .
Пример запроса JSON для добавления сообщения и уведомления в классе Passes
… "id": ISSUER_ID.CLASS_ID", "message": { "header":"My Class message header", "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Пример запроса JSON для добавления сообщения и уведомления в объекте Passes
… "id": OBJECT_ID", "classId": "ISSUER_ID.CLASS_ID", "message": { "header":"My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "message_type": "TEXT_AND_NOTIFY" }, …
Пример ответа на добавление сообщения и уведомление о проходном классе
// The updated resource … { "kind": "walletobjects#walletObjectMessage", "header": "My Object message header", "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>", "id": "message_id", "messageType": "textAndNotify" }, …
Обработка исключений
Любые попытки отправить уведомление более трех раз приведут к ответу QuotaExceededException . Любые дальнейшие обновления пропуска можно задать с помощью « TEXT » вместо « TEXT_AND_NOTIFY », как описано в разделе «Шаги интеграции ».