При базе пользователей в 200 000 человек и текущем сеансе возникает необходимость одновременно отправлять push-уведомления всем пользователям, чтобы информировать их о реальном сеансе на PHP. Однако push-уведомления Firebase могут быть отправлены только 1000 пользователям одновременно. В результате последний пользователь получает уведомление через 10 минут после запуска сеанса.
В свете этой проблемы какие шаги можно предпринять, чтобы устранить это ограничение и гарантировать, что все пользователи получат уведомление? быстрое уведомление?
Я использовал приведенный ниже код
function sendMsg($regIds, $data, $device_type=''){
$apiKey = "";
$fields = array(
'priority' => 'high',
'data' => array(
'title' => $this->data['title'],
"body" => $this->data['message'],
'sound' => 'default',
'message' => $this->data['message'],
'screen' => $this->data['screen'],
'screen_id' => $this->data['screen_id']
)
);
if($this->data['screen_data']) {
$fields['data']['screen_data'] = $this->data['screen_data'];
}
if($this->data['notification_id']) {
$fields['data']['notification_id'] = $this->data['notification_id'];
}
if(gettype($regIds) != 'array') {
$fields['to'] = $regIds;
}
if($device_type != 'android') {
$fields['notification'] = array(
'title' => $this->data['title'],
'body' => $this->data['message'],
'sound' => 'default'
);
}
if($fields) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fcm.googleapis.com/fcm/send');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: key='.$this->data['api_key'], 'Content-Type: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
}
Подробнее здесь: https://stackoverflow.com/questions/786 ... imultaneou
Как эффективно отправлять push-уведомления Firebase 200 000 пользователей одновременно с помощью PHP? [закрыто] ⇐ Php
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Наименьшее общее кратное натуральных чисел до предела, скажем, 10 000 000.
Anonymous » » в форуме Python - 0 Ответы
- 36 Просмотры
-
Последнее сообщение Anonymous
-
-
-
System.nanoTime()/1 000 000 полностью отличается от System.currentTimeMillis().
Anonymous » » в форуме JAVA - 0 Ответы
- 28 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как сгенерировать совокупную сумму из 300 000 000 случайных единиц и -1
Anonymous » » в форуме Python - 0 Ответы
- 27 Просмотры
-
Последнее сообщение Anonymous
-
-
-
C++ — Почему переполнение int все еще происходит после модификации 1'000'000'007?
Anonymous » » в форуме C++ - 0 Ответы
- 18 Просмотры
-
Последнее сообщение Anonymous
-