i integrated Fire-base Notification CRUL Code with Codeigniter. sometimes i am getting error but not all the times.
i have integrated below code to the controller
Controller Code
$newDate=Date('m-d-Y H:i:s'); $test_str=$user->us_name. ' Clocked at '.$newDate; $res = array(); $res['data']['title'] = $user->us_name.' - Clocked In'; $res['data']['is_background'] = "TRUE"; $res['data']['message'] = $test_str; $res['data']['image'] = 'http://api.androidhive.info/images/minion.jpg'; $res['data']['payload'] = 'individual'; $res['data']['timestamp'] = date('Y-m-d G:i:s'); $res['data']['act_tab'] = 0; $cur_id1=$this->db->query("Select token from devices")->result(); foreach($cur_id1 as $cur_id) { $fields = array('to' => $cur_id->token,'data' => $res); $this->notif_model->sendPushNotification($fields); } Model Code
function sendPushNotification($fields) { // Set POST variables $url = 'https://fcm.googleapis.com/fcm/send'; $headers = array( 'Authorization: key=MyServerKey', 'Content-Type: application/json' ); // Open connection $ch = curl_init(); // Set the url, number of POST vars, POST data curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Disabling SSL Certificate support temporarly curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields)); // Execute post $result = curl_exec($ch); if ($result === FALSE) { die('Curl failed: ' . curl_error($ch)); } // Close connection curl_close($ch); return $result; } While Running this some times i am getting the error
Curl failed: OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to fcm.googleapis.com:443
1 Answers
Answers 1
Try to add curl_setopt($ch, CURLOPT_SSLVERSION, 3);
0 comments:
Post a Comment