[G5] 게시판 글작성후 SMS5 (디딤365) 연동해서 문자 발송 > 기술자료

본문 바로가기
사이트 내 전체검색

기술자료

그누보드 [G5] 게시판 글작성후 SMS5 (디딤365) 연동해서 문자 발송

페이지 정보

댓글 0건 조회 962회 작성일 2019-03-22 14:25

본문

디딤365의 문자발송 시스템을 이용해서 게시글 작성시 문자가 발송하는 방법입니다.
게시판 스킨에 아래 내용을 추가하고 환경설정 수정하면 문자 발송이 가능합니다.


board / skin / basic / write_update.skin.php  파일을 생성후 아래와 같이 저장합니다.

<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가


if ($w == '' && $bo_table=="게시판") {
    //----------------------------------------------------------
    // SMS 문자전송 시작
    //----------------------------------------------------------
    
    // 환경설정 시작
    $sms_admin = "";  // 보내는사람 연락처
    $sms_user  = $wr_1;  // 받는 사람 연락처
    
    $sms_send_admin = "Y"; // 관리자 > 관리자에게 sms 발송  Y: 보내기 / N: 안보내기
    $sms_send_user1 = "N"; // 신청자 > 관리자에게 sms 발송  Y: 보내기 / N: 안보내기
    $sms_send_user2 = "Y"; // 관리자 > 신청자에게 sms 발송  Y: 보내기 / N: 안보내기
    
    $guest_no  = "";  // 디딤365 SMS 계정번호
    $guest_key = "";  // 디딤365 SMS 계정인증키
    
    // 다운로드: http://snoopy.sourceforge.net/ 에서 다운로드후  lib 폴더에 업로드
    include_once G5_LIB_PATH."/Snoopy.class.php";
    // 환경설정 끝
    
    include_once G5_PLUGIN_PATH."/sms5/sms5.lib.php";
    if ( ! function_exists('get_hp')) {
        function get_hp($hp, $hyphen=1)
        {
            global $g5;
    
            if (!is_hp($hp)) return '';
    
            if ($hyphen) $preg = "$1-$2-$3"; else $preg = "$1$2$3";
    
            $hp = str_replace('-', '', trim($hp));
            $hp = preg_replace("/^(01[016789])([0-9]{3,4})([0-9]{4})$/", $preg, $hp);
    
            if ($g5['sms5_demo'])
                $hp = '0100000000';
    
            return $hp;
        }
    }
    
    
    if ($sms_send_admin == "Y") {
        // 관리자 > 관리자에게 sms 발송
        $snoopy = new Snoopy;
        $stran_msg2 = G5_BBS_URL."/board.php?bo_table={$bo_table}&wr_id={$wr_id} T. {$sms_user} ";  // 문자내용
        $tran_phone2 = urlencode($sms_admin); // 받는사람 번호
        $tran_callback2 = urlencode($sms_admin); // 보내는사람 번호
        //$tran_date = urlencode(iconv('EUC-KR', 'UTF-8', $tran_date)); // 예약전송 일시(생략시 즉시전송)
        //$stran_msg2 = urlencode(iconv('EUC-KR', 'UTF-8', $stran_msg2));  // euc-kr 일때만
        $tran_msg2 = urlencode($stran_msg2); //전송 메시지
        $cmd = "SendSms";
        $method = "GET";
        $url = "http://www.nesolution.com/service/sms.aspx?cmd={$cmd}";
        $url = $url."&method={$method}&guest_no={$guest_no}&guest_key={$guest_key}";
        $url = $url."&tran_phone={$tran_phone2}&tran_callback={$tran_callback2}";
        $url = $url."&tran_date={$tran_date2}&tran_msg={$tran_msg2}";
        $snoopy->fetchtext($url);
        $send_result = $snoopy->results;
        
        
        if ($send_result=="OK")
        {
            $recv_number = $sms_admin; // 발신자 전화번호
            $wr_reply    = $sms_user; // 발신자 전화번호
            $wr_message  = $stran_msg2;
            $wr_booking  = ""; // 예약전송
            $wr_total    = "1";
            
            $row = sql_fetch("select max(wr_no) as wr_no from {$g5['sms5_write_table']}");
            if ($row)
                $wr_no = $row['wr_no'] + 1;
            else
                $wr_no = 1;
    
            sql_query("insert into {$g5['sms5_write_table']} set wr_no='{$wr_no}', wr_renum=0, wr_reply='{$wr_reply}', wr_message='{$wr_message}', wr_booking='{$wr_booking}', wr_total='{$wr_total}', wr_datetime='".G5_TIME_YMDHIS."'");
    
            $wr_success = 0;
            $wr_failure = 0;
            $count      = 0;
                
            list($phone, $code) = explode(":", $result);
    
            $hs_code = $send_result;
            $hs_memo = get_hp($recv_number, 1)."로 전송했습니다.";
            $wr_success++;
            $hs_flag = 1;
    
            $row = array_shift($list);
            $row['bk_hp'] = get_hp($row['bk_hp'], 1);
    
            $log = array_shift($SMS->Log);
    
            sql_query("insert into {$g5['sms5_history_table']} set wr_no='{$wr_no}', wr_renum=0, bg_no='1', mb_id='{$row['mb_id']}', bk_no='1', hs_name='".addslashes($row['bk_name'])."', hs_hp='{$wr_reply}', hs_datetime='".G5_TIME_YMDHIS."', hs_flag='{$hs_flag}', hs_code='{$hs_code}', hs_memo='".addslashes($hs_memo)."', hs_log='".addslashes($log)."'");
            
            sql_query("update {$g5['sms5_write_table']} set wr_success='{$wr_success}', wr_failure='{$wr_failure}', wr_memo='{$str_serialize}' where wr_no='{$wr_no}' and wr_renum=0");
        }
    }



    if ($sms_send_user1 == "Y") {
        // 신청자 > 관리자에게 sms 발송
        $snoopy = new Snoopy;
        $stran_msg2 = "글등록 ".G5_BBS_URL."/board.php?bo_table={$bo_table}&wr_id={$wr_id}";  // 문자내용
        $tran_phone2 = urlencode($sms_admin); // 받는사람 번호
        $tran_callback2 = urlencode($sms_user); // 보내는사람 번호
        //$tran_date = urlencode(iconv('EUC-KR', 'UTF-8', $tran_date)); // 예약전송 일시(생략시 즉시전송)
        //$stran_msg2 = urlencode(iconv('EUC-KR', 'UTF-8', $stran_msg2));  // euc-kr 일때만
        $tran_msg2 = urlencode($stran_msg2); //전송 메시지
        $cmd = "SendSms";
        $method = "GET";
        $url = "http://www.nesolution.com/service/sms.aspx?cmd={$cmd}";
        $url = $url."&method={$method}&guest_no={$guest_no}&guest_key={$guest_key}";
        $url = $url."&tran_phone={$tran_phone2}&tran_callback={$tran_callback2}";
        $url = $url."&tran_date={$tran_date2}&tran_msg={$tran_msg2}";
        $snoopy->fetchtext($url);
        $send_result = $snoopy->results;
    }
    
    
    if ($sms_send_user2 == "Y") {
        // 관리자 > 신청자에게 sms 발송
        if ($wr_1) {
            $snoopy = new Snoopy;
            $stran_msg2 = G5_URL." 문의감사합니다. 빠른시간안에 연락드리겠습니다" ;  // 문자내용
            $tran_phone2 = urlencode($sms_user); // 받는사람 번호
            $tran_callback2 = urlencode($sms_admin); // 보내는사람번호
            //$tran_date = urlencode(iconv('EUC-KR', 'UTF-8', $tran_date)); // 예약전송 일시(생략시 즉시전송)
            //$stran_msg2 = urlencode(iconv('EUC-KR', 'UTF-8', $stran_msg2));  // euc-kr 일때만
            $tran_msg2 = urlencode($stran_msg2); //전송 메시지
            $cmd = "SendSms";
            $method = "GET";
            $url = "http://www.nesolution.com/service/sms.aspx?cmd={$cmd}";
            $url = $url."&method={$method}&guest_no={$guest_no}&guest_key={$guest_key}";
            $url = $url."&tran_phone={$tran_phone2}&tran_callback={$tran_callback2}";
            $url = $url."&tran_date={$tran_date2}&tran_msg={$tran_msg2}";
            $snoopy->fetchtext($url);
            $send_result = $snoopy->results;
        }
    }
    
    //echo $url."<br>";
    //echo "send_result = ".$send_result."<br>";
    //----------------------------------------------------------
    // SMS 문자전송 끝
    //----------------------------------------------------------
}

