웹사이트 회원 연동 푸시알림 이용안내 입니다.
# CASE 1 운영하는 웹사이트에서 로그인 이후 첫 페이지에 아래 함수를 추가 합니다. 여러 곳이면 그 곳마다 추가해 줍니다.
<script language="javascript"> // 페이지 로딩 직후 앱에서 자동 호출 합니다. function callFromApp() { if (typeof app_login_complete === 'function') { app_login_complete('회원아이디'); } } </script>
# CASE 2 ajax 방식으로 로그인 처리 한 경우의 사용법 입니다.
function login() { ... $.ajax({ type: "POST", url: action, data: form_data, success: function(response) { // 로그인 성공시 if (response == 'success') { if (typeof app_login_complete === 'function') { app_login_complete('회원아이디'); } } ... } }); }
구분 | 내용 |
---|---|
자바스크립트 위치 | https://www.appmake.co.kr/asset/js/appmake_sendpush.js |
요청함수 | sendPush(no, app_srno, send_id, receive_id, title, contents, push_type=1, save_yn='Y', image='', link='') |
파라미터 값 |
· no -> 발송요청번호, 이 번호를 이용하여 결과를 확인 · app_srno -> 앱 고유번호 (앱메이크에서 만드신 앱의 고유번호) · send_id -> 발송자 회원아이디 · receive_id -> 수신자 회원아이디 (여러명에게 전송할 경우 '|'를 이용. ex, receiver1|receiver2|...) · title -> 푸시알림 제목 · contents -> 푸시알림 내용 · push_type -> 1 : 상단 노티 + 팝업 으로 표시 (기본값), 2 : 상단 노티만 표시 · save_yn -> Y : 알림정보 저장 (기본값), N : 저장 안함 · image -> 이미지 위치 URL, 이미지 없는 경우 "" · link -> 노티 또는 푸시팝업 확인버튼 클릭시 이동할 URL, 링크주소 없는 경우 "" |
구분 | 내용 |
---|---|
자바스크립트 위치 | 해당 페이지에 선언 |
요청함수 |
function sendPush_result(data) { alert(data.no + ':' + data.result + ":" + data.msg); } |
파라미터 값 |
· data.no -> 발송요청번호 · data.result -> Y : 발송성공, N : 발송실패 · data.msg -> 발송결과에 따른 메시지 |
오류메시지(data.msg) 정보 |
· 발송자 정보가 등록되어 있지 않습니다. : 입력된 발송자 회원아이디가 등록되어 있지 않은 경우 · 수신자 정보가 등록되어 있지 않습니다. : 입력된 수신자 회원아이디가 등록되어 있지 않은 경우 · 등록된 도메인 정보와 맞지 않습니다. : 실행된 도메인 정보와 앱 기본정보내의 도메인 정보가 맞지 않은 경우 |
# 예시
<script src="https://www.appmake.co.kr/asset/js/appmake_sendpush.js"></script> ... <script> // Case 1: 제목과 내용이 표시되는 팝업푸시 + 상단 노티 표시 function clickButton1() { if (typeof sendPush === 'function') { no = 101; app_srno = 1234; send_id = $("#send_id").val(); receive_id = $("#receive_id").val(); title = $("#title").val(); contents = $("#contents").val(); sendPush(no, app_srno, send_id, receive_id, title, contents); } } // Case 2: 제목과 내용을 상단 노티에 표시 function clickButton2() { if (typeof sendPush === 'function') { no = 102; app_srno = 1234; send_id = $("#send_id").val(); receive_id = $("#receive_id").val(); title = $("#title").val(); contents = $("#contents").val(); push_type = 2; sendPush(no, app_srno, send_id, receive_id, title, contents, push_type); } } // Case 3: 제목과 이미지를 상단 노티에 표시 function clickButton3() { if (typeof sendPush === 'function') { no = 103; app_srno = 1234; send_id = $("#send_id").val(); receive_id = $("#receive_id").val(); title = $("#title").val(); contents = $("#contents").val(); push_type = 2; save_yn = 'N'; image = 'https://www.website.co.kr/images/push_image_sample.jpg'; // 예시 sendPush(no, app_srno, send_id, receive_id, title, contents, push_type, save_yn, image); } } // Case 4: 제목과 이미지를 푸시팝업과 상단 노티에 표시하고 클릭시 링크URL로 이동 function clickButton4() { if (typeof sendPush === 'function') { no = 104; app_srno = 1234; send_id = $("#send_id").val(); receive_id = $("#receive_id").val(); title = $("#title").val(); contents = $("#contents").val(); push_type = 1; save_yn = 'Y'; image = 'https://www.website.co.kr/images/push_image_sample.jpg''; // 예시 link = 'https://sports.v.daum.net/v/20181011170226585?f=m'; // 예시 sendPush(no, app_srno, send_id, receive_id, title, contents, push_type, save_yn, image, link); } } // 발송에 대한 결과정보를 가져오는 방법 function sendPush_result(data) { alert(data.no + ':' + data.result + ":" + data.msg); } </script>
# PHP 예시
<?php $url = 'https://www.appmake.co.kr/PushClient/sendPush4ExtServer'; //접속할 url 입력 $post_data["no"] = 101; // 발송요청번호 $post_data["app_srno"] = 1234; // 앱 고유번호 $post_data["send_id"] = "sender@gmail.com"; // 예시 $post_data["receive_id"] = "receiver1@naver.com|receiver2@daum.net|abc123@hotmail.com"; // 예시 $post_data["title"] = "서버에서 푸시발송"; $post_data["contents"] = "서버에서 보내는 푸시발송 테스트 입니다."; $post_data["push_type"] = 1; $post_data["save_yn"] = "Y"; $post_data["image"] = ""; // 이미지를 보낼 경우 이미지 위치 URL $post_data["link"] = "https://sports.v.daum.net/v/20181011170226585?f=m"; // 예시 $post_data["key"] = "e9Vc0SiPFp9XoMrREnBD79ijmnJTHanmyghABRGm72o="; // 앱 고유서비스키 $post_data["from"] = 2; // 서버에서 발송시 항상 2 $header_data = []; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); //URL 지정 curl_setopt($ch, CURLOPT_POST, 1); //0이 default 값이며 POST 통신을 위해 1로 설정 curl_setopt ($ch, CURLOPT_POSTFIELDS, $post_data); //POST로 보낼 데이터 지정 curl_setopt ($ch, CURLOPT_POSTFIELDSIZE, 0); //이 값을 0으로 해야 알아서 post_data 크기 측정 curl_setopt($ch, CURLOPT_HEADER, true); //헤더 정보를 보내도록 함 curl_setopt($ch, CURLOPT_HTTPHEADER, $header_data); //header 지정 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 이 값을 1로 하면 결과값을 return하게 되어 변수에 저장 가능 $res = curl_exec ($ch); $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE); $header = substr($res, 0, $header_size); $body = substr($res, $header_size); $body_json = json_decode($body, true); print_r($body_json); curl_close($ch); ?>