Я использую уведомление базы данных вместе с GCM а также APN Push-уведомления для отправки уведомлений.
Мое требование — пометить уведомление как прочитанное, если пользователь нажимает на push-уведомление в мобильном телефоне. Но только одно уведомление должно быть обновлено, поэтому идентификатор уведомления базы данных должен быть передан в push-уведомлении. Есть какой-либо способ сделать это?
$this->id
будет содержать идентификатор уведомления. Этот же идентификатор будет вставлен в базу данных, если база данных указана как метод канала.
Вы можете передать идентификатор уведомления и идентификатор пользователя в полезную нагрузку, которая будет доступна на стороне клиента. Вы можете просто сделать веб-крючок для отправки идентификатора уведомления и идентификатора пользователя с прочитанным событием.
Полезная нагрузка в GCM выглядит следующим образом Полезная нагрузка = {: time_to_live => xxx,: data => {: id => xxx,: user_id => xxx},: collapse_key => xxx,: delay_ while_idle => true}
gcm_object.send_notification (registration_ids, полезная нагрузка)
Вы можете использовать столбец is_read в БД, и он будет обновляться через API laravel, когда пользователь нажимает на уведомление … после того, как пользователь перенаправит на URL, связанный с уведомлением