QQ机器人开放式服务框架 Version 0.1 Draft - 显示服务列表
2013-01-01 16:05
330 查看
1. 服务查看请求
QQ机器人向服务供应商指定的URL端点发起HTTP GET请求,Sample Request如下:无身份验证的HTTP GET / POST: http://fxservice.com/robot/list 有身份验证的HTTP GET / POST: http://fxservice.com/robot/list?&qq=124222313&type=group Request Header
Content-Type: application/x-www-form-urlencoded
Content-Length: length
Charset: UTF-8
对于来自私有服务频道的请求,服务供应者可根据请求的QQ号和QQ号类型(来自QQ个人用户或是QQ群)来判断该类型的QQ号是否有权限查看服务供应者提供的所有服务,并由此决定返回值。type可能的值有:
message (为QQ个人用户)
group_message(为QQ群用户)
discu_message(为QQ临时讨论组)
ts参数是否设置由实际应用中QQ机器人的逻辑需求来决定。如果请求中设置了时间戳参数,相应的reqTS也必须出现在响应中。reqTS的值取自于请求值。
2. 服务查看响应
服务供应商返回xml形式的响应。响应Schema如下:<?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" > <xs:simpleType name="nametype"> <xs:restriction base="xs:token"/> </xs:simpleType> <xs:simpleType name="versiontype"> <xs:restriction base="xs:token"/> </xs:simpleType> <!-- Use <br/> explicitely as line separator in help tag --> <xs:simpleType name="desctype"> <xs:restriction base="xs:string"/> </xs:simpleType> <xs:simpleType name="portaltype"> <xs:restriction base="xs:anyURI"/> </xs:simpleType> <xs:simpleType name="authtype"> <xs:restriction base="xs:boolean"/> </xs:simpleType> <xs:complexType name="servicetype"> <xs:sequence> <xs:element name="name" type="nametype"/> <xs:element name="version" type="versiontype"/> <xs:element name="desc" type="desctype"/> <xs:element name="portal" type="portaltype"/> <xs:element name="auth" type="authtype"/> </xs:sequence> </xs:complexType> <xs:complexType name="serivceListtype"> <xs:element name="service" maxOccurs="unbounded" type="servicetype"/> <xs:attribute name="serviceProviderName" type="nametype"/> </xs:complexType> <xs:element name="serivceList" type="serivceListtype"/> </xs:schema>
响应样例
服务供应商返回xml形式的响应。其Schema如下所示。如果某些服务为私有服务,并且所请求的QQ没有查看这些服务的权限,这些服务将不显示在服务列表中。<?xml version="1.0"?> <serivceList serviceProviderName="Mini Work Studio Pte. Lte."> <service> <name>fxservice</name> <version>1.0a<version> <desc><![CDATA[foreign exchange service]]></desc> <portal>http://fxservice.com/robot/portal.xml</portal> <auth>true</auth> <service> <service> <name>stock</name> <version>Beta<version> <desc>stock info service</desc> <portal>http://stock.com/robot/portal.xml</portal> <auth>false</auth> <service> </serivceList>
相关文章推荐
- QQ机器人开放式服务框架 Version 0.1 Draft - 学习服务
- QQ机器人开放式服务框架 Version 0.1 Draft - Demo
- QQ机器人开放式服务框架 Version 0.1 Draft - 简介
- QQ机器人开放式服务框架 Version 0.1 Draft - 测试用QQ机器人介绍
- QQ机器人开放式服务框架 Version 0.1 Draft - 使用服务
- 利用VBS实现显示系统服务列表
- win利用qq快捷键截屏&& dos目录切换和目录列表显示
- 利用VBS实现 显示服务列表
- XMPP通讯开发-仿QQ显示好友列表和用户组
- 打开右下角状态区的程序QQ/显示QQ列表
- Android的SwipeToDismiss第三方开源框架模拟QQ对话列表侧滑删除,置顶,将头像图片圆形化处理。
- javaEE01-使用很HTML的排版标签编写“网站信息页面”,使用图片标签编写“图面显示页面”,使用列表标签编写“友情链接页面”,使用表格标签编写“首页”,框架标签表现“后台页面”
- 使用vue框架 Ajax获取数据列表并用BootStrap显示出来
- Android电话号码无需拨号即可显示状态(空号、通话中、有空、欠费、不在服务区等),像QQ状态一样 小黄人软件原创
- Spring Cloud Eureka 服务注册列表显示 IP 配置问题
- 具体评论ExpandableListView显示和查询模仿QQ组列表用户信息
- WinForm应用程序框架设计之WinAction(一:显示列表窗体)
- 第三方开源框架的下拉刷新列表(QQ比较常用的)。
- 类似QQ的列表右滑显示菜单
- python之最简http文件列表显示服务