use Bitrix\Main\Loader; use Bitrix\Main\Web\Json; define("NO_KEEP_STATISTIC", true); define('NO_AGENT_CHECK', true); define("NO_AGENT_STATISTIC", true); define('DisableEventsCheck', true); require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); if(!$USER->isAdmin()) die('Go away!!!'); if (!Loader::includeModule('pull')) { die('P&P module isn\'t installed'); } $devices = array(); $res_devices = CPullPush::GetList(); while ($device = $res_devices->Fetch()) { $devices[] = $device; } $push_status = CPullOptions::GetPushStatus(); $request = Bitrix\Main\Context::getCurrent()->getRequest(); if($request->isPost() && check_bitrix_sessid()) { if ($request['action'] == 'send_message') { $send_result = array(); foreach ($request['device_ids'] as $key => $value) { $arMessages[] = array( "USER_ID" => $value['user_id'], "TITLE" => 'Push test script', "APP_ID"=> $value['app_id'], "MESSAGE" => $request['message'], ); $pushMe = new CPushManager(); $result = $pushMe->SendMessage($arMessages); if ($result) { $send_result[] = array( 'USER_ID' => $value['user_id'], 'APP_ID' => $value['app_id'], 'RESULT' => 'OK' ); } else { $send_result[] = array( 'USER_ID' => $value['user_id'], 'APP_ID' => $value['app_id'], 'RESULT' => 'FAIL' ); } } Header('Content-Type: application/x-javascript; charset='.LANG_CHARSET); die(Json::encode($send_result)); } elseif($request['action'] == 'get_status') { Header('Content-Type: application/x-javascript; charset='.LANG_CHARSET); die(Json::encode($push_status)); } elseif ($request['action'] == 'delete_me') { unlink(__FILE__); if(!file_exists(__FILE__)) { Header('Content-Type: application/x-javascript; charset='.LANG_CHARSET); die(Json::encode(true)); } else { Header('Content-Type: application/x-javascript; charset='.LANG_CHARSET); die(Json::encode(false)); } } } ?>
>