WScript/VBScript以命令行的方式通过飞信发送短信或短消息
提醒:本页面将不再更新、维护或者支持,文章、评论所叙述内容存在时效性,涉及技术细节或者软件使用方面不保证能够完全有效可操作,请谨慎参考!
之前那篇文章 《ASP/VBScript通过飞信实现发送短信和短消息功能(Fetion SMS)》 简单介绍了我所实现的通过WAP飞信发送短信或者短消息的类FetionMessager,文末也简单给出了使用方式,当然大家可能觉得不够过瘾,所以我在这里将在WSH(Windows Scripting Host)的脚本宿主环境下以CScript.exe命令启动的方式实现命令行发送短信,VBScript或者JScript脚本在本机状态下都可以以两种方式运行,一种是WScript.exe的方式,如果不主动调用MsgBox或者其他显示窗体的函数或者对象,是不会有窗体产生的;另外一种是CScript.exe,这种就是控制台命令行模式了,会有黑黑的命令提示符窗口产生,当然在批量操作以及带有参数开关操作的模式下,这种方式明显要方便得多。
好了,关于完整的VBS发飞信短信的脚本代码我已经托管到GitHub上了,大家可以 访问这里获取 。下面简单介绍一下调用参数。
最简单的调用方式无非是在命令提示符状态下,输入CScript fetion.vbs调用,当然我们可以利用CScript //NoLogo fetion.vbs调用,这样可以不用显示微软的Logo文字,感觉会清爽一些,下面我将介绍一下调用参数,其实你直接调用的话,脚本已经自动提示调用参数了,我在这里在说明一下:
Usage: fetion [-u 飞信手机账户] [-p 飞信密码] [-r 接收方手机号码] [-m 接收的消息] [--send=enable|disable] [--type=SMS|default] [--login=enable|disable] [--logout=enable|disable] [--status=online|busy|leave|hidden] [--echo=enable|disable] Parameters: -u - 飞信手机账户 -p - 飞信密码 -r - 接收方手机号码 -m - 接收的消息 --send - 是否发送,如果为true或者enable则消息将立即发送 --type - 发送模式,SMS是短消息模式,否则为飞信消息 --login - 是否登录,如果为enable,脚本将在发送消息前尝试登录 --logout - 是否注销,如果为enable,脚本将在发送消息后尝试注销 --status - 指定登录状态,online在线,busy忙碌,leave离开,hidden隐身 - 默认为隐身 --echo - 是否回显脚本执行文本到控制台,enable为回显
下面是调用的例子:
# 以下默认为1行,我这里为显示方便,分行写了
# 发送消息给自己(假设自己号码为13800000000,密码123456)
CScript //NoLogo fetion.vbs -u 13800000000 -p 123456 -m "给自己的消息"
--login=enable --logout=enable --type=SMS --send=true --echo=true
# 发送消息给自己(假设自己号码为13800000000,密码123456)
# (假设他人号码为13000000000)
CScript //NoLogo fetion.vbs -u 13800000000 -p 123456 -m "给别人的消息"
-r 13000000000 --login=enable --logout=enable
--type=SMS --send=true --echo=true
注意这里的--send=true,没有这个将不执行发送过程,另外没有--login=enable也就是没有登录,也会导致发送失败。好了,更多的大家可以尝试一下,另外--echo=true才开启回显,否则控制台上将什么都不会显示。
你完成了我想做而没有做的事。
其实本来想弄个命令行群发短信的,弄到一半,发现不能给飞信好友以外的人发短信,于是纠结了,不过给自己发短信这个比较实用,于是搞了个命令行,接下来可以做个服务器检测报警之类的。不过我觉得这种非官方接口的技巧还是不太稳妥,现在可以用,万一移动改版了WAP飞信,于是这么多代码等于白写了。
所以我没写:)
能否更新一下,现在wap feition已经改版了
抱歉,WAP飞信改版已加入了验证码,VBScript对于验证码表示无力,只能手动或者借助第三方库进行破译,这个超出了原有的复杂度,所以此处将不会更新了,相关代码供学习讨论研究之用。 最后感谢你的关注。