테스트 사이트 - 개발 중인 베타 버전입니다

sagiga 푸시(게시글 알림 푸시 플러그인)

· 11년 전 · 19582 · 63
이미지.jpg
게시글 등록시 어플 푸시로 알려주는 플러그인입니다.

자세한것은 아래 링크를 참조하세요.
http://sir.co.kr/bbs/board.php?bo_table=cm_free&wr_id=1048840&page=4


ps. 점심시간 30분 투자해서 만들어 두고 있다가 까먹고 이제서야 올렸습니다 ㅎㅎㅎ


:: 설치 방법 ::
1. `sagiga.push.php`를 extend폴더에 넣는다.
1-1, http://www.sagiga.com/index.php?mid=reqeust_api 에서 api를 받고 `sagiga.push.php`를 수정한다.
2. `write_update.tail.skin.php`를 알림 받고자 하는 게시판의 스킨 폴더 내부에 넣는다.
3. https://play.google.com/store/apps/details?id=com.sagiga.gigawebview 어플을 다운 받고 사이트를 접속하여 관리자로 로그인 한다.
4. 푸시 등록에 확인을 한다.
5. 사용한다.

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 63개

./skin/당신의스킨/write_update.tail.skin.php
[code]
<?php
sagiga_send($board['bo_subject'], $wr_subject.' by '.$member['mb_name'], $g4['path'].'/bbs/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr);
[/code]

./extend/sagiga.push.php
[code]
<?php
// PHP 5.2.1 이상
// PHP json_encode 필수
// Curl 필수
# http://www.sagiga.com/index.php?mid=reqeust_api 에서 신청 하세요.
define('SAGIGA_API', '');


# 디바이스 아이디가 저장될 폴더
define('SAGIGA_DATA_DIR', $g4['path'].'/data//sagiga');


# 디렉토리가 없다면 생성합니다. (퍼미션도 변경하구요.)
@mkdir(SAGIGA_DATA_DIR, 707);
@chmod(SAGIGA_DATA_DIR, 707);


# 환경 설정 파일 만듦
$sagiga = SagigaConfigMaking();


/* ===================================================== */
// 기본함수
/* ===================================================== */
function SagigaConfigMaking() {

global $is_admin;

# API 키가 없다면 리턴
if(SAGIGA_API == '') return;

# 정보 호출
if(is_file(SAGIGA_DATA_DIR.'/config.php')) {

include_once(SAGIGA_DATA_DIR.'/config.php');
return $Sagiga;
}

# 관리자가 아닐경우 등록요청 안함
if(!$is_admin) return;


# 등록 요청을 사기가 웹뷰에서만 진행
if(!preg_match('/Sagiga/i', $_SERVER['HTTP_USER_AGENT'])) return;

# 등록 요청
if(!$_REQUEST['device_id']) {

echo '<script>location.href="sagiga:'.$g4['url'].'"</script>';
return;
}

# 반환값 기록
$handle = fopen(SAGIGA_DATA_DIR.'/config.php', 'w');
ob_start();
echo '<?php'.PHP_EOL;
echo '$Sagiga = array(';
foreach ($_GET as $a => $b) { echo '"'.$a.'"=>"'.$b.'",'.PHP_EOL; }
echo ');';

$Content = ob_get_contents();
ob_end_clean();
fwrite($handle, $Content);
fclose($handle);

# 페이지 이동
echo '<script>location.href="'.G5_URL.'"</script>';
}

// 사용법: sagiga_send('제목', '내용(선택)', '링크(선택)', '사이트이름(선택)');
function sagiga_send($Title, $Content='', $Url='', $SiteName='') {

global $config, $sagiga;

if(!$SiteName) $SiteName = $config['cf_title'];
if(!$Title ) return;

$apiKey = SAGIGA_API;
$device_id = $sagiga['device_id'];
$site_name = $SiteName;
$title = $Title;
$content = $Content;
$url = $Url;

$headers = array(
'Content-Type:application/json',
'Authorization:key='.$apiKey
);

$deviceTokens = array($device_id);

$messages = array('site_name' => $site_name, 'title'=>$title, 'content'=>$content, 'url'=>$url);

$sendData = array(
'registration_ids' => $deviceTokens,
'data' => $messages
);

curl_setopt_array($ch = curl_init(), array(
CURLOPT_URL=>'https://android.googleapis.com/gcm/send',
CURLOPT_HTTPHEADER=>$headers,
CURLOPT_POST=>true,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_SSL_VERIFYPEER=>false,
CURLOPT_POSTFIELDS=>json_encode($sendData)
));
curl_exec($ch);
curl_close($ch);
}
/* ===================================================== */
// 기본함수
/* ===================================================== */
[/code]

같이 변경 하시면 사용 가능 할것으로 보입니다.
푸시 플러그인
8년 전
감사합니다 해보겠습니다.^^

게시글 목록

번호 제목
300
299
284
277
247
233
228
225
219
211
207
203