CN1902609A - 用于在一外围装置与一无线装置之间建立通信的系统及方法 - Google Patents

用于在一外围装置与一无线装置之间建立通信的系统及方法 Download PDF

Info

Publication number
CN1902609A
CN1902609A CNA2004800371487A CN200480037148A CN1902609A CN 1902609 A CN1902609 A CN 1902609A CN A2004800371487 A CNA2004800371487 A CN A2004800371487A CN 200480037148 A CN200480037148 A CN 200480037148A CN 1902609 A CN1902609 A CN 1902609A
Authority
CN
China
Prior art keywords
wireless device
peripheral unit
operating system
computer platform
computer
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.)
Granted
Application number
CNA2004800371487A
Other languages
English (en)
Other versions
CN1902609B (zh
Inventor
布赖恩·哈罗德·凯利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1902609A publication Critical patent/CN1902609A/zh
Application granted granted Critical
Publication of CN1902609B publication Critical patent/CN1902609B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明揭示一种用于在一外围装置与常驻于一无线计算机装置上的程序之间建立通信的系统、方法及计算机程序。所述装置具有一个带有一无线通信端口及一个或多个常驻程序的计算机平台,且所述计算机平台包括一管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统。当一外围装置通过一有线或无线通信选择性地与所述无线装置的计算机平台进行通信时,所述无线装置的操作系统识别至少外围装置的类型并将所述外围装置与一个或多个所述常驻计算机程序相链接。

Description

用于在一外围装置与一无线装置之间建立通信的系统及方法
技术领域
本发明大体而言涉及具有无线通信能力的计算机装置。更具体而言,本发明涉及一种用于在一外围装置与一无线计算机装置的常驻计算机程序之间建立及控制数据通信的系统及方法。
背景技术
将例如打印机、扫描仪、照相机等外围装置链接至个人计算机(PC)以使计算机可利用该外围装置已为人们所知。外围装置通常以并行或串行数据通信方式与PC的计算机平台相连接。具体而言,PC中之串行输入/输出(I/O)(SIO)涉及到通过将外部装置连接至PC的串行线连接点而与所述外部装置进行通信。该机构使外部装置能够使用串行数据流与PC软件进行通信。PC的操作系统(例如Windows或Linux)可检测自外围装置输入的初始通信并确定适于操作所述外围装置的软件或驱动程序,或者以其他方式控制通信。
一般而言,例如移动电话及寻呼机等主要用于实施无线通信的计算机装置不具有带有复杂常驻OS的有效计算机平台。移动装置制造商通常将所述装置配置成以“数据“模式与任何其他计算机装置进行通信。换句话说,装置处理器或逻辑仅接受数据命令且常常用作其他装置的外围装置。例如,存在可为其他装置提供无线通信能力的移动装置,例如膝上型计算机。在一种常用配置中,移动电话的行为对于膝上型计算机而言仅如同一调制解调器,并响应于电话协议拨号命令而发起数据服务连接。一旦建立起数据连接,发至及来自膝上型计算机的数据即不加修改地通过移动电话传递,且移动电话的处理器或逻辑大多被绕过。
另一问题在于,对于具有更大计算机平台的移动装置而言,装置通常仅具有一非常小的OS且无法将大量的资源专用于外围装置通信。结果,即便常驻OS处理来自外围装置的输入通信来建立正确的通信,移动装置OS也将不会有效地保持从事对正在进行的通信的管理。在某些情形中,移动装置OS不具备与外围装置进行相互作用以使所述移动装置可控制外围装置的功能的能力。
相应地,较佳应提供一种能提供一可与一外围计算机装置实施复杂通信的无线计算机装置的系统及方法。所述无线装置应能部分地至完全地控制所述移动装置与所述外围装置之间正在进行的通信。进一步,所述移动装置应能够或者部分地或者完全地在软件中(例如以装置的常驻OS)控制所述通信。因此,本发明主要涉及到提供此种系统、方法及移动装置。
发明内容
本发明包括一种用于在一外围装置与无线装置的操作系统之间进行通信的无线计算机装置、系统、方法及计算机程序。所述无线装置包括一具有至少一无线通信端口的计算机平台,并可具有其他通信端口一有线的及无线的两种、及一个或多个常驻计算机程序。所述计算机平台还具有一操作系统,所述操作系统管理无线装置资源及所述无线装置与其他计算机装置(包括外围计算机装置)的相互作用。一外围装置将通过一有线或无线连接选择性地与所述无线装置的计算机平台进行通信,且一旦所述外围装置与所述无线装置的计算机平台进行通信,所述无线装置的操作系统就将识别外围装置的类别或者正通信的特定装置,并随后将一个或多个常驻计算机程序与所述外围装置相链接。所述装置的OS可对所述外围装置与所述无线装置之间的通信保持部分的或完全的控制,或者可将对所述通信的控制转交给一所链接的常驻程序。
用于在一外围装置与一无线装置的操作系统之间进行通信的方法包括如下步骤:在一外围装置与一具有一计算机平台的无线装置之间开始一通信,所述计算机平台具有至少一通信端口,其中所述计算机平台包括一用于管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统。所述方法然后包括如下步骤:在所述无线装置的操作系统处确定已与所述无线装置开始通信的外围装置的身份,并随后通过所述操作系统链接所述外围装置与一个或多个常驻程序。一种计算机程序可使一无线计算机装置实施所述方法的各步骤。
因此,所述无线通信装置的一个目的是允许与外围计算机装置进行复杂的通信,而未必仅将无线通信装置用作调制解调器。所述无线计算机装置可相应地能部分地或完全地控制所述无线装置的计算机平台与所述外围装置之间正在进行的通信,并可使用在初始通信时使用即插即用驱动器及其他机构来确证对所述外围装置的控制。所述通信可通过有线或无线数据链路或其组合、按串行或并行数据交换形式进行。
如作为所述无线装置操作系统的软件的一部分所实施,所述外围装置与一操作系统实体(例如动态应用程序或内部对象)进行通信。一旦在内部应用程序与所述外围装置之间建立起通信链路,所述操作系统就将确定用于利于其通信之协议,或者所述操作系统就将与所述外围装置相互作用并共同地配置最佳通信协定。所述操作系统可根据需要来控制对与所链接程序的通信或放弃所述控制。为在初始通信时得知所述外围装置,所述装置的OS可调用一预规定的协议来发现关于所述外围装置的具体身份,或者至少所述外围装置所属的类别,并然后,在一实施例中,可确定可服务于所述外围装置的无线装置常驻应用程序或者内部对象实体。
在审阅下文所述附图简要说明、具体实施方式及权利要求书后,本发明的其它目标、优点及特征将显而易见。
附图说明
图1为一与一无线计算机装置(在此处显示为一移动电话)进行有线链接的外围装置(显示为一照相机)的代表图。图2为一与无线装置的计算机平台上的操作系统进行通信的外围装置的计算机平台的方块图。图3为一具有具备外围装置支持能力的无线装置的无线移动网络的代表图。图4为一流程图,其例示在无线装置计算机平台上执行的用于与外围装置进行通信的方法的一实施例。
具体实施方式
参照附图,在各附图中,相同编号自始至终代表相同元件,图1显示一系统10,其中一外围装置(即照相机14)通过串行线16与一无线装置(在此处显示为一移动电话12)进行有线通信。外围装置14可传输一特定命令以在所述连接上-或者为有线连接(如串行连接或USB,例如串行端口20及22)或者为无线连接(例如IRDA或RF)-呼叫无线装置12的OS。一旦接收到所述呼叫命令,无线装置12的OS就将建立所述连接使用一将在本文中进一步解释的预规定协定来与外围装置14进行通信。然后,所述OS可将一适合的程序与所述外围装置相链接并部分地或完全地释放对与所述程序的通信的控制。
如在图1中所示,插入移动电话12内的照相机14可与移动电话12相互作用以在显示器18上显示照片,且在一实施例中,移动电话12可启动照相机14的控制器件来检索照片以供存储在移动电话12中及/或拍摄其他照片。无线装置12可为移动电话、双向寻呼机、个人数字助理(PDA)、或其他具备无线通信能力的计算机装置,而外围装置14可为照相机、阅读器、打印机、扫描仪、监视器、键盘、游戏控制杆、鼠标、扬声器、或所属技术领域中所知的任何其他常用外围装置。
如在图2中更具体地显示,在用于在外围装置14与一无线装置12的操作系统之间进行通信的系统10中,无线装置12具有一计算机平台30、及至少一通信端口或接口40,且计算机平台30包括一用于管理无线装置资源及无线装置12与其他计算机装置(例如外围装置14)之间的相互作用的操作系统。一个或多个外围装置可选择性地与计算机平台12进行通信,以便一旦外围装置14与计算机平台30进行通信,无线装置12的操作系统就将链接外围装置14与外围装置14中的一个或多个常驻计算机程序,例如一驱动程序、控制程序等。
更具体而言,无线装置12具有一计算机平台30,计算机平台30可接收及处理自其他计算机电信装置通过无线网络或通过直接数据通信所发送的数据。计算机平台30除其它组件外还包括一应用专用集成电路(“ASIC”)36,或其它处理器、微处理器、逻辑电路、可编程门阵列、或其它数据处理装置。ASIC 36是在制造无线装置时安装且在正常情况下不能升级。ASIC 36或其它处理器执行一应用程序编程接口(“API”)层34,该应用程序编程接口层34包括常驻应用程序环境,且可包括加载于ASIC 36上的操作系统。该常驻应用程序环境与所述无线装置的存储器32内的任何常驻程序通过接口连接。一常驻应用程序环境的实例是由Qualcomm针对无线装置平台所开发的“无线用二进制运行时间环境”(BREWTM)软件。目前可在Qualcomm网站( www.qualcomm.com)上访问BREW开发工具。
如在此处所示,该无线装置可为一具有图形显示器的蜂窝电话12,但也可为所属技术领域中所知的具有计算机平台的任一种无线装置,例如个人数字助理(PDA)、具有图形显示器的寻呼机、或甚至一具有无线通信端口的单独计算机平台,且可另外具有一接至一网络或因特网的有线连接。进一步,存储器32可由只读或随机存取存储器(RAM及ROM)、EPROM、EEPROM、闪存卡、或任一为计算机平台所共用的存储器构成。计算机平台30亦可包括一本地数据库38来存储未在存储器32中现用的软件应用程序、以及操作系统的计算机代码。该本地数据库38通常由一个或多个快闪存储器单元构成,但也可为所属技术领域中所知的任何第二级及第三级存储装置,例如磁性媒体、EPROM、EEPROM、光学媒体、磁带、或软盘或硬盘。
所述无线装置,例如蜂窝电话12,具有经由一通过无线网络60选择性地发送及接收数据的无线通信端口或通信接口24实施无线通信的能力。计算机平台30常驻应用程序环境可通过所述平台、经由所述端口(接口40)传送数据,并可与任何输入通信流相互作用并对其进行屏蔽以得到对其的一预定响应。
目前所制造的蜂窝电话及电信装置,例如蜂窝电话10,具有日益增强的计算能力且正变得相当于个人计算机及手持式个人数字助理(“PDA”)。这些“智能型”蜂窝电话允许软件开发者创建可在无线装置12的处理器(例如ASIC 36)上下载及执行的软件应用程序。无线装置(例如移动电话12)可下载并执行许多类型的应用程序,例如网页、小应用程序、MIDlet、游戏及股票监控程序,或诸如新闻及有关体育的数据等简单数据。所下载数据或可执行的应用程序可即刻显示在无线装置12的显示器上或在不使用时存储于本地数据库38内。可将所述软件应用程序视为一常驻于无线装置12上的常规软件应用程序或计算机程序,且用户可有选择性地将所存储的常驻应用程序自本地数据库38下载至存储器32以供在API 34上执行,即在常驻应用程序环境内执行。相应地,可在制造所述装置时在计算机平台30上加载一用于在输入通信连接中进行屏蔽的程序,或者可通过无线网络25向计算机平台30下载所述程序。
例如照相机等外围装置14通常包括一计算机平台50,计算机平台50具有其自身的常驻通信接口52(其可为有线接口或无线接口)、及一常驻存储器54及中央处理器56或其他逻辑。因此,照相机14或其他外围装置可与无线装置12的任一常驻程序进行双工通信,或执行其他高级功能。
图3为一更全面地例示无线装置70及74在其中运行的无线网络60中各组件的方块图。无线网络60仅为实例性且可包括任何使远程模组赖以在彼此之间及/或在无线网络60的各组件之间进行无线通信的系统,包括但不限于无线网络运营商及/或服务器。运营商网络62控制发送至一消息接发服务控制器(“MSC”)64的消息(通常为数据包形式)。运营商网络62通过一网络、因特网及/或POTS(“普通电话系统”)与MSC 64通信。通常,运营商网络62与MSC 64之间的网络或因特网连接用来传送数据,而POTS用来传送声音信息。MSC 64连接至多个基地台(“BTS”)66。以与运营商网络类似的方式,MSC 64通常既可通过网络及/或因特网连接至BTS 66来进行数据传输也可通过POTS连接至BTS 66来用于声音信息传输。BTS 66最终通过短信服务(“SMS”)或其它在所属技术领域中已知的无线传输方法将消息无线广播至诸如蜂窝电话70及74等无线装置。
因此,在无线网络60上,一个无线装置70可尝试向另一装置(例如无线装置74)传送声音或数据。此处将无线装置70显示成以有线方式连接有一打印机72,以使无线装置70可在打印机72上打印数据。将无线装置74显示成与数据远程存储器76进行无线通信,从而使无线装置74可在远程存储器76中存储及检索数据。在每一种情形中,无线装置70、74的操作系统均可处理与外围装置72、76的通信。在一实施例中,无线装置70、74可通过彼此进行通信,以便访问与另一无线装置进行通信的外围装置。换句话说,无线装置74可通过无线装置70访问打印机72,且无线装置70可通过无线装置74访问远程存储器76。在此种情形中,无线装置的操作系统将处理适合于路过式通信的数据选路。
在一使用BREW操作系统来控制外围装置通信的实施例中,当例如照相机14等外围装置在开始通信时,其将首先与AT命令处理器(ATCOP)进行通信。通过发出一命令,所述外围装置通知ATCOP将对特定SIO连接的控制传递至BREW SIO命令处理器(BSCOP)。一旦外围装置14从所述操作系统得到一正响应,外围装置14即可向BREW SIO命令处理器发出命令。这些命令允许外围装置14或者发起与一个或多个特定BREW应用程序的通信或者对无线装置12执行其他任务。
在该实施例中,BREW SIO还依据在无线装置12的串行端口上当前现用的其他客户端而允许一应用程序单方面地掌握对所述串行端口的控制。ATCOP及BSCOP将通常让步于一发出请求的应用程序,但其他更高优先权客户端(例如服务编程)可拒绝释放所述端口。将使一外围装置处理应用程序不能获得对所述端口的控制的具体情形将因具体的无线装置制造及配置情况而异。由应用程序发起的与外围装置14的通信是为支持与不介接BREW或常驻操作系统的外围装置进行通信所必需的。在由应用程序发起的通信中,常常需要使无线装置12的用户借助发起合适的应用程序来协调对外围装置14的连接、或者使用户帮助识别至少外围装置的类型。
对于外围装置在与无线装置12进行通信时断开的情形,在一由外围装置12发起的通信中,在检测到装置断开时,通信端口被移交给ATCOP。无线装置12常驻应用程序对所述端口的任何进一步的读取/写入调用均将会造成错误。无线装置12的常驻应用程序可通过调用合适的功能或对象(例如Writeable())来重新登记以便重新连接先前的端口。在由无线装置12的常驻应用程序发起的服务中,若外围装置14断开,端口或接口40也仍将由所述常驻应用程序控制。任何进一步的读取/写入调用仍将会造成错误,但无线装置12的常驻应用程序可将对所述端口的控制交回ATCOP或仍保持控制。
当在无线装置12正与一外围装置14对话的同时退出一无线装置12的常驻应用程序时,所述应用程序将关闭所述端口或接口的控制功能或对象,此将使所述端口/接口被移交给ATCOP。若重新进入无线装置12的常驻应用程序,则会进行用于获得一端口或接口的标准协议。
BREW接口也可在与外围装置14的通信中处理意外数据。以显式方式打开并控制一端口或接口的无线装置12常驻应用程序会辨知BSCOP及ATCOP的正常功能,并在连接至预计将与ATCOP或BSCOP进行对话的外围装置时作出正确反应。一旦接收到错误数据,无线装置12常驻应用程序即通常会释放所述端口/接口并让BREW来决定下一步骤。在BREW中,DTR跃迁是UART用于检测外围装置14断开的方法,但在某些情形中,可能无法进行可靠的检测。例如,若一无线装置12常驻应用程序正与一特定外围装置14进行对话,而所述特定外围装置14在通信过程中随后发生变化。无线装置12常驻应用程序或一单独的无线装置12常驻错误检查应用程序应检测到外围装置14的变化并交出对所述端口/接口的控制以使所述控制回到ATCOP。
下文是对所连接装置在BSCOP模式中可发出的命令的大体说明。每一命令均包含于一以一两字节标签开头并以一<CR>(ASCII OxOD)字符结尾的数据包中。跟随于一命令数据包之后的<LF>(ASCII OxOA)字符被忽略。响应数据包是以一两字节标签开头并以<CR><LF>(ASCII OxOD OxOA)结尾。BSCOP所支持的最大数据包大小为512个字节。
随命令所发送的标签应由两个字母数字ASCII字符组成。附加至一响应中的标签与随该对应命令所发送的标签相同。此旨在由装置用于消除响应的模棱两可性。通过随每一命令发送一不同的标签,所述装置即可确定响应是起因于哪一命令。此可适用于当建立连接或从数据错误进行恢复时将通信同步化。
命令 说明
$BREW “AT$BREW”是发至无线装置ATCOP的将控制转交给BREW的命令。如果BSCOP已在进行控制,则将此解译为一带有标签“AT”的“$BREW”命令,且所得到的响应数据包(包括标签)将为“ATOK”。因此,当发送“AT$BREW”来发起与电话的通信时,所述装置可迅速地同步,无论端口是处于ATCOP还是处于BSCOP模式中。
响应 说明
OK 无线装置作出响应将SIO交给BREW
ERROR(错误) 无线装置不理解AT$BREW命令(即在该特
命令 说明
定端口上无BREW SIO)
DEV:<devid>:<args> 该命令用于发起与一BREW应用程序或对象的通信。BREW试图使用该标识符串来找到处理程序。如果找到该处理程序,则向所述装置发出START(开始)响应。而如果未找到,则发出ERROR(错误)响应。<devid>的值是用于查找所述应用处理程序的注册密钥。这些密钥通常为正规形式,例如<company code>或<devicename>,以防止命名冲突。devid被限定为除“*”(冒号)外的可打印的ASCII字符。<args>值将被传送至被发起的应用程序。<args>值是除<CR>及<LF>之外的字节串。
响应 说明
OK 发至外围装置的指示已找到所述处理程序且所述常驻应用程序正在起动的命令。一旦发出START(开始)命令,所述外围装置与BREW实体即相连并准备使用其预规定协议来进行通信。
ERROR:<xxxx> 无法起动处理程序<xxxx>给出呈四个十六进制数位形式的错误代码(来自AEEError.h)。专用于SIO的可能值包括:AEE_SIO_NOHANDLER(未找到处理程序)。其他值,例如ENOMEMORY,也总是可能的。
VER 要得到BREW版本的命令
响应 说明
OK:<ver> <ver>=BREW版本串,为x.y.z.b格式。(例如“1.0.1.18”)。
APP:<clsid>:<args> 该命令给出要打开的无线装置12常驻应用程序的CLSID。
命令 说明
BSCOP继续如对DEV命令所进行的一样起动所述应用程序,尽管是由其类别ID而非一应用程序查找表来规定该应用程序。其比DEV命令更不可扩展,但适用于调试及开发。<clsid>是一将被构造成一BREW类别ID的十六进制字母串。<args>与在DEV中所规定的相同。
响应 说明
OK 与在DEV中一样。
ERROR:<xxxx> 与在DEV中一样。
URL:<url> BSCOP将以所命名的URL来调用ISHELL_BrowseURL()。此可用于起动浏览器、Mobile Shop、或某些其他无线装置常驻应用程序,此视哪一应用程序已注册支持所述URL方案而定。在起动一所要求的应用程序失败之后,无线装置可使用mshopURL将用户指向所要求的下载选项。<url>与DEV的格式相同:<args>。
响应 说明
OK 指示相关的无线装置常驻应用程序已起动。
ERROR:<xxxx> 指示相关的无线装置常驻应用程序无法起动。可重新调谐AEEError.h中的任何错误,但下列错误尤其最有可能:ESCHEMENOTSUPPORTED(不管信不信,这是一BREW错误代码)。ENOMEMORY
END(结束) 通知BREW将控制交回Mobile ATCOP。
响应 说明
OK 仅预期响应。
以下是一BSCOP命令序列的实例,其中以“D:”开头的行代表由外围装置14所发送的命令,而以“P:”开头的行则代表由无线装置发送至外围装置14的命令。
D:01AT$BREW
P:01ATOK
D:02VER
P:02OK:3.0.0.1
D:03DEV:BREW.siotest
P:03ERROR 0C01
D:04DEV:BREW.siotest
P:04OK
D:99END
P:99OK
在发送另一命令之前,外围装置14不需要等待响应。例如,可出现该序列:
D:02VER
D:03DEV:kb
P:02OK:3.0.0.1
P:03OK
以下显示一允许在外围装置14与无线装置12之间进行双工通信的BREW接口的一个实例。该接口通过添加Write(写入)及Writeable(可写入)项来扩展Isource接口:
AEEINTERFACE(IPort){
INHERIT_ISource(IPort);
Int(*GetLastError)(IPort*po);
int32(*Write)(IPort*pme,char*pBuf,int32 cbBuf);
void(*Writeable)(IPort*pme,AEECallback*pcb);
int(*IOCtl)(IPort*po,int nOption,uint32 dwVal);
int(*Close)(IPort*po);
int(*Open)(IPort*po,const char*szPort);
};
GetLastError()函数报告在Iport运行过程中所发生的最后一个错误。返回值是在AEEError.h中所规定的其中一个全局BREW错误代码。Open()函数允许所述应用程序将Iport结合至一实体端口。当创建AEECLSBD_SERIAL的一实例时,返回一不与任何实体端口相关联的Iport。必须使用IPORT_Open()来指示所期望端口的名称。Open()足一非阻塞调用,当其不能立即得到满足时,其可能会返送回AEEPORT_WAIT。然后,当调用程序应再次试图访问所述端口时,所述调用程序可使用IPORT_Writeable()来得到通知。
当调用Open()时,调用程序可通过一包含其名称的以0结尾的串来指示所期望的串行端口。BREW规定了通常可供用于外围装置的端口类型的数个名称。串行端口名称是由短的ASCII序列组成,从而以一种可扩展的方式允许不同的移动装置支持不同的端口。通常,电话底部的主要端口是UART。所有UARTS均使用AEE_PORT_SI01(″PORT1″)、AEE_PORT_SIO2(″PORT2″)等串来表示。USB端口是使用“USB1”、“USB2”等来表示。BREW也规定一专用名称AEE_PORT_INCOMING(“inc”),所述专用名称可用于与一正试图发起与一特定无线装置12常驻应用程序的通信的外围装置14建立一通信链路。
对于由外围装置14发起的与无线装置12的通信-例如在BREW根据DEV(自外围装置14所发送的串)执行一无线装置12常驻应用程序时所出现,所述无线装置常驻应用程序通过自外围装置14接收命令的Iport与外围装置14进行通信。当一能够使用SIO进行通信的无线装置12常驻应用程序开始时,所述应用程序将使用AEECLSID_SERIAL的CLSEID创建一IPort接口,并随后使用AEE_PORT_INCOMING调用Open()。如果Open()返送回AEEPORT_WAIT,则所述应用程序将随后通过注册一使用Writeable()的回调而等待外围装置14发起的连接。当一外围装置14得到连接时,调用所述Writable回调,从而促使无线装置12常驻应用程序重新尝试Open()作业-该作业将会成功。
如果无线装置12的用户开始一常驻应用程序而不连接适当的外围装置14,则无线装置12常驻应用程序仍遵循一类似于上文所述的过程并等待至连接外围装置14为止。通过此种方式,使一在相应无线装置12应用程序起动之后所连接的外围装置14仍可得到连接。在所述装置得到连接之前,Open()将继续返送回AEEPORT_WAIT,且Writeable()将不执行。
AEESIO_PORT_INCOMING仅适用于已请求正运行的无线装置12常驻应用程序的外围装置。如果一个无线装置常驻应用程序请求AEESIO_PORT_INCOMING且随后一请求一不同的无线装置12常驻应用程序的外围装置14得到连接,则第一个应用程序的Open()将得不到满足。而是,将起动另一被请求的无线装置常驻应用程序且其打开AEESIOJPORTJNCOMING的尝试将会成功。AEESIO_PORT_INCOMING可指任何串行端口或接口。一无线装置12可具有多个UART或多个USB虚拟串行端口,每一个虚拟串行端口均可接纳由外围装置14所发起的连接。
对于由无线装置12常驻应用程序发起的通信,所述常驻应用程序会使用Open()函数创建一IPort接口。端口串自变量决定打开哪一端口。BREW所支持的端口id在AEESio.h中给出。例如,为打开主串行端口,使用串AEESIO_PORT_SIO1。Open()可能会因例如以下等多种原因而失败:不可用性(例如正在进行服务编程,无线装置“忙”,未允许打开)、无该端口等。在此种情形中,所述Writeable回调得到调用且对GetLastErrorO的调用会报告错误细节。
当一IPort被关闭时,其与实体端口分离,且所述端口被交回至OS(ATCOP)。当所有对端口对象的引用均被释放时,端口对象将也被隐式关闭,但提供Close()来允许进行显式关闭。当无线装置常驻应用程序的不同层或模块使用同一端口对象时,对所述对象进行显式关闭较佳。此还允许重新使用一Ipport,这是因为一旦其处于关闭状态,即可重新调用Open()并重复打开过程。
串行端口配置是根据用于使用在AEESio.h中所规定的AEESIOConfig数据结构来设定及获得配置的旗标AEESIO_IOCTL_SCONFIG及AEESIO_IOCTL_GCONFIG来进行。AEESIOConfig具有用于控制UART的信息,例如波特率、奇偶性、停止位等。倘若为虚拟串行端口,例如基于USB的虚拟串行端口,则可忽略某些或所有这些设定值。由于IPort的一实施方案可能并不支持AEESIOConfig的所有条目,因而返送值SUCCESS可能并不真正意味着所有选项均得到设定。在设定所述配置之后获取所述配置会返送回当前改变后的配置。例如,若不能设定一特定的波特率,则可设定所支持的最接近的波特率。通过将波特率设定为38500,可实际上将实际配置设定为所支持的最接近的波特率38400。IOCtl也支持用于调整内部缓冲器大小的选项、为进行有效读取设定触发值(例如在使状态可读之前的最小字节数量)。
无线装置12常驻应用程序在OS进行登记来指明所述应用程序所支持的特定外围装置、或外围装置的类别,以便一旦外围装置与无线装置12进行通信,常驻应用程序即可得到通知。在BREW中,将登记信息存储于可使用MIF编辑器来更新的无线装置12常驻应用程序MIF文件中(通常足以MIME类型的装置id串形式)。一基本的外围装置类别将具有一预确定的处理程序类型,例如在AEESio.h中将SIO装置的处理程序类型规定为AEECLSID_HTYPE_SERIALDEVICE(0x01011be6)。处理程序类别id将与无线装置12常驻应用程序的CLSID相同。
为更全面地例示在无线装置12计算机平台30上执行的用于与一外围装置14进行通信的过程,图4提供一例示其一实施例的流程图。无线装置12自外围装置14接收一输入通信尝试,如在步骤80中所示,然后判定是否可对外围装置14进行归类或以其他方式进行识别,如在决策82中所示。该过程可在将一外围装置14插入无线装置12内时开始。另一选择为,无线装置12的用户可在无线装置12处请求开始通信,且所述无线装置将发起通信,并可在下文所进一步说明的步骤92中开始所述过程。所述识别或归类可根据一由外围装置14在初始通信中所发送的标识符来进行,或者可由无线装置12的OS例如通过探测命令、审查输入数据流、或通过所属技术领域中已知的其他方法来探知所述信息。如果可在决策82处识别出外围装置14,则所述过程接着判定是否存在一用于与该类别的特定外围装置14进行通信的已知协议,如在决策14中所示。
反之,如果在决策82中不能识别出外围装置14,则判定用户是否需要对外围装置14进行归类或以其他方式进行识别,如在决策84中所示。换句话说,外围装置可能不能桥接与无线装置84的任何通信,且决策84判定用户干预是否可提供对所述类别或外围装置的识别以便可找到一通信协议。如果用户不需要在决策84中识别外围装置14,则要求用户对所述外围装置进行识别或归类,如在步骤86中所示,并随后判定用户是否已对外围装置14进行了识别或归类,如在决策88中所示。如果在决策88中用户尚未对外围装置14进行识别或归类,或者可能已指示在一由外围装置14的可能类别的有限选项构成的菜单情况下无法识别出外围装置14,则所述过程然后在实现与外围装置14的通信连接过程中向用户输出一错误,如在步骤98中所示,且所述过程结束。
反之,如果在决策88中用户已对外围装置14进行了识别或归类,或者如果用户不需要在决策84中对外围装置14进行识别或归类,或者如果在决策82中已对外围装置进行归类或识别,则然后判定是否存在一用于处理与外围装置14的通信的预规定协议,如在决策90中所示。如果在决策90中存在一用于处理与外围装置14的通信的预确定协议,则执行所述预确定的通信协议以允许与外围装置14进行通信,如在预确定过程96中所示,且随后在无线装置12与外围装置14之间的通信会话结束时,所述过程终止。反之,如果在决策90中不存在预确定的协议,则请求外围装置14指示一通信协议,如在步骤92中所示。换句话说,无线装置OS将促使外围装置14(通常通过一通用信号交换命令)返送回指示由外围装置14用于进行通信的通信协议的数据。
然后,在决策94中判定外围装置14是否已指明一已知的通信协议。如果在决策94中,外围装置尚未指明一已知协议或者已指明一未知协议,则在实现与外围装置14的连接过程中向用户输出一错误,如在步骤98中所示,且随后所述过程终止。反之,如果在决策94中,外围装置14已指明一已知通信协议,则执行所述预确定的通信协议来与外围装置14进行通信,如在预确定过程96中所示,且随后在通信会话结束时,所述过程终止。所述过程将在步骤80处对来自同一外围装置14或一新的外围装置14的另一通信请求进行重复。
因此,本发明提供一种用于在一外围装置14与一无线装置12的计算机平台30上的常驻计算机程序之间进行通信的方法,其包括如下步骤:在一外围装置12与无线装置12的计算机平台30之间开始一通信,所述计算机平台30包括一管理无线装置资源及无线装置12与其他计算机装置(例如外围装置14)之间的相互作用的操作系统、及一个或多个常驻计算机程序;及在所述无线装置的操作系统中确定已开始与无线装置12进行通信的外围装置14的身份;及随后通过所述操作系统来链接外围装置14与一个或多个所述常驻计算机程序。换句话说,一旦无线装置12的OS与外围装置14建立起令人满意的通信,装置OS即可保持对所述通信的控制,或者可将控制让给另一常驻程序。
在一外围装置14与一无线装置12之间开始一通信的步骤可通过一接至无线装置12的计算机平台30的有线或无线连接来进行。进一步,所述方法可包括如下步骤:向无线装置12的操作系统发送一装置类别标识符,并随后在操作系统处根据所选类别来选择适用于该外围装置14的处理程序。另一选择为,所述方法可包括如下步骤:在通信开始时向无线装置12的操作系统发送一特定标识符,并在所述操作系统处根据在通信开始时所给出的外围装置14的所述特定标识符来识别进行通信的特定外围装置14。所述在一外围装置14与一无线装置12之间开始一通信的步骤也可通过计算机平台30的通信端口或接口40来进行。
鉴于所述方法可在一无线计算机装置的计算机平台上执行,本发明包括一种能够使一计算机装置执行所述方法的各步骤的计算机可读媒体。所述计算机可读媒体可为计算机平台30的存储器32。在图4所示背景中,本方法可例如由无线网络60及/或任一计算机装置(例如移动电话70及74)的操作部分来执行,以执行一机器可读指令序列。所述指令也可驻存于各种类型的可部分地或完全地载入至计算机平台30上的第一级、第二级或第三级信号承载或数据存储媒体上。所述媒体可包括(例如)可由无线网络60的组件存取或驻存于其内的RAM(未显示)。无论是包含于RAM、磁盘、还足其它第二级存储媒体内,所述指令均可存储在各种各样的机器可读数据存储媒体上,例如DASD存储器(例如,传统的“硬盘驱动器”或RAID阵列)、磁带、电子只读存储器(例如,ROM、EPROM、或EEPROM)、快闪存储卡、光学存储装置(例如,CD-ROM、WORM、DVD、数字光带)、纸“打孔”卡、或包括数字及模拟传输媒体在内的其它适合的数据存储媒体上。
尽管上文揭示内容显示了本发明的若干例示性实施例,然而应注意,可对其作出各种改变及修改,此并不背离由随附权利要求书所界定的本发明的范畴。此外,尽管本文可能以单数来说明或请求本发明元件的权利,但本发明也涵盖复数,除非已明确地声明限定为单数。

Claims (32)

1、一种用于在一外围装置与一无线装置的操作系统之间进行通信的系统,其包括:
一无线装置,其具有一计算机平台、及至少一通信端口,所述计算机平台包括一用于管理无线装置资源及所述无线装置与其他计算机装置之间的相互作用的操作系统,所述计算机平台包括一个或多个常驻程序;及
至少一个外围装置,其选择性地与所述无线装置的所述计算机平台进行通信;
其中一旦所述外围装置与所述无线装置的所述计算机平台进行通信,所述无线装置的所述操作系统即至少将一个或多个常驻程序与所述外围装置相链接。
2、如权利要求1所述的系统,其中外围装置通过一与所述无线装置的所述计算机平台的有线连接来进行通信。
3、如权利要求1所述的系统,其中所述外围装置通过一与所述无线装置的所述计算机平台的无线连接来进行通信。
4、如权利要求1所述的系统,其中所述外围装置向所述无线装置的所述操作系统发送一类别标识符且所述操作系统根据所述类别标识符来确定与所述无线装置进行通信的外围装置的类型并选择适合于所述外围装置的处理程序。
5、如权利要求1所述的系统,其中所述无线装置的所述操作系统根据在通信开始时给定的所述外围装置的一特定标识符来识别进行通信的所述特定外围装置。
6、如权利要求1所述的系统,其中外围装置将所述无线装置用作一通往因特网的通信端口。
7、如权利要求1所述的系统,其中所述外围装置将所述无线装置用作一在一电话网络上的通信端口。
8、如权利要求1所述的系统,其中所述外围装置通过所述计算机平台的所述通信端口与所述无线装置的所述计算机平台进行通信。
9、一种用于在计算机装置之间进行通信的系统,其包括:
一用于通过一无线网络进行通信的无线通信装置,所述无线通信装置包括一用于管理无线通信装置资源及所述无线通信装置与其他计算机装置之间的相互作用的控制装置;及
至少一个外围装置,其选择性地与所述无线通信装置进行通信;
其中一旦所述外围装置与所述无线通信装置进行通信,所述无线通信装置的所述控制装置即在所述外围装置与所述无线通信装置资源之间建立通信。
10、一种用于在一外围装置与一个或多个常驻于一无线计算机装置上的程序之间进行通信的方法,其包括如下步骤:
在一外围装置与一无线装置之间开始一通信,所述无线装置具有一带有至少一通信端口的计算机平台,所述计算机平台包括一用于管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统,且所述计算机平台进一步包括一个或多个常驻程序;
在所述无线装置的所述操作系统处确定已开始与所述无线装置进行通信的外围装置的身份;及
通过所述操作系统来链接所述外围装置与所述无线装置的一个或多个常驻程序之间的所述通信。
11、如权利要求10所述的方法,其中所述在一外围装置与一无线装置之间开始一通信的步骤是通过一与所述无线装置的所述计算机平台的有线连接来进行。
12、如权利要求10所述的方法,其中所述在一外围装置与一无线装置之间开始一通信的步骤是通过一与所述无线装置的所述计算机平台的无线连接来进行。
13、如权利要求10所述的方法,其进一步包括如下步骤:
向所述无线装置的所述操作系统发送一装置类别标识符;及
根据所选类别在所述操作系统处选择适合于该外围装置的处理程序。
14、如权利要求10所述的方法,其进一步包括如下步骤:
在通信开始时向所述无线装置的所述操作系统发送一特定标识符;及
在所述操作系统处,根据在通信开始时所给定的所述外围装置的一特定标识符来识别进行通信的所述特定外围装置。
15、如权利要求10所述的方法,其中所述在一外围装置与一无线装置之间开始一通信的步骤是通过所述计算机平台的所述通信端口来进行。
16、一种用于在一外围装置与一无线计算机装置上的常驻计算机程序之间进行通信的方法,其包括如下步骤:
一开始步骤,其用于在一外围装置与一无线装置之间开始一通信,所述无线装置具有一带有至少一通信端口的计算机平台,所述计算机平台包括一用于管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统;
一确定步骤,其用于在所述无线装置的所述操作系统处确定已开始与所述无线装置进行通信的外围装置的身份;及
一链接步骤,其用于通过所述操作系统使所述外围装置与所述一个或多个常驻程序相链接。
17、一种具有一计算机平台及至少一无线通信端口的装置,所述计算机平台包括一用于管理装置资源及所述无线装置与一个或多个与所述装置进行通信的其他外围装置的相互作用的操作系统,所述计算机平台进一步包括一个或多个常驻程序,且其中一旦一外围装置与所述无线装置的所述计算机平台进行通信,所述无线装置的所述操作系统即将至少一个或多个常驻程序与所述外围装置相链接。
18、如权利要求17所述的装置,其中所述装置通过一来自所述无线装置的所述计算机平台的有线连接与一外围装置进行通信。
19、如权利要求17所述的装置,其中所述无线装置通过一来自所述无线装置的所述计算机平台的无线连接与一外围装置进行通信。
20、如权利要求17所述的装置,其中所述无线装置的所述操作系统根据一自所述外围装置发送的装置标识符来确定与所述无线装置进行通信的外围装置的类型并根据所述所选类别来选择适用于该外围装置的处理程序。
21、如权利要求17所述的装置,其中所述无线装置的所述操作系统根据在通信开始时所给定的所述外围装置的一特定标识符来识别进行通信的所述特定外围装置。
22、如权利要求17所述的装置,其中所述外围装置与所述计算机平台的通信是通过所述通信端口来进行。
23、一种在一无线计算机装置处用于管理与一外围装置的通信的方法,其包括如下步骤:
在所述无线装置的一计算机平台处自一外围装置接收一通信,所述计算机平台具有至少一通信端口且包括一用于管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统,所述计算机平台包括一个或多个常驻程序;
在所述无线装置的所述操作系统处,确定已与所述无线装置开始进行通信的所述外围装置的身份;及
通过所述操作系统来链接所述外围装置与所述无线装置的一个或多个常驻程序。
24、如权利要求23所述的方法,其中所述接收一通信的步骤是通过一与所述无线装置的所述计算机平台的有线连接来进行。
25、如权利要求23所述的方法,其中所述接收一通信的步骤是通过一与所述无线装置的所述计算机平台的无线连接来进行。
26、如权利要求23所述的方法,其进一步包括如下步骤:
在所述无线装置的所述操作系统处接收所述外围装置的一装置类别标识符;及
根据所述类别标识符在所述操作系统处选择适合于该外围装置的处理程序。
27、如权利要求23所述的方法,其进一步包括:
在通信开始时在所述无线装置的所述操作系统处接收一特定标识符;及
在所述操作系统处,根据在通信开始时所给定的所述外围装置的一特定标识符来识别进行通信的所述特定外围装置。
28、如权利要求25所述的方法,其中所述自一外围装置接收一通信的步骤是通过所述计算机平台的所述通信端口来进行。
29、一种处于一计算机可读媒体中的程序,其在由一具有一带有一个或多个常驻程序及至少一无线通信端口的计算机平台并包括一用于管理无线装置资源及所述无线装置与其他计算机装置的相互作用的操作系统的计算机装置执行时会使所述计算机装置执行如下步骤:
在所述操作系统处确定一已开始与所述无线装置进行通信的外围计算机装置的身份;及
通过所述操作系统将所述外围计算机装置与所述计算机装置的所述计算机平台上的一个或多个常驻程序相链接。
30、如权利要求29所述的程序,其中所述程序使所述计算机装置通过所述无线通信端口与所述外围装置进行通信。
31、如权利要求29所述的程序,其进一步使所述计算机装置执行如下步骤:
在通信开始时检索一装置类别标识符;及
根据所述所选装置类别来选择适合于该外围装置的处理程序。
32、如权利要求29所述的程序,其进一步使所述计算机装置执行如下步骤:
在通信开始时检索一特定外围装置标识符;及
根据所述特定外围装置标识符来识别进行通信的所述特定外围装置。
CN2004800371487A 2003-10-29 2004-10-15 用于在一外围装置与一无线装置之间建立通信的系统及方法 Expired - Fee Related CN1902609B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/697,593 2003-10-29
US10/697,593 US20050097248A1 (en) 2003-10-29 2003-10-29 System and method for establishing a communication between a peripheral device and a wireless device
PCT/US2004/034412 WO2005045608A2 (en) 2003-10-29 2004-10-15 System and method for establishing a communication between a peripheral device and a wireless device

Publications (2)

Publication Number Publication Date
CN1902609A true CN1902609A (zh) 2007-01-24
CN1902609B CN1902609B (zh) 2010-05-05

Family

ID=34550399

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800371487A Expired - Fee Related CN1902609B (zh) 2003-10-29 2004-10-15 用于在一外围装置与一无线装置之间建立通信的系统及方法

Country Status (6)

Country Link
US (1) US20050097248A1 (zh)
EP (1) EP1685494A4 (zh)
JP (2) JP2007510368A (zh)
KR (1) KR100828736B1 (zh)
CN (1) CN1902609B (zh)
WO (1) WO2005045608A2 (zh)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102648458A (zh) * 2009-08-13 2012-08-22 苹果公司 与可自配置外围装置兼容的主机/外围本地互连
CN103189841A (zh) * 2010-09-30 2013-07-03 苹果公司 结合附件的应用启动
US8780201B1 (en) 2013-07-26 2014-07-15 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8937659B1 (en) 2013-07-26 2015-01-20 SkyBell Technologies, Inc. Doorbell communication and electrical methods
US8941736B1 (en) 2013-07-26 2015-01-27 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8953040B1 (en) 2013-07-26 2015-02-10 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US9013575B2 (en) 2013-07-26 2015-04-21 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9094584B2 (en) 2013-07-26 2015-07-28 SkyBell Technologies, Inc. Doorbell communication systems and methods
CN105474607A (zh) * 2013-08-28 2016-04-06 爱克发医疗保健公司 用于将设备配对的系统和方法
US9736284B2 (en) 2013-07-26 2017-08-15 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US9743049B2 (en) 2013-12-06 2017-08-22 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9769435B2 (en) 2014-08-11 2017-09-19 SkyBell Technologies, Inc. Monitoring systems and methods
US9799183B2 (en) 2013-12-06 2017-10-24 SkyBell Technologies, Inc. Doorbell package detection systems and methods
US9888216B2 (en) 2015-09-22 2018-02-06 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9997036B2 (en) 2015-02-17 2018-06-12 SkyBell Technologies, Inc. Power outlet cameras
US10043332B2 (en) 2016-05-27 2018-08-07 SkyBell Technologies, Inc. Doorbell package detection systems and methods
US10044519B2 (en) 2015-01-05 2018-08-07 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10204467B2 (en) 2013-07-26 2019-02-12 SkyBell Technologies, Inc. Smart lock systems and methods
US10218932B2 (en) 2013-07-26 2019-02-26 SkyBell Technologies, Inc. Light socket cameras
US10440166B2 (en) 2013-07-26 2019-10-08 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US10672238B2 (en) 2015-06-23 2020-06-02 SkyBell Technologies, Inc. Doorbell communities
US10687029B2 (en) 2015-09-22 2020-06-16 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10706702B2 (en) 2015-07-30 2020-07-07 Skybell Technologies Ip, Llc Doorbell package detection systems and methods
US10733823B2 (en) 2013-07-26 2020-08-04 Skybell Technologies Ip, Llc Garage door communication systems and methods
US10742938B2 (en) 2015-03-07 2020-08-11 Skybell Technologies Ip, Llc Garage door communication systems and methods
US11004312B2 (en) 2015-06-23 2021-05-11 Skybell Technologies Ip, Llc Doorbell communities

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8154581B2 (en) 2002-10-15 2012-04-10 Revolutionary Concepts, Inc. Audio-video communication system for receiving person at entrance
US7813836B2 (en) * 2003-12-09 2010-10-12 Intouch Technologies, Inc. Protocol for a remotely controlled videoconferencing robot
US7103432B2 (en) * 2004-06-02 2006-09-05 Research In Motion Limited Auto-configuration of hardware on a portable computing device
US8208450B2 (en) * 2004-08-20 2012-06-26 Sk Telecom Co., Ltd. Subscriber information management system and method for mobile communication service system
CN101385000A (zh) * 2006-02-17 2009-03-11 高通股份有限公司 用于多处理器应用程序支持的系统及方法
GB2444994A (en) * 2006-12-21 2008-06-25 Symbian Software Ltd Interdevice transmission of data
US8402145B2 (en) * 2009-03-16 2013-03-19 Apple Inc. Application communication with external accessories
US9542203B2 (en) 2010-12-06 2017-01-10 Microsoft Technology Licensing, Llc Universal dock for context sensitive computing device
US8923770B2 (en) 2010-12-09 2014-12-30 Microsoft Corporation Cognitive use of multiple regulatory domains
US8792429B2 (en) 2010-12-14 2014-07-29 Microsoft Corporation Direct connection with side channel control
US9294545B2 (en) 2010-12-16 2016-03-22 Microsoft Technology Licensing, Llc Fast join of peer to peer group with power saving mode
US8948382B2 (en) 2010-12-16 2015-02-03 Microsoft Corporation Secure protocol for peer-to-peer network
US8971841B2 (en) 2010-12-17 2015-03-03 Microsoft Corporation Operating system supporting cost aware applications
US9077756B1 (en) * 2012-03-05 2015-07-07 Symantec Corporation Limiting external device access to mobile computing devices according to device type and connection context
US20140297900A1 (en) * 2013-04-02 2014-10-02 Phone Halo Llc Method for tracking wired and wireless audio peripherals using unique volume key identifiers on a host device
US9053622B2 (en) 2013-07-26 2015-06-09 Joseph Frank Scalisi Light socket cameras
US9113051B1 (en) 2013-07-26 2015-08-18 SkyBell Technologies, Inc. Power outlet cameras
US9179109B1 (en) 2013-12-06 2015-11-03 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8947530B1 (en) 2013-07-26 2015-02-03 Joseph Frank Scalisi Smart lock systems and methods
US9196133B2 (en) 2013-07-26 2015-11-24 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10708404B2 (en) 2014-09-01 2020-07-07 Skybell Technologies Ip, Llc Doorbell communication and electrical systems
US9197867B1 (en) 2013-12-06 2015-11-24 SkyBell Technologies, Inc. Identity verification using a social network
US8872915B1 (en) 2013-07-26 2014-10-28 SkyBell Technologies, Inc. Doorbell communication systems and methods
US11889009B2 (en) 2013-07-26 2024-01-30 Skybell Technologies Ip, Llc Doorbell communication and electrical systems
US9118819B1 (en) 2013-07-26 2015-08-25 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9065987B2 (en) 2013-07-26 2015-06-23 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9172920B1 (en) 2014-09-01 2015-10-27 SkyBell Technologies, Inc. Doorbell diagnostics
US9235943B2 (en) 2013-07-26 2016-01-12 Joseph Frank Scalisi Remote identity verification of lodging guests
US9172922B1 (en) 2013-12-06 2015-10-27 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9342936B2 (en) 2013-07-26 2016-05-17 SkyBell Technologies, Inc. Smart lock systems and methods
US9165444B2 (en) 2013-07-26 2015-10-20 SkyBell Technologies, Inc. Light socket cameras
US9172921B1 (en) 2013-12-06 2015-10-27 SkyBell Technologies, Inc. Doorbell antenna
US9179107B1 (en) 2013-07-26 2015-11-03 SkyBell Technologies, Inc. Doorbell chime systems and methods
US9060104B2 (en) 2013-07-26 2015-06-16 SkyBell Technologies, Inc. Doorbell communication systems and methods
US11651665B2 (en) 2013-07-26 2023-05-16 Skybell Technologies Ip, Llc Doorbell communities
US9113052B1 (en) 2013-07-26 2015-08-18 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9058738B1 (en) 2013-07-26 2015-06-16 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9247219B2 (en) 2013-07-26 2016-01-26 SkyBell Technologies, Inc. Doorbell communication systems and methods
US20180343141A1 (en) 2015-09-22 2018-11-29 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9237318B2 (en) 2013-07-26 2016-01-12 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9230424B1 (en) 2013-12-06 2016-01-05 SkyBell Technologies, Inc. Doorbell communities
US20170263067A1 (en) 2014-08-27 2017-09-14 SkyBell Technologies, Inc. Smart lock systems and methods
US9179108B1 (en) 2013-07-26 2015-11-03 SkyBell Technologies, Inc. Doorbell chime systems and methods
US9160987B1 (en) 2013-07-26 2015-10-13 SkyBell Technologies, Inc. Doorbell chime systems and methods
US9060103B2 (en) 2013-07-26 2015-06-16 SkyBell Technologies, Inc. Doorbell security and safety
US9049352B2 (en) 2013-07-26 2015-06-02 SkyBell Technologies, Inc. Pool monitor systems and methods
USD737283S1 (en) 2013-08-30 2015-08-25 SkyBell Technologies, Inc. Display screen or portion thereof with a graphical user interface
USD747733S1 (en) 2013-08-30 2016-01-19 SkyBell Technologies, Inc. Display screen or portion thereof with a graphical user interface
USD747732S1 (en) 2013-08-30 2016-01-19 SkyBell Technologies, Inc. Display screen or portion thereof with a graphical user interface
US9253455B1 (en) 2014-06-25 2016-02-02 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9786133B2 (en) 2013-12-06 2017-10-10 SkyBell Technologies, Inc. Doorbell chime systems and methods
USD762688S1 (en) 2014-05-16 2016-08-02 SkyBell Technologies, Inc. Display screen or a portion thereof with a graphical user interface
US11184589B2 (en) 2014-06-23 2021-11-23 Skybell Technologies Ip, Llc Doorbell communication systems and methods
US20170085843A1 (en) 2015-09-22 2017-03-23 SkyBell Technologies, Inc. Doorbell communication systems and methods
JP6358063B2 (ja) 2014-12-02 2018-07-18 富士通株式会社 要求送信方法、情報処理装置、及びプログラム
EP3703065A1 (en) 2015-01-20 2020-09-02 Novartis AG Application unlock using a connected physical device and transfer of data therebetween
JP6447297B2 (ja) 2015-03-26 2019-01-09 富士通株式会社 通信方法、情報処理装置、及びプログラム
US11575537B2 (en) 2015-03-27 2023-02-07 Skybell Technologies Ip, Llc Doorbell communication systems and methods
US11381686B2 (en) 2015-04-13 2022-07-05 Skybell Technologies Ip, Llc Power outlet cameras
US20180047269A1 (en) 2015-06-23 2018-02-15 SkyBell Technologies, Inc. Doorbell communities
US10909825B2 (en) 2017-09-18 2021-02-02 Skybell Technologies Ip, Llc Outdoor security systems and methods
US11074790B2 (en) 2019-08-24 2021-07-27 Skybell Technologies Ip, Llc Doorbell communication systems and methods

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5850573A (en) * 1990-08-16 1998-12-15 Canon Kabushiki Kaisha Control method for peripheral device in host computer connectable to a plurality of peripheral devices
JPH06252919A (ja) * 1993-02-23 1994-09-09 Oki Electric Ind Co Ltd 有線無線両用lan制御装置
US5835772A (en) * 1995-12-29 1998-11-10 Intel Corporation Method and apparatus for providing an interface between a system and a peripheral device
US6597891B2 (en) * 1999-04-05 2003-07-22 International Business Machines Corporation Combining online browsing and on-demand data broadcast for selecting and downloading digital content
US6539476B1 (en) * 1999-08-12 2003-03-25 Handspring, Inc. Mobile computer system capable for copying set-up application including removal routine from peripheral device for removing device programs after the device is removed
US6404772B1 (en) * 2000-07-27 2002-06-11 Symbol Technologies, Inc. Voice and data wireless communications network and method
US7038906B2 (en) * 2001-03-01 2006-05-02 Mds Advertising, Inc. Portable computer stand with integral communication method and apparatus
US6914695B2 (en) * 2001-08-08 2005-07-05 International Business Machines Corporation Process of operations with an interchangeable transmission device and apparatus for use therein for a common interface for use with digital cameras
US7295532B2 (en) * 2001-08-17 2007-11-13 Ixi Mobile (R & D), Ltd. System, device and computer readable medium for providing networking services on a mobile device
US7024230B2 (en) * 2002-02-22 2006-04-04 Kyocera-Wireless Corp Accessory interface system
US20030191753A1 (en) * 2002-04-08 2003-10-09 Michael Hoch Filtering contents using a learning mechanism
US20030196007A1 (en) * 2002-04-12 2003-10-16 Baron John M. Device-resident driver system and method
US6862452B2 (en) * 2002-08-21 2005-03-01 Qualcomm Inc. System and method for piggybacking data across an open data channel of a wireless device
US7305254B2 (en) * 2003-07-17 2007-12-04 Sony Ericsson Mobile Communications Ab System and method of software transfer between a mobile phone and a mobile phone accessory
US7315727B2 (en) * 2003-10-14 2008-01-01 At&T Mobility Ii Llc Methods and apparatuses for communicating with wireless peripheral devices

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102648458B (zh) * 2009-08-13 2016-01-13 苹果公司 可自配置外围装置以及与之兼容的主机装置
CN102648458A (zh) * 2009-08-13 2012-08-22 苹果公司 与可自配置外围装置兼容的主机/外围本地互连
CN103189841A (zh) * 2010-09-30 2013-07-03 苹果公司 结合附件的应用启动
US10218932B2 (en) 2013-07-26 2019-02-26 SkyBell Technologies, Inc. Light socket cameras
US10204467B2 (en) 2013-07-26 2019-02-12 SkyBell Technologies, Inc. Smart lock systems and methods
US8941736B1 (en) 2013-07-26 2015-01-27 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8953040B1 (en) 2013-07-26 2015-02-10 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US9013575B2 (en) 2013-07-26 2015-04-21 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9094584B2 (en) 2013-07-26 2015-07-28 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8823795B1 (en) 2013-07-26 2014-09-02 SkyBell Technologies, Inc. Doorbell communication systems and methods
US8937659B1 (en) 2013-07-26 2015-01-20 SkyBell Technologies, Inc. Doorbell communication and electrical methods
US9736284B2 (en) 2013-07-26 2017-08-15 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US10733823B2 (en) 2013-07-26 2020-08-04 Skybell Technologies Ip, Llc Garage door communication systems and methods
US10440165B2 (en) 2013-07-26 2019-10-08 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US10440166B2 (en) 2013-07-26 2019-10-08 SkyBell Technologies, Inc. Doorbell communication and electrical systems
US8780201B1 (en) 2013-07-26 2014-07-15 SkyBell Technologies, Inc. Doorbell communication systems and methods
CN105474607A (zh) * 2013-08-28 2016-04-06 爱克发医疗保健公司 用于将设备配对的系统和方法
CN105474607B (zh) * 2013-08-28 2019-02-15 爱克发医疗保健公司 用于将设备配对的系统和方法
US9743049B2 (en) 2013-12-06 2017-08-22 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9799183B2 (en) 2013-12-06 2017-10-24 SkyBell Technologies, Inc. Doorbell package detection systems and methods
US9769435B2 (en) 2014-08-11 2017-09-19 SkyBell Technologies, Inc. Monitoring systems and methods
US10044519B2 (en) 2015-01-05 2018-08-07 SkyBell Technologies, Inc. Doorbell communication systems and methods
US9997036B2 (en) 2015-02-17 2018-06-12 SkyBell Technologies, Inc. Power outlet cameras
US10742938B2 (en) 2015-03-07 2020-08-11 Skybell Technologies Ip, Llc Garage door communication systems and methods
US10672238B2 (en) 2015-06-23 2020-06-02 SkyBell Technologies, Inc. Doorbell communities
US11004312B2 (en) 2015-06-23 2021-05-11 Skybell Technologies Ip, Llc Doorbell communities
US10706702B2 (en) 2015-07-30 2020-07-07 Skybell Technologies Ip, Llc Doorbell package detection systems and methods
US9888216B2 (en) 2015-09-22 2018-02-06 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10674119B2 (en) 2015-09-22 2020-06-02 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10687029B2 (en) 2015-09-22 2020-06-16 SkyBell Technologies, Inc. Doorbell communication systems and methods
US10043332B2 (en) 2016-05-27 2018-08-07 SkyBell Technologies, Inc. Doorbell package detection systems and methods

Also Published As

Publication number Publication date
JP2007510368A (ja) 2007-04-19
WO2005045608A2 (en) 2005-05-19
KR20060090286A (ko) 2006-08-10
EP1685494A4 (en) 2007-08-29
CN1902609B (zh) 2010-05-05
KR100828736B1 (ko) 2008-05-09
EP1685494A2 (en) 2006-08-02
WO2005045608A3 (en) 2005-12-29
JP2010152917A (ja) 2010-07-08
US20050097248A1 (en) 2005-05-05

Similar Documents

Publication Publication Date Title
CN1902609A (zh) 用于在一外围装置与一无线装置之间建立通信的系统及方法
CN1178442C (zh) 使用网络的鉴别系统
CN1130099C (zh) 在通信网中检验第一通信方的真实可靠性的方法和装置
CN1308823C (zh) 终端装置
JP4865835B2 (ja) アクションリストとバージョニングとを用いて、無線デバイス上でアクションを実行する方法、ソフトウェア、及び装置
CN1819669A (zh) 具有通过使用点对点短消息业务来激活网络业务的移动终端
CN1947450A (zh) 管理与可用网络的连接的系统和方法
CN1777867A (zh) 使用增量压缩打补丁更新文件的系统和方法
CN1541015A (zh) 应用国际移动设备识别码实现手机防盗的方法及其系统
CN1735862A (zh) 用于更新网络化环境中的安装组件的系统和方法
CN1649300A (zh) 由管理服务器升级的本机应用程序目录
CN1918932A (zh) 在用户身份模块/可移动用户身份模块卡中的优选漫游列表更新
CN1658694A (zh) 用于对使用历史信息进行管理的移动式通信终端和方法
CN101044454A (zh) 软件程序同步的方法
CN1926849A (zh) 用于移动无线电网络用户的定制方法
CN1671115A (zh) 公共无线lan连接服务装置及其方法
CN101030237A (zh) 图像形成指示装置和方法、图像形成服务器和处理方法以及图像形成控制装置
CN1269084C (zh) 从智能卡配置应用程序的方法和系统
CN1254139C (zh) 无线通信终端
CN1725722A (zh) 用网络接口建网络的装置与方法
CN1992948A (zh) 移动通信终端及其程序、ic卡及其程序、移动通信终端系统
CN1777110A (zh) 一种集群设备批量传输文件的方法及文件传输设备
CN1153491C (zh) 用于访问多个网络的方法和装置
CN1264377C (zh) 便携信息终端、无线通信系统及连接确立方法
KR101119432B1 (ko) 디바이스상의 레지스트리-기반 자동 설치 및 구성요소처리를 위한 시스템

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1096474

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100505

Termination date: 20111015

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1096474

Country of ref document: HK