현재 Fetion에는 개발 플랫폼이 없기 때문에 기존 API는 타사에서 개발하고 있으며 WAP Fetion이나 3G Fetion을 크랙하고 브라우저 동작을 시뮬레이션하면 문자 메시지를 보낼 수 있는 것으로 보입니다. 또한 Google Code에는 클래스 php-fetion을 보내는 오픈 소스 PHP Fetion이 있습니다. 이러한 Fetion 인터페이스는 예약된 문자 메시지의 개발을 용이하게 합니다.
배경: 저희 어머니는 나이가 많고 교육도 잘 받지 못하지만, 밭일을 하려면 매일 날씨 정보를 알아야 하므로 인터넷을 통해서는 날씨를 알 수 없습니다. TV를 통해 알아보세요. 그래서 인터넷에서 날씨 정보를 모아서 엄마에게 휴대폰 문자로 보내볼까 하는 생각도 하게 됐어요.
문제: 매일 정기적으로 어머니께 날씨 문자를 보내는 것이 불가능하고, 기존 일기예보 구독 문자 메시지에는 비용이 발생합니다.
해결책:
무료로 휴대폰으로 SMS 보내기
옵션 1: Fetion API 사용
현재 Fetion에는 개발 플랫폼이 없기 때문에 기존 API는 타사에서 개발하고 있으며 WAP Fetion이나 3G Fetion을 크랙하고 브라우저 동작을 시뮬레이션하면 문자 메시지를 보낼 수 있는 것으로 보입니다. 또한 Google Code에는 php-fetion 클래스(http://code.google.com/p/php-fetion/)를 보내는 오픈 소스 PHP Fetion이 있습니다. 이러한 Fetion 인터페이스는 예약된 문자 메시지의 개발을 용이하게 합니다.
유일한 단점은 타사 API가 불안정하고 Fetion 계정 유출 위험이 있다는 점입니다.
여기에서는 http://3.ibtf.sinaapp.com/에서 제공하는 Fetion API를 사용하여 SMS 메시지를 보냅니다.
API에서는 보내는 사람의 휴대폰 번호, 비밀번호, 받는 사람의 휴대폰 번호, 메시지 내용만 URL 매개변수로 제공하면 됩니다. 주의가 필요한 유일한 것은 한자가 깨져 있는 문제입니다(utf-8 인코딩 대신 gbk를 사용하고, 한자가 깨져 있는 문자를 직접 입력하면 전화기는 일반 중국어 gbk 인코딩을 수신하게 됩니다). 이 문제는 iconv 기능을 사용하여 해결할 수 있습니다. "&u=1" 매개변수를 추가합니다.
옵션 2: 139 사서함의 SMS 알림 기능 사용
139 메일함도 차이나모바일의 서비스로 이메일, SMS 알림 기능을 제공합니다. 메일함에 이메일 도착 알림만 설정해 놓으면 MMS 외에 기타 장문 메시지, 일반 문자 메시지, 핸즈프리 문자 메시지도 모두 무료입니다. 너무 많은 공간을 차지하고 정상적인 사용에 영향을 미치지 않도록 시간이 지남에 따라 보낼 편지함과 받은 편지함을 모두 비워야 합니다.
또한 이메일을 보내려면 간단한 PHP 스크립트만 작성하면 됩니다. Sina SAE는 이 메일 서비스도 제공합니다. 메일 서비스의 기능을 이용하면 이메일을 빠르게 보낼 수 있는 코드는 다음과 같습니다.
<?php $mail = new SaeMail(); $ret = $mail->quickSend( '收件人@139.com' , '这是主题' , '这是正文' , '这是发件人邮箱' , '这是发件人密码' , '这是smtp服务host' , [这是smpt服务端口] ); //发送失败时输出错误码和错误信息 if ($ret === false) var_dump($mail->errno(),$mail->errmsg()); ?>
효과는 다음과 같습니다.
문자 메시지가 성공적으로 전송된 후에는 예약이 필요합니다. 다행히 Sina SAE는 Cron 서비스를 제공합니다. Cron 서비스는 SAE에서 개발자를 위해 제공하는 분산 타이밍 서비스로, 예약된 순위 계산과 같은 요구 사항을 충족하기 위해 정기적으로 개발자의 특정 작업을 트리거하는 데 사용됩니다. Cron 설정은 앱의 config.yaml을 통해 구현됩니다. 우리가 제공하는 구문 형식에 따라 사용자가 앱 디렉터리의 config.yaml에서 구성하면 배포 후에 적용됩니다.
크론 추가
saetest/1/config.yaml을 편집하고 cron 섹션을 추가합니다. config.yaml 예제는 다음과 같습니다.
이름: saetest
버전: 1
크론:
- 설명: 크론 테스트
URL: mycron/test.php
일정 : 10월 2일 19시
시간대: 베이징
- 설명: 또 다른 크론 테스트
URL: mycron/another_test.php
일정: 10분 간격
시간대: 베이징
위의 예는 두 가지 예약된 작업을 설명합니다. 매년 10월 2일 19:00에 mycron/test.php를 실행하고, 10분마다 mycron/another_test.php를 실행합니다.
위 글의 내용은 모두의 공부에 도움이 되길 바랍니다.