2014-10-09 5 views

ответ

1
+0

мне удалось настроить все для Cordova андроида, мое устройство получает уведомление толчка, когда я посылаю его от pushwoosh.com , Я не могу найти какой-либо образец кода в репозитории для плагина для телефонной засылки ** для отправки ** push-уведомлений от клиента. Я что-то пропустил? – huahax

+0

Вы не можете нажать от клиента. Клиент (устройство) может регистрироваться только для получения уведомлений. –

+0

У меня такая же проблема, вы нашли решение для этого? – mcneela86

2

Вы должны использовать Remote Access API, для которого требуется платный план. создать объект, содержащий текст, я хочу послать и маркеры устройств, которые я хочу, чтобы отправить его и передать в качестве аргумента к следующей функции:

function push(object) { 
    var params = { 
    "request": { 
     "application": "PW_ID GOES HERE", 
     "auth": "Find in your API Access page", 
     "notifications": [{ 
     // Content Settings 
     "send_date": "now", 
     "ignore_user_timezone": true, 
     "content": { 
      "en": object.text 
     }, 
     "platforms": [1, 3], // 1 - iOS; 3 - Android; 
     // iOS Related 
     "ios_category_id": "1", 
     "ios_badges": "+1", 
     // Android Related 
     "android_icon": "icon", 
     // Who to send it to 
     "devices": object.tokens 
     }] 
    } 
    }; 
    $http.post('https://cp.pushwoosh.com/json/1.3/createMessage', params).then(success, failure); 

    function success() { 
    console.log("successful notification push"); 
    } 

    function failure(error) { 
    console.log('error sending notification', error); 
    } 
} 
0

здесь что-то вроде того, что я использую

  • послать запрос на сервер

$http.get('http://test.com/push.php?token=' + ushToken + '&message=' + encodeURIComponent(message)).then(function (resp) { 
 
}, function (err) { 
 
    console.error(err); 
 
});

  • на стороне сервера сделать

<?php 
 

 
define('PW_AUTH', '...'); 
 
define('PW_APPLICATION', '...'); 
 
define('PW_DEBUG', FALSE); 
 

 
function pwCall($method, $data) 
 
{ 
 
\t $url  = 'https://cp.pushwoosh.com/json/1.3/' . $method; 
 
\t $request = json_encode(['request' => $data]); 
 

 
\t $ch = curl_init($url); 
 
\t curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
 
\t curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
 
\t curl_setopt($ch, CURLOPT_ENCODING, 'gzip, deflate'); 
 
\t curl_setopt($ch, CURLOPT_HEADER, TRUE); 
 
\t curl_setopt($ch, CURLOPT_POST, TRUE); 
 
\t curl_setopt($ch, CURLOPT_POSTFIELDS, $request); 
 

 
\t $response = curl_exec($ch); 
 
\t $info  = curl_getinfo($ch); 
 
\t curl_close($ch); 
 

 
\t if (defined('PW_DEBUG') && PW_DEBUG) { 
 
\t \t var_dump(json_decode($request)); 
 
\t \t var_dump($response); 
 
\t \t var_dump($info); 
 
\t } 
 
} 
 

 
if (isset($_GET['message']) && isset($_GET['token'])) { 
 
\t $payload = [ 
 
\t \t 'application' => PW_APPLICATION, 
 
\t \t 'auth'   => PW_AUTH, 
 
\t \t 'notifications' => [ 
 
\t \t \t [ 
 
\t \t \t \t 'send_date' => 'now', 
 
\t \t \t \t 'content' => $_GET['message'], 
 
\t \t \t \t 'devices' => [$_GET['token']] 
 
\t \t \t ] 
 
\t \t ] 
 
\t ]; 
 

 
\t pwCall('createMessage', $payload); 
 
}

Смежные вопросы