CN101364971A - 一种通讯机器人协议转换系统 - Google Patents
一种通讯机器人协议转换系统 Download PDFInfo
- Publication number
- CN101364971A CN101364971A CNA2007100447890A CN200710044789A CN101364971A CN 101364971 A CN101364971 A CN 101364971A CN A2007100447890 A CNA2007100447890 A CN A2007100447890A CN 200710044789 A CN200710044789 A CN 200710044789A CN 101364971 A CN101364971 A CN 101364971A
- Authority
- CN
- China
- Prior art keywords
- protocol
- message
- communication
- robot
- logical process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明描述了一种通讯机器人协议转换系统。本系统将不同的通讯工具的协议转换为通用的HTTP协议请求,开发者只需开发一个动态网页,接受HTTP请求,并根据参数进行逻辑处理,即可实现通讯机器人的功能。极大地降低了开发通讯机器人的难度。当本系统收到信息的时候,会构造一条标准的HTTP请求,并将此请求发送给第三方的逻辑处理脚本,脚本也以HTTP的形式返回结果,然后本系统将结果回复给服务器。开发者只需使用ASP、PHP或其他Web编程语言,编写一个动态网页即可创造通讯机器人。开发者只需关注消息的逻辑处理,而不需要关心不同通讯工具之间的协议差异。
Description
技术领域
本发明涉及计算机网络通信技术,特别是通过网络通讯工具进行自动应答处理的系统。尤其包括QQ、MSN、Email、短信等聊天工具。
背景技术
互联网的高速发展,网络通信技术也随之迅猛发展。不论是Email这种非即时通讯工具,还是QQ、MSN这样的即时通讯工具,甚至短信、彩信,都是人们必不可少的通讯工具,因此也诞生了许多的通讯机器人。人们可以使用通讯工具直接与通讯机器人交流,获取信息,查询天气等。但是通讯机器人的开发和应用有较高的门槛,首先不同的通讯工具有不同的通信协议,需要使用特定的编程语言才可以操作,而且通信协议也可能随时发生变化,同时应用的时候还必须使用专业的服务器,稳定的网络连接等,这些原因限制了通信机器人的发展。本专利提供了一种通讯机器人协议转换系统,将不同的通讯工具的通信协议,转换为通用的HTTP协议请求。使用任何一种网页动态语言(例如ASP、PHP、Perl等)均可开发通讯机器人。而且仅需一个动态网页空间即可运行,不需要专业的服务器。
发明内容
本发明提供一种通讯机器人的协议转换系统。开发者可以方便的使用本系统开发通讯机器人系统,将开发精力放在消息的逻辑处理上,而不需要关注不同的工具的通讯协议。
本系统主要包含两部分:
(1)通讯消息接收器;
通讯消息接收器类似于通讯工具的客户端,例如QQ软件,MSN软件或者Email收发软件。它的主要作用是与通讯服务器连接,接收来自服务器的信息,将接收到的消息转交给协议转换器;从协议转换器获得欲发送的消息,并向服务器发送信息等。
(2)协议转换器。
协议转换器主要作用是将接收到的消息,以特定的格式转化为标准的HTTP协议请求,并发送给对应的第三方逻辑处理脚本。然后等待第三方逻辑处理脚本的返回值,将返回值作为回复消息,转交给通讯消息接收器,进行发送。
机器人应答的流程如图1所示,本发明所提供的协议转换系统,实现了收发消息和转换HTTP协议的功能,但并不进行逻辑处理操作。所有的逻辑处理均交给第三方逻辑处理脚本操作,本系统相当于一个中间件。而实际的机器人开发者则可以将精力专注于逻辑处理,只需要编写逻辑处理脚本即可实现功能。
当协议转换器收到信息,按照图2所示的参数,根据HTTP协议的标准,将消息转化成HTTP请求,并向第三方逻辑脚本发送该请求。第三方逻辑请求脚本一般情况下应当是一个动态网页的地址,例如http://www.test.com/bot.cgi。第三方逻辑脚本收到HTTP请求后,只需要按照动态网页的编程标准,将参数解析,并根据参数的内容,进行相应的逻辑处理。然后将逻辑处理的结果,直接以页面的方式显示出来。协议转换器可以获取逻辑处理的结果,并将结果通过消息接收器发送给服务器。
由于第三方逻辑脚本是向网络公开的网址,因此可能存在被入侵的风险,因此我们设置了加密字串参数。由协议转换器发起的HTTP请求,都将包含此加密字串。而脚本在接收到请求后,应当先判断该加密字串是否正确,如果字串不正确,应当拒绝请求。
附图说明
图1机器人应答流程图
图2协议转换器传递参数列表
具体实施方式
以创建某MSN聊天机器人为例,该机器人实现简单的聊天功能。假设MSN机器人帐号为msnbot@hotmail.com,聊天者的帐号为people@hotmail.com,逻辑处理脚本地址为http://www.test.com/bot.cgi,加密字串为12321。
当机器人帐号收到消息“hello”后,应当构造以下HTTP请求。
action=message&user=people@hotmail.com&message=hello&type=MSN&username=msnbot@hotmail.com&key=12321
然后将此请求发送到http://www.test.com/bot.cgi。根据HTTP协议标准,需要对请求中的特殊字符进行转义,因此一个完整的请求应当是这样。
http://www.test.com/bot.cgiaction=message&user=people%40hotmail.com&message=hello&type=MSN&username=msnbot%40hotmail.com&key=12321
对应的bot.cgi脚本在收到请求后,根据参数进行逻辑判断,然后做出回应结果。脚本的内容应当是类似下面的程序(以Perl语言为例):
#!/usr/bin/perl
use CGI;
my $cgi=new CGI;
print $cgi->header();
my $key=$cgi->param(`key′);
if($key ne`12321′){print〝error〞;exit;}
my $message=$cgi->param(`message′);
my $user=$cgi->param(`user′);
if($message=~/he1lo|hi|hey/){print〝hello!nice to meet
you!$user〞;}
elsif($message=~/bye/){print〝good bye!See you later〞;}
else{print〝Idon′t know what you say〞;}
exit;
对于开发者来说,仅仅需要完成bot.cgi这个脚本的内容,以短短十几行的代码即可创建一个通讯机器人。而且这个机器人还可以同时应用于MSN、QQ、短信、或者Email,极大的降低了机器人开发的难度。
Claims (6)
1.一种通讯机器人协议转换系统,其特征在于,包含通讯消息接收器,通讯消息接收器负责连接所支持协议的通讯服务器,并接收消息和发送消息,但不对消息进行逻辑处理。
2.如权利1所述的通讯机器人协议转换系统,其特征在于,通信消息接收器支持Email和网页留言形式的非即时消息协议。
3.如权利1所述的通讯机器人协议转换系统,其特征在于,通信消息接收器支持QQ、MSN、Jabber、雅虎通、AIM、淘宝旺旺和Skype的即时消息协议。
4.如权利1所述的通讯机器人协议转换系统,其特征在于,通信消息接收器支持短信、彩信,语音电话的协议。
5.如权利1所述的通讯机器人协议转换系统,其特征在于,还包括协议转换器,其作用是将接收到的消息按照指定的格式转换为标准HTTP协议请求,并将该请求发送给指定的逻辑处理脚本,但该转换器本身不对消息进行逻辑处理。
6.如权利1所述的通讯机器人协议转换系统,其特征在于,机器人的逻辑处理均由独立于本系统的第三方逻辑处理脚本处理,该逻辑处理脚本应当是一个动态网页的网址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100447890A CN101364971A (zh) | 2007-08-10 | 2007-08-10 | 一种通讯机器人协议转换系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2007100447890A CN101364971A (zh) | 2007-08-10 | 2007-08-10 | 一种通讯机器人协议转换系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101364971A true CN101364971A (zh) | 2009-02-11 |
Family
ID=40391127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2007100447890A Pending CN101364971A (zh) | 2007-08-10 | 2007-08-10 | 一种通讯机器人协议转换系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101364971A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075409B (zh) * | 2009-11-24 | 2013-03-20 | 华为技术有限公司 | 请求消息处理方法、系统及负载均衡器设备 |
TWI511060B (zh) * | 2014-02-18 | 2015-12-01 | Synology Inc | 即時傳訊通訊裝置、方法及其非暫態電腦可讀取記錄媒體 |
CN107204961A (zh) * | 2016-03-16 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 接口报文中需转义字符的处理方法和装置 |
CN107395663A (zh) * | 2017-05-17 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 数据获取方法及装置 |
CN114978786A (zh) * | 2022-05-30 | 2022-08-30 | 广州宸祺出行科技有限公司 | 一种将第三方接口转化为系统标准接口的方法及装置 |
-
2007
- 2007-08-10 CN CNA2007100447890A patent/CN101364971A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075409B (zh) * | 2009-11-24 | 2013-03-20 | 华为技术有限公司 | 请求消息处理方法、系统及负载均衡器设备 |
US9357028B2 (en) | 2009-11-24 | 2016-05-31 | Huawei Technologies Co., Ltd. | Method and system for processing request message, and load balancer device |
TWI511060B (zh) * | 2014-02-18 | 2015-12-01 | Synology Inc | 即時傳訊通訊裝置、方法及其非暫態電腦可讀取記錄媒體 |
US9647966B2 (en) | 2014-02-18 | 2017-05-09 | Synology Incorporated | Device, method and non-transitory computer readable storage medium for performing instant message communication |
CN107204961A (zh) * | 2016-03-16 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 接口报文中需转义字符的处理方法和装置 |
CN107395663A (zh) * | 2017-05-17 | 2017-11-24 | 阿里巴巴集团控股有限公司 | 数据获取方法及装置 |
CN107395663B (zh) * | 2017-05-17 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 数据获取方法及装置 |
CN114978786A (zh) * | 2022-05-30 | 2022-08-30 | 广州宸祺出行科技有限公司 | 一种将第三方接口转化为系统标准接口的方法及装置 |
CN114978786B (zh) * | 2022-05-30 | 2023-08-22 | 广州宸祺出行科技有限公司 | 一种将第三方接口转化为系统标准接口的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7469301B2 (en) | Server-based message protocol translation | |
US7849220B2 (en) | System using transport protocol objects located at a user agent location to provide translation between different instant messaging protocols | |
CN100505629C (zh) | 基于对等模式建立讨论组及该讨论组即时通信的方法 | |
CN101217504B (zh) | 一种共享通信好友的方法及网络通信系统 | |
US20090198779A1 (en) | Method for an efficient electronic messaging system | |
US9426104B2 (en) | Group management method and system in interworking system of IMPS system and simple IM system | |
CN102594845A (zh) | 一种基于xmpp协议的即时消息传输方法 | |
CN101364971A (zh) | 一种通讯机器人协议转换系统 | |
CN101488926A (zh) | 一种基于xmpp协议和sms服务的网络消息通讯方法 | |
RU2008130880A (ru) | Устройство передачи, устройство приема, способ управления ими, система связи и программа | |
US20160110348A1 (en) | Computer Based Translation System and Method | |
US8312475B2 (en) | Remote control of computing devices via two disparate networks | |
JP2023501252A (ja) | 電子メール環境からメッセージング環境へのメッセージ再ルーティング | |
CN110945839A (zh) | 共享的和每用户的机器人群组的消息传递方法 | |
CN103514156A (zh) | 一种网络通信文本在传输过程中翻译的方法 | |
CN103297316A (zh) | 用于处理电子邮件的方法和系统 | |
US20030212605A1 (en) | Subscription-fee-based automated machine translation system | |
EP3204870A1 (en) | Computer based translation system and method | |
CN110138860B (zh) | 一种基于物联网的数据通讯方法及装置 | |
KR20100137786A (ko) | 동시 통역 시스템 및 동시 통역 방법 | |
JP2021105937A (ja) | 連携チャットシステム | |
CN103326934A (zh) | 一种通过即时通讯传送密码供核对登录帐户的方法及系统 | |
JP2008199374A (ja) | アドレス変更システム及びアドレス変更方法 | |
TWI427976B (zh) | 提供多種語言同時進行翻譯轉換的即時通訊系統及其方法 | |
JP5042113B2 (ja) | 電子メール配信システム、電子メール配信方法及び電子メール配信プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C57 | Notification of unclear or unknown address | ||
DD01 | Delivery of document by public notice |
Addressee: Chen Zhengwei Document name: Correction notice Addressee: Chen Zhengwei Document name: Deemed not to advise |
|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090211 |