Puncte:0

Cum se configurează câmpurile de antet pentru noul API APNs Provider?

drapel uz

Am încercat să migrez la nou API-ul APNs Provider.

Înainte de migrare, foloseam acest script pentru a trimite notificări push de testare către dispozitivul meu de testare.

<?php
// Puneți tokenul dispozitivului dvs. aici (fără spații):
$deviceToken = 'b5fa6af3eb6482ffa5d8551a0dcca76a780dcfc9662fbc7163a56d0973de8a9f';
// Pune aici fraza de acces a cheii tale private:
$parola = 'pushchat';
// Pune mesajul tau de alerta aici:
$message = 'Bună ziua!';
////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
// Deschide o conexiune la serverul APNS
$fp = stream_socket_client(
'ssl://api.sandbox.push.apple.com:443', $err,
$errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
dacă (!$fp)
exit("Eșuat la conectare: $err $errstr" . PHP_EOL);
echo „Conectat la APNS” . PHP_EOL;
// Creați corpul sarcinii utile
$body['aps'] = matrice(
'alerta' => $mesaj,
'sound' => 'implicit'
);
// Codificați sarcina utilă ca JSON
$payload = json_encode($body);
// Creați notificarea binară
$msg = chr(0) . pachet('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($sarcină utilă)) . $sarcină utilă;
// Trimite-l la server
$rezultat = fwrite($fp, $msg, strlen($msg));
dacă (!$rezultat)
echo „Mesajul nu a fost livrat” . PHP_EOL;
altfel
echo „Mesajul a fost livrat cu succes” . PHP_EOL;
// Închideți conexiunea la server
fclose($fp);

Conform Trimiterea solicitărilor de notificare către APN-uri, acum sunt necesare câmpurile de antet ca metodă și cale.

Când copiez și lipesc Anteturile din Trimiterea solicitărilor de notificare către APN-uri răspunsul terminal este Eroare de analiză PHP: eroare de sintaxă, simbol neașteptat „:” în /Users/Desktop/simple push folder/simplepush.php pe linia 6

<?php
ANTETURI
- END_STREAM
+ END_HEADERS
:method = POST
:scheme = https
:cale = /3/device/EXAMPLETOKEN
gazdă = api.sandbox.push.apple.com
apns-id = eabeae54-14a8-11e5-b60b-1697f925ec7b
apns-push-type = alertă
apns-expiration = 0
apns-priority = 10
DATE
+ END_STREAM
{ "aps": { "alert": "Bună ziua" } }

// Puneți tokenul dispozitivului dvs. aici (fără spații):
$deviceToken = 'EXAMPLETOKEN'; // Pune aici fraza de acces a cheii tale private:
$parola = 'pushchat';
// Pune mesajul tau de alerta aici:
$message = 'Bună ziua!';
////////////////////////////////////////////////////////////////////// /////////////////. //////////////
$ctx = stream_context_create();
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem');
stream_context_set_option($ctx, 'ssl', 'passphrase', $passphrase);
// Deschide o conexiune la serverul APNS
$fp = stream_socket_client(
'ssl://api.sandbox.push.apple.com:443', $err,
$errstr, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $ctx);
dacă (!$fp)
exit("Eșuat la conectare: $err $errstr" . PHP_EOL);
echo „Conectat la APNS” . PHP_EOL;
// Creați corpul sarcinii utile
$body['aps'] = matrice(
'alerta' => $mesaj,
'sound' => 'implicit'
);
// Codificați sarcina utilă ca JSON
$payload = json_encode($body);
// Creați notificarea binară
$msg = chr(0) . pachet('n', 32) . pack('H*', $deviceToken) . pack('n', strlen($sarcină utilă)) . $sarcină utilă;
// Trimite-l la server
$rezultat = fwrite($fp, $msg, strlen($msg));
dacă (!$rezultat)
echo „Mesajul nu a fost livrat” . PHP_EOL;
altfel
echo „Mesajul a fost livrat cu succes” . PHP_EOL;
// Închideți conexiunea la server
fclose($fp);

Care este modalitatea corectă de implementare a acestor câmpuri de antet cu acest script, astfel încât să poată trimite notificări push de testare?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.