使用PhP免费发送定时短信

背景:老妈年纪大了,文化程度不高,但是需要每天了解天气信息才能下地工作,也就无法通过网络获取天气,只能通过电视。于是寻思着自己抓取网络上的天气信息,通过手机短信发送给老妈。

问题:自己不可能每天定时给老妈发送天气短信,现有的天气预报订阅短信又是要钱的。

解决:

  • 免费发送短信到手机

         方案1:使用飞信API

由于飞信目前没有开发平台,现有API都是第三方开发,貌似是通过破解WAP飞信或者3G飞信,模拟浏览器的行为来发短信。另外Google code上有开源的php飞信发送类php-fetion(http://code.google.com/p/php-fetion/)。这些飞信接口方便了定时短信的开发。

唯一的缺点就是第三方的API不稳定,也有飞信账号泄露的风险。

此处,我使用http://3.ibtf.sinaapp.com/提供的飞信API进行短信发送。该站本身挂在新浪SAE上,源代码可以在http://www.oschina.net/code/snippet_202258_9754找到(里面提供下载地址)。

该API只需提供发送者手机号,密码,接受者手机号,消息内容作为url参数即可。唯一需要注意的是中文的乱码问题(使用gbk而不是utf-8编码,直接输入中文乱码,输入中文的gbk编码手机接收正常),可以使用iconv函数或者加上参数”&u=1”解决。

举例:调用免费API

http://2.ibtf.sinaapp.com/?phone=手机号&pwd=飞信密码&to=接收手机号(必须为飞信好友或自己的手机号)&msg=消息内容&u=1(解决乱码问题)

         方案2:使用139邮箱的短信提醒功能

139邮箱也是中国移动的一项业务,提供了邮件短信提醒的功能。只要在邮箱里面设置邮件到达通知就OK了,除了彩信,其他的长短信,普通短信,免提短信都是免费的。注意,时间久了,发件箱和收件箱都要清除一下,以免占用过多空间而影响正常使用。

另外,只需要编写一个简单的邮件发送的php脚本。而新浪SAE也提供了此Mail服务。使用Mail服务里的函数,可以快速发送邮件,代码如下:

<?php

$mail = new SaeMail();

$ret = $mail->quickSend(

'收件人@139.com' ,

'这是主题' ,

'这是正文' ,

'这是发件人邮箱' ,

'这是发件人密码' ,

'这是smtp服务host' ,

[这是smpt服务端口] );

//发送失败时输出错误码和错误信息

if ($ret === false)

var_dump($mail->errno(),$mail->errmsg());

?>

详细信息请参考Mail服务API文档http://apidoc.sinaapp.com/sae/SaeMail.html。

效果如下:

  • 定时发送功能

短信成功发送后,就需要定时了。还好新浪SAE提供了Cron服务。Cron服务是SAE为开发者提供的分布式定时服务,用来定时触发开发者的特定动作,满足比如定时计算排行榜等需求。Cron的设置是通过App的config.yaml来实现的,只要用户在App目录下的config.yaml里按照我们的提供的语法格式进行配置,部署后就能生效。

举例:详细教程参考API文档http://sae.sina.com.cn/?m=devcenter&catId=195

增加Cron

编辑saetest/1/config.yaml,增加cron段,config.yaml示例如下:

name: saetest

version: 1

cron:

- description: cron test

url: mycron/test.php

schedule: $2 day of october 19:00

timezone: Beijing

- description: another cron test

url: mycron/another_test.php

schedule: every 10 mins

timezone: Beijing

上面的示例描述了两个定时任务:每年10月2日19点执行mycron/test.php;每隔10分钟执行mycron/another_test.php

  • PHP天气抓取

网上有很多地方提供天气信息的,比如新浪,中国天气网等,也有相关API和开源的代码。这个比较简单就不细说了。当然上面提到的飞信API站点http://3.ibtf.sinaapp.com/的源码里也有关于天气抓取的代码,可以借鉴。

  • 实现效果图

使用PhP免费发送定时短信(用于天气预报、定时提醒、短信祝福等等)相关推荐

  1. 使用PHP免费发送定时短信

    使用PHP免费发送定时短信 背景:老妈年纪大了,文化程度不高,但是需要每天了解天气信息才能下地工作,也就无法通过网络获取天气,只能通过电视.于是寻思着自己抓取网络上的天气信息,通过手机短信发送给老妈. ...

  2. python 使用twilio免费发送短信

    这里写自定义目录标题 python 使用twilio免费发送短信 登录 获取发送用号码 在python中测试,并发送短信 python 使用twilio免费发送短信 使用twilio提供的服务,貌似使 ...

  3. 【script】15行Python代码实现免费发送手机短信推送消息功能(twilio)

    实现的功能 通过代码定时给手机推送短信,短信内容可以自定义文字,当然你也可以去别的网站爬取每日心灵鸡汤,天气预报或其它信息进行推送. 本文主要讲如何实现发送短信的功能,全部代码只用15行. 首先贴出实 ...

  4. 利用python库twilio来免费发送短信

    利用python库twilio来免费发送短信 twilio介绍 Twilio是一个做成开放插件的电话跟踪服务(call-tracking service).美国当地时间2016年6月23日,云通讯公司 ...

  5. 【python】腾讯云+python SDK免费发送短信

    最近好奇了一下1069开头的短信都是怎么发的呢?验证码或者营销短信,试用了两款免费发送短信的产品,一款是国外的TWILIO,使用教程挺多的,不知道是不是我使用方式不对,频率高的短信发不出来,好像会预充 ...

  6. thinkphp6对接阿里云短信服务完成定时发送短信功能

    1.导入阿里短信包 通过composer下载依赖包 composer require alibabacloud/dysmsapi-20170525 2.0.22 具体可参见阿里云短信服务 >&g ...

  7. android 华为 发送短信,增强信息来了!华为短信App全免费发送短彩信

    IT之家7月3日消息 刚刚,华为官方宣布,推出增强信息.现在使用华为短信App就可以免费发送短彩信了. 华为在EMUI 8.0推出融合通信,短信App已开启"增强信息"模式,增强信 ...

  8. 完全免费的手机短信天气预报与免费发送祝福短信(谷歌短信服务)

    相信很多朋友都喜欢手机订购一些天气预报等短信服务,但一般这些天气预报都需要付费的,虽然价格不贵,但如果有免费且稳定的天气预报短信订阅那该多好呢! 谷歌Google在进入中国市场后,不断在努力提供一些本 ...

  9. java 免费发送手机短信功能

    天天打酱油,闲来无事把现有项目上的一些对以后开发有用的实例进行提取! package com;import java.io.BufferedReader; import java.io.DataOut ...

最新文章

  1. (1)Adapter适配器(ArrayAdapter、SimpleAdapter、BaseAdapter)
  2. python学习笔记3—流程控制if、for、while
  3. C++/Php/Python/Shell 程序按行读取文件或者控制台方法总结。
  4. Python练习题:如何将多个小字符串拼接成一个大的字符串
  5. web.xml 中的listener、 filter、servlet 加载顺序及其详解
  6. Google-glog 日志库使用手记
  7. 网站使用mysql_使用网站的mysql
  8. 使用Anemometer基于pt-query-digest将MySQL慢查询可视化
  9. JavaScript进阶部分笔记
  10. Java的Constructor(构造器)的理解
  11. python sqlite
  12. 学会 配置文件+反射,走遍全球都不怕.
  13. sublime text 前端开发插件安装和配置
  14. 反病毒工具 PCHunter 1.5.6
  15. java 数组写入txt_java编程,如何把一个数组中的内容写入一个txt文档中
  16. 【申博攻略】一.北交计算机学院学术型博士“申请-考核”攻略(招生简章篇)
  17. 详解OpenCV的椭圆曲线点坐标近似计算函数ellipse2Poly()
  18. 手机里面的照片被误删了怎么找回?
  19. 字节校园精选 66 道高频经典笔面试题(含多种思路)(上)
  20. FinFET全面攻占iPhone 五分钟让你看懂FinFET

热门文章

  1. java毕设 springboot 房屋出租出售管理系统(含源码+论文)
  2. Excel一键删除当前工作表的所有批注
  3. odoo 安装时提示pip需更新,但用老不成功
  4. android 耳机放大,挺好玩的小玩意 Fiio 飞傲 E18 便携式USB及安卓解码耳放
  5. 什么是PV、UV和PR值
  6. 什么是苹果推信?什么是苹果推?
  7. P52-前端基础CSS-阿里图标字体库
  8. ZAERO v8.2-ISO 2CD(气动弹性设计与分析)
  9. stem在计算机课程中的应用,STEM教育视角下的计算机专业课程教学活动构建
  10. java 两个大括号_Java中的双大括号初始化