好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Yii1.1框架實現PHP極光推送消息通知功能

Yii1.1框架實現PHP極光推送消息通知功能

熱門標簽:合肥企業外呼系統線路 代理打電話機器人 企業400電話辦理多少費用 電信外呼系統多少錢一個月 太原400電話申請流程 桂陽公司如何做地圖標注 神龍斗士電話機器人 萍鄉商鋪地圖標注 宿州正規外呼系統軟件

一、下載極光推送PHP SDK,解壓后放在/protected/components/目錄下,如下圖所示:

二、完善修改下官方的demo例子,我這里復制一份demo,改為NotifyPush.php,如下代碼:

?php
require dirname(__FILE__) . '/jpush-api-php-client/autoload.php';
use JPush\Client as JPush;
class NotifyPush {
 static function pushAlias($alias,$ticket='消息提醒',$alert){
  $appKey=Yii::app()->params['push']['AppKey'];
  $appMasterSecret=Yii::app()->params['push']['AppMasterSecret'];
  $production_mode=Yii::app()->params['push']['production_mode'];
  $client = new JPush($appKey, $appMasterSecret);
// 完整的推送示例
// 這只是使用樣例,不應該直接用于實際生產環境中 !!
  try {
   $response = $client->push()
    ->setPlatform(array('ios', 'android'))
    // 一般情況下,關于 audience 的設置只需要調用 addAlias、addTag、addTagAnd 或 addRegistrationId
    // 這四個方法中的某一個即可,這里僅作為示例,當然全部調用也可以,多項 audience 調用表示其結果的交集
    // 即是說一般情況下,下面三個方法和沒有列出的 addTagAnd 一共四個,只適用一個便可滿足大多數的場景需求
    ->addAlias($alias)
    ->setNotificationAlert($alert)
    ->iosNotification($ticket, array(
     'sound' => 'sound.caf',
     // 'badge' => '+1',
     // 'content-available' => true,
     // 'mutable-content' => true,
     'category' => 'jiguang',
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->androidNotification($ticket, array(
     'title' => $alert,
     // 'build_id' => 2,
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->message($alert, array(
     'title' => $alert,
     // 'content_type' => 'text',
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->options(array(
     // sendno: 表示推送序號,純粹用來作為 API 調用標識,
     // API 返回時被原樣返回,以方便 API 調用方匹配請求與返回
     // 這里設置為 100 僅作為示例
     // 'sendno' => 100,
     // time_to_live: 表示離線消息保留時長(秒),
     // 推送當前用戶不在線時,為該用戶保留多長時間的離線消息,以便其上線時再次推送。
     // 默認 86400 (1 天),最長 10 天。設置為 0 表示不保留離線消息,只有推送當前在線的用戶可以收到
     // 這里設置為 1 僅作為示例
     // 'time_to_live' => 1,
     // apns_production: 表示APNs是否生產環境,
     // True 表示推送生產環境,False 表示要推送開發環境;如果不指定則默認為推送生產環境
     'apns_production' => $production_mode,
     // big_push_duration: 表示定速推送時長(分鐘),又名緩慢推送,把原本盡可能快的推送速度,降低下來,
     // 給定的 n 分鐘內,均勻地向這次推送的目標用戶推送。最大值為1400.未設置則不是定速推送
     // 這里設置為 1 僅作為示例
     // 'big_push_duration' => 1
    ))
    ->send();
   print_r($response);
  } catch (\JPush\Exceptions\APIConnectionException $e) {
   // try something here
   print $e;
  } catch (\JPush\Exceptions\APIRequestException $e) {
   // try something here
   print $e;
  }
 }
 static function pushAll($ticket='消息提醒',$alert){
  $appKey=Yii::app()->params['push']['AppKey'];
  $appMasterSecret=Yii::app()->params['push']['AppMasterSecret'];
  $production_mode=Yii::app()->params['push']['production_mode'];
  $client = new JPush($appKey, $appMasterSecret);
// 完整的推送示例
// 這只是使用樣例,不應該直接用于實際生產環境中 !!
  try {
   $response = $client->push()
    ->setPlatform(array('ios', 'android'))
    ->setAudience('all')
    // 一般情況下,關于 audience 的設置只需要調用 addAlias、addTag、addTagAnd 或 addRegistrationId
    // 這四個方法中的某一個即可,這里僅作為示例,當然全部調用也可以,多項 audience 調用表示其結果的交集
    // 即是說一般情況下,下面三個方法和沒有列出的 addTagAnd 一共四個,只適用一個便可滿足大多數的場景需求
    ->setNotificationAlert($alert)
    ->iosNotification($ticket, array(
     'sound' => 'sound.caf',
     // 'badge' => '+1',
     // 'content-available' => true,
     // 'mutable-content' => true,
     'category' => 'jiguang',
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->androidNotification($ticket, array(
     'title' => $alert,
     // 'build_id' => 2,
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->message($alert, array(
     'title' => $alert,
     // 'content_type' => 'text',
     'extras' => array(
      'key' => 'value',
      'jiguang'
     ),
    ))
    ->options(array(
     // sendno: 表示推送序號,純粹用來作為 API 調用標識,
     // API 返回時被原樣返回,以方便 API 調用方匹配請求與返回
     // 這里設置為 100 僅作為示例
     // 'sendno' => 100,
     // time_to_live: 表示離線消息保留時長(秒),
     // 推送當前用戶不在線時,為該用戶保留多長時間的離線消息,以便其上線時再次推送。
     // 默認 86400 (1 天),最長 10 天。設置為 0 表示不保留離線消息,只有推送當前在線的用戶可以收到
     // 這里設置為 1 僅作為示例
     // 'time_to_live' => 1,
     // apns_production: 表示APNs是否生產環境,
     // True 表示推送生產環境,False 表示要推送開發環境;如果不指定則默認為推送生產環境
     'apns_production' => $production_mode,
     // big_push_duration: 表示定速推送時長(分鐘),又名緩慢推送,把原本盡可能快的推送速度,降低下來,
     // 給定的 n 分鐘內,均勻地向這次推送的目標用戶推送。最大值為1400.未設置則不是定速推送
     // 這里設置為 1 僅作為示例
     // 'big_push_duration' => 1
    ))
    ->send();
   print_r($response);
  } catch (\JPush\Exceptions\APIConnectionException $e) {
   // try something here
   print $e;
  } catch (\JPush\Exceptions\APIRequestException $e) {
   // try something here
   print $e;
  }
 }
}

三、調用NotifyPush.php里的方法,實現推送,如下代碼:

class CronNotifyPushCommand extends CConsoleCommand{
 public $keys=array();
 public function init(){
  parent::init();
 }
 public function actionIndex(){
  echo 'start CronNotifyPushCommand '.chr(10);
  if(!Yii::app()->params['push']['push_status']){
   echo 'push status disabled';die();
  }
  $rkey='message_notify_list';
  $waitTotals=Fredis::model()->redis->lsize($rkey);
  echo 'wait totals:'.$waitTotals.chr(10);
  $waitResult=true;
  $i=0;
  while($waitResult) {$i++;
   echo $i.'/'.$waitTotals.' wait to do'.chr(10);
   $waitResult=Fredis::model()->redis->rpop($rkey);
   if(!$waitResult) {
    continue;
   }
   $db_data=unserialize($waitResult);var_dump($db_data);
   $message_content=$db_data['message_content'];
   $uid=$db_data['uid'];
   $alias=$uid;
   if($uid==0){
    NotifyPush::pushAll($message_content, $message_content);
   }else {
    NotifyPush::pushAlias($alias, $message_content, $message_content);
   }
  }
  echo 'end'.chr(10);
 }
}

總結

以上所述是小編給大家介紹的Yii1.1框架實現PHP極光推送消息通知,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

您可能感興趣的文章:
  • Thinkphp開發--集成極光推送
  • PHP中利用Telegram的接口實現免費的消息通知功能

標簽:衡陽 綏化 崇左 白銀 太原 鄂州 辛集 廊坊

巨人網絡通訊聲明:本文標題《Yii1.1框架實現PHP極光推送消息通知功能》,本文關鍵詞  Yii1.1,框架,實現,PHP,極光,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Yii1.1框架實現PHP極光推送消息通知功能》相關的同類信息!
  • 本頁收集關于Yii1.1框架實現PHP極光推送消息通知功能的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 全黄一级A免费视频| 堪比A片的大尺度美剧| 国产欧美日韩在线观看无需安装| 色情网毛片e级一区三区无码| gaypornvideos| 狼人456亚洲精品成人影视| 极品白嫩爆乳尤物在线播放| 爽妇网XXX| 国产欧美日韩综合精品一区二区 | 精品无码久久久久久动漫软件| 工口里番H全彩肉啪啪| 高H+用舌头给高潮h| 最美情侣视频完整版免费观看| 国产色爽免费无码视频| 国产做受???高潮在线| 业余偷窥视频| 他手指伸进去弄得我好舒服| 日剧大尺度床戏做爰| 祺鑫污车mono| 男女真实无遮挡xx00动态图120秒| 性欧美video另类HD性玩具| 阿坝县| 欧美另类图片小说| 色88久久久久高潮综合影院| 我帮妺妺洗澡忍不住c了她的作文| 少妇无套高潮一二三区| 少妇扒开双腿自慰出屁股眼| 男人把美女的扒了摸视频| 小受公车忘穿内裤被挺进小说| 老板一边揉秘书胸一边亲| 一区二区三区在线视频| 蜜桃秘?无码一区二区三区| 国产专区视频| 全是肉的高H短篇列车| 国产精品久久久久无码软奇奇奇| 草碰在线| 老熟女亂伦一区二区三区| 《梦犯》无删减版| 色一色综合| 91老司机免费精品观看| 草莓榴莲黄瓜丝瓜蕾丝|