public static function pushMessageToApp($title, $content, $type, $payload = '', $url = '', $provinces = array(), $tags = array()) { $igt = new IGeTui('http://sdk.open.api.igexin.com/apiex.htm', config('getui-push.android.key'), config('getui-push.android.secret')); if ($type == 1) { //通知栏 $template = self::IGtNotificationTemplateDemo($title, $content, $payload); } elseif ($type == 2) { $template = self::IGtTransmissionTemplateDemo($payload); } elseif ($type == 3) { $template = self::IGtLinkTemplateDemo($title, $content, $url); } //个推信息体 //基于应用消息体 $message = new \IGtAppMessage(); $message->set_isOffline(true); $message->set_offlineExpireTime(3600 * 12 * 1000); //离线时间单位为毫秒,例,两个小时离线为3600*1000*2 $message->set_data($template); $message->set_appIdList(array(config('getui-push.android.id'))); $message->set_phoneTypeList(array('ANDROID')); if ($provinces) { $message->set_provinceList($provinces); } if ($tags) { $message->set_tagList($tags); } $rep = $igt->pushMessageToApp($message); }
/** * 对单个应用下的所有用户进行推送,可根据机型,省份,标签过滤推送 * @param IGtTemplate $template 消息模板 * @param array $phone_type_list 手机类型列表,['ANDROID', 'IOS'] * @param array $province_list 省份列表,['福建', '上海'] * @return array Array ('result' => ok, 'contentId' => OSA-0714_wlhCOZ7r078DZ5muXRg1Y4 ) */ public function pushMessageToApp($template, $phone_type_list, $province_list) { $igt = new IGeTui(self::API_URL, $this->_appkey, $this->_mastersecret); $igt->debug = $this->debug; //1. 消息模版: // a.TransmissionTemplate: 透传功能模板 // b.LinkTemplate: 通知打开链接功能模板 // c.NotificationTemplate:通知透传功能模板 // d.NotyPopLoadTemplate: 通知弹框下载功能模板 //$template = IGtNotyPopLoadTemplateDemo(); //$template = IGtLinkTemplateDemo(); //$template = IGtNotificationTemplateDemo(); //$template = IGtTransmissionTemplateDemo(); //2. 个推信息体 $message = new IGtAppMessage(); $message->set_isOffline(true); // 是否离线 $message->set_offlineExpireTime(3600 * 12 * 1000); // 离线时间 $message->set_data($template); // 设置推送消息类型 $message->set_PushNetWorkType(0); // 设置是否根据WIFI推送消息,1为wifi推送,0为不限制推送 $message->set_appIdList(array($this->_appid)); $message->set_phoneTypeList($phone_type_list); $message->set_provinceList($province_list); $response = $igt->pushMessageToApp($message); return $response; }