閱讀525 返回首頁    go windows


php__SDK手冊_OpenAPI 1.0_移動推送-阿裏雲

1 獲取AccessKeyId和AccessKeySecret

>>前往阿裏雲官網控製台獲取

2 獲取appKey

>>前往移動推動控製台獲取 app列表->應用證書

3 引入SDK依賴

  1. include_once '../aliyun-php-sdk-core/Config.php';
  2. use PushRequestV20150827 as Push;

4 示例代碼(替換成您的AccessKeyId、AccessKeySecret、appKey)

  1. $accessKeyId = "";
  2. $accessSecret = "";
  3. $appKey = 123456;
  4. $iClientProfile = DefaultProfile::getProfile("cn-hangzhou", $accessKeyId, $accessSecret);
  5. $client = new DefaultAcsClient($iClientProfile);
  6. $request = new PushPushRequest();
  7. // 推送目標
  8. $request->setAppKey($appKey);
  9. $request->setTarget("all"); //推送目標: device:推送給設備; account:推送給指定帳號,tag:推送給自定義標簽; all: 推送給全部
  10. $request->setTargetValue("all"); //根據Target來設定,如Target=device, 則對應的值為 設備id1,設備id2. 多個值使用逗號分隔.(帳號與設備有一次最多100個的限製)
  11. $request->setDeviceType(3); // 設備類型deviceType 取值範圍為:0~3. iOS設備: 0; Android設備: 1; 全部: 3, 這是默認值.
  12. // 推送配置
  13. $request->setType(1); // 0:表示消息(默認為0), 1:表示通知
  14. $request->setTitle("Hello OpenAPI!"); // 消息的標題
  15. $request->setBody("PushRequest body"); // 消息的內容
  16. $request->setSummary("PushRequest summary"); // 通知的摘要
  17. // 推送配置: iOS
  18. $request->setiOSBadge("5"); // iOS應用圖標右上角角標
  19. $request->setiOSMusic("default"); // iOS通知聲音
  20. $request->setiOSTitle("iOS 10 Title");//iOS通知標題(iOS 10+)
  21. $request->setiOSSubtitle("iOS 10 Subtitle");//iOS通知副標題(iOS 10+)
  22. $request->setiOSMutableContent("true");//使能通知擴展處理(iOS 10+)
  23. $request->setiOSNotificationCategory("test_category");//設定通知Category(iOS 10+)
  24. $request->setiOSExtParameters("{"attachment":"https://xxxx.xxx/notification_pic.png","k2":"v2"}"); //自定義的kv結構,開發者擴展用 針對iOS設備(iOS 10+可以使用attachment關鍵字來指定富媒體推送通知的資源Url)
  25. $request->setApnsEnv("DEV");
  26. //$request->setRemind("false"); // 推送時設備不在線(既與移動推送的服務端的長連接通道不通),則這條推送會做為通知,通過蘋果的APNs通道送達一次(發送通知時,Summary為通知的內容,Message不起作用)。注意:離線消息轉通知僅適用於生產環境
  27. // 推送配置: Android
  28. $request->setAndroidOpenType("3"); // 點擊通知後動作,1:打開應用 2: 打開應用Activity 3:打開 url 4 : 無跳轉邏輯
  29. $request->setAndroidOpenUrl("https://www.baidu.com"); // Android收到推送後打開對應的url,僅僅當androidOpenType=3有效
  30. //$request->setsetXiaomiActivity("_Your_XiaoMi_Activity_");//設置該參數後啟動小米托管彈窗功能,此處指定通知點擊後跳轉的Activity(托管彈窗的前提條件:1. 繼承小米輔助通道;2. storeOffline設為true)
  31. $request->setAndroidExtParameters("{"k1":"android","k2":"v2"}"); // 設定android類型設備通知的擴展屬性
  32. // 推送控製
  33. $pushTime = gmdate('Y-m-dTH:i:sZ', strtotime('+3 second'));//延遲3秒發送
  34. $request->setPushTime($pushTime);
  35. $expireTime = gmdate('Y-m-dTH:i:sZ', strtotime('+1 day'));//設置失效時間為1天
  36. $request->setExpireTime($expireTime);
  37. $request->setTimeOut(3);
  38. $request->setStoreOffline("false"); // 離線消息是否保存,若保存, 在推送時候,用戶即使不在線,下一次上線則會收到
  39. $response = $client->getAcsResponse($request);
  40. print_r("rn");
  41. print_r($response);

最後更新:2016-12-12 11:12:30

  上一篇:go nodejs__SDK手冊_OpenAPI 1.0_移動推送-阿裏雲
  下一篇:go python__SDK手冊_OpenAPI 1.0_移動推送-阿裏雲