OneSignal 在网络推送通知中设置自定义标题消息

OneSignal set custom title message in web push notification

我已将 one-signal 集成到我的 Web 应用程序中,通知工作正常,但如果在推送通知标题中考虑网页标题。

我需要在我的推送通知中设置自定义标题。

我需要设置自定义消息来代替 "Dashboard"

这是我的代码:

$content = array(
    "en" => 'Hello Hii..!!'
);

$fields = array(
    'app_id' => 'APP_ID',
    'include_player_ids' => ['ids'],
    'data' => array("foo" => "bar"),
    'url' => 'URL',
    'contents' => $content
);

$fields = json_encode($fields);
//print("\nJSON sent:\n");
//print($fields);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://onesignal.com/api/v1/notifications");
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8',
    'Authorization: Basic AuthorizationKey';
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

$response = curl_exec($ch);
curl_close($ch);
return $response;

在字段数组中设置标题

$content = array(
       "en" => 'Your message..!!'
   );
$heading = array(
   "en" => "Your custom title message"
);

$fields = array(
   'app_id' => 'YOUR_APP_ID',
   'include_player_ids' => [ids],
   'data' => array("foo" => "bar"),
   'url' => 'http://www.yoursite.com',
   'contents' => $content,
   'headings' => $heading
);

Use this one as mention bellow

 public function sendPush($players_id,$massage,$data,$heading){
 // $players_id your device id where you want to push
   $data1[]=$players_id;

//您推送的消息

     $content = array(

      "en" => $massage

      );

// 如果要发送 JSON 或某些值

的数据
     $data_response=array(
        "value" => $data
     );

//可以通过这个添加标题

     $heading = array( "en" => $heading);


   // print_r($cat_data);
   $fields = array(
      'app_id' => 'YOUR_APP_ID',
      'include_player_ids' => $data1,
       'contents' => $content,
       'headings' => $heading,
       'data' =>$data_response
      );

     $fields = json_encode($fields);



    $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, "https://onesignal.com/api/v1/notifications");
     curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8',
                  'Authorization: Basic YOUR_REST_API_KEY'));

     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
     curl_setopt($ch, CURLOPT_HEADER, FALSE);
     curl_setopt($ch, CURLOPT_POST, TRUE);
     curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

     $response = curl_exec($ch);
     curl_close($ch);

     return $response;

    }