sagiga 푸시(게시글 알림 푸시 플러그인) > 그누보드5 플러그인

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

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

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

첨부파일

sagiga_push.zip (2.2K) 324회 다운로드 2014-08-12 14:23:30

본문

게시글 등록시 어플 푸시로 알려주는 플러그인입니다.

자세한것은 아래 링크를 참조하세요.
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. 사용한다.
추천
19

댓글 전체


sagiga_send($board['bo_subject'], $wr_subject.' by '.$member['mb_name'], G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr);



sagiga_send($board['bo_subject'], $wr_content.' by '.$member['mb_name'], G5_HTTP_BBS_URL.'/board.php?bo_table='.$bo_table.'&wr_id='.$wr_id.'&page='.$page.$qstr);

로 바꿔주시면됩니다.
$wr_subject->$wr_content
어느 위치에서든

sagiga_send('제목', '내용(선택)', '링크(선택)', '사이트이름(선택)');

처럼 삽입 하면 발송이 됩니다.

응용하시면되겠지요???




ps. wr_id값이 참 마음에 드네요. 300!!!

sagiga_send('제목', '내용(선택)', '링크(선택)', '사이트이름(선택)');

를 이용하셔서 /bbs/memo_form_update.php 에 작업 하시면되겠지요 ㅎㅎ

중요한것은 sagiga.push.php 이 파일 뿐이라 ㅎㅎ
활용하면 이것저것 하실 수 있습니다.
디바이스 등록이 계속 실패하는데 사기가에 문의하니 Terrorboy님꼐 문의하라 하네요.
sagiga.push.php 어느 부분을 수정해야 하는건가요?
디바이스 등록을 하면 아래와 같은 링크의 화면이 뜨고 그대로입니다.
www.sagiga.com/gcm.html?device_id=APA91bGb_f55Yd5YfvNwA__5mGG4gtD0w_mpkkbblwP13O-ZhycIGBPdfB_UduHaiT4W5__9WSj1rA4eL0DyYmE9MOGzYolg5hbAbL9ErnmDF0urOdX1vTfIm-kJTDxtmQ2EVv0hJBZSJJvgA4rYG6CXobvmZ7CFxw&platform=android&device_info=lge@LG-F320S@4.4.2¶m1=820¶m2=dreaminus
통상 define('SAGIGA_API', ''); 이부분만 수정 하면 되도록 작업이 되어있습니다.
혹. sagiga.push.php를 extend에 넣지 않았거나 g4나 g4s의 경우 해당 현상이 발생 할 수 있을걸로 보입니다.
드뎌 푸시 나왔다. 히히힛.... 내용보니 쪽지는 안되는 것 같은데 초보자를 위해서 어렵지 않으면....
아직 미사용이지만 제 생각대로 되면 너무 좋겠당....수고하셨고 감사드립니다요^^ 꼭 일반 사용자용도 맹글어주세요 매일 체크할게요
[라이센스]
해당 플러그인은 sagiga측에서 무료 서비스를 유지 하는 동안 MIT 라이센스가 적용되며. 만약, sagiga서비스가 유료로 전환시 GPL v1라이센스로 전환됩니다.

MIT = http://ko.wikipedia.org/wiki/MIT_%ED%97%88%EA%B0%80%EC%84%9C
GPL v1 = http://ko.wikipedia.org/wiki/GNU_%EC%9D%BC%EB%B0%98_%EA%B3%B5%EC%A4%91_%EC%82%AC%EC%9A%A9_%ED%97%88%EA%B0%80%EC%84%9C#GPLv1
Terrorboy 님 이 플러그인을 가입회원 전부다 사용하게하려면 어떻게 응용할수 있을까요?
(회원간 댓글이나, 게시글들이 푸시알람이 되었으면 좋겠어요...)
응용해서 새로 짜야지요.
이 플러그인은 참고형 플러그인 입니다. 해당 파일을 가지고 응용하거나 새로만드실수 있습니다
우선 옆동네에만 올린 마이피플 동작여부 확인이 안되서 ㅎㅎㅎ
참고로 작업 예정에 잡혀있긴 합니다. ㅎㅎ

ps. 무료로 등록 예정입니다.(제가 직접 서비스 하는것이 아니고, 이동네 플러그인과 같이 유지보수가 없을것이기에 ㅎㅎㅎ 응용해서 많은 프로그램이 파생 될것도 기대하고 있구요...)
회원이 원하는 게시판 선택 또는 강제(공지 게시판) 푸시, 쪽지, 시간 설정가능(원하는 시간대 설정) 등을 가능하게 해서 유료로 올리시면 어떨런지요.....
ㅎㅎㅎㅎ
제가 만든건 아니고 인터센스 행님 서비스에 숟가락만 얻었습니다. 빌게이츠는 눈감고도 만들수 있을것 같네요 ㅋㅋ
./skin/당신의스킨/write_update.tail.skin.php

<?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);


./extend/sagiga.push.php

<?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);
}
/* ===================================================== */
// 기본함수
/* ===================================================== */


같이 변경 하시면 사용 가능 할것으로 보입니다.
전체 504
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT