分享是一種美德!
【功能】:百度push 推送,php伺服器端,版本為3.0
首先下載百度官方提供的demo,地址:http://push.baidu.com/sdk/push_server_sdk_for_php
api文檔地址:http://push.baidu.com/doc/php/api
以下代碼例子採用的是tp架構
import("Vendor.BaiduPushService.sdk"); // 建立SDK對象. $sdk = new \PushSDK(); // 設定訊息類型為 通知類型. $opts = array( 'msg_type' => 1 ); $data = $this->getPushData(); show_bug($data); foreach ($data as $val) { $message = array( 'title' => $val['title'], // 訊息的標題 'description' => $val['content'],// 訊息內容 'custom_content'=>array( 'member_id'=>$val['member_id'], 'member_phone'=>$val['member_phone'],//使用者手機號 ) ); $channelId = $val['channel_id']; // 向目標裝置發送一條訊息 $rs = $sdk->pushMsgToSingleDevice($channelId, $message, $opts); if ($rs === false) { $map = array( "error_code" => $sdk->getLastErrorCode(), "error_msg" => $sdk->getLastErrorMsg(), ); $this->Information->where(array("id" => $val['id']))->save($map); } else { $this->updateInformation($val['id'], $rs); // 將列印出訊息的id,發送時間等相關資訊. // print_r($rs); }
【注】
1. apikey 和secretkey需要在百度控制台中擷取,具體操作看百度api文檔;
2. channelId 需要在客戶擷取;
3. 自訂欄位可以用custom_content通過array傳遞;
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。