웹마스터 팁

게시판에 다른 어플을 활용해서 푸쉬 서비스를 제공하는게 있던데 그건 푸쉬라고 하기 보다는 대행하는 식이라서 올려 드리고자 합니다. 


PUSH 기능은 구글 프로젝트에서 GCM서비스를 ON 하고 받은 프로젝트 NO가 고유의 하나의 어플로 되어야 하고 그 어플에서 푸쉬 서비스를 하게 됩니다.


정확히 이야기하면 서버 키는 1개 입니다. 한어플에 한개의 서버키를 활용하게 되며 어플의 기기 등록값은 고유한 1개의 기기번호가 저장됩니다.


 PUSH를 위해 기기를 구글 서버에 등록하게 됩니다. 그건 JSON으로 받아서 회원 테이블로 저장해서 서버 프로그램을 활용해서 메시지를 날리게 됩니다.


하나의 어플에서 여러개 사이트를 파싱하거나 데이터만 받아서 보내 고 받는 부분을 처리하는건 자신의 어플을 만들때 해당되지 않습니다.


일반적으로 index.html 에서 inappbrowers를 사용하게 되면 고유의 reg_id를 ajax로 저장하고 사용하게 되며 회원 데이터 베이스에서는 메일 받기 허용과 같은 방법으로 저장하도록 합니다. 구글에 reg_id를 삭제 하는 방법으로 처리 하지 않습니다.


이렇게 등록된 기기 reg_id는 회원이 수신 거부 하게 되면 테이블에 n값을 저장해서 json 으로 구글 서버에 발송 요청서 제외해서 보내게 됩니다.


옵션은 여러가지 있습니다. 그리고 url처리는 폰갭이나 네이티브에서 받은 데이터 값의 분석해서 url을 넘길수 있습니다.


참고 하실만한 자료는 

https://github.com/phonegap-build/PushPlugin/blob/93067b9303252d5ed7394819bf220db56d99d22c/README.md

를 보시면 자바스크립트로 처리하게 되어 있습니다. 

폰갭으로 어플을 만든다면 자신의 서버에서 처리 하시면 됩니다.


생각보다 간단합니다. 그리고 어플은 고유한 어플을 하나의 이야기를 하는게 맞고 어플하나에 다른 사이트를 연동해서 푸쉬를 하는것은 어면히 푸쉬라고 하기는 힘듭니다.


물론 구글 개발자 등록되어 서 프로젝트를 생성해서 해야 하며 혹시 주위에 있는 개발자가 있다면 특별히 돈드는게 아니니깐 가능합니다.


제가 어플을 만들때 제로보드 킴스큐를 다 넣어 봤지만 푸쉬 기능은 자바스크립트로 처리 되고 다만 푸쉬 등록되었다는 부분에서 ajax 로 데이터를 보내어 세션 값에 맞도록 reg_id를 등록하게 됩니다.


언젠가는 소스를 공개 하겠지만 레이아웃에 넣어 버리려고 하고 있습니다만 현재 푸쉬 대행이라는것과 어플 gcm은 다른 개념이라서 팁에 올립니다.


5만명 발송시 2~3분 정도 소요될겁니다. 문자랑 보내는 원리가 같습니다. 거의 요즘은 모르지만 몇해 전만해도 데이콤같은 경우는 데이터 베이스에 저장하고 데몬 설치해서 억세스 되도록 했었습니다.


위 주소를 보시면 저 소스를 본인의 레이아웃에서 처리 하시면 됩니다. 그리고 구글에서 받은 값만 저장해서 사용하셔도 되도록 쉽게 되어 있습니다.


참고로 폰갭의 경우 어플 코딩을 www/index.html에서 하게 됩니다. 그런데 이부분은 서버 주소를 대신 넣고  config.xml 에서 정의가 가능하실겁니다. 그리고 서버에서  

<script type="text/javascript" charset="utf-8" src="jquery.js"></script>

<script type="text/javascript" charset="utf-8" src="PushNotification.js"></script>

    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>


을 넣어시면 폰갭 코딩은 폰갭 소스가 아니고 웹페이지에 넣어서 제작 가능합니다. 그럼 코딩을 매번 하실필요없이 제작이 가능하고 완전힌 연동이 됩니다. 다만 pc버전과 모바일 버전중에 모바일 버전에서만 넣어셔야 pc버전 사용하시는데 문제가 없습니다.



제목 글쓴이 날짜
textyle에서 카카오 보내기 버튼 넣기 웹빌드 2014.02.24
모바일 게시판에서 이미지 리사이즈 적용방법 [6] socialskyo 2014.02.24
SFTP 적용하기 [6] Seeean 2014.02.24
Specify image dimensions socialskyo 2014.02.26
누리고 + KCP 결제 모듈 사용시 "연동 모듈 호출 오류" 가 날때 [1] idkiller 2014.02.26
1.5버전대에서 1.7.4버전으로 업데이트시.. [4] 똑디 2014.02.26
nginx 에서 서브도메인 사용시 로그인유지방법 [3] garnecia 2014.02.26
[10원팁] 서버에 계정추가후 새로설치하는데 CSS가 깨진다? [3] 키스미베이베 2014.02.27
[팁 시리즈 1] 웹 사이트 이전 및 복구/백업(이)가 되지 않습니다! [6] Omega3 2014.02.28
정규식 문법 웹엔진 2014.02.28
해외 아이피 차단 방법입니다. [3] Flolida 2014.03.01
[팁 시리즈 2] 한글 도메인이나 영문 도메인 설정을 잘못 건드려서 사이트의 모든 기능이 거의 먹통입니다! Omega3 2014.03.01
방명록 댓글 줄바꿈 메디칼온 2014.03.03
xe 홈페이지 폰갭으로 묶을때 웹빌드 2014.03.03
페이지 모듈에서 다국어 기능 작동 안 하는 버그 패치법 [1] sejin7940 2014.03.04
폰갭 제작 어플 gcm 발송시 변수 웹빌드 2014.03.04
XE 어플로 만들때 PUSH 기능처리 방법 웹빌드 2014.03.06
css3 둥근테두리 만들기 낮은자 2014.03.06
css3 안쪽과 바깥쪽 그림자 만들기 입니다 file 낮은자 2014.03.06
자주 쓰이는 정규표현식 모음 투니페이퍼 2014.03.06