微视通
中国大陆
 
 
 

本指南示范如何在仅仅4小时内使用VisualGSM应用服务器平台来建立一个短信名录引擎(包括调试)。用户需要具备诸如ASP的web编程脚本语言知识。该引擎搜索一个在线名录然后将结果通过短信息返回给用户。

注:您可以从下载30天试用版。代理商和教育机构可以向sales@visualgsm.com获取一个免费无限制的开发版。

摘要

在本范例中,我们将编写标范程序来提交(POST)用户的搜索请求给web服务器、提取POST结果,然后将结果通过短信息返回给用户。鉴于每条短信息只能容纳长达160字符的信息,我们需要将搜索顺序分成两个步骤(虽然实际web搜索仅是一个步骤)。第一个搜索将返回多达5个搜索结果并显示序号(1-5)及其结果的相应人名。为了简易使用,我们将返回的结果限制在五条。这样一来,用户需要提供较精确的搜索条件,以减少搜索结果。

举例来说,移动用户发送短信息“find joshua”(不区分大小写)给VisualGSM企业服务器。

返回结果是:
1. CHIA Yeong Jia, Joshua
2. Joshua ONG
3. Joshua ONG
4. Joshua TAN Wei Siang
5. ONG Cho Whatt, Joshua

接着,将缩小搜索范围,指定需要提取哪个人的联系信息。假设用户选择Joshua TAN Wei Siang, 他仅需发送回复信息“4”。服务器将返回联系信息。

Joshua TAN Wei Siang
Assistant Manager
(Corporate Planning)
8389340
tan_wei_siang@mcds.gov.sg
MINISTRY OF COMMUNITY DEVELOPMENT AND SPORTS

开发/装备WEB服务器

那么,我们要如何创建一个能够同事处理上百个用户请求的应用程序?

VisualGSM企业服务器提供一个互联网-短信网关,使得开发员可以在诸如Internet信息服务器(IIS)的成熟多线程应用web服务器上开发ASP脚本程序。(在这个例子中,我们使用ASP。 VisualGSM企业服务器支持绝大部分的web脚本,如DLL、Servlet、CGI。 如果您使用Apache,您可以将本范例中的ASP脚本转换乘PHP。)。

编程 – 开发员使用web应用程序的思路来编程。但,在这个情况下, 脚本的响应对象是VisualGSM企业服务器而不是用户的web浏览器。 VisualGSM企业服务器扮演中间件的角色并通过短信息响应信息给移动用户。从移动用户处所接收到的信息均转换乘HTTP POST语句并传给预设好的脚本程序。服务器收到短信息,然后从短信息的关键词中判断应该执行哪个脚本程序。

在这个例子作业中,有两个脚本程序:search.aspretrieve.asp

Search.asp是上述的第一步骤,负责提交移动用户的搜索条件、提取搜索到的结果(人名)、执行HTTP响应,并将详细结果存储在数据库(以用户手机号码做为关键字段)。Retrieve.asp从数据库中读取所选的人名,然后将相应的详细结果(联系信息)响应给VisualGSM企业服务器,再由于VisualGSM来将结果通过短信返回给移动用户。

下载search.asp
下载retrieve.asp

HTTP 组件 – 我们使用一个免费组件,即ASPtear来通过HTTP提交(POST)和提取搜索结果。您需要从http://www.alphasierrapapa.com/IisDev/Downloads/AspTear.zip下载asptear.dll,将asptear.dll拷贝到IIS机器上的system32目录然后注册该组件(在DOS命令行中执行命令:“regsvr32 asptear.dll”)。

数据库表设置 – 我们创建一个名为MITADEMO_LOG的表来暂时存储search.asp所提取的详细信息。Retrieve.asp将从这个表提取信息。您可以使用默认的VisualGSM企业服务器数据库或任一SQL数据库,如:Microsoft SQL、Oracle等。

CREATE TABLE "MITADEMO_LOG"
(
"ID" Integer NOT NULL,
"CONTENT" Varchar (255) NOT NULL,
"MOBILENUM" Varchar (30) NOT NULL
)

切记为这个数据库创建一个DSN。如果您使用VisualGSM企业服务器的默认数据库,DSN名是VisualGSMODBC,而且服务器是运行数据库的机器名。

配置VISUALGSM企业服务器

如下图所示,配置一套关键词。请注意您需要编辑网址并将其指向您的脚本程序路径(很可能和下图例子的路径不同)。关键词F和F1是FIND的拼写变种,并统统与同一个ASP脚本程序关联。关键词“NOKEYWORD” 是捕获所有不符合已预设关键词的短信关键词。如果移动用户发给服务器的短信息不符合预设的短信格式(关键词),服务器将返回正确信息格式的指示短信息“请发送Find…”给用户。关键词“HELP”和“NOKEYWORD”使用关键词功能的信息类型。其他关键词使用“URL地址”类型。

一旦完成配置,您可以开始测试您的应用程序。


离线测试

您可以使用VisualGSM企业管理器的“测试”功能按钮来测试您的应用程序,无需真实发送任何短信息。这可以通过设置参数值然后使用“测试”功能按钮来提交(POST)信息给web服务器。

举例来说,如下图所示,我们为关键词“FIND”分配搜索串“joshua”和用户手机号码“96550205”来提交“MSG”和“ORIG”参数的值给search.asp、注意:MSG={M},而ORIG={N}。{M}是去掉关键词后的引入短信息,而{N}是短信息发送着的移动手机号码。点击“测试”按钮后,管理器将弹出对话框来显示返回信息(搜索串“joshua”所搜索出的5个结果)。


关键词“1”至“5”遵守同样的操作原理。在这些案例中,参数“KEYWORD”是“1”至“5”。请注意KEYWORD, ORIG和MSG是缺省传递给指定URL地址的参数。服务器执行每个URL地址操作都带有这些参数。若需要指定更多参数,可以在“参数”字段中分开定义。

离线测试的功能大大提高了生产力(大约提高50%到200%左右)。一旦您对系统稳定性有所信心,您可以在最后一步中使用您的手机来测试实际短信操作。