包括进行数据代码转换的用于把数据从信息源推送到移动通信设备的系统和方法

文档序号:6427346阅读:180来源:国知局
专利名称:包括进行数据代码转换的用于把数据从信息源推送到移动通信设备的系统和方法
技术领域
本发明涉及移动通信,尤其涉及把信息推送到移动通信设备。
背景技术
已知的把信息提供到移动通信设备的方案趋于相对有限。例如,用于移动设备的无线应用协议(WAP)浏览器通常只提供对与WAP适应源相关的信息并且当这种信息由用户请求时的访问。尽管其它已知和类似的产品可允许移动设备用户访问另外的信息源,但是这些产品一般缺少对于移动设备网络资源、特别是无线通信链路的有效使用,因为某些信息请求通常必须在信息的每次传送之前进行。
此外,大部分已知的数据访问系统和方法不适合于提供对存储在专用网络上的保密信息,诸如在位于安全防火墙之后的数据存储器上的公司信息的真正安全访问。
因此,需要用于把信息从信息源推送到移动通信设备的系统和方法。

发明内容
本申请描述了一种用于把信息从信息源推送到移动通信设备的系统和方法。
在此描述的系统和方法提供用于把多种类型和格式的信息的任何一种推送到移动通信设备。具体的信息翻译操作可由移动设备、信息源或中间数据服务器系统选择并且在移动通信系统的信息源侧执行。这不仅减少了设备处理操作的复杂性和与这些操作相关的任何设备硬件和软件组件,而且提供了客户化的设备信息格式。
在一个实施例中,用于经网络把信息内容从信息源推送到移动通信设备的系统包括代码转换系统和第一网络设备。代码转换系统包括多个代码转换器,每个代码转换器可操作将信息内容从各种输入内容类型代码转换成各种输出内容类型。第一网络设备与代码转换系统通信,并且包括推送模块。推送模块可操作从信息源接收连接请求。该连接请求包括与移动通信设备相关的标识符。推送模块还可操作选择一个相应的连接处理机,该处理机可操作来从多个代码转换器中选择一个或多个代码转换器以对信息内容进行代码转换。


