SKYPE的API接口文档_CN

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Skype中文开发API文档1©SkypeTechnologiesS.A2保密条款:本文件为SkypeTechnologiesS.A.公司所有,全部内容严格保密。本档仅在保密基础上提供给被选中并符合条件的潜在合作伙伴、客户或供货商,任何其他人一概不得使用。亦不得以任何形式加以复制、保存、传播或备份。如收件人接受本档,即表示他或她同意,在终止与SkypeTechnologiesS.A.合作时,须将此档退还本公司。他或她进一步同意,未经许可不得备份、传真、复制或传播所收到的、与本公司合作之业务有关的任何文件。本档不构成销售要约或招揽收购的要约。©SkypeTechnologiesS.A31本文档编撰目的介绍SkypeAPI并说明建置透过API与Skype沟通的应用程序和装置。2版本修订纪录2.1API修订版:1.0.0.94日期:2004-10-21发行说明:API公开释出修订版:1.1.0.61日期:2005-01-12发行说明:•增加内容:协议3•更新内容:API–现仅允许每个用户同时进行一项搜寻。在收到前一项搜寻结果之前发出新的搜寻指令将导致错误72。•更新内容:API现仅允许每个用户同时进行一项搜寻。•更新内容:CHAT和CHATMESSAGE属性•错误修正:API以前会显示前一位用户的通话和留言•错误修正:修正了使用协议3时出现的语法混乱•错误修正:SEARCHMESSAGES不再回传CHATMESSAGES值,如果使用协议2的话•错误修正:API以前仅显示讯息的第一个字或全名•错误修正:访问控制列表(ACL)只记住一项程序的许可•错误修正:MC信息标识符无法回传•错误修正:与原有应用程序的链接问题•错误修正:修正了在两个Windows账户下同时使用Skype时出现的应用程序异常•错误修正:Win98/Me中显示有许多动态链接库(dll)檔而不是各自的应用程序在使用Skype•错误修正:API有时不回传'BUDDYSTATUS1'讯息修订版:1.2.0.11Skype中文开发API文档2日期:2005-03-04发行说明:•增加内容:协议4•支持电话会议:召开电话会议、增加会议人数并能够获得参加会议者的名单和有关通知•可查看SkypeOut余额•可拨打快速拨号单内的号码•声频装置变更通知•删除即时消息(IM)记录的通知©SkypeTechnologiesS.A4•将语言与国家选项修改为按国际标准国家代码(ISO)名单而非以国家名称回传(新做法:从协议4开始,语言与国家回传值之前将加上ISO代码('GETUSERecho123COUNTRY'='USERecho123COUNTRYeeEstonia'))•关闭Skype的通知•支持SkypeIn•为了排除错误而将程序暂停一秒钟的登录机码•可增加用户句柄至OPENADDAFRIEND•CALLFAILUREREASON1–文件文件记录错误,文件文件改用Miscerror(其他类错误)显示•更新内容:如找不到CHATMESSAGE属性,'SETCHATMESSAGEid'指令将发出同一错误讯息,而不论信息标识符是否存在•更新内容:PSTN_STATUS发出从网关回传的错误字符串•更新内容:HASCALLEQUIPMENT回传值永远显示TRUE•错误修正:#11648API:AUDIOIN和AUDIOOUT指令不能正确读取双字节驱动程序命名•错误修正:#11473API:BTN_PRESSEDE指令失效,出现错误号码71无效机码•错误修正:#11472API:静音功能被启动•错误修正:#11473API:初始设定参加电话会议人数超过4人•错误修正:#11368API:IMHISTORYCHANGED指令无效•错误修正:#11272API:MUTE指令无效•错误修正:#11473API:无法使用快速拨号拨给SkypeOut联络人•错误修正:#11473API:空白CALL指令无响应•错误修正:#11204SKYPE存取应用程序编程接口不能拒绝存取装置。•更新内容:#10567经由电话应用程序编程接口上下自动扩展联络人名单群组•错误修正:#11473API:用户更换声频装置时不发出通知2.2文件修订版本日期修改人备注/更新内容Skype中文开发API文档31.02004-10-22TaavetHinrikusAPI公开释出1.12005-01-12TaavetHinrikusSkype释出版本1.22005-03-04TaavetHinrikusSkype释出版本1.2,协议4,开发工程师常见问题解答项目等等3法定地位©SkypeTechnologiesS.A5本API文件档和SkypeAPI均为SkypeTechnologiesS.A.或其关联公司版权所有。有关使用限制请查阅Skype网站上登载的终端用户许可协议(EULA):简介SkypeAPI可分为两个不同的部分。Skype电话API和Skype存取API:•Skype电话API是Skype用来存取装置的接口,其中包括但不限于USB电话。装置本身并不一定是硬件,但通常指的是硬件装置。这一API由Skype控制,而且API的装置面可被视作驱动程序。Skype为控制方。该API在抽象事件的层次上操作,例如,绿色键被按下、耳机被拔掉、装置应响起铃声等。与Skype电话API兼容的驱动程序,应在安装时中自动完成安装,这样Skype才会知道其存在。可以建立一个USB装置和相关驱动程序的数据库,使Skype能够侦测出新的装置并提示安装驱动程序。•Skype存取API是Skype发行给第三方第三方应用程序以存取Skype功能的接口,例如,拨电话、发送文字讯息、索取Skype用户数据等。第三方第三方应用程序在此API中为控制方。Skype可有选择性地逐一向应用程式授予Skype存取API存取的权利。5一般API概述API是根据在Skype与装置(或装置驱动器或在主机上执行的控制器)之间往返传递的简单文字讯息建立起来的。6电话API现已建置的电话API指令如下所列。6.1从装置发至Skype•NAMEdeviceName•PROTOCOLversion•AUDIO_INdeviceName•AUDIO_OUTdeviceName•HOOKON|OFF•MUTEON|OFF•BTN_PRESSED(0-9,A-Z,#,*,UP,DOWN,YES,NO,SKYPE)Skype中文开发API文档4•BTN_RELEASED...6.2从Skype发至装置•MUTEON|OFF©SkypeTechnologiesS.A67存取API目前有一些指令(PROTOCOL,AUDIO_*)可以用于Skype存取API和Skype电话API。7.1使用介绍当客户端应用程序经由SkypeAPI开始使用Skype时,Skype则会将声频装置转换到用户端经由API所报告的装置。当传输层连结中止或被切断时,Skype则会将声频装置转换回到上一次选取的装置(Skype将定期检测传输层是否仍然保持连结)。如果用户将声频装置以手调方式转换到其他装置(与运行中的客户端所报告的装置比对),将来可能会经由API提供通知。可能会要求终端用户确认允许第三方利用API来使用Skype。所有使用API执行的操作都会被反映到正在计算机执行的Skype应用程序上。请注意,API的所有时间与日期均采用UTC(协调世界时)。7.2支持多个客户端程序多个客户端应用程序可以同时使用SkypeAPI。链接Skype时协议保持不变,以下情况除外:建立通讯时,客户端应向系统中所有窗口广播窗口讯息('SkypeControlAPIDiscover'),并用wParam参数指定本身窗口句柄。回应时,Skype向指定的句柄发出'SkypeControlAPIAttach'的讯息,并在wParam参数中显示出通话窗口句柄。请注意,不应再采用'SkypeControlAPI'指令轮询Skype,我们将在下一个版本介绍一种新的网络探测(pinging)指令。7.3API的访问控制列表(ACL)每当一个应用程序试图使用SkypeAPI时,就会弹出一个要求用户确认的对话窗口—无论是否允许该程序使用API。这一功能的主要作用在于保护用户的隐私和安全。为保持操作简便、易于用户使用,我们向开发人员建议如下:•可执行程序(.exe檔)的命名应当通俗易懂,例如,SkypeForWindows.exe.SkypeForWindows.exe,这一点非常重要,因为用户可以直接看到可执行文件案名称。如果文件名含糊不清,用户就可能不允许该程序存取Skype。•签名–应用程序应以VeriSign的CodesSigning(代码签字)证书签署。•NAME指令–应用程序应支持NAME指令并应将其名称发表。7.4SkypeOut4SkypeTechnologiesS.A77.4.1SkypeOut联络人名单可以索取SkypeOut联络人名单—这些数据现已成为主要名单的一部分,亦即如果执行SEARCHFRIENDS指令,则会回传表内联络人名单号码。如需得到目前用户的SkypeOut联络人号码的详细数据,可执行GETUSERnumberfullname。Skype中文开发API文档5为获得SkypeOut联络人,GETUSERnumberONLINESTATUS指令时将回传SKYPEOUT。7.5怎样检测Skype如需检测是否已安装Skype,请查看以下登录机码:HKCU\Software\Skype\Phone'?SkypePath'。该机码将指出skype.exe的位置。如找不到该机码,还应查一下程序是否有HKLM\Software\Skype\Phone'?SkypePath'此一机码(如找不到HKCU,但可找到HKLM,则说明skype已经由管理员账号安装,但尚未被目前用户所使用)。7.6版本信息每次释出API的新版本时,协议版本号码都会增加。客户端要使用该API时,必须让SkypeAPI知道它所支持的最新版本。Skype将报出自己的最新版本号作为回答,并将以Skype所报号码版本做为使用的协议版本。Skype报出的协议版本永远不会比客户端程序支持的版本更高。Skype的默认版本是协议版本1。Skype支持的版本可以PROTOCOL99999查询。例如:客户端采用版本3,并向Skype报出PROTOCOL3,Skype支持版本2并报出PROTOCOL2作为回答。版本2则为此例中使用的协议版本。关于SkypeAPI版本更新和出现客户端支持低于Skype版本时的说明:•Skype不但不会删除新版本发来的讯息,而且会执行讯息要求的指令•客户端应会忽略未知指令和属性(可能来自新版本的API,如新状态属性等)7.7SkypeAPI协议版本目前有协议版本1、2和3。7.7.1协议2新增功能•新增onlinestatusSKYPEME。5SkypeTechnologiesS.A8•如通话处于暂候状态,API会分别向所有客户端发出CALLxxSTATUSLOCALHOLD/REMOTEHOLD的通知。协定1仅回传ONHOLD。•新增callstatusCANCELLED7.7.2协议3新增功能•多人聊天指令•旧版即时消息(IM)的相容层7.7.3协议4新增功能•在语言和国家值前面补加ISO代码协议1、2的兼容性如要求的协议版本低于3,则所有导入指令均以下列方式被转换:•SEARCHMESSAGES-SEARCHCHATMESSAGES•SEARCHMISSEDMESSAGES-SEARCHMISSEDCHATMESSAGES•GETMESSAGE-GETCHATMESSAGE•SETMESSAGE-SETCHATMESSAGESkype中文开发API文档6此外,GETMESSAGE属性也被转换:•PARTNER_HANDLE-FROM_HANDLE•PARTNE

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功