| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336 | 
							- <?php
 
- require_once ('XingeApp.php');
 
- var_dump(DemoPushSingleDeviceNotification());
 
- // var_dump(DemoPushSingleDeviceMessage());
 
- // var_dump(DemoPushSingleDeviceIOS());
 
- // var_dump(DemoPushSingleAccount());
 
- // var_dump(DemoPushAccountList());
 
- // var_dump(DemoPushSingleAccountIOS());
 
- // var_dump(DemoPushAllDevices());
 
- // var_dump(DemoPushTags());
 
- // var_dump(DemoQueryPushStatus());
 
- // var_dump(DemoQueryDeviceCount());
 
- // var_dump(DemoQueryTags());
 
- // var_dump(DemoQueryTagTokenNum());
 
- // var_dump(DemoQueryTokenTags());
 
- // var_dump(DemoCancelTimingPush());
 
- // var_dump(DemoBatchDelTag());
 
- // var_dump(DemoBatchSetTag());
 
- // var_dump(DemoPushAccountListMultipleNotification());
 
- // var_dump(DemoPushDeviceListMultipleNotification());
 
- // var_dump(DemoQueryInfoOfToken());
 
- // var_dump(DemoQueryTokensOfAccount());
 
- // var_dump(DemoDeleteTokenOfAccount());
 
- // var_dump(DemoDeleteAllTokensOfAccount());
 
- //单个设备下发通知消息
 
- function DemoPushSingleDeviceNotification()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setType(Message::TYPE_NOTIFICATION);
 
- 	$mess->setTitle("title");
 
- 	$mess->setContent("中午");
 
- 	$mess->setExpireTime(86400);
 
- 	//$style = new Style(0);
 
- 	#含义:样式编号0,响铃,震动,不可从通知栏清除,不影响先前通知
 
- 	$style = new Style(0,1,1,0,0);
 
- 	$action = new ClickAction();
 
- 	$action->setActionType(ClickAction::TYPE_URL);
 
- 	$action->setUrl("http://xg.qq.com");
 
- 	#打开url需要用户确认
 
- 	$action->setComfirmOnUrl(1);
 
- 	$custom = array('key1'=>'value1', 'key2'=>'value2');
 
- 	$mess->setStyle($style);
 
- 	$mess->setAction($action);
 
- 	$mess->setCustom($custom);
 
- 	$acceptTime1 = new TimeInterval(0, 0, 23, 59);
 
- 	$mess->addAcceptTime($acceptTime1);
 
- 	$ret = $push->PushSingleDevice('token', $mess);
 
- 	return($ret);
 
- }
 
- //单个设备下发透传消息       注:透传消息默认不展示
 
- function DemoPushSingleDeviceMessage()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_MESSAGE);
 
- 	$ret = $push->PushSingleDevice('token', $mess);
 
- 	return $ret;
 
- }
 
- //下发IOS设备消息
 
- function DemoPushSingleDeviceIOS()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new MessageIOS();
 
- 	$mess->setExpireTime(86400);
 
- 	//$mess->setSendTime("2014-03-13 16:00:00");
 
- 	$mess->setAlert("ios test");
 
- 	//$mess->setAlert(array('key1'=>'value1'));
 
- 	$mess->setBadge(1);
 
- 	$mess->setSound("beep.wav");
 
- 	$custom = array('key1'=>'value1', 'key2'=>'value2');
 
- 	$mess->setCustom($custom);
 
- 	$acceptTime = new TimeInterval(0, 0, 23, 59);
 
- 	$mess->addAcceptTime($acceptTime);
 
- 	$raw = '{"xg_max_payload":1,"accept_time":[{"start":{"hour":"20","min":"0"},"end":{"hour":"23","min":"59"}}],"aps":{"alert":"="}}';
 
- 	$mess->setRaw($raw);
 
- 	$ret = $push->PushSingleDevice('token', $mess, XingeApp::IOSENV_DEV);
 
- 	return $ret;
 
- }
 
- //单个设备下发通知Intent
 