?>
  • 트위터로 보내기
  • 페이스북으로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.


Total 2,337건 1 페이지

기술자료 목록
제목
공지 일반   17519  2001-08-31 11:52 ~ 2017-12-05 16:33  
2336 그누보드   69  2019-08-13 23:52 ~ 2019-08-14 00:02  
2335 HTML   66  2019-08-11 13:03  
2334 MySQL   158  2019-07-24 11:04  
2333 그누보드   171  2019-07-18 08:01 ~ 2019-07-18 08:44  
2332 HTML   168  2019-07-15 18:13 ~ 2019-07-15 22:48  
2331 PHP   411  2019-05-02 02:33 ~ 2019-05-02 02:38  
2330 JavaScript   379  2019-05-02 02:10  
2329 그누보드   593  2019-04-25 09:02 ~ 2019-04-25 09:19  
2328 그누보드   599  2019-04-22 23:56  
2327 HTML   612  2019-04-16 11:40  
2326 영카트   609  2019-04-14 22:24  
2325 HTML   1044  2019-04-02 00:12 ~ 2019-04-02 01:17  
열람중 그누보드   963  2019-03-22 14:25  
2323 전자결제   1601  2019-02-18 11:47  
2322 그누보드   1521  2019-02-16 01:51 ~ 2019-02-17 14:00  
2321 PHP   1535  2019-02-13 21:01  
2320 JavaScript   1459  2019-02-08 18:37 ~ 2019-02-08 19:32  
2319 그누보드   1522  2019-02-08 16:47 ~ 2019-02-08 16:54  
2318 그누보드   1561  2019-01-31 18:45 ~ 2019-01-31 18:52  

게시물 검색
계좌이체 or 신용카드 결제하기
해피정닷컴으로 대금결제를 할 수 있습니다

접속자집계

오늘
405
어제
1,239
최대
3,306
전체
5,003,709

회사명: 해피정닷컴   사업자번호: 119-05-36414   전화: 070-7600-3500   팩스: 032-679-3528   주소: 14526 경기도 부천시 옥산로168번길 34-1, 3층
대표: 정창용   개인정보보호책임자: 정창용   통신판매업신고번호: 2014-서울구로-0074 [사업자등록정보확인]   건강기능식품영업신고번호 제2018-0080452호
Copyright 2001~2019 해피정닷컴. All Rights Reserved.