图1是提供从信息源到移动通信设备推送数据的通信系统的一般方框图。
图2是图1所示的系统的更详细方框图。
图3是表示在IP系统中一般连接处理机相关操作的流程图。
图4是连接处理机数据处理操作的流程图。
图5是示例信息推送操作的信号流向图。
图6是表示用于基于HTTP推送操作的多个或“链接”代码转换操作的信号流向图。
图7是用于基于HTTP推送操作的推送服务器受控代码转换器选择的举例信号流向图。
图8是带有外部代码转换器系统的通信系统的一般方框图。
图9是示出如图8所示的外部代码转换器系统的基于HTTP推送操作的信号流向图。
图10示出用于外部代码转换器系统的其它信号流向图。
图11是在安全网络中实现的IP代理系统的方框图。
图12是示出公司数据推送操作的信号流向图。
具体实施内容总体系统描述图1是提供从远端信息源20到无线移动通信设备12推送信息的通信系统的总体框图。在图1中,系统10包括移动设备12,无线网络14,无线网络网关15,广域网(WAN)16,网络协议(IP)代理系统18,和信息源20。尽管IP代理系统18被示于图1的范例系统中,但用于非IP的协议的代理系统也可以按照本发明实现。在操作系统互连(OST)模型内的其它层的协议也能使用该系统被代理。这些其它协议包括但不限于HTTP和TCP。
移动设备12可以是适于操作于无线通信网络14内的任何移动通信设备,并且最好是双路通信设备。移动设备12还可以具有语音和数据通信能力。根据移动设备12提供的功能,移动设备12还可称为数据消息设备,双路寻呼机,具有数据消息能力的蜂窝电话,无线互联网用具或数据通信设备(带有或不带有电话能力),但是在此基本地称为移动设备。正如对通信领域技术人员来说是显见的那样,移动设备12内的通信子系统的具体设计将取决于移动设备12打算运行于其中的通信网络14。例如,打算用于北美市场的移动设备12可包括设计运行于Mobitex移动通信系统或DataTAC移动通信系统内的通信子系统,而打算用于欧洲的移动设备12可包括通用分组无线业务(GPRS)通信子系统。本领域技术人员还将理解也可期望其它类型的移动设备和网络。在此描述的本发明的系统和方法可以结合实际上的任何无线网络14实现。图1所示的网关15提供无线网络14和WAN16例如可以是互联网之间的接口。这些功能如移动设备寻址、WAN协议和无线网络协议之间的数据转换、存储并且将数据前送到移动设备12及从移动设备前送数据和其它接口功能可以由网关15执行。
IP代理系统18也能由与无线网络14相关的网络运营者/操作者主持。在该情况下,IP代理系统18和网关15之间的连接将使用运营者的专用网络而不是WAN 16.然后,WAN 16能够用于IP代理系统18和信息源20之间的通信。
IP代理系统18是有效提供信息源20对移动设备12的访问的系统,并且下面进一步详细描述。通过IP代理系统18,能够与IP代理系统18通信的任何信息源20诸如互联网或网络服务器,可以推送信息到移动设备12。因此信息源20不需要特殊的应用或协议支持用于无线网络通信,因为它与IP代理系统18通信而不直接与移动设备12通信。尽管图1示出为直接连接,IP代理系统18和信息源20能够通过网络诸如局域网(LAN)或WAN包括互联网通信。
无线网络和互联网使用类似的寻址方案,其中,接收者诸如在无线网络中的移动设备或连接互联网的计算机由数字地址标识。例如,移动设备在Mobitex网络中使用Mobitex访问号码(MAN)被标识,并且公共互联网使用IP地址方案被标识。然而,无线网络和互联网传输机构之间的差别防止了大部分是基于互联网的信息源20和移动设备诸如12之间的直接通信。此外,信息源内容主要针对具有相对强大的处理器的桌面或其它计算机系统,并且可以可需要处理器高强度操作诸如信息解析由接收者执行。由于移动设备趋于具有较小强度的处理器,这些操作在这些移动设备上比在计算机系统上花费更多时间,并且能够消耗通常有限的电源的大量功率。IP代理系统18填补了基于互联网和可能其它信息源20和具有相关移动设备12的无线网络14之间的空隙。这些服务例如可以包括地址映射、内容转换和验证和协议映射和优化。
IP代理系统的详细描述图2是图1示出的IP代理系统18的详细方框图。IP代理系统18可包括分配器22,传输控制协议(TCP)处理机24,超文本传输协议(HTTP)处理机26,代码转换系统28,总表示为30的一个或多个推送服务,状态持续单元34,监视系统36和日志系统38。图2还示出了推送服务器42,网络服务器46,网络浏览器48和文件系统40,IP代理系统18可以时常与它们交互。图2所示的很多组件主要作为计算机软件模块实现。IP代理系统18内的单元将典型地运行在相同的计算机上,而IP代理系统18外的组件通常驻留在分离的计算机上。在可选的实施例中,IP代理系统18的单元可改为分布在分布于网络上的一组计算机中。
分配器22管理数据流和与网关15的连接。例如根据连接的类型或被传送数据的类型或被执行的数据交易,分配器22与TCP处理机24或HTTP处理机26交互。代码转换系统28包括一个或多个数据滤波器,每个将数据或其它信息从一种格式转换成能够由移动设备12处理的格式。推送服务30提供向移动设备的推送,或通过IP代理系统18将来自信息源诸如推送服务器42(例如可以是网络服务器或软件应用)的“主动提供的”信息传送到移动设备12。推送服务组件30允许推送服务器42使用例如移动设备拥有者的电子邮件地址或某些其它方便的标记寻址移动设备。相应地,推送服务器42不需要知道移动设备12在无线网络14中的地址。
状态持续单元34与数据文件系统40或数据库一起使能与IP代理系统18能连接到的网络服务器46相关的小甜饼,口令和可能其它状态信息的管理。它最好存储分离的网络分组诸如HTTP请求/相应对之间存在的连接的状态信息。
监视系统36允许监督者进行IP代理系统18的性能、效率、使用情况和健康的远端监视。该监视例如可通过与IP代理系统18的本地接口或可能远程通过接口诸如网络浏览器48完成。正如其名称所意指的,日志系统38可以被配置存储使用情况、连接、用户统计等到文件系统40或某些其它备用存储器。
连接和处理机IP代理系统18最好能操作和处理来自各信息源20包括基于互联网的源的内容。该功能由连接处理机提供,连接处理机是具有能够处理来自与IP代理系统18的输入连接和输出连接的内容的中间物。在图2所示的IP代理系统18中,示出了两个这样的处理机,TCP处理机24和HTTP处理机26。这些处理机最好能够被替换和客户化,或附加的处理机能够根据需要被添加到IP代理系统。连接处理机不仅能够最优化内容而且能够最优化协议。例如,将通常被发送到移动设备12的某些请求(诸如口令请求)可以由连接处理机解决,此处需要的信息例如通过状态持续单元34和文件系统40得到。通过减少经无线网络发送到移动设备12的业务量、由此减少无线网络带宽限制和等待时间的影响,这种协议优化的情况能够更加无线友好地适应使所谓的“聊天”协议。
输出连接能够从移动设备12进行,以便例如发送数据到网络节点和从其接收数据。尽管也可以使用其它协议,IP代理系统18使用特定协议诸如称为IP代理协议的专用协议或本发明的受让人开发的IPPP最好从移动设备12接收连接请求。IP代理系统18然后按照由移动设备12提供路由信息,建立互联网连接,并且翻译和映射该连接以开始在两个方向上前送数据。滤波和代码转换根据需要被调用,例如基于经连接传送的内容的类型,或基于在来自移动设备的连接请求中指定的特定代码转换处理。
例如使用输入连接以实现按照一个实施例的数据推送模式。在该实施例中,移动设备12可以不用发出取信息的请求而被发送信息。正如输出连接的情况。如上简单描述的,移动设备12可以存在于不同于互联网节点的网络域上。IP代理系统18负责架接互联网和无线网络域。于是,IP代理系统18需要一定的路由信息以路由业务到特定的移动设备12。在该推送操作中,至少某些该路由信息必须由发出请求建立输入连接的互联网节点诸如推送服务器42提供。IP代理系统18可以将普通公知的寻址方案诸如电子邮件或IP号转换成计划接收者移动设备12的合适的无线网络地址。用于被推送内容的代码转换处理也可以由推送服务器42或信息源20选择和指定。
在IP代理系统18中的连接处理机是基于流的物体。当请求输出或输入连接时,在移动设备12和合适的连接处理机之间建立虚拟管流。连接处理机将用例子说明,并且开始处理内容用于建立的连接。装载连接处理机基于连接请求,该请求最好包含合适处理机名字的引用,该处理机名字通常意指将穿过虚拟管流的业务的类型和如果没有被装载必须被装载的处理机的位置。连接处理机的功能包括映射互联网或其它信息源侧连接和移动设备12连接,前送这些连接之间的业务,和对针对移动设备12的信息装载和调用合适的代码转换器。
每个连接最好与连接处理机的情况相关。即使对于不需要内容由IP代理系统18处理的连接诸如移动设备和服务器之间的纯TCP连接也是如此。该类型的连接处理机来回传送内容,不用对内容进行任何修改,尽管它可以对协议进行修改。为了清楚,本领域技术人员将理解数据或内容(移动设备所请求的或正被发送的)和协议(要求传递数据的“封套”和转换)之间的差别。
连接处理机也负责装载合适的内容滤波器或代码转换器。连接处理机诸如HTTP连接处理机26可以使用由IP代理系统18选择或由移动设备12或由信息源组如推送服务器42或网络服务器46指定的代码转换器系统28中的特定代码转换器。
图3是表示在IP代理系统18中一般连接处理机相关操作的流程图。在步骤50,IP代理系统18接收连接请求(如上所述可以涉及输入连接或输出连接)。当连接与特定处理机相关时,诸如需要HTTP连接处理机26的HTTP连接,在步骤54,装载并且执行合适的处理机,并且如在步骤58指示的,建立连接。如果请求是输出(从移动设备12),那么分配器22检查与请求相关的协议类型,并且派遣该连接到合适的处理机。然后,数据可以在移动设备和互联网服务,推送服务器42,网络服务器46或其它信息源20之间交换。如果某连接处理机被用于连接,诸如用于如上所述的纯TCP连接,然后数据可以不改变地通过IP代理系统18。然而,在某些IP代理系统中,经TCP处理机发送的内容可以被修改。然而当使用其它连接处理机时,针对移动设备12的数据可需要被转换成合适的格式。图4是连接处理机数据处理操作的流程图。在步骤62,接收针对移动设备12的数据。例如跟随来自移动设备12的信息请求,尽管被标志为来自连接的响应,应理解由连接处理机接收的数据可代替为是从推送服务器诸如42经推送服务30推送到移动设备12的信息。在步骤64连接处理机确定是否需要代码转换。如果不要,那么在步骤70信息发送到移动设备12。否则,在步骤66装载合适的代码转换器和执行。在步骤70数据被发送到移动设备12之前,在步骤68数据被代码转换成可接受的格式。启动通信的实体,用于被取数据的移动设备12或用于被推送数据的推送服务器42能够最好指定特定的代码转换器,以进行被取和被推送数据的代码转换。代码选择也可以由连接处理机或IP代理系统18根据可用于IP代理系统18或可能由IP代理系统18或其组件基于涉及目的移动设备12的先前信息传送操作推断的目的移动设备12进行。例如,代码转换器可以被请求将信息转换成上次信息发送到移动设备12、先前传送到目的移动设备12的相同的格式。
连接处理机可以在计算机软件中作为Java类文件被实现,放置在文件系统中的某目录,以便IP代理系统Java虚拟机(VM)当被需要或被请求时可以定位和装载文件。正如本领域技术人员将理解的,Java使用CLASSPATH环境变量作为到哪个地方应该执行查询用户定义的类的指导。在一个实施例中,到连接处理机的路径将在CLASSPATH中的第一列表路径中,以便它们当被请求时相对快的装载。连接方向(输入或输出)和与连接处理机相关的名称也可以在定义处理机的全类名称中起作用。本领域技术人员将理解根据目标操作系统使用动态链接数据库(DLL)或动态共享目标(DSO)能够实现相同的方案。
连接处理机能够与代表应用层上的协议的名称相关。例如,如果移动设备12用网络浏览器使能,并且由此可以请求开通到互联网服务器诸如46的连接。将理解让HTTP作为用于那个连接处理机的名称,正如用连接处理机26示出的。处理机名称也可以遵循在Java语言中命名包的已知规则,最好,处理机名称是在较低的例(case)中;然而,从IP代理系统的观点来看,这没有关系,只要JavaVM能够装载那个连接处理机。任何连接处理机也可以具有让其类名作为Handler.class。代表连接处理机的有效的全类名如下net.rim.protocol.iplayer.connection.handler.<connectiondirection>.<connection handler name>.Handler.class在此连接方向能够是意指输出连接的设备或意指输入连接的服务器。连接机名称是与连接机相关的名称,例如http,ftp等。
有至少两个方法,信息源诸如互联网节点能够通过示于图2的示例的IP代理系统18建立与移动设备12的连接(1)直接使用传输层协议,诸如TCP,开通到IP代理系统18的直接连接,或(2)使用应用层的数据报协议诸如HTTP。IP代理系统18包括两个相应的连接处理机,其例如可以表示能够处理两个最普通类型的连接的基本IP代理系统。第一个是例如与名称tcp相关的TCP连接处理机24。第二个是如上所述类似与名称http相关的HTTP连接处理机26。除了支持普通连接类型,这些连接处理机还满足移动设备的移动信息设备简要(MIDP)实现的要求。然而,IP代理系统18和移动设备12能够扩展到支持任何其它类型的连接。在IP代理系统18中,连接处理机可以能够通过例如在IP代理系统18中提供应用编程接口(API)和发展遵循API的新连接处理机被添加。
在一个实施例中,在IP代理18中的连接处理机从本地存储介质例如与IP代理系统软件运行的计算机相关的盘驱动被装载。然而,在另一实施例中,连接处理机存储器也可以是或改为是远离IP代理系统18,诸如在由IP代理系统18通过局域网(LAN)连接或甚至WAN如互联网可访问的存储介质上。该实施例允许在能够与连接处理机存储器通信的所有IP代理系统18中连接处理机的单个目录的共享。通过在连接处理机Java类能够被找到的地方嵌入URL,也能够让第三方扩展连接处理机组。如果被连接到互联网,连接处理机目录能够潜在地由所有进行互联网连接的IP代理系统18访问并且由此共享。公共互联网连接的连接处理机目录最好从IP代理系统18接收连接处理机请求,并且响应地传送任何被请求的连接处理机到进行请求的IP代理系统18。当与IP代理系统18通信的移动设备12下载新的软件应用或调用使用新的连接方案或移动设备12先前没有使用的连接方法的新移动设备特征时,新连接处理机可由IP代理系统18要求。然后移动设备用户或新应用或特征发送控制消息到IP代理系统18,例如指示被要求地连接处理机的名称,或许要求新连接处理机的移动设备应用,和与新连接处理机可以从其请求的连接处理机目录相关的地址。然后IP代理系统18将最好从该目录请求新连接处理机。连接处理机目录能够例如作为使用HTTP请求对于IP代理系统18可访问的网络服务器被实现。
当从远端源装载一个连接处理机时,IP代理系统18最好在本地存储器中存储处理机,以便提供处理机的较快装载用于涉及连接的相应类型的后面操作用于从目录被初始装载的移动设备12或由IP代理系统18支持的不同移动设备12。取决于IP代理系统可利用的存储器资源,下载的连接处理机可以无限期地被存储或存储特定的时间段。或者,当新处理机被下载时通过覆写相对不常使用的连接处理机,最近较少使用的或LRU代替方案能够用于提供可用存储器的更有效使用。也能使用其它存储器管理技术以最优化本地IP代理系统连接处理机存储配置。
代码转换相对于计算机网络诸如互联网,无线通信网络是慢的。架接两者的任何程序,正如IP代理系统作的,可能必须转换互联网数据,以便它被合适地格式化用于无线网络和移动设备。该过程在此称为滤波或代码转换,并且通常涉及这些操作如压缩来自互联网的数据成为适合于无线传输并且显示在相对小的移动设备显示屏的更紧密格式。
在下面的描述中,代码转换操作主要示于HTTP处理机26和HTTP连接的上述例子的上下文中。HTTP连接和处理机例子是特别有用的,因为HTTP允许多用途互联网邮件扩展(MIME)类型形式的内容标签,其可以用在某些实施例中以为接收的信息确定合适的代码转换器。
在IP代理系统18中,有用于每个类型的连接处理机的单个配置文件。例如在IP代理系统18中,与HTTP连接处理机26相关的单个配置文件可以包括用于所有HTTP内容代码转换器的信息。该配置用于映射代码转换器到某些密钥。IP代理系统18可以询问该文件以确定哪些内容代码转换器可用于操作针对移动设备的任何接收的内容。
在配置文件中,最好指定一般规则,用于如何定义内容类型和代码转换器之间的映射。一个可能的配置文件入口的例子如下Entry={[default]{RSV|<Transcoder name>}}|{[[InputType]|<->OutputType>][Transcoder name]}其中,default指示在无一与接收的内容类型或连接请求相关的代码转换器的情况下,哪个代码转换器应该被装载到IP代理服务器;RSV是用于配置文件的一组接收保存的关键字,诸如通过(即,前送数据到移动设备而没有代码转换)或扔掉(即,不进行代码转换或前送数据到移动设备);Transcoder name是映射的代码转换器的名称;InputType指示映射的代码转换器能够接受的输入内容类型,对于HTTP代码转换器配置文件可以是MIME类型;和OutputType指示输出类型,诸如代码转换器能够产生的用于HTTP代码转换器的MIME类型。
通过使用内容代码转换器配置文件,新代码转换器可以由IP代理系统18添加使用。因此,随着新代码转换器开发和变得可用,它们能够添加到配置文件用于任何合适的连接处理机,并且此后当需要时能够由连接处理机装载,和不影响IP代理系统18的其它组件。例如,配置文件入口可以添加而不用关掉整个IP代理系统18,于是,允许能够转换用于传送到移动设备12的数据的动态扩展。
在另一实施例中,使用用于所有连接处理机的公共配置文件格式,于是只有单个配置文件入口需要准备,并且能够添加到配置文件中用于任何连接处理机。还能够扩展用于所有连接处理机的公共配置文件格式的概念到提供用于IP代理系统18的单个配置文件。然后,这样一个配置文件能够由在IP代理系统18中的所有连接处理机使用,以确定哪些内容代码转换器是可用的,并且选择特定的代码转换器用于接收的内容。然而,应该理解,公共配置文件格式不是必需的。某些连接处理机可以共享一个配置文件入口格式或甚至单个配置文件,而由相同IP代理系统18支持的其它连接处理机可以具有不同的配置文件和入口格式。
IP代理系统最好或者基于要发送到移动设备12的信息类型或者基于由移动设备12或信息源20指定的代码转换器名称装载和执行一代码转换器,以代码转换发送到移动设备的数据。
代码转换器可以改为基于内容类型之外的信息进行选择,所述信息包括在来自移动设备的连接请求的首标部分或其它部分中的信息,对信息请求的响应,或来自包括要被推送到移动设备的信息的信息源的通信。例如,IP代理系统18可以配置确定数据将发送到的移动设备12的类型。由IP代理系统18进行的代码转换器选择能够类似地基于移动设备12的网络地址或其它标识符。依赖移动设备或设备类型的代码转换器选择方案可以通过提供对于IP代理系统18可访问的设备或设备类型映射表(其映射设备或设备类型到代码转换器)得到支持。或者,可以调整配置文件包括设备或设备类型标识符,由此将特定代码转换器与设备或设备类型相关。
以类似的方式,可以基于信息源的地址(诸如URL)或其它标识符选择代码转换器,以使能信息源特定代码转换。对于IP代理系统诸如18可访问的映射表或配置文件可以用于基于信息源使能代码转换器选择。例如当使用特定的代码转换器对来自特定的网站和针对移动设备的任何内容进行代码转换时,该类型的代码转换可以是有用的。
尽管基于内容类型的和指定的代码选择是下面描述的代码转换器选择方案的主要类型。任何这些可选的方案可被使用代替基于内容类型的代码转换器选择。例如当由主代码转换器选择方案指定的代码转换器不可用时,诸如当代码转换器系统不包括被配置将接收的内容类型代码转换成移动设备被配置接受的内容类型的代码转换器时,也可以使用可选的方案以选择一个代码转换器。
从信息源到移动设备推送信息如上所述,IP代理系统18可以支持输出和输入连接。然而,该申请主要涉及通过输入连接将信息推送到移动设备。
服务器或信息推送操作不同于信息请求/响应操作,诸如通常与例如网络浏览器相关的那些,不同之处在于,信息源20发送内容到接收者,而没有接收这样做的请求。通过建立这些设置如应该推送到移动设备12的特定信息、信息应该推送到移动设备12的推送周期或频率、针对移动设备12的信息应该使用的代码转换器或类型、和涉及信息推送操作的可能其它的设定,移动设备12可以登记具有特定推送服务的服务。可以使用移动设备12自身或与推送服务器42的某些其它接口诸如象网页建立这些设置。还应该理解,IP代理系统18最好训练某些级的访问控制。每个推送服务器42可被要求与IP代理服务器18登记以与移动设备12通信。通过IP代理系统拥有者或运营者或可能由移动设备用户远程在IP代理系统18建立控制设定以限制推送操作到特别登记的IP代理系统18。访问控制可以基于每个设备、设备组或IP代理系统宽范围被客户化。
图5是示例信息推送操作的信号流向图。图5只示出了直接涉及基于HTTP推送操作的IP代理系统18的那些组件,以避免图中拥挤。
在图5的例子中,在一个连接请求中,内容从推送服务器42发送到IP代理系统18。对于基于HTTP的操作,推送可以是HTTP投寄操作,其中推送服务器42提交HTTP投寄请求到IP代理系统18。投寄请求包含指定与IP代理系统18相关的资源的首标字段,例如作为统一资源标识符(URI),并且最好包括内容类型的指示诸如图5中的无线标记语言(WML)的MIME类型。在HTTP连接请求中,WML的MIME类型可以在HTTP请求首标的内容类型字段中被指定。
在来自推送服务器42的连接请求中的URL最好指定IP代理系统18与特定目的移动设备12或移动设备12组相关的资源。例如,IP代理系统18可以建立资源用于已经配置与特定IP代理系统18操作的每个移动设备12。这些特定设备资源例如可以使用IP代理系统18能够映射到无线网络14中的移动设备12的地址的移动设备标识号被标识。由推送服务器42投寄到一资源的任何信息然后被前送到相应的移动设备12,正如下面进一步详细描述的。或者,IP代理系统18可以管理将被推送到配置用于与IP代理系统18操作的任何移动设备12的信息可以投寄到的单个资源。在这些实施例中,投寄请求将提供附加信息以标识投寄信息将发送到的任何移动设备12。
来自推送服务器42的连接请求由推送服务模块30接收。在图5的例子中,推送操作是基于HTTP的,并且推送服务模块30由此调用HTTP处理机26。应理解,不同的推送服务可以与IP代理系统18中的各处理机相关,并且单个IP代理系统18可以提供几个不同的推送服务。还期望,多个推送服务模块可以与单个连接处理机相关。或者,单个推送服务模块可以与分配器22功能上类似,并且提供推送服务器42和IP代理系统18中的任何处理机之间的接口。然而,为了清楚,在图5中只示出了与HTTP处理机26相关的单推送服务模块30。
尽管在图5中来自推送服务器42的连接请求被描述为HTTP请求,还应该理解,连接请求可以能够遵循用于IP代理系统18和推送服务器42之间的通信的某些其它协议。连接请求可以遵循例如第一协议,可能专用协议,但能够指定用于第二协议的特定连接处理机应该用于处理所述连接,以便连接请求被解译为按照第二协议的连接请求。因此,在此对HTTP连接请求的引用包括遵循其它协议但解译为HTTP连接请求的连接请求。
HTTP处理机26确定在来自推送服务器42中的投寄请求中的信息是否应该在被发送到移动设备12之前被代码转换。这个例如通过建立针对移动设备12的信息的优选内容类型可以完成。在图5中,该内容类型被示为一般称为编译的WML或简单WMLC的WML的被标记化、压缩的版本。然后HTTP处理机26使用接收的内容类型(WML)执行在配置文件72中的查找,在图5中的代码转换系统28中示出。然而,本领域技术人员将理解配置文件72可以改为是代码系统28外部的,HTTP处理机26的部分,或甚至IP代理系统18外部的,假定HTTP处理机26能够访问所述文件。在一个实施例中,配置文件能够存储在由IP代理系统18可访问的数据存储器中,典型地在IP代理18运行的相同计算机系统上。在另一个实施例中,代码转换器选择可以改为通过在请求中指定内容类型或要使用传送到移动设备12的代码转换器,由推送服务器42控制,正如下面进一步详细描述的。HTTP处理机26搜索配置文件72确定是否任何其相关的代码转换器能够将接收的内容类型WML代码转换为WMLC用于传送到移动设备12。在一个实施例中,当代码转换器被第一次装载到IP代理系统18时,建立查找表,该查找表映射输入内容类型到输出内容类型用于所有配置的代码转换器。在图5中,配置文件72或可选的查找表,包括用于两个代码转换器的入口,一个用于从WML转换到WMLC,另一个用于从超文本标记语言(HTML)转换到WMLC。已经找到用于WML->WMLC代码转换器的配置文件入口的HTTP处理机26,然后例如从本地存储器装载WML->WMLC代码转换器74,并且执行代码转换器,以转换在投寄请求中的接收的WML内容为WMLC。然后WMLC内容被通过分配器22前送到移动设备12。尽管图5示出了处理WMLC内容到移动设备12的通信的分配器22,由处理机26使用的HTTP和移动设备12使用的通信协议之间的类似协议翻译或转换可改为由HTTP处理机26或另一IP代理协议翻译/转换模块执行。
如果在来自推送服务器42的连接请求中的信息已经是优选的内容类型,然后可以不需要代码转换。在图5中,如果来自推送服务器42的HTTP投寄请求包括WMLC内容,那么HTTP处理机26将最好将WMLC内容前送到移动设备12而没有代码转换。
推送信息的代码转换不限于单个代码转换器操作。在图5的例子中,每个代码转换器直接从一个格式转换成WMLC。然而,期望多代码转换器可以用于转换接收的内容成为移动设备12被配置接受的格式或类型。图6是用于基于HTTP推送操作的多个或“成链”代码转换操作的信号流向图。正如在图5中,图6只示出了直接涉及基于HTTP推送操作的IP代理系统18的那些组件,以避免图中的拥挤。图6中的组件基本上与图5中的那些相同,并且类似操作。图6中所示的推送服务器、配置文件78和代码转换器不同于图5中的标记,以指示这些组件产生的信息或内容类型或过程可以是不同的。组件本身可以在别的方面相同。例如,推送服务器80可以类似于推送服务器42,除了推送服务器80产生HTML内容之外。还应该理解,如果推送服务器42被配置产生WML和HTML二种内容,推送服务器80能够实际上是与推送服务器42相同的服务器。类似地,配置文件78可以存储具有与在配置文件72中的入口相同的格式的入口,但由于示出了不同的入口而被不同地标记出。代码转换器82还可以以与代码转换器74相同的方式实现,但是示例的代码转换器82处理与代码转换器74不同的内容类型。
HTTP投寄请求可能通过一个或多个中间网络和接口组件从推送服务器80发送到IP代理系统18。在图6中,来自推送服务器80的投寄请求包括例如在请求首标字段中指定为HTML的MIME类型的HTML内容类型信息。如上所述,推送服务模块30识别请求为HTTP请求并且装载HTTP处理机26。尽管图6示出了与图5相同的推送服务模块30,用于推送服务器80的连接请求能够由不同的推送服务处理。然后,HTTP处理机26询问配置文件78,不仅搜索输出WMLC的代码转换器,而且搜索输出可以输入到输出WMLC的任何代码转换器的内容类型的代码转换器。在图6中,HTTP处理机26,可能在通过配置文件78的第一次搜索穿过中找到WML->WMLC代码转换器入口。然后HTTP处理机26可以重复配置文件搜索用于转换内容成为WML的任何代码转换器诸如HTML->WML代码转换器,它能够转换成WMLC内容类型。如果在来自推送服务器80的投寄请求中提供不是WML和HTML的内容类型,那么配置文件搜索可以例如根据在投寄请求处理中的可接受的延迟进一步由HTTP处理机26重复。
为了避免与通过配置文件的这些多次搜索穿过相关的延迟和对处理资源的需要,可以使用代码转换器内容类型查找表。当代码转换器第一次安装在IP代理系统18中时,最好构建综合映射表,以映射接收的内容类型成为可能的输出内容类型。例如,在图6中,WMLC内容的查找表入口将指示WML或HTML能够转换成WMLC。这样的表将最好指示HTML到WMLC代码转换涉及代码转换的两个阶段。该表可替换为组织成单个和成链的代码转换部分,由此如果只有单个代码转换操作是优选的,包括WML->WMLC代码转换器的入口的表的单个代码转换器部分将被访问。如果另外的代码转换操作和相关处理操作和时间延迟是可接受的,那么HTTP处理机26可在表的成链代码转换器部分执行用于先前识别的代码转换器的接收内容类型或可能输入类型的查找。最好,可以改变代码转换配置文件的格式以表示仅是这样一个查找表,以便加速搜索。这个例如通过指定涉及多代码转换器的内容类型之间的路径完成。代码转换器链包括本地和远程代码转换服务也是可行的。这些远程代码转换服务能够是IP代理系统18发现、下载和执行的代码转换器文件,或它们能够是基于网络的代码转换服务,以一种格式接收数据并且以另外一种格式返回数据,正如下面进一步详细描述的。
关于是否将允许多代码转换操作的判定由HTTP处理机26在执行表或配置文件查找操作执行之前或之后进行。在图6的例子中,应该明显的是,可以调用多代码转换器以转换接收的内容成为WMLC。
一旦在配置文件78中由HTTP处理机26找到HTML->WML和WML->WMLC代码转换器的配置文件入口,HTTP处理机26首先调用和执行HTML->WML代码器,以代码转换接收的HTML内容成为WML。然后HTTP处理机根据第一次代码转换操作的WML结果,然后装载和执行WML->WMLC代码转换器。然后产生的WMLC内容前送到分配器22,然后到移动设备12。当WMLC内容由推送服务器80返回时,HTTP处理机26前送内容到分配器22而没有代码转换,而如果WML内容被返回,WML->WMLC代码转换器将被调用,如上面描述的。
关于是否多代码转换操作被允许的判定也可以根据判决规则诸如象最大HTTP请求处理时间或最大内容代码转换时间或处理器时间进行。该判决还可以考虑移动设备用户或推送服务器用户指定的优先权。如果高时间优先权(低时间延迟)由移动设备12用户分配用于针对用户移动设备12的信息,然后可以选择单个代码转换器操作。或者,如果高数据优先权与要发送到移动设备12的信息相关,然后,可以允许任何数目的成链代码转换器操作以便以可接受的格式得到到移动设备12的信息。用户设置可以应用到所有推送信息,某些类型的推送信息,或发自某些特定推送服务器的信息。代码转换操作还能够或替换为由推送服务器控制,正如下面进一步详细描述的。
可以由连接处理机应用的其它准则包括但不限于允许成链的代码转换器仅用于相对少量的接收内容,仅在一天的某些时刻,在特定当前业务情况下,或仅当配置文件或查找表存储在本地文件系统中时。另外的准则对本领域技术人员将是明显的,并且由此保留在本发明的范围内。多于一个多代码转换器链可以用于在任何两个内容类型之间转换也是可能的。在这种情况下,例如根据代码转换成本或保真度,可以具有某些优先权,IP代理系统18使用在几个可用的链之间选择。
在推送操作的上述例子中,推送服务器42或80在对IP代理系统18的连接请求中指示信息的内容类型。然而,如果推送服务器推送数据内容但不指定内容类型,那么最好使用缺省代码转换器。如果缺省代码转换器丢弃接收的内容或输出不能由移动设备12接受的内容类型,出错信息最好返回到推送服务器,然后推送服务器重新发送数据到移动设备12。出错信息最好还指示给服务器任何传递失败的理由,这样推送服务器如果可能在数据重发送之前可以设法解决传递问题。对于由于例如没有内容类型被指定和缺省代码转换器不能将数据代码转换成为可接受的内容类型,数据不能传递到移动设备12,然后推送服务器可以用合适的数据类型重发送数据。
上述示例也假定IP代理系统18知道移动设备12能够接受WMLC内容,或至少WMLC是用于针对移动设备的信息的优选内容类型。如果IP代理系统18不知道移动设备12能够接受哪个内容类型,然后,最好使用缺省的代码转换器。或者,有效的连接处理器,图5和6中的HTTP处理机26可以替换为询问代码转换器配置文件72,78或查找表,以确定是否接受返回内容类型作为输入的代码转换器是可用的。如果发现可用的代码转换器,然后装载并且使用以代码转换接收的内容。如果多于一个这样的代码转换器被发现,然后可以装载和执行它们中的一个,例如具有在配置文件中第一入口的代码转换器或最近被使用以对内容将被给定的特定移动设备12的数据进行代码转换的代码转换器。在例如图6中,如果IP代理系统18不知道优选的内容类型,然后,HTML->WML代码转换器将被装载并且执行,及产生的WML内容然后能够被返回到移动设备12。
从推送服务器指定一内容代码转换器来自推送服务器的连接请求也可以指定一个特定的代码转换器被用于代码转换要推送到移动设备12的任何内容。对于HTTP连接,例如可以配置IP代理系统18以期望在HTTP请求首标中的内容-代码转换器字段指示例如可以与移动设备软件应用或特征相关的推送服务器12正指定一个特定的代码转换器。IP代理系统18将装载和执行指定的代码转换器以代码转换被推送的内容。内容-代码转换器首标字段应该具有在HTTP配置文件的上下文中,或在使用另一个连接处理机的地方其相应的配置文件中有效的值。
如果被请求的代码转换器不是可用的,然后,以出错消息例如以指示被请求的代码转换器不是可用的IOException(IO例外)的形式将最好发送回到推送服务器42。然后推送服务器42可以具有重试不同的代码转换器的请求的可选项。然而当推送信息打算用于需要仅从指定的代码转换器有效的特定格式的信息的移动设备软件应用或组件时,该请求可改为在当指定的代码转换器可能不是有效时较后一点时间再试。
现在将通过基于HTTP推送操作的示例进一步详细描述在来自推送服务器42的连接请求中的代码转换器选择。图7是用于基于HTTP推送操作的推送服务器受控代码转换器选择的例子的信号流向图。如上,图7只示出了在基于HTTP服务器推送操作中直接涉及的IP代理系统18的那些组件。
在图7中,内容从推送服务器42推送到IP代理系统18。对于基于HTTP的操作,如上所述,推送可以是HTTP投寄操作。投寄请求包含首标字段,其中至少代码转换器名称(在该例中WML->WMLC)和可能内容类型的指示诸如图7中的WML的MIME类型可以被指定。由于内容由选择特定代码转换器的同一实体提供,内容类型将通常与指定的代码转换器匹配,并且因此不需要必需在投寄请求中被指定。
来自推送服务器42的投寄请求由推送服务模块30接收。在图7的例子中,推送操作是基于HTTP的,并且因此推送服务模块30调用HTTP处理机26。如在图5和6中,尽管在图7中只示出了与HTTP处理机26相关的单个推送服务模块30,IP代理系统18可包括多个推送服务模块,或模块30可以与多连接处理机相关。
图7所示的示例连接请求针对代码转换器的输入内容类型(WML)和输出内容类型(WMLC)指定特定代码转换器。然而,其它的代码转换器指定习惯也是可能的。当配置文件具有如上所述格式的入口时,用于每个代码转换器的文件入口的部分指示其各自的输入和输出内容类型,因此,在该配置文件入口中的“代码转换器名称”字段也不需要必需包括输入和输出内容类型。尽管能够有很多不同的代码转换器指定方案,最好使用相同的名称在任何移动设备请求和配置文件中指定一个特定的代码转换器。
HTTP处理机26最好在投寄请求中使用代码转换器名称图7中的WML->WMLC,执行在配置文件72中的查找,以确定是否指定的代码转换器在IP代理系统18中是有效的。应理解,配置文件72可以是如图7示出的代码转换系统28的部分,代码转换系统28的外面,HTTP处理机26的部分,或IP代理系统18的外部。
在图7中,在投寄请求中指定的代码转换器的入口存在于配置文件72中。因此WML->WMLC代码转换器74对IP代理系统18是有效的,并且装载代码转换器74和执行以将在投寄请求中包含的WML内容代码转换成WMLC内容。WMLC内容通过分配器22前送到移动设备12。当内容由推送服务器42以移动设备可接受的格式、图7的例子中WMLC提供时,投寄请求可以在合适的请求首标字段中指定零或其它预定值以指定内容应该没有代码转换地前送到分配器22。还期望推送服务模块30可以被配置直接管理推送内容的代码转换,代替调用分离的连接处理机。
如果在来自推送服务器42的投寄请求中指定的特定代码转换器对IP代理系统18不是有效的,然后可以退出推送操作。或者,具有输入内容类型和输出内容类型的不同代码转换器分别匹配来自投寄请求的内容,并且可以使用由移动设备12接受的内容类型(如果IP代理系统知道)。
任何时候所请求的代码转换器不能用于代码转换推送内容时,特别如果推送服务器42被配置重试未传递的内容,推送操作失败或出错消息可以返回到推送服务器42。由于被推送内容不是由移动设备12请求,没有这样的差错或失败消息将典型地发送给移动设备12。当缺省或任何其它代码转换器被使用代替指定的代码转换器时,然后推送服务器42可以被告诉过去使用的特定代码转换器。
任何这种备用的代码转换操作可以改为由推送服务器42控制。例如,当代码转换器配置文件72不包括指定的WML->WMLC代码转换器的入口时,如上所述,IP代理系统18可以发送失败或差错消息到推送服务器42指示指定的代码转换器不有效或不能被使用。然后推送服务器42,与连接请求相关的服务器软件应用,或推送服务器42的运营者或监督者可以响应指示要采取的动作的消息。该动作例如可以包括没有代码转换地前送内容到移动设备12,调用缺省地代码转换器,调用由推送服务器42指定的不同特定代码转换器,或丢弃内容。推送服务器42也可以在发送到IP代理系统18中的原始连接请求中设定代码转换器替换政策,诸如没有代码转换器替换被允许,允许成链的代码转换器等。
IP代理系统18也可以确定具有在配置文件72中相应入口的那些代码转换器(如果有)可以代码转换被推送内容成为或者在连接请求中指定的代码转换器的输出内容类型或其它内容类型,并且在发送到推送服务器42的失败或出错消息中标识这些有效的代码转换器。然后,推送服务器42,软件应用或操作者也使用该信息确定是否应该使用任何一个有效的代码转换器代码转换被推送内容。例如,如果内容不能由指定的代码转换器代码转换成在移动设备1 2的特定处理操作需要的格式,但是第二个代码转换器可用于代码转换返回的内容成为能够在移动设备12上观看的内容类型,然后,推送服务器42可以重新提交内容和/或指定第二个代码转换器。尽管使用利用第二代码转换器代码转换的内容,原始计划的处理操作可能不可能,用户至少能够观看内容。
为了避免发送指定无效代码转换器的连接请求,希望推送服务器42在发出连接请求之前询问IP代理系统18有效的代码转换器表。然后,使用所知的可用于IP代理系统18的代码转换器之一能够准备连接请求。如果被请求的代码转换器在IP代理系统18不有效,然后推送服务器42可以尝试询问其它IP代理系统以找到需要的代码转换器,准备指定一个备用的但有效的连接请求,或退出涉及被请求代码转换器的信息请求操作。
图7的信号流向图示出了在通过HTTP投寄操作推送的服务器数据中单个内容代码转换器。应该明显的是,服务器可以指定多于一个内容代码转换器例如用在成链代码转换操作中。
外部代码转换器系统如上简单描述的,代码转换器可以按照需要从已经在其上实现IP代理系统18的计算机系统上的本地存储器装入。代码转换器也可以从外部存储器装载。图8是具有外部代码转换器系统的通信系统的一般方框图。除了外部代码转换器系统86以外,图8所示的系统90类似于图1的系统10。上面已经描述了对系统10和90二系统公共的单元。如由图8中的虚线示出的。IP代理系统84可以通过某些直接连接诸如串行口或连接,通过WAN 16诸如互联网,或通过IP代理系统84和代码转换器系统86配置操作于其中的LAN 88,与代码转换器系统86通信。IP代理84和代码转换器系统86之间的其它通信链路对本领域技术人员来说是明显的。
图9是带有诸如示于图8中的外部代码转换器系统的基于HTTP推送操作的信号流向图。正如在前面的例子中,HTTP投寄请求从推送服务器42发送到IP代理系统84,指定特定的代码转换器(WML->WMLC)和可能指示内容类型,例如在该例中为WML。图9所示的连接请求仅是示出目的,并且不需要必需包括内容类型指示或指定特定的代码转换器。由IP代理系统84中的推送服务模块93接收请求,其确定该请求是HTTP请求并且由此装载和调用HTTP连接处理机94。HTTP处理机94可以基本类似于HTTP连接机26,尽管它操作稍微不同于连接机26以装载内容代码转换器。HTTP处理机94从推送服务模块93接收请求,然后可以如上所述引用代码转换器配置文件92或查找表,以确定是否指定的WML->WMLC代码转换器是有效的以转换响应请求接收的内容。如果在投寄请求中没有代码转换器被指定,然后可以基于内容类型,基本如上所述,选择代码转换器。
当合适的代码转换器被装载时,在来自推送服务器42中的HTTP投寄请求中的WML内容最好存储在文件系统或其它数据存储器98中,它可以是由请求中的URL标识的资源。在图9的例子中,HTTP处理机94从代码转换器系统86请求合指定的WML->WMLC代码转换器。尽管该请求在图9示为来自HTTP处理机94的HTTP请求,应该明显的是,其它传送机构可以替换为由IP代理系统84使用以从远端代码转换系统检索代码转换器。例如,如果IP代理系统84通过LAN 88(图8)与代码转换器系统86通信,然后,LAN协议或数据访问和传送方案能够由HTTP处理机94调用,以便检索任何需要的代码转换器。在IP代理系统84中的推送服务模块93可以替换为被配置可能通过连接处理机从代码转换器系统86检索指定的代码转换器。
在图9中,代码转换器系统86在其可用的代码转换器96中定位请求的WML->WMLC代码转换器,并且返回请求的代码转换器到IP代理系统84。不管实现的特定代码转换器传送机构,IP代理系统84或在图9的例子中HTTP处理机94,接收和执行返回的WML->WMLC代码转换器,如在100指示的。然后,先前接收和可能存储的WML内容由代码转换器100处理,并且代码转换的内容由分配器22返回到移动设备12。
如果成链的代码转换器操作在来自推送服务器42的连接请求中被指定,然后多于一个代码转换器请求由IP代理系统84向代码转换器系统86进行。多代码转换器可代替为在单个请求中向代码转换器系统86请求。用于成链的代码转换器操作的先前接收内容的处理可以如下进行或者当每个需要的代码转换器由IP代理系统84装载时,具有可能存储在文件系统或数据存储器诸如98中的中间代码转换的内容,或只有当所有需要的代码转换器已经装载时。
当完成代码转换操作时,从外部系统86装载的代码转换器最好由IP代理系统84本地存储以便避免后面对外部代码转换器系统86的请求以用于同一代码转换器。从IP代理系统84中的本地或内部存储器检索和装载代码转换器将典型地比对远端系统的请求完成地更快,并且减少IP代理系统84和代码转换系统86之间的通信链路上的业务。在该IP代理系统中,激活的连接处理机(在图9中的HTTP处理机94)最好在从外部代码转换器系统86请求代码转换器之前,确定是否需要的代码转换器存储在本地数据存储器中。根据可用存储器的量,代码转换器可以无限期地存储或存储某一预定时间段。其它存储器管理方案诸如在URL基础上覆写存储的代码转换器,例如,当存储器资源有限时也可以使用。
配置文件92或代码转换器查找表可以通过在配置文件中包括代码转换器的位置指示或包括代码转换器的表入口被调整用于外部代码转换器装载。如果代码转换器被存储到本地存储器或在被覆写进本地存储器中,最好更新文件92或表,以便激活的处理机能够从初始查找操作中确定是否该代码转换器必需从外部代码转换器系统86装载。当代码转换器没有被本地存储或不再本地存储时,然后文件92或查找表最好指示从哪里可以检索代码转换器。对于可以通过HTTP连接检索的代码转换器,相应的文件或表入口可以指示代码转换器系统86的IP地址,而当使用LAN连接时,网络地址可以在配置文件或查找表中指定。如果代码转换器系统的位置(指定的代码转换器从其可得到)对于推送服务器42已知,然后,该位置也可以或替换为包括在来自推送服务器42的连接请求中。也期望多于一个外部代码转换器系统可以在通信系统诸如90中被实现。在该种配置中,配置文件92或查找表将最好包括通过它能够通信的所有外部代码转换系统IP代理系统84可得到的所有代码转换器的入口。由此IP代理系统84可通过直接或网络连接从多个代码转换器系统的任何一个下载代码转换器。具有多代码转换器系统的IP代理系统84的整个操作将是基本如上所述的,除了可能使用不同的传送机构和通信协议,可以访问不同的代码转换器系统用于每个数据代码转换操作。成链的代码转换操作也可以潜在涉及与不同代码转换器系统的通信。
当特定类型的代码转换器从多于一个代码转换器系统得到时,配置文件92或查找表最好被配置以方便简单决议方案。尽管IP代理系统84可以能够访问多代码转换器系统,IP代理系统84的拥有者或监督者可以指定这些代码转换器系统之一为IP代理系统84首先从其尝试下载代码转换器的优选或缺省系统。用于从多于一个代码转换器系统得到的任何代码转换器的代码转换器系统的优选顺序例如可以以配置文件或查找表入口的顺序反映。如果文件或表按代码转换器类型安排,那么用于特定代码转换器的相应于最优选源的入口最好列在与其它代码转换器系统相关的入口之前。配置文件或查找表可替换为按照代码转换器系统排列,带有用于首先发生的缺省或优选代码转换器系统的所有入口。优选的代码转换器系统也可以在来自移动设备12的连接请求中被指定。在这些示例的配置中,IP代理系统84将最好设法在访问任何其它源之前从优选源装载特定代码转换器。
如果指定的代码转换器不能由IP代理系统84装载,然后出错消息可返回到推送服务器42。如果指定的代码转换器不能用于代码转换接收的内容,上述的任何差错或失败操作可由IP代理系统84和推送服务器42执行。
图10示出了外部代码转换器系统的另一步的信号流向图。在图10中,不仅代码转换器系统86,而且配置文件102对IP代理系统84是外部的,并且因此可以在多个IP代理系统中共享。IP代理系统84和配置文件102之间的通信可以通过直接连接或网络连接,并且对于不同的IP代理系统可以是不同的。例如,配置文件102可以由通过直接通信链路链接到配置文件的特定IP代理系统84的拥有者或运行者维持。而其它IP代理系统可以通过局域或广域网连接与配置文件102通信。配置文件102也可以保持在代码转换系统86中。如上,配置文件102也可以作为查找表实现。于是配置文件102可以被认为是登记处,用该登记处一个或多个外部代码转换器系统诸如86登记为有效的代码转换器。
当指定特定代码转换器的输入连接请求由IP代理系统84中的推送服务模块93接收时,它被认为HTTP请求和HTTP处理机94被装载了并且由推送服务模块93调用。如上所述,通过构建一配置文件,HTTP处理机94确定是否指定的代码转换器在IP代理系统84中是有效的。然而在图10的例子中,配置文件102远离IP代理系统84。如果配置文件102通过HTTP可访问的,那么HTTP处理机94用配置文件102管理代码转换器查找功能。如果配置文件102不被用于HTTP,那么,可以调用不同的连接处理机,以方便代码转换器查找或配置文件搜索。或者,推送服务模块93可以执行代码转换器查找/搜索功能。在图10的例子中,配置文件102包括用于指定WML->WMLC代码转换器的入口。
如上,假定推送服务器42推送WML内容到移动设备12。在图10所示的例子中代码转换器系统86包括一组可远程执行的代码转换器104,包括WML->WMLC代码转换器104a和HTML->WML代码转换器104b,由此使能内容的远程代码转换。代替从代码转换器系统86请求和装载WML->WMLC内容代码转换器104a,HTTP处理机94,另一连接处理机,根据它支持的特定代码转换器系统和传送方案,或可能推送服务模块93,传送WML内容到代码转换系统86。在代码转换系统86内,执行合适的WML->WMLC代码转换器104a,并且WML内容被代码转换成WMLC格式。然后WMLC内容返回到HTTP处理机94,或如果IP代理系统84到代码转换器系统86的通信不使用HTTP则返回到另一连接处理机。当WMLC内容可能通过另一连接处理机和/或推送服务模块93由代码转换系统86返回并且由HTTP处理机94接收时,它被前送到分配器22,然后分配器22准备包括WMLC内容的消息,并且发送消息到移动设备12。HTTP处理机94可以替换为准备消息用于传送到移动设备12,然后将由分配器22翻译(如果需要)遵循由移动设备12使用的通信协议或方案。
在数据传送或代码转换差错发生的情况下,作为示例,来自推送服务器42的WML内容可以由HTTP处理机94存储。WML内容的本地存储允许IP代理系统84重新提交内容或者给同一代码转换器系统86或者给不同的代码转换器系统。当推送操作通过HTTP投寄请求完成如图10所示的,从内容被投寄到的资源被推送内容可用于IP代理系统84。
如果在来自推送服务器42的内容请求中的内容是HTML内容,那么HTTP处理机94或推送服务模块93,如果需要通过另外的处理机,将提交HTML内容到代码转换器系统86用于使用HTML->WML代码转换器104b和然后WML->WMLC代码转换器104a的成链代码转换。这种成链代码转换操作也可以在链接请求中由推送服务器42指定。成链代码转换器可以是如图10所示的同一代码转换系统86的部分,或在不同的代码转换器系统中实现。当成链代码转换操作涉及不同的代码转换器系统时,来自信息源的内容可以首先发送到一个代码转换系统用于代码转换成返回到IP代理系统84的中间内容类型,然后中间内容类型发送到另一代码转换系统用于使用指定的代码转换系统或代码转换器链中间的另一中间代码转换器进行代码转换。内容最好通过正在处理连接请求的IP代理系统84在不同的代码转换系统之间前送,但如果在每个代码转换系统中已经实现匹配数据传送机构可替换为从一个代码转换器系统直接传送到另一代码转换器。
数据请求差错或失败,诸如代码转换器差错或指定代码转换器不有效的其它情况,可以按照上述的任何方案进行管理,所述方案可能包括这些进一步的操作如使用不同的代码转换器代码转换内容,返回出错消息给推送服务器42,和控制来自推送服务器42的请求或内容的任何后续处理。
此外,推送服务器诸如42可以在提交推送请求之前询问外部配置文件确定哪些代码转换器可用于IP代理系统84。如果需要的代码转换器的类型不是可用的,然后推送服务器42可以确定是否任何其它代码转换器操作包括成链的代码转换器操作可以适合于推送请求和计划接收者移动设备12,相应地格式化推送请求,由此可能避免在IP代理系统84的失败或出错。如上所述,配置文件102可以是包括从一个或多个代码转换器系统可得到的代码转换器入口的登记处。当在配置文件102中的入口包括地址诸如IP地址,或从其可得到特定的代码转换器的代码转换器系统的其它标识符时,然后该地址可在推送请求中通过推送服务器42提供给IP代理系统84。至少某些代码转换器搜索操作可由此从IP代理系统84卸载到推送服务器42。
在图10的系统中,期望代码转换器系统86和配置文件102可以相互通信,以保证配置文件精确指示哪些代码转换器是有效的。配置文件可以与特定类型的连接诸如HTTP连接和由此的HTTP连接处理机相关。如果配置文件102与特定类型的代码转换器系统86相关,然后配置文件可以驻留在代码转换系统86内。
如果实现多代码转换系统,存储在代码转换系统中有效的代码转换器的代码转换器入口的共享配置文件可以简化由连接处理机执行的代码转换器查找。然后IP代理系统84或推送服务器42只需要询问单个配置文件,以确定是否合适的代码转换器是从它能够通信的任何代码转换器系统可得到的。该单个配置文件/服务器还能够支持协议允许外部代码转换服务器登记。例如登记过程能够添加可用代码转换器表到单个配置文件。
外部代码转换系统86最好支持询问功能以允许推送服务器42在连接请求被准备和发送到IP代理系统84之前确定哪个代码转换器是可用的。
代码转换器还能添加到代码转换器系统86和配置文件102。推送服务器42可以添加一个代码转换器到代码转换系统86和通过IP代理系统84推送依赖于新代码转换器的内容到移动设备诸如移动设备12。
外部代码转换系统86包括下载系统,从该下载系统代码转换系统由IP代理系统84下载和本地执行,如图9所示,并且包括远程代码转换系统,内容被发送到该系统用于在代码转换系统代码转换,如图10所示。在另一实施例中,“混合”代码转换器系统包括这些类型的代码转换系统的两种。当混合代码转换器系统可用于IP代理系统84时,IP代理系统84可以或者从代码转换器系统下载需要的代码转换器或者发送内容到要远程代码转换的代码转换器系统。或者,如果推送服务器42知道要发送到移动设备12的信息应该使用的内容类型或代码转换器,那么推送服务器42可以本身从外部代码转换系统下载代码转换器或提交用于代码转换的内容到外部代码转换系统,并且在连接请求中包括代码转换的内容。这样从IP代理系统84到推送服务器42卸载代码转换,并且独立于IP代理系统84可用的代码转换器进行信息推送操作。该推送服务器代码转换的概念能够进一步扩展到包括从IP代理系统84的代码转换器下载和在推送服务器42上的代码转换器的本地执行。
代码转换器下载或远程代码转换的选择可以例如取决于要代码转换的量,代码转换的复杂性(单个或成链操作),在连接请求中指定的代码转换类型或其它准则。类似地,成链代码转换操作可以涉及下载代码转换系统和本地代码转换器执行及远程代码转换系统。
外部代码转换器系统还可以支持这些服务如用于推送服务器诸如42的代码转换器下载或远程代码转换。推送服务器42可以被配置管理在信息内容被推送到移动设备12之前信息的代码转换。在图10中,例如,推送服务器42可以询问配置文件102以确定是否合适的代码转换器WML->WMLC代码转换器在代码转换器系统中可用的。由于代码转换器系统86包括WML->WMLC代码转换器104a,配置文件102将包括代码转换器104a的入口,和可能一个地址的指示诸如URL或IP地址,例如,从该地址指示可得到代码转换器。在图10中,代码转换器系统86是远程代码转换器系统,这样推送服务器42可以提交要代码转换的信息内容到代码转换器系统86。因此,推送服务器42可以包括使能与代码转换器系统86通信的连接处理机。然后来自代码转换器104a的代码转换的WMLC内容将返回到推送服务器42。推送服务器42最好在对于推送服务器42可访问的本地或远程数据存储器中超高速缓存代码转换的内容。然后超高速缓存的代码转换的WMLC内容可以从数据存储器中检索并且通过IP代理系统84推送到移动设备12。来自推送服务器42的推送请求最好包括要推送到移动设备12的信息内容已经被代码转换成移动设备被配置接受的内容类型的指示。由于在该推送请求中的信息内容已经被代码转换,它由推送服务模块93通过连接处理机诸如HTTP处理机94和分配器22(如果需要)前送到移动设备12。
尽管在远程代码转换系统的上下文上面已经描述了推送服务器进行的“预先代码转换”,应该理解信息内容可改为使用在推送服务器42处提供的代码转换系统或下载代码转换系统由推送服务器42本地代码转换。
示例实现现在将描述IP代理系统的示例实现。图11是在安全网络中实现的IP代理系统124的方框图。
图11中的系统120包括操作于无线网络14内的移动设备12。通过网关15,移动设备能够通过WAN 16诸如互联网接收并且最好还发送数据。系统120的这些单元基本上与在图1中类似标示的单元相同。然而在系统120中,IP代理系统124配置在专用网络诸如安全防火墙127后面的公司网络130内,并且通过网络服务器计算机122与网关15通信。在具体的示例实施例中,网络122与电子邮件系统128相关。两个信息源内部推送服务器126和外部信息源132也示于图11中。
网络服务器122最好使能与移动设备12的安全通信,正如由加密和解密模块122a和122b指示的。网络服务器122加密指向移动设备12的任何通信。计划的接收者移动设备12使用存储于其中的秘密密钥能够解密来自网络服务器122的加密通信。移动设备12类似地加密发送到网络服务器122的任何信息,其能够由解密模块122b解密。加密技术领域的技术人员将理解,在网络服务器122和移动设备12处使用的密钥和加密算法最好被选择使得没有需要的秘密密钥解密加密的信息在计算上不可行的。一个优选的加密方案是三重DES(Data Encryption Standard,数据加密标准)。
在网络服务器122和移动设备12之间的密钥分发可以通过安全连接诸如移动设备12和网络服务器122之间,或移动设备12和公司网络内的另一计算机之间的安全物理连接完成。已知的公钥加密技术可替换为用于密钥分发。在公钥方案中,使用公钥以这样的方法加密信息,即使用相应的私钥可解密加密的信息。公钥由一般称为证书权威或CA的公共访问的密钥储存库存储并且可从其检索,而私钥仅在移动设备或公钥与其相关的系统处存储。这样,希望发送加密的信息到移动设备12的网络服务器122或任何其他发送者可以从CA检索移动设备公钥,并且使用公钥加密针对移动设备12的加密信息。移动设备12可以类似从CA获得网络服务器公钥,并且使用公钥加密将发送到服务器的通信信号。
与使用的具体密钥分发方案和加密技术无关,可以使用移动设备12和网络服务器122之间的加密的通信,例如在将使用移动设备12访问公司或其它专用信息的地方。考虑下面参照图12描述的安全防火墙127内的内部推送服务器126的例子。图12是公司数据推送操作的信号流向图。与上面示出的示例操作一致,图12示出了基于HTTP的数据推送操作。
在图12中,来自内部推送服务器126的HTTP投寄请求由推送服务模块30接收并且识别为HTTP请求。在该例中,推送服务模块30装载和调用HTTP处理机26,它然后询问配置文件72或代码转换器查找表,以确定是否代码转换器是可用的以代码转换接收的WML内容成为设备可接受的格式。如上所述,合适的代码转换器可以由IP代理系统124选择或在来自推送服务器126中的请求中指定。在图12中,WML->WMLC代码转换器74由HTTP处理机26装载并且调用,及代码转换的内容通过分配器22前送到网络服务器122。然后网络服务器122加密在其加密模块122a中从IP代理系统124接收的内容,并且发送加密的内容到移动设备12。在某些实现中,与分配器22相关的协议转换或翻译操作可替换为由网络服务器122执行。在可选的实施例中,IP代理系统功能可以包含于网络服务器122中,由此提供允许使用移动设备12访问网络资源的网络服务器。在另一实施例中,IP代理系统可以包含网络服务器122的加密/解密和通信功能以便与无线网络网关15(图11)和由此的移动设备诸如12通信。
内部推送服务器126可以与最好配置用于在专用网络130上操作的计算机系统或数据存储器诸如整个网络130可访问的文件服务器或其它数据存储器相关。在公司网络的例子中,信息源126可包括网络130的拥有者努力保持专有的保密或另外的敏感信息。安全防火墙127设法防止对包括信息源126的专用网络组件的未授权访问。在某些情形下,存储在信息源处的信息的绝对存在必须保持保密。如图12所示的发送到移动设备12的内容的加密防止未授权方没有破解加密而确定请求的内容,这如上所述对于强加密方案诸如3DES不是计算可行的。
由网络服务器122中的加密模块122a进行的推送内容的加密在内容被发送到移动设备12之前保证内容只能由移动设备12观看。因此保密公司信息保持加密的,于是直到在移动设备12处接收和解密保持安全,由此有效地扩展安全防火墙127到移动设备12。由移动设备12发送到网络服务器122的信息由移动设备12类似地加密,并且直到由解密模块122b解密保持加密。例如,可以在移动设备12上准备HTTP获得请求,然后加密和从移动设备12发送到网络服务器122以便请求驻留在公司网络130内的信息源上的信息。该请求直到由安全防火墙127后面的网络服务器122接收和解密保持加密,如在图12中的134处指示的。因此,该请求实际上正如从网络130上的计算机系统发送的请求那样安全。一旦被解密,该请求被传到HTTP处理机26,其从合适的源请求信息。如果需要返回的信息被代码转换,传递到分配器22,由加密模块122a加密并且返回到移动设备12。请求和响应请求返回到移动设备12的信息二者都是安全的。
在已知的远程数据访问方案诸如WAP中,使用移动设备12提供数据访问的网关系统通常位于例如在服务提供商的场所处公司或专用建筑物外部。在专用建筑物处加密的任何保密或敏感信息在公司防火墙外部的网关系统处解密,然后在被发送到目的移动设备或设备12之前被重加密。因此,信息在网关系统处是未加密的,并且由此由网关系统的拥有者或运行者可访问。此外,信息从其发送的专用网络的拥有者或运营者典型地不对网关系统处的安全配置进行控制,这样信息在网关系统易于受到攻击。
示于图11和12的配置提供对专用、保密或其它敏感信息的安全远程访问。信息从网络服务器122和任何移动设备12之间的端对端被加密。在安全防火墙127处可以实现任何级的安全,以保护存储在内部推送服务器诸如126或其它内部信息源的保密信息,并且当由网络服务器122加密时,信息在移动设备12处接收之前,不在任何中间点被解密。信息仅在安全防火墙127后面的点134“内部”和在移动设备12上是未加密的。安全配置诸如口令字或口令词控制也最好在移动设备12处被实现以防止未授权用户使用移动设备或解密接收的加密信息。例如,计算机工作站可以由口令字区激活系统锁定保护,并且对公司网络130的访问通常由登录口令字保护。类似地,可以需要口令字使用移动设备12,而不同的口令词可以是解密任何存储在移动设备上的加密信息必需的。移动设备12和存储其上的信息由此正好象网络工作站和存储在网络上的信息那么安全。这些技术如受限口令字或口令词入口的重试、在预定数目的失败口令字或口令词入口值之后移动设备12或移动设备存储器复位、动态和可能随机口令字/口令词更新等可以被使用进一步改善移动设备安全。
对于外部信息源132(图11),数据推送操作将基本上与图12所示出的相同,除了信息源是在防火墙127外部之外。应理解,任何信息源可以被配置响应于来自IP代理系统124的请求提供信息、通过IP代理系统124推送信息到移动设备或可能执行二个功能。移动设备12和网络服务器122之间的任何信息交换可以被加密,但是与信息源132交换的信息可能是不安全的。如果由信息源132提供的信息不是专用的或保密的,那么IP代理系统124和源132之间的非安全交换对于大部分用途将是足够的。然而,如果外部源132提供专用信息,然后最好提供备用的配置。
改善从外部源132请求的信息的安全性的一个可能的措施将是安全IP代理系统124和源132之间的通信。例如,IP代理系统124可以被调整支持安全HTTP(HTTPS),安全套接层(SSL)或其它安全通信方案,以便安全访问在信息源132处的信息。来自源132的信息可以由此安全传送到IP代理系统124然后由安全防火墙保护。加密信息可以例如由IP代理系统124由激活的连接处理机解密,并其被传送到网络服务器122,其然后加密该信息用于传送到移动设备12。如上,信息仅在防火墙127之后是未加密的。或者,通过IP代理系统124在移动设备12和源132之间建立安全通信会话。在图11的系统中,移动设备12和网络服务器122之间的通信然后将被双重加密。
如图11所示,网络服务器122也与电子邮件系统128相关。在一个实施例中,网络服务器122提供从电子邮件系统128到移动设备12的数据项的重定向。一个这样的系统在美国专利6,219,694得到详细描述,该专利题名为“从主系统到具有共享电子地址的移动数据通信设备推送信息的系统和方法”,并且在2001年4月17日发布给本发明的受让人。该专利的全部公开在此被引用包含在该申请中。
由于网络服务器122也IP代理系统124相关,在电子邮件系统128和IP代理系统124之间的集成功能也是可以的。例如,IP代理系统124可以使用网络服务器122的加密功能以及传输机构,通过该传输机构网络服务器122与移动设备12通信。网络服务器122的其它功能,诸如象数据压缩,可以由IP代理系统124开发,以改善无线通信资源的使用效率。
类似地,针对移动设备12的内容可以使用在与移动设备用户相关的电子邮件系统128中的电子邮件地址,被编址到移动设备。在该例中,由IP代理系统124前送到移动设备12的内容可以由网络服务器122存储在电子邮件系统128上的用户信箱中,如图11指示的,由此提供IP代理系统操作的记录和任何前送内容的存储复制件。其它集成的功能可以包括,当决不限于使用电子邮件系统128上的电子邮件地址通过IP代理系统124的来自移动设备的基于电子邮件的内容请求和针对设备的信息的寻址。另外进一步的集成的功能可以在网络服务器122或IP代理系统124与任何其它服务相关的地方被使能。
将理解上述说明书仅以示例涉及范例实施例。存在其它变体,并且是在本发明的范围内。例如,本发明的实施例已经在基于IP系统的上下文主要进行了描述。用于通信系统的其它类型的类似代理系统也期望在本发明的范围内。除了上面描述的那些外的其它类型的连接、连接处理机和代码转换器对于本领域技术人员也是明显的。
取决于远程数据访问系统的具体实施和要支持的特征,不是图2所示的所有单元都需要。
本即时发明也决不限于使用MIME类型的内容类型指示。MIME类型结合本即时发明是有用的,但不需要实践本发明。其它内容类型指示器可以替换MIME类型以指示被请求或接收的内容的类型或格式。
尽管上述代码转换器在已知的信息类型或格式之间转换,客户化的代码转换器能够被开发和实现用于实际任何信息格式,例如包括应用程序文件类型和专有格式。如上所述,按照本发明的代理系统最好是可配置的,并且新内容代码转换器也可以被添加。
来自信息源的信息内容也能包括不同内容类型,不只是上述的单个内容类型。对于这种多类型内容,可以选择代码转换器例如代码转换内容成为单内容类型,或成为在移动设备处可接受的多种内容类型。代码转换器的选择可以按照上述的任何代码转换器选择方案被控制。在移动设备或信息源进行的代码转换器选择的情况下,用于任何或每一部分多类型信息类型内容的代码转换器列表可以在连接请求中,响应于一个请求,或一个推送请求被指定。推送服务器可以替换为在内容被推送到移动设备之前,代码转换任何或所有部分的多类型信息内容。
当任何部分的多类型信息内容不能按照希望或需要被代码转换时,此处合适的代码转换器不是可用的,例如,只有信息内容的其它部分可能被代码转换和发送到移动设备。或者,如上所述缺省的代码转换操作可以用于代码转换部分多种内容类型。多种类型内容的未代码转换的部分或可能所有多类型内容能够改为利用可用于随后访问信息内容或其部分的一链路或其它信息替换,并且发送到移动设备。指示多种内容类型和/或需要或推荐的代码转换器也能被发送到移动设备。然后,信息内容或其一部分可以通过提交一连接请求或可能进一步的代码转换指示或一备用的代码转换器选择到IP代理系统或推送服务器通过移动设备检索。
此外,代理系统可以在任何网络中实现,不仅在图11所示的公司网络中。在ISP、ASP或虚拟运营商(VNO)系统中代理系统的安装提供对网络信息的安全远程访问和任何网络用户之间的信息的安全传送,包括ISP、ASP或VNO用户的移动设备之间的传送。
尽管已经参照一定的图示的实施例详细描述了本发明,变体和改进存在于所描述的和在下列权利要求定义的本发明的范围和精神内。
权利要求
1.一种经过网络把信息内容从信息源推送到移动通信设备的系统,包括包括多个代码转换器的代码转换系统,每个代码转换器可操作将信息内容从各种输入内容类型代码转换成各种输出内容类型;和第一网络设备,与代码转换系统通信,所述第一网络设备包括推送模块,其中推送模块可操作从信息源接收包括与移动通信设备相关的标识符的连接请求,并且推送模块进一步操作选择一个相应的连接处理机,该处理机可操作来从多个代码转换器中选择一个或多个代码转换器以对信息内容进行代码转换。
2.如权利要求1所述的系统,其中,所述第一网络设备进一步可操作把由所述一个或多个选择的代码转换器代码转换的信息内容传送到移动通信设备。
3.如权利要求1所述的系统,其中,所述代码转换系统进一步可操作把由所述一个或多个选择的代码转换器代码转换的信息内容传送到移动通信设备。
4.如权利要求1所述的系统,其中,所述连接请求还包括标识所请求的代码转换器的代码转换器请求数据。
5.如权利要求1所述的系统,其中,所述连接处理机可操作来确定所述移动通信设备被配置接受的一个或多个可接受的内容类型。
6.如权利要求5所述的系统,其中,所述连接处理机可操作来从多个代码转换器搜索可操作来把信息内容从信息内容的接收内容类型代码转换成一个或多个可接受的内容类型的代码转换器。
7.如权利要求5所述的系统,其中,代码转换系统可操作产生和存储包括代码转换链的映射数据,每个代码转换链选择一个或多个代码转换器,以便把所述信息内容从各种输入内容类型代码转换成各种输出内容类型。
8.如权利要求7所述的系统,其中,连接处理机可操作选择一个代码转换链,以便把所述信息内容从信息内容的接收内容类型代码转换成接受的内容类型之一。
9.如权利要求5所述的系统,其中,所述代码转换系统包括与多个代码转换器相关的配置文件,并且所述连接处理机可操作搜索所述配置文件,以确定是否任何一个代码转换器可操作来把所述信息内容从信息内容的接收内容类型代码转换成一个或多个可接受的内容类型,并且在任何代码转换器都可操作来把所述信息内容从接收内容类型代码转换成一个或多个可接受的内容类型的场合选择代码转换器。
10.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来把差错消息传送到无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的的信息源。
11.如权利要求9所述的系统,其中,所述信息内容包括多种内容类型,并且所述连接处理机进一步可操作来把差错消息传送到无一代码转换器可操作来把多种内容类型的一个或多个代码转换成一个或多个可接受的内容类型的场合中的信息源。
12.如权利要求9所述的系统,其中,所述连接处理机进一步可操作,以确定移动通信设备的类型,并且基于无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的移动通信设备的类型,从多个代码转换器中选择一个或多个代码转换器。
13.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来基于与无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的移动通信设备相关的标识符,从多个代码转换器中选择一个或多个代码转换器。
14.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来确定与信息源相关的地址,并且基于与无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的信息源相关的地址,从多个代码转换器中选择一个或多个代码转换器。
15.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来把可选择的代码转换器列表传送到无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的信息源。
16.如权利要求15所述的系统,其中,所述连接处理机可操作来从信息源接收选择的代码转换器数据,并且基于选择的代码转换器数据从可选择的代码转换器列表中选择所述可选择的代码转换器之一。
17.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来丢弃无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的信息内容。
18.如权利要求9所述的系统,其中,所述连接处理机进一步可操作来传递无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的信息内容。
19.如权利要求9所述的系统,其中,所述代码转换系统进一步可操作,以响应于无一代码转换器可操作来把所述信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的先前连接请求,把信息内容代码转换成推送到移动通信设备的内容类型。
20.如权利要求9所述的系统,其中,所述信息内容包括多种内容类型,并且所述第一网络设备还可操作来仅把代码转换的内容类型传送到在无一代码转换器可操作来把一个或多个内容类型代码转换成一个或多个可接受的内容类型的场合中的移动通信设备。
21.如权利要求4所述的系统,其中,所述代码转换器请求数据包括指定代码转换器的位置的网络地址。
22.如权利要求21所述的系统,其中,所述代码转换系统可操作来访问由网络地址指定的位置和检索代码转换器。
23.如权利要求4所述的系统,其中,所述代码转换系统包括与多个代码转换器相关的配置文件,和所述连接处理机可操作搜索配置文件以确定是否被请求的代码转换器是多个代码转换器之一,并且在所述被请求的代码转换器是多个代码转换器之一的场合选择所请求的代码转换器。
24.如权利要求23所述的系统,其中,所述连接处理机进一步可操作来把差错消息传送到所请求的代码转换器不是所述多个代码转换器之一的场合中的信息源。
25.如权利要求24所述的系统,其中,所述连接处理机进一步可操作来响应所述差错消息接收备用的代码转换器请求数据,所述备用代码转换器请求数据标识备用的代码转换器。
26.如权利要求23所述的系统,其中,所述连接处理机进一步可操作来把可选择的代码转换器列表传送到所请求的代码转换器不是多个代码转换器之一的场合中的信息源,并且进一步可操作来从信息源接收选择的代码转换器数据,并基于所选择的代码转换器数据选择所述可选择的代码转换器之一。
27.如权利要求23所述的系统,其中,所述连接处理机进一步可操作来丢弃所请求的代码转换器不是多个代码转换器之一的场合中的信息内容。
28.如权利要求23所述的系统,其中,所述连接处理机进一步可操作来传递所请求的代码转换器不是多个代码转换器之一的场合中的信息内容。
29.如权利要求1所述的系统,其中,所述标识符包括移动通信设备的网络地址。
30.如权利要求1所述的系统,其中,所述连接处理机进一步可操作来确定移动设备的类型,并基于所述移动通信设备的类型从多个代码转换器选择一个或个多代码转换器。
31.如权利要求1所述的系统,其中,所述连接处理机进一步可操作来基于与所述移动通信设备相关的标识符从多个代码转换器中选择一个或多个代码转换器。
32.如权利要求1所述的系统,其中,所述连接处理机进一步可操作来确定与信息源相关的地址,并且基于与所述信息源相关的地址从多个代码转换器中选择一个或多个代码转换器。
33.一种推送信息内容到移动通信设备的方法,包括步骤接收来自信息源的信息内容;接收所述移动设备的地址;提供多个代码转换器,每个代码转换器都可操作来把信息内容从第一内容类型代码转换成第二内容类型;从多个代码转换器选择一个或多个代码转换器;使用所述选择的多个代码转换器中的一个或多个代码转换信息内容以产生代码转换的信息内容;和发送代码转换的信息内容到移动通信设备。
34.如权利要求33所述的方法,其中,从多个代码转换器选择一个或多个代码转换器的步骤包括步骤确定是否所述多个代码转换器的任何一个可操作来把信息内容从信息内容的接收内容类型代码转换成移动设备被配置接受的一个或多个接受内容类型中的任何一个;和选择可操作来把信息内容从接收的内容类型代码转换成可接收的内容类型之一的代码转换器,其中的多个代码转换器的任何一个都可操作来把信息内容从接收的内容类型代码转换成所述一个或多个接受的内容类型的任何一个。
35.如权利要求34所述的方法,还包括步骤丢弃所述多个代码转换器中无一可操作来把所述信息内容从接收的内容类型代码转换成一个或多个接受的内容类型的任何一个的场合中的信息内容。
36.如权利要求34所述的方法,还包括步骤对所述多个代码转换器中无一可操作来把所述信息内容从接收的内容类型代码转换成一个或多个接受的内容类型的任何一个的场合中的信息内容执行缺省代码转换操作。
37.如权利要求36所述的方法,其中,所述缺省的代码转换操作包括传递所述信息内容的步骤。
38.如权利要求36所述的方法,其中,所述缺省的代码转换操作包括把所述信息内容代码转换成先前发送到移动通信设备的内容类型。
39.如权利要求34所述的方法,还包括步骤把可选择的代码转换器列表传送到在多个代码转换器无一可操作来把所述信息内容从接收的内容类型代码转换成一个或多个接受的内容类型的任何一个的场合中的信息源;从所述信息源接收选择的代码转换器数据;和基于选择的代码转换器数据从可选择的代码转换器列表中选择所述可选择的代码转换器之一。
40.如权利要求33所述的方法,其中,所述信息源是连接到互联网的网络服务器。
41.如权利要求33所述的方法,还包括步骤接收指定代码转换器的位置的网络地址,该代码转换器可操作来把信息内容从接收的内容类型代码转换到接受的内容类型之一;访问由所述网络地址指定的位置;和检索所述代码转换器。
42.如权利要求33所述的方法,其中,使用选择的一个或多个代码转换器来代码转换所述信息内容的步骤包括步骤把信息内容发送到代码转换系统;和从所述代码转换系统接收代码转换的信息内容。
43.如权利要求33所述的方法,其中发送被代码转换的信息内容到移动通信设备的步骤包括加密代码转换的信息内容的步骤。
44.如权利要求33所述的方法,从多个代码转换器选择一个或多个代码转换器的步骤包括步骤按照优选顺序产生代码转换器列表;和基于所述优选顺序在代码转换器列表中选择一个或多个代码转换器。
45.如权利要求33所述的方法,还包括步骤映射所述多个代码转换器以建立多个代码转换链,每个代码转换链关联一个或多个代码转换器以把各种输入内容类型代码转换成各种输出内容类型。
46.如权利要求45所述的方法,其中,从所述多个代码转换器中选择一个或多个代码转换器的步骤包括步骤标识代码转换链,该代码转换链具有匹配信息内容的一个接收内容类型的各种输入内容和匹配移动设备被配置接受的一个或多个接受的内容类型之一的各种输出内容类型;和选择所标识的代码转换链以便代码转换所述信息内容。
47.如权利要求46所述的方法,还包括步骤确定涉及信息内容的优先权状态;和根据优先权状态来代码转换信息内容或传递信息内容。
48.如权利要求33所述的方法,其中,移动通信设备被配置接受从下列组成的组中选择的一个或多个内容类型无线标记语言(WML),超文本标记语言(HTML),汇编WML(WMLC),和可扩展标记语言(XML)。
49.如权利要求33所述的方法,其中,从多个代码转换器选择一个或多个代码转换器的步骤包括步骤确定移动通信设备的类型;和基于移动通信设备的类型从多个代码转换器选择一个或多个代码转换器。
50.如权利要求33所述的方法,其中,从所述多个代码转换器选择一个或多个代码转换器的步骤包括步骤基于移动通信设备的地址从多个代码转换器选择一个或多个代码转换器。
51.如权利要求33所述的方法,其中,从所述多个代码转换器选择一个或多个代码转换器的步骤包括步骤确定与信息源相关的标识符;和基于所述标识符从多个代码转换器选择一个或多个代码转换器。
52.如权利要求33所述的方法,其中所述信息内容包括多种内容类型;和从所述多个代码转换器选择各代码转换器以代码转换多种内容类型。
53.如权利要求33所述的方法,其中,从多个代码转换器选择一个或多个代码转换器的步骤包括步骤确定该信息内容是否已被预先代码转换成移动设备被配置接受的内容类型;和在信息内容已经被预先代码转换的场合,把所述信息内容传送到移动通信设备而不作进一步的代码转换。
54.一种用于经网络接收被推送的信息内容的系统,包括包括通信子系统的移动通信设备,该通信子系统可操作来经网络传送推送数据,所述推送数据包括移动设备被配置接收的可接受内容类型,移动通信设备还可操作来在推送周期内接收以可接受的内容类型推送信息内容。
55.如权利要求54所述的系统,还包括信息源,其可操作来接收该推送的数据并且在推送周期内把用于传送的该推送的信息内容提供到移动通信设备。
56.如权利要求55所述的系统,其中,所述推送数据还包括指定推送周期的推送周期数据,并且所述信息源可操作来在每个推送周期把用于传送的该推送的信息内容提供到移动通信设备。
57.如权利要求56所述的系统,其中,所述信息源可操作把差错消息传送到不能以可接受的内容类型提供所述推送信息内容的场合中的移动通信设备。
58.如权利要求55所述的系统,其中,所述信息源包括代码转换系统,其可操作来把信息内容代码转换成可接受的内容类型。
59.如权利要求55所述的系统,其中,所述信息源可操作来把信息内容传送到代码转换系统,从代码转换系统以可接受的内容类型接收代码转换的信息内容,并且把代码转换的信息内容传送到移动通信设备。
60.如权利要求57所述的系统,其中,所述移动通信设备进一步可操作来响应于接收的差错消息把备用内容类型传送到信息源。
61.如权利要求54所述的系统,还包括与信息源通信的代理服务器,所述代理服务器可操作来从多个代码转换器中选择一个代码转换器,以便把推送信息内容代码转换成可接受内容类型。
62.如权利要求61所述的系统,其中,所述代理服务器可操作来把差错消息传送到在不能把所述推送信息内容代码转换成可接受的内容类型的场合中的信息源。
63.如权利要求62所述的系统,其中,所述信息源进一步可操作来响应接收差错消息,把备用内容类型传送到代理服务器。
64.一种用于把信息内容推送到移动通信设备的系统,包括接收来自信息源的移动通信设备地址的装置;提供多个代码转换器的装置,每个代码转换器可操作来把信息内容从第一内容类型代码转换成第二内容类型;从多个代码转换器选择一个或多个代码转换器的装置;使用所述选择的一个或多个代码转换器代码转换所述信息内容以产生代码转换的信息内容的装置;和把代码转换的信息内容发送到移动通信设备的装置。
65.如权利要求64所述的系统,其中,从多个代码转换器选择一个或多个代码转换器的装置包括确定是否所述多个代码转换器的任何一个被配置成把信息内容的接收内容类型代码转换成移动设备被配置来接受的一个或多个接受内容类型中的任何一个的装置。
66.如权利要求65所述的系统,其中,确定是否所述多个代码转换器的任何一个被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的装置包括装置用于丢弃在所述多个代码转换器中无一被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的场合中的信息内容。
67.如权利要求65所述的系统,其中,确定是否所述多个代码转换器的任何一个被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的装置包括装置用于对所述多个代码转换器中无一被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的场合中的信息内容执行缺省代码转换操作。
68.如权利要求67所述的系统,其中,所述缺省的代码转换操作传送所述信息内容。
69.如权利要求67所述的系统,其中,所述缺省的代码转换操作把所述信息内容代码转换成先前发送到移动通信设备的内容类型。
70.如权利要求67所述的系统,其中,确定是否所述多个代码转换器的任何一个被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的装置包括装置用于把可选择的代码转换器列表传送到多个代码转换器中无一被配置成把接收的内容类型代码转换成一个或多个可接受的内容类型中的任何一个的场合中的信息源。
71.如权利要求65所述的系统,其中,从多个代码转换器选择一个或多个代码转换器的装置还包括装置用于基于在多个代码转换器中无一被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的场合中的移动通信设备地址,选择一个或多个代码转换器。
72.如权利要求65所述的系统,其中,从多个代码转换器选择一个或多个代码转换器的装置还包括用于确定信息源的地址的装置,和用于基于在多个代码转换器中无一被配置成把接收的内容类型代码转换成一个或多个接受的内容类型中的任何一个的场合中的信息源地址,选择一个或多个代码转换器的装置。
73.如权利要求64所述的系统,其中,从多个代码转换器选择一个或多个代码转换器的装置包括基于移动通信设备地址选择一个或多个代码转换器的装置。
74.如权利要求64所述的系统,其中,用于从多个代码转换器选择一个或多个代码转换器的装置包括确定移动通信设备类型的装置,和基于移动通信设备的类型选择一个或多个代码转换器的装置。
75.如权利要求64所述的系统,其中,用于从多个代码转换器选择一个或多个代码转换器的装置包括用于确定信息源的地址的装置,和基于信息源的地址选择一个或多个代码转换器的装置。
76.如权利要求64所述的系统,其中,移动通信设备地址包括指定代码转换器的位置的网络地址;和用于从多个代码转换器选择一个代码转换器的装置包括用于访问由网络地址指定的位置和检索所述代码转换器的装置。
77.如权利要求64所述的系统,还包括用于加密代码转换的信息内容的装置。
78.如权利要求64所述的系统,还包括用于压缩代码转换的信息内容的装置。
79.如权利要求64所述的系统,其中,用于从多个代码转换器选择一个或多个代码转换器的装置包括用于从多个代码转换器搜索被配置成把信息内容的接收内容类型代码转换成移动通信设备被配置来接受的一个或多个接受的内容类型的一组代码转换器的装置;用于产生对应于所述代码转换器组的各种输入内容类型的列表的装置用于把各种输入内容类型的列表和一个或多个接受的内容类型发送到信息源的装置。
80.如权利要求64所述的系统,其中,用于提供多个代码转换器的装置包括映射多个代码转换器以创建多个映射入口的装置,每个映射入口关联一个或多个代码转换器,以便把各种输入内容类型代码转换成各种输出内容类型。
81.如权利要求80所述的系统,其中,用于映射多个代码转换器以创建多个映射入口的装置包括装置用于确定多个代码转换器的输入内容类型,确定多个代码转换器的输出内容类型,和创建多个映射入口,每个映射入口关联各种输入内容类型与各种输出内容类型。
82.一种经网络把信息内容从信息源推送到移动通信设备的系统,包括包括多个代码转换器的代码转换系统,每个代码转换器可操作来把信息内容从各种输入内容类型代码转换成各种输出内容类型;和与所述代码转换系统通信的代理服务器,所述代理服务器包括推送模块,其中所述推送模块可操作从信息源接收包括与移动通信设备相关的标识符的连接请求,并且推送模块进一步操作以从多个代码转换器中选择一个或多个代码转换器以将信息内容进行代码转换。
83.如权利要求82所述的系统,其中,所述代理服务器进一步可操作来把由选择的一个或多个代码转换器代码转换的信息内容传送到移动通信设备。
84.如权利要求82所述的系统,其中,所述推送模块可操作来确定移动通信设备被配置接受的一个或多个可接受的内容类型。
85.如权利要求84所述的系统,其中,所述推送模块可操作从多个代码转换器搜索可操作来把信息内容从信息内容的接收的内容类型代码转换成一个或多个可接受的内容类型。
86.如权利要求84所述的系统,其中,所述代码转换系统可操作产生和存储包括代码转换链的映射数据,每个代码转换链选择一个或多个代码转换器,以便把信息内容从各种输入内容类型代码转换成各种输出内容类型。
87.如权利要求86所述的系统,其中,所述推送模块可操作选择代码转换链,以便把信息内容从信息内容的接收内容类型代码转换成接受的内容类型之一。
88.如权利要求84所述的系统,其中,所述代码转换系统包括与多个代码转换器相关的配置文件,并且所述推送模块可操作搜索所述配置文件,以确定是否任何一个代码转换器可操作来把信息内容从信息内容的接收内容类型代码转换成一个或多个可接受的内容类型,并且从任何一个代码转换器可操作来把信息内容从接收内容类型代码转换成一个或多个可接受内容类型的场合中选择代码转换器。
89.如权利要求88所述的系统,其中,所述推送模块进一步可操作来把差错消息传送到无一代码转换器可操作来把信息内容从接收的内容类型代码转换成一个或多个可接受的内容类型的场合中的信息源。
90.如权利要求89所述的系统,其中,所述推送模块进一步可操作来响应所述差错消息接收备用的接收内容类型的信息内容。
91.如权利要求88所述的系统,其中,所述推送模块进一步可操作来把可选择的代码转换器列表传送到无一代码转换器可操作来把信息内容从接收的内容类型代码转换成一个或多个可接受内容类型的场合中的信息源。
92.如权利要求91所述的系统,其中,所述推送模块可操作来从信息源接收选择的代码转换器数据,并且基于选择的代码转换器数据从可选择的代码转换器列表中选择可选择的代码转换器之一。
93.如权利要求82所述的系统,其中,所述推送模块可操作来基于所述标识符从多个代码转换器选择一个或多个代码转换器。
94.如权利要求82所述的系统,其中,所述推送模块进一步可操作来确定所述信息源的地址,并且基于所述地址从多个代码转换器选择一个或多个代码转换器。
全文摘要
一种经过网络把信息内容从信息源推送到移动通信设备的系统,包括代码转换系统和第一网络设备。所述代码转换系统包括多个代码转换器,每个代码转换器可操作将信息内容从各种输入内容类型代码转换成各种输出内容类型。第一网络设备与代码转换系统通信,并且包括推送模块,所述推送模块可操作从信息源接收连接请求,所述连接请求包括与移动通信设备相关的标识符。推送模块进一步操作选择一个相应的连接处理机,该处理机可操作来从多个代码转换器中选择一个或多个代码转换器以对信息内容进行代码转换。
文档编号G06F17/30GK1554059SQ02817758
公开日2004年12月8日 申请日期2002年7月12日 优先权日2001年7月12日
发明者萨利姆·H·奥马尔, 萨利姆 H 奥马尔, N 欧文, 罗素·N·欧文, A 利特尔, 赫伯特·A·利特尔, K 里巴克, 托马什·K·里巴克, S 布朗, 迈克尔·S·布朗, P 亚奇, 戴维·P·亚奇 申请人:捷讯研究有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1