티스토리 뷰

모바일/iOS

EasyAPNs 메세지 발송 소스

공허공자 2012. 7. 30. 23:09
require_once('class_DbConnect.php');
require_once('class_APNS.php');

// CREATE DATABASE OBJECT ( MAKE SURE TO CHANGE LOGIN INFO IN CLASS FILE )
$db = new DbConnect('localhost', 'DB계정아이디', 'DB계정암호', 'DB명');
$db->show_errors();

// FETCH $_GET OR CRON ARGUMENTS TO AUTOMATE TASKS
$apns = new APNS($db);

/**
/*	ACTUAL SAMPLES USING THE 'Examples of JSON Payloads' EXAMPLES (1-5) FROM APPLE'S WEBSITE.
 *	LINK:  http://developer.apple.com/iphone/library/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW15
 */

/*
 APPLE APNS EXAMPLE 1
 newMessage('기기테이블에서의 레코드 아이디 지정시 그 기기에만 발송');
 addMessageAlert('전송할 메세지');
 addMessageCustom('앱에 전송할 변수명', '변수명에 따른 변수 값 (형식은 배열까지 다양하게)');
*/
$apns->newMessage(1); // 내가 등록된 기기레코드 번호는 1번 
$apns->addMessageAlert($message);
$apns->addMessageCustom('acme2', array('bang', 'whiz'));
$apns->queueMessage();

/*
 APPLE APNS EXAMPLE 2
 newMessage('기기테이블에서의 레코드 아이디', '발송 예약일자 (현재 날짜보다 크게)');
 addMessageAlert('전송할 메세지', '버튼텍스트');
 addMessageBadge(배지 알림 수);
*/
$apns->newMessage(1, '2010-01-01 00:00:00'); // FUTURE DATE NOT APART OF APPLE EXAMPLE
$apns->addMessageAlert('EXAMPLE 2. '. $message, 'PLAY');
$apns->addMessageBadge(5);
$apns->addMessageCustom('acme1', 'bar');
$apns->addMessageCustom('acme2', array('bang', 'whiz'));
$apns->queueMessage();

/*
 APPLE APNS EXAMPLE 3
 addMessageSound('특정 음 지정');
*/
$apns->newMessage(1);
$apns->addMessageAlert('EXAMPLE 3. '. $message);
$apns->addMessageBadge(9);
$apns->addMessageSound('bingbong.aiff');
$apns->addMessageCustom('acme1', 'bar');
$apns->addMessageCustom('acme2', 42);
$apns->queueMessage();

/*
 APPLE APNS EXAMPLE 4
 addMessageAlert(메세지, 버튼텍스트, '치환되어들어갈상수', 치환자들);
 는 사용자정의 지역화 문장에 사용
*/
$apns->newMessage(1, '2010-01-01 00:00:00');  // FUTURE DATE NOT APART OF APPLE EXAMPLE
$apns->addMessageAlert(NULL, NULL, 'GAME_PLAY_REQUEST_FORMAT', array('Jenna', 'Frank'));
$apns->addMessageSound('chime');
$apns->addMessageCustom('acme', 'foo');
$apns->queueMessage();

/*
 APPLE APNS EXAMPLE 5
 앱에 acme2라는 변수와 값만 전달해보기
*/
$apns->newMessage(1);
$apns->addMessageCustom('acme2', array(5, 8));
$apns->queueMessage();

/*
 메세지를 기기등록 아이디 1,3,4... 등등에 보내기
*/ 
$apns->newMessage(array(1,3,4,5,8,15,16));
$apns->addMessageAlert('Greetings Everyone!');
$apns->queueMessage();


// SEND ALL MESSAGES NOW
$apns->processQueue();
댓글