회원가입시에 장문 문자 전송 문제

안녕하세요

워드프레스 회원가입했을때 문자가 가게 하려고하는데

장문문자거든요.. 문장을 쫙 해놓으니까 딱 단문글자수까지만 보이고 그 이후로는 짤려요 ㅠ

장문으로 보내게하려면 어떻게 해야할까요?ㅠㅠ

문자는 잘 오고있는 상태인데 문자가왔을때 예를들어 

[안녕하세요 회원가입을 환영합니다.
저희홈페이지에서는 여러가]

이렇게 짤려서 와요...

도와주세요 ㅠㅠ

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    현재 90 바이트(한글 45자) 초과 시에 장문 문자로 보내고 있습니다.

    FTP로 접속해서 /wp-content/plugins/cosmosfarm-members/class/Cosmosfarm_Members_Sms.class.php 파일에

    아래의 코드가 장문 문자로 보낼지 체크하는 코드입니다.

    if(strlen(iconv('utf8', 'euckr', $content)) > 90){
    	$type = 'L';
    }
    else{
    	$type = '';
    }
    $body['smsType'] = base64_encode($type); // LMS일경우 L

    저희 쪽에서도 다시 테스트를 해보고 문제가 있다면

    플러그인도 업데이트를 진행하도록 하겠습니다.

    고맙습니다.

  • 안녕하세요.

    저희 고객지원 쪽으로 보내주신 정보로 확인해보니

    iconv() 함수가 제대로 동작하지 않는 듯합니다.

    기존의 아래의 코드를

    if(strlen(iconv('utf8', 'euckr', $content)) > 90){
    	$sender = 'mms';
    	$title = mb_substr($content, 0, 40);
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'title'         => $title,
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }

    아래의 코드로 교체해두었습니다.

    if(strlen(mb_convert_encoding($content, "EUC-KR", "UTF-8")) > 90){
    	$sender = 'mms';
    	$title = mb_substr($content, 0, 40);
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'title'         => $title,
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }

    실제로 회원가입해서 확인해보시겠어요?

    고맙습니다.

  • 안녕하세요.

    저희 고객지원 쪽으로 워드프레스 관리자 계정과 FTP 접속 정보를 보내주시면 점검해드리겠습니다.

    고맙습니다.

  • 알려주신 맨밑에 넣는 긴 코드도 삽입하였구요!

    그래도 안돼서 새롭게 알려주신 코드 넣어보니

    단문으로 발송됩니다 라고뜹니다!ㅠㅠ

  • 안녕하세요.

    아래의 코드도 적용해주셨는지요?

    $response = wp_safe_remote_post("https://api-sms.cloud.toast.com/sms/v2.0/appKeys/{$option->sms_toast_cloud_appkey}/sender/$sender", $args);

     

    적용했는데도 같은 문제가 발생한다면

    아래의 코드를 적용하셔서

    실제 회원가입 후에 페이지에 어떤 메시지가 표시되는지 확인해보시겠어요?

    if(strlen(iconv('utf8', 'euckr', $content)) > 90){
    	echo '장문으로 발송됩니다.';
    	$sender = 'mms';
    	$title = mb_substr($content, 0, 40);
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'title'         => $title,
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }
    else{
    	echo '단문으로 발송됩니다.';
    	$sender = 'sms';
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }
    exit;

    고맙습니다.

  • 코드를 변경했는데도 안되네요... 그대로 짤려버리네요...ㅠㅠ 어떡하죠 ㅠㅠ

  • 안녕하세요.

    토스트 클라우드를 사용 중이시라면

    FTP로 접속해서 /wp-content/plugins/cosmosfarm-members/class/Cosmosfarm_Members_Sms.class.php 파일에

    아래의 코드를 찾아서

    $args = array(
    	'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    	'body'    => json_encode(array(
    		'body'          => $content,
    		'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    		'recipientList' => array(
    			array('recipientNo' => $phone)
    		)
    	))
    );
    
    $response = wp_safe_remote_post("https://api-sms.cloud.toast.com/sms/v2.0/appKeys/{$option->sms_toast_cloud_appkey}/sender/sms", $args);

    아래의 코드로 교체해주시겠어요?

    if(strlen(iconv('utf8', 'euckr', $content)) > 90){
    	$sender = 'mms';
    	$title = mb_substr($content, 0, 40);
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'title'         => $title,
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }
    else{
    	$sender = 'sms';
    	$args = array(
    		'headers' => array('content-type' => 'application/json;charset=UTF-8'),
    		'body'    => json_encode(array(
    			'body'          => $content,
    			'sendNo'        => "{$option->sms_caller1}{$option->sms_caller2}{$option->sms_caller3}",
    			'recipientList' => array(array('recipientNo' => $phone))
    		))
    	);
    }
    
    $response = wp_safe_remote_post("https://api-sms.cloud.toast.com/sms/v2.0/appKeys/{$option->sms_toast_cloud_appkey}/sender/$sender", $args);

    추후 코스모스팜 회원관리 플러그인에 적용하여 업데이트하도록 하겠습니다.

    고맙습니다.

  • 토스트클라우드입니다!

  • 사용 중인 SMS 호스팅이 어떻게 되시는지요?

    저희 쪽에서도 같은 SMS 호스팅으로 테스트해보겠습니다.

    고맙습니다.

  • ㅠㅠ역시나 안되네요...잘립니다.... 언제쯤 해결될까요 ㅠㅠ 좀 급해서요 ㅠㅠ..

    해결책 나오면 여기 다시 말씀해주실수있나요 ㅠㅠ

  • 우와 드디어됩니다!!!!!!!!!감사합니다 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요