- //setIntent()的内容需要使用intent.toUri(Intent.URI_INTENT_SCHEME)方法来得到序列化后的Intent(自定义参数也包含在Intent内)
 
- //终端收到后通过intent.parseUri()来反序列化得到Intent
 
- function DemoPushSingleDeviceNotificationIntent()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setType(Message::TYPE_NOTIFICATION);
 
- 	$mess->setTitle("title");
 
- 	$mess->setContent("通知点击执行Intent测试");
 
- 	$style = new Style(0);
 
- 	$style = new Style(0,1,1,0);
 
- 	$action = new ClickAction();
 
- 	$action->setActionType(ClickAction::TYPE_INTENT);
 
- 	$action->setIntent('intent:10086#Intent;scheme=tel;action=android.intent.action.DIAL;S.key=value;end');
 
- 	$mess->setStyle($style);
 
- 	$mess->setAction($action);
 
- 	$ret = $push->PushSingleDevice('token', $mess);
 
- 	return($ret);
 
- }
 
- //下发单个账号
 
- function DemoPushSingleAccount()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_MESSAGE);
 
- 	$ret = $push->PushSingleAccount(0, 'joelliu', $mess);
 
- 	return ($ret);
 
- }
 
- //下发多个账号, IOS下发多个账号参考DemoPushSingleAccountIOS进行相应修改
 
- function DemoPushAccountList()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_MESSAGE);
 
- 	$accountList = array('joelliu');
 
- 	$ret = $push->PushAccountList(0, $accountList, $mess);
 
- 	return ($ret);
 
- }
 
- //下发IOS账号消息
 
- function DemoPushSingleAccountIOS()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new MessageIOS();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setAlert("ios test");
 
- 	//$mess->setAlert(array('key1'=>'value1'));
 
- 	$mess->setBadge(1);
 
- 	$mess->setSound("beep.wav");
 
- 	$custom = array('key1'=>'value1', 'key2'=>'value2');
 
- 	$mess->setCustom($custom);
 
- 	$acceptTime1 = new TimeInterval(0, 0, 23, 59);
 
- 	$mess->addAcceptTime($acceptTime1);
 
- 	$ret = $push->PushSingleAccount(0, 'joelliu', $mess, XingeApp::IOSENV_DEV);
 
- 	return $ret;
 
- }
 
- //下发所有设备
 
- function DemoPushAllDevices()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setType(Message::TYPE_NOTIFICATION);
 
- 	$mess->setTitle("title");
 
- 	$mess->setContent("中午");
 
- 	$mess->setExpireTime(86400);
 
- 	$style = new Style(0);
 
- 	#含义:样式编号0,响铃,震动,不可从通知栏清除,不影响先前通知
 
- 	$style = new Style(0,1,1,0,0);
 
- 	$action = new ClickAction();
 
- 	$action->setActionType(ClickAction::TYPE_URL);
 
- 	$action->setUrl("http://xg.qq.com");
 
- 	#打开url需要用户确认
 
- 	$action->setComfirmOnUrl(1);
 
- 	$mess->setStyle($style);
 
- 	$mess->setAction($action);
 
- 	
 
- 	$ret = $push->PushAllDevices(0, $mess);
 
- 	return ($ret);
 
- }
 
- //下发标签选中设备
 
- function DemoPushTags()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_MESSAGE);
 
- 	$tagList = array('Demo3');
 
- 	$ret = $push->PushTags(0, $tagList, 'OR', $mess);
 
- 	return ($ret);
 
- }
 
- //查询消息推送状态
 
- function DemoQueryPushStatus()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$pushIdList = array('31','32');
 
- 	$ret = $push->QueryPushStatus($pushIdList);
 
- 	return ($ret);
 
- }
 
- //查询设备数量
 
- function DemoQueryDeviceCount()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryDeviceCount();
 
- 	return ($ret);
 
- }
 
- //查询标签
 
- function DemoQueryTags()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryTags(0,100);
 
- 	return ($ret);
 
- }
 
- //查询某个tag下token的数量
 
- function DemoQueryTagTokenNum()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryTagTokenNum("tag");
 
