Я пытался заставить его работать весь день, и не повезло. Это как далеко я получил …
<?php
$url = 'http://parse.verbomedia.com:1337/parse/push';
$appId = '******';
$masterKey = '******';
$headers = array(
"Content-Type: application/json",
"X-Parse-Application-Id: " . $appId,
"X-Parse-Master-Key: " . $masterKey
);
$objectData = '{"where":{"deviceType":"ios"},"data":{"alert":"Hello, Parse!"}}';
$rest = curl_init();
curl_setopt($rest,CURLOPT_URL,$url);
curl_setopt($rest,CURLOPT_POST,1);
curl_setopt($rest,CURLOPT_POSTFIELDS,$objectData);
curl_setopt($rest,CURLOPT_HTTPHEADER,$headers);
curl_setopt($rest,CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($rest,CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($rest);
echo $response;
print_r($response);
curl_close($rest);
?>
Он отлично работает через Parse Dashboard.
Любые идеи о том, что я могу делать не так?
Php sdk в настоящее время поддерживает push клиента через ParsePush
учебный класс. Следующее извлечено из примера в README.md на странице github php sdk.
// Push to Channels
ParsePush::send(array(
"channels" => ["PHPFans"],
"data" => $data
), true);
// note the master key is required via 'true'
Вы можете найти дополнительные примеры и объяснения в документы и для этого sdk.
Обратите внимание, что хотя php SDK поддерживает это, вы должны первый настроить конфигурация рабочего толчка в вашем экземпляре сервера разбора. Хотя php sdk хорош, чтобы выйти из коробки, сервер не сможет обрабатывать выталкивающие уведомления через GCM или APNS без предварительной настройки.
push-клиент не поддерживается в parse-server (Читать здесь) поэтому для отправки push-уведомлений необходимо сделать следующее:
Создайте функцию облачного кода, которая будет использовать parse js SDK. там вам нужно написать несколько строк кода, чтобы отправить push-запрос конкретному клиенту (Читать здесь
Запустите функцию облачного кода в вашем PHP-коде с помощью синтаксического анализа PHP SDK, отправив соответствующие параметры в вызываемую вами функцию облачного кода