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

(icode)를 이용하여 SMS 예약전송처리되는데...맞는건지??? 채택완료

더블피디 7년 전 조회 4,646

블레스님이 올려주셨던 https://sir.kr/g5_tip/2506" rel="nofollow noreferrer noopener" target="_blank">https://sir.kr/g5_tip/2506

작은별님 도움으로 테스트는 정상적으로 처리되었습니다.

 

 

/lib/icode.sms.lib.php 내

 

function Add($dest, $callBack, $Caller, $msg, $rsvTime="") { ... }

함수를 보면 rsvTime 값이 무조건 null이 되고 null 이면 즉시발송

지정한 시간(날짜시분)을 넣으면 예약전송되는듯합니다. 

 

이 부분을

function Add($dest, $callBack, $Caller, $msg, $rsvTime) { ... }

으로 변경 후 시간정보가 입력되면 예약발송이 되는건 확인했는데요..

 

write_update.skin.php 내  

$SMS -> Add ( ... ) 발송하는 부분에 rsvTime 필드를 추가하였습니다.

 

 // 문의글 등록시 관리자에게 전송
  $send_hp_mb = "010-0000-0000"; // 보내는 전화번호
  $recv_hp_mb = "010-1111-1111"; //  받는 전화번호

  $rsvTime = "201808152320"; //  예약시간(12자리라 날짜시분까지만 입력)

  $send_hp = str_replace("-","",$send_hp_mb); // - 제거
  $recv_hp = str_replace("-","",$recv_hp_mb); // - 제거

  $send_number ="$send_hp";
  $recv_number = "$recv_hp";
  $sms_content = $wr_name." 님이 ".$wr_subject." 신청을 하셨습니다.";  // 문자 내용     

  $SMS = new SMS; // SMS 연결
  $SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']);
  $SMS->Add($recv_number, $send_number, $config['cf_icode_id'], iconv("utf-8", "euc-kr", stripslashes($sms_content)), $rsvTime);
  $SMS->Send();

  alert("성공적으로 접수되었습니다.", "./board.php?bo_table=$bo_table&wr_id=$wr_id");
 // 문자보내기 끝

 

 

icode 홈페이지 내 발송내역조회에는 

예약시간이 지난뒤에 성공 내역이 업데이트 되네요...

 

 

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

답변 1개

채택된 답변
+20 포인트

네, 올바르게 처리하였습니다.

 

다만 Add 함수는 원본 그대로 두시는 것이 좋겠습니다.

작성자님이 수정한대로 두시면 항상 $rsvTime 변수를 정의해야 합니다.

 

혹시나 write_update.skin.php 파일 이외에서 즉시발송으로 사용할 때

$rsvTime 변수를 누락하면 오류가 발생하겠지요.

즉시발송할때는 매번 $rsvTime = null; 값을 적어줘야 한다는 의미입니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

더블피디
7년 전
함수를 안바꾸고 쓰는 좋은 방법이 없을까요?

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

답변을 작성하려면 로그인이 필요합니다.

로그인