- 	return ($ret);
 
- }
 
- //查询某个token的标签
 
- function DemoQueryTokenTags()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryTokenTags("token");
 
- 	return ($ret);
 
- }
 
- //取消定时任务
 
- function DemoCancelTimingPush()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->CancelTimingPush("32");
 
- 	return ($ret);
 
- }
 
- // 设置标签
 
- function DemoBatchSetTag() {
 
- 	// 切记把这里的示例tag和示例token修改为你的真实tag和真实token
 
-     $pairs = array();
 
-     array_push($pairs, new TagTokenPair("tag1","token00000000000000000000000000000000001"));
 
-     array_push($pairs, new TagTokenPair("tag1","token00000000000000000000000000000000001"));
 
- 	$push = new XingeApp(000, 'secret_key');
 
-     $ret = $push->BatchSetTag($pairs);
 
-     return $ret;
 
- }
 
- // 删除标签
 
- function DemoBatchDelTag() {
 
- 	// 切记把这里的示例tag和示例token修改为你的真实tag和真实token
 
-     $pairs = array();
 
-     array_push($pairs, new TagTokenPair("tag1","token00000000000000000000000000000000001"));
 
-     array_push($pairs, new TagTokenPair("tag1","token00000000000000000000000000000000001"));
 
-     $push = new XingeApp(000, 'secret_key');
 
-     $ret = $push->BatchDelTag($pairs);
 
-     return $ret;
 
- }
 
-     
 
- //大批量下发给账号 android
 
- //iOS 请构建MessageIOS 消息
 
- function DemoPushAccountListMultipleNotification()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_NOTIFICATION);
 
- 	$ret = $push->CreateMultipush($mess, XingeApp::IOSENV_DEV);
 
- 	if (!($ret['ret_code'] === 0))
 
- 		return $ret;
 
- 	else
 
- 	{
 
- 		$result=array();
 
- 		$accountList1 = array('joelliu', 'joelliu2', 'joelliu3');
 
- 		array_push($result, $push->PushAccountListMultiple($ret['result']['push_id'], $accountList1));
 
- 		$accountList2 = array('joelliu4', 'joelliu5', 'joelliu6');
 
- 		array_push($result, $push->PushAccountListMultiple($ret['result']['push_id'], $accountList2));
 
- 		return ($result);
 
- 	}
 
- }
 
- //大批量下发给设备 android
 
- //iOS 请构建MessageIOS 消息
 
- function DemoPushDeviceListMultipleNotification()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$mess = new Message();
 
- 	$mess->setExpireTime(86400);
 
- 	$mess->setTitle('title');
 
- 	$mess->setContent('content');
 
- 	$mess->setType(Message::TYPE_NOTIFICATION);
 
- 	$ret = $push->CreateMultipush($mess, XingeApp::IOSENV_DEV);
 
- 	if (!($ret['ret_code'] === 0))
 
- 		return $ret;
 
- 	else
 
- 	{
 
- 		$result=array();
 
- 		$deviceList1 = array('token1', 'token2', 'token3');
 
- 		array_push($result, $push->PushDeviceListMultiple($ret['result']['push_id'], $deviceList1));
 
- 		$deviceList2 = array('token4', 'token5', 'token6');
 
- 		array_push($result, $push->PushDeviceListMultiple($ret['result']['push_id'], $deviceList2));
 
- 		return ($result);
 
- 	}
 
- }
 
- //查询某个token的信息
 
- function DemoQueryInfoOfToken()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryInfoOfToken("token");
 
- 	return ($ret);
 
- }
 
- //查询某个account绑定的token
 
- function DemoQueryTokensOfAccount()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->QueryTokensOfAccount("nickName");
 
- 	return ($ret);
 
- }
 
- //删除某个account绑定的所有token
 
- function DemoDeleteAllTokensOfAccount()
 
- {
 
- 	$push = new XingeApp(000, 'secret_key');
 
- 	$ret = $push->DeleteAllTokensOfAccount("nickName");
 
- 	return ($ret);
 
- }
 
 
  |