CN102055732A - 一种实现单机软件通信的方法及装置 - Google Patents

一种实现单机软件通信的方法及装置 Download PDF

Info

Publication number
CN102055732A
CN102055732A CN2009102087282A CN200910208728A CN102055732A CN 102055732 A CN102055732 A CN 102055732A CN 2009102087282 A CN2009102087282 A CN 2009102087282A CN 200910208728 A CN200910208728 A CN 200910208728A CN 102055732 A CN102055732 A CN 102055732A
Authority
CN
China
Prior art keywords
unit
unit software
communication
software
instant messaging
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
CN2009102087282A
Other languages
English (en)
Other versions
CN102055732B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN200910208728.2A priority Critical patent/CN102055732B/zh
Priority to EP10828704.6A priority patent/EP2497032A4/en
Priority to PCT/US2010/047783 priority patent/WO2011056289A1/en
Priority to US12/995,391 priority patent/US8443421B2/en
Priority to JP2012536808A priority patent/JP5722906B2/ja
Publication of CN102055732A publication Critical patent/CN102055732A/zh
Application granted granted Critical
Publication of CN102055732B publication Critical patent/CN102055732B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种实现单机软件通信的方法及装置。一种实现单机软件通信的方法,包括:第一用户设备与第二用户设备建立即时通信连接;第一用户设备中的单机软件A1使用所述即时通信连接,与第二用户设备中的单机软件A2进行通信;其中,所述第一用户设备与第二用户设备互为对端设备,所述第一用户设备与第二用户设备之间的即时通信连接,由第一用户设备中的即时通信客户端B1与第二用户设备中的即时通信客户端B2建立;所述第一用户设备中的单机软件A1与所述第二用户设备中的单机软件A2为相同软件。应用本申请所提供的技术方案,能够有效降低在单机软件实现网络功能的开发难度及开发成本。

Description

一种实现单机软件通信的方法及装置
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种实现单机软件通信的方法及装置。
背景技术
随着网络技术的发展,用户对于各种应用软件的需求已经不仅仅局限于单机功能,越来越多的用户希望软件能够具有一定的网络功能,以便基于软件的基本功能与远端的用户进行交互。
用户对于软件功能需求的提高,也增加了软件开发的难度。特别是对于那些原本仅针对单机的软件,要实现网络功能,必须在软件中添加相应的通信功能模块。与实现单机功能相比,网络功能的实现对于开发人员与开发环境都提出了更高的要求,如果要实现较为复杂的网络功能,可能还需要搭建服务器。因此,在单机软件上实现网络功能,将明显增加开发难度及开发成本,这也在一定程度上限制了开发人员。此外,由于不同的开发人员在开发或测试时所使用的具体网络环境不同,用户在实际使用软件的网络功能时,难免会遇到兼容性问题,往往需要用户针对不同的软件进行不同的网络连接配置,带来操作上的麻烦。
发明内容
本申请实施例提供一种实现单机软件通信的方法及装置,以解决在单机软件中实现网络功能所存在的难度高、成本高、兼容性差等问题,技术方案如下:
本申请实施例提供一种实现单机软件通信的方法,包括:
第一用户设备与第二用户设备建立即时通信连接;第一用户设备中的单机软件A1使用所述即时通信连接,与第二用户设备中的单机软件A2进行通信;
其中,所述第一用户设备与第二用户设备互为对端设备,所述第一用户设备与第二用户设备之间的即时通信连接,由第一用户设备中的即时通信客户端B1与第二用户设备中的即时通信客户端B2建立;所述第一用户设备中的单机软件A1与所述第二用户设备中的单机软件A2为相同软件。
本申请实施例还提供一种实现单机软件通信的装置,位于本地用户设备与对端用户设备中,该装置包括连接建立单元、请求发送单元、请求接收单元和单机软件启动单元;
所述连接建立单元,用于建立本地用户设备与对端用户设备的即时通信连接;
在本地用户设备侧:
所述单机软件启动单元,用于启动本地的单机软件A1;
所述请求发送单元,用于向对端用户设备发送单机软件通信请求,所述单机软件通信请求中,携带所述单机软件A1的标识;
在对端用户设备侧:
所述请求接收单元,用于接收所述单机软件通信请求;
所述单机软件启动单元,用于根据所述单机软件通信请求中携带的单机软件标识,启动本地的单机软件A2;
所述单机软件A1与单机软件A2使用所述连接建立单元建立的即时通信连接进行通信。
本申请实施例所提供的技术方案,单机软件使用即时通信系统所建立的网络连接进行通信,从而不要求单机软件本身具备通信功能模块,有效降低了在单机软件实现网络功能的开发难度及开发成本。此外,由于各单机软件统一使用即时通信系统所建立的网络连接,因此只需一次性配置即可实现多种单机软件的正常通信,简化了用户操作。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一的实现单机软件通信方法的流程图;
图2为本申请实施例二的实现单机软件通信方法的流程图;
图3为本申请实施例三的实现单机软件通信装置的结构示意图;
图4为本申请实施例四的实现单机软件通信装置的结构示意图。
具体实施方式
首先对本申请实施例所提供的一种实现单机软件通信的方法进行说明,包括:
第一用户设备与第二用户设备建立即时通信连接;第一用户设备中的单机软件A1使用所述即时通信连接,与第二用户设备中的单机软件A2进行通信;
其中,所述第一用户设备与第二用户设备互为对端设备,所述第一用户设备与第二用户设备之间的即时通信连接,由第一用户设备中的即时通信客户端B1与第二用户设备中的即时通信客户端B2建立;所述第一用户设备中的单机软件A1与所述第二用户设备中的单机软件A2为相同软件。
上述技术方案中,单机软件使用即时通信系统所建立的网络连接进行通信,从而不要求单机软件本身具备通信功能模块。从开发人员的角度来讲,可以重点关心单机软件基本功能的实现,对于网络功能的实现部分,只需留出能够与本地的即时通信客户端交互的接口即可,即使是相对复杂的网络功能也可以通过即时通信服务器来实现,有效降低了在单机软件实现网络功能的开发难度及开发成本。
另一方面,现有技术中,由于不同的开发人员在开发或测试时所使用的具体网络环境不同,用户在实际使用软件的网络功能时,难免会遇到兼容性问题。应用本申请提供的技术方案,多个单机软件可以统一使用同一套即时通信系统所建立的网络连接,因此无需针对每个具体的单机软件进行通信配置,简化了用户操作。
再一方面,现有技术中,由于开发难度及开发成本等方面的限制,很多在单机软件中实现的网络功能并不会过多考虑通信安全、故障处理等方面的问题,而即时通信系统一般都具有较为完善的通信安全及故障处理机制,因此,应用本申请技术方案,还可以有效地提高单机软件通信的可靠性。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
实施例一:
在本申请的实施例中,涉及的通信实体包括第一用户设备与第二用户设备,在通信过程中,第一用户设备与第二用户设备互为对端设备。其中,在第一用户设备侧涉及两个部分:单机软件A1与即时通信客户端B1;在第二用户设备侧也涉及两个部分:单机软件A2与即时通信客户端B2;其中,B1与B2属于同一即时通信系统,A1与A2为相同的软件。A1与A2通过B1与B2建立的即时通信连接进行通信。图1所示为实现本实施例方法的流程图,包括以下步骤:
S101,A1向B1发送通信请求;
在本申请实施例中,单机软件虽然在逻辑上仍具有通信模块,但是该模块实际上并不直接与网络侧发生交互。当单机软件有通信需求时,将首先向本地用户设备中的即时通信客户端B1发送一个通信请求。
为保证单机软件能够正确地使用即时通信连接进行通信,单机软件和即时通信软件应具有一定的对应关系。对于即时通信客户端而言,除了具备基本的即时通信功能之外,还需要预先定义专用的本地通信接口,在本机实现即时通信软件进程与单机软件进程之间的内部消息交互。在实现单机软件的网络功能时,只需依据即时通信软件所定义的本地通信接口,实现单机软件与即时通信软件在本地的交互功能即可,无需涉及与网络的交互部分。可以理解的是,一种单机软件可以选择使用多种即时通信软件实现通信,而一种即时通信软件也可以同时支持多种单机软件的通信。
假定单机软件A1为一游戏软件,本地用户希望通过网络与其他用户进行游戏,选择相应的网络功能后,例如请求与某人联机游戏,或者寻找联机对手等等,A1将向本地用户设备中相应的即时通信客户端B1发送一个通信请求。当然,以上情况是默认B1当前已经在本地用户设备中运行的情况,在具体实施时,A1在发送通信请求之前,可以首先检测本地用户设备中当前是否有相应的即时通信客户端在运行,如果没有,则可以自动启动相应的即时通信客户端,或者向用户发出提示信息,提示用户手动启动相应的即时通信客户端。
S102,B1接收A1发送的通信请求后,对A1进行鉴权;
出于安全通信目的的考虑,B1接收到A1发送的通信请求后,可以进一步确认是否允许A1使用即时通信连接进行通信。鉴权具体可以包括多种实现方式,例如:向用户提示相关信息,要求用户进一步确认;或者,B1要求A1提供的相应的鉴权信息,以确定当前用户的身份,这个鉴权信息也可以采用与即时聊天账户一致的用户名或密码。A1也可以在S101中发送的通信请求中,直接携带相应的鉴权信息。
可以理解的是,本步骤还可以用于兼容性的检查。在S101中,A1在向B1发送通信请求时,实际上已经确定了可以通过B1实现网络功能;而在本步骤中,B1还可以进一步确认是否支持A1的通信,具体可以通过检查版本号、发送特定测试数据等方式实现。本步骤与S101结合,相当于实现了A1与B1的双向兼容性检查,从而确保A1能够正确地使用B1所建立的即时通信连接进行通信。
S103,B1向A1发送通信请求响应;
本步骤为可选步骤,如果A1通过了B1的鉴权,则B1可以在响应消息中通知A1鉴权成功,并且继续执行后续步骤。如果A1没有通过B1的鉴权,B1将拒绝A1的通信请求,并且发送响应消息中通知A1,在响应消息中还可以进一步携带拒绝的原因值,例如:用户身份非法、软件版本不兼容等等。
S104,B1检测当前是否与对端用户设备存在即时通信连接。
A1通过鉴权之后,B1就可以允许A1使用即时通信连接进行通信了,但是在具体执行时,还分为以下几种情况:
1)本地用户希望与指定的用户进行通信,并且本地用户设备与该指定用户设备之间当前已经存在一个即时通信连接(例如双方正在进行聊天)。这种情况下,A1可以直接使用当前的即时通信连接与对端用户设备进行通信。相应地,对端用户设备中也应启动同样的单机软件,以下称为A2。即:A1与A2通过本地的即时通信客户端B1与对端即时通信客户端(以下称为B2)所建立的即使通信连接进行通信。可以理解的是,在对端用户设备侧,A2与B2也可以执行类似S102的鉴权操作,这里不再详细说明。
2)本地用户希望与指定的用户进行通信,并且本地用户设备与该指定用户设备之间当前不存在即时通信连接。
3)本地用户希望随机寻找一个通信对象,例如玩游戏时随机寻找联机对手,这种情况下,该随机寻找的通信对象与本地用户设备当前必然不存在即时通信连接。
在实际执行中,A1需要向B1提供通信对象设备的标识,该标识可以是一个表示特定通信对象的标识(例如即时通信账号),也可以是一个用于表示随机寻找通信对象的标识。该标识也可以直接携带于A1发给B1的通信请求中。B1根据该标识对当前的即时通信连接状态进行检测,如果是情况1),则允许A1与A2使用当前的即时通信连接进行通信,如果是情况2)或3),则继续执行S105。
S105,B1与对端设备建立即时通信连接。
针对S104中的2)、3)两种情况,B1需要根据A1提供的通信对象设备的标识,立即与相应的对端设备建立即时通信连接,以供A1使用。
即时通信系统主要基于两种协议:TCP(Transfer Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)。其中,UDP的特点是不需要建立连接,网络开销较小,但是数据传输可靠性差。而TCP是一种面向连接的协议,其传输可靠性较高。在本申请所提供的方案中,单机软件的通信对于数据可靠性的要求比较高,因此需要在即时通信客户端之间建立可靠的TCP连接。
B1首先将对端设备的标识发送至即时通信服务器,即时通信服务器将根据标识的具体类型向B1返回相应的信息:
对应上述情况2),即时通信服务器将直接向B1返回该标识所对应的用户设备的IP地址、TCP端口号等信息;这里需要注意的是,对端用户设备当前必须在即时通信系统中处于在线状态,否则无法实现即时通信连接。
而对应上述情况3),即时通信服务器将向B1随机返回某个在线用户所对应的用户设备的IP地址、TCP端口号等信息、或者向B1返回多个在线用户设备的相关信息,再由本地用户自行选择通信对象。
B1根据服务器所返回的对端用户设备的相关信息,开始与对端用户设备的B2建立即时通信连接。
S106,B1向A1返回连接建立成功响应消息。
连接建立成功之后,B1向A1返回连接建立成功响应消息,该步骤为可选步骤。后续A1与A2就可以使用B1与B2所建立的即时通信连接进行通信。其中,根据软件具体的网络功能需求以及网络环境等因素,可以直接采用点对点的方式进行通信,也可以通过即时通信服务器进行通信,本实施例对此不做限制。
实施例二:
实施例一所提供的方法中,是由单机软件发起的整个通信流程,而在实际应用中,更为常见的一种情况是:用户当前正在使用即时通信系统进行聊天(即B1与B2已经建立了即时通信连接),本地用户希望运行某个单机软件并且与对端用户实现互动,也就是说,通信流程的发起者为本端的即时通信客户端B1,针对这一具体情况,本实施例提供另一种实现单机软件通信的方法,流程图如图2所示,包括以下步骤:
S201,B1与B2建立即时通信连接;
在本实施中,启动单机软件之前,本地用户设备已经与对端用户设备建立了即时通信连接。
S202,B1启动本地用户设备中的单机软件A1;
当本地用户希望运行某个单机软件A1时,直接由B1来启动A1。相当于本地的即时通信客户端直接允许A1使用即时通信连接,因此可以省去鉴权等步骤。
现有技术中,在即时通信客户端中启动软件的方式包括两种:1)单独开启一个与聊天窗口相互独立的窗口,在独立窗口内运行软件;2)将聊天窗口扩大并将软件嵌入聊天窗口运行。其中,方式1)的缺点是:软件与聊天窗口结合性差,缺乏整体性,无法实现软件附着聊天窗口移动,使得用户往往无法从感知上将软件功能与聊天窗口关联起来。而方式2)的缺点则是软件使用过程中无法随时改变界面大小,灵活性较差。
针对上述问题,本实施例提供一种在即时通信客户端中启动软件的方式:B1在当前已有即时通信聊天窗口的基础上,创建一个聊天窗口的扩展窗口,并在扩展窗口中启动A1,这样做的好处如下:
1)A1运行过程中,当因为功能界面切换需要改变自身尺寸大小时,即可向由B1管理的扩展窗口发出请求。扩展窗口接收到A1发来的尺寸改变请求后,立即调整自身尺寸以适应A1的功能界面变化。扩展窗口的自适应尺寸变化不限次数及频率,可以随时根据A1的请求进行。
2)在同一扩展窗口中,可以同时加载多个软件,其中,既可以包括有网络功能需求的软件,也可以包括普通的单机软件。各个软件并行工作,互不影响。例如,在扩展窗口中已经存在A1运行的情况下,如果用户基于该扩展窗口启动另一个软件A11,则A11可以与A1同时并行运行,用户可以通过扩展窗口上的切换装置切换两个软件的功能操作界面,切换过程中,扩展窗口可以始终自适应用户当前正在使用的软件界面尺寸变化而调整。
可以理解的是,即时通信客户端也可以在不同的扩展窗口中启动本地用户设备中的多个单机软件,本实施例对此并不进行限制。
3)扩展窗口可以与聊天窗口整体移动,也可独立移动。在扩展窗口中已经存在软件运行的情况下,如果用户拖动聊天窗口位置,则扩展窗口可以附着跟随聊天窗口一同改变位置,扩展窗口和聊天窗口之间的相对位置不发生变化。如果用户将扩展窗口拖离聊天窗口,则之后聊天窗口的位置变化与扩展窗口位置变化相互独立、互不影响。用户可以将扩展窗口拖动至屏幕任意位置使用。
S203,B1向B2发送单机软件通信请求。
B1启动A1之后,向对端用户设备的B2发送单机软件通信请求,在请求中,需要携带单机软件A1的标识,以便B2可以启动与A1相同的软件。
本步骤可以由用户触发执行,也可以由B1自动执行。其中,在B1自动执行的情况下,由于B1所启动的软件可能是有网络功能需求的软件,也可能是普通的单机软件,因此,B1可以首先检测A1是否需要用户通过网络互动使用,如果是,再向B2发送单机软件通信请求。
S204,B2接收所述单机软件通信请求;根据所述单机软件通信请求中携带的单机软件标识,启动本地用户设备中的单机软件A2;其中,启动A2的操作可以由B2自动执行,也可以由B2向用户发出提示信息,由用户确认是否启动。B2启动A2的方式可以与B1启动A1的方式相同。
本步骤中,如果B2在本机中没有检测到相应的软件,可以提示用户进行下载,当然也可以拒绝B1所发送的软件通信请求。
S205,B2启动A2后,向B1发送单机软件通信请求响应。
至此,A1与A2就可以使用B1与B2所建立的即时通信连接进行通信。
在本实施例中,针对通信双方当前已经存在即时通信连接的实际情况,由即时通信客户端发起整个通信流程,与实施例一相比,可以在不损失通信可靠性的前提下,省去鉴权以及一些本地交互流步骤流程。另一方面,本实施例还提供一种在扩展窗口中启动软件的方法,以实现更好的用户体验。
实施例三:
相应于上面的方法实施例一,本申请还提供一种实现单机软件通信的装置,位于本地用户设备与对端用户设备中,参见图3所示,该装置包括:
连接建立单元310,用于建立本地用户设备与对端用户设备建立的即时通信连接;
请求接收单元320,用于接收本地用户设备中的单机软件A1发送的通信请求;
鉴权通信单元330,用于对A1进行鉴权,如果鉴权通过,则允许A1与对端用户设备中的单机软件A2使用所述即时通信连接进行通信;其中,所述单机软件A1与单机软件A2为相同软件。
实施例四:
相应于上面的方法实施例二,本申请还提供另一种实现单机软件通信的装置,位于本地用户设备与对端用户设备中,参见图4所示,该装置包括:连接建立单元410、单机软件启动单元420、请求发送单元430和请求接收单元440;
所述连接建立单元410,用于建立本地用户设备与对端用户设备的即时通信连接;
在本地用户设备侧:
所述单机软件启动单元420,用于启动本地的单机软件A1;
所述请求发送单元430,用于向对端用户设备发送单机软件通信请求,所述单机软件通信请求中,携带所述单机软件A1的标识;
在对端用户设备侧:
所述请求接收单元440,用于接收所述单机软件通信请求;
所述单机软件启动单元420,用于根据所述单机软件通信请求中携带的单机软件标识,启动本地的单机软件A2;
所述单机软件A1与单机软件A2使用所述连接建立单元建立的即时通信连接进行通信。
其中,所述单机软件启动单元420,具体可以包括:
扩展窗口创建子单元,用于创建即时通信聊天窗口的扩展窗口;
启动子单元,用于在所述扩展窗口中启动单机软件。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (10)

1.一种实现单机软件通信的方法,其特征在于,包括:
第一用户设备与第二用户设备建立即时通信连接;第一用户设备中的单机软件A1使用所述即时通信连接,与第二用户设备中的单机软件A2进行通信;
其中,所述第一用户设备与第二用户设备互为对端设备,所述第一用户设备与第二用户设备之间的即时通信连接,由第一用户设备中的即时通信客户端B1与第二用户设备中的即时通信客户端B2建立;所述第一用户设备中的单机软件A1与所述第二用户设备中的单机软件A2为相同软件。
2.根据权利要求1所述的方法,其特征在于,所述A1使用所述即时通信连接与A2进行通信,包括:
B1接收A1发送的通信请求;
B1对A1进行鉴权,如果鉴权通过,则允许A1与A2使用所述即时通信连接进行通信。
3.根据权利要求2所述的方法,其特征在于,所述通信请求中携带第二用户设备的标识,所述B1允许A1与A2使用所述即时通信连接进行通信,具体实现为:
B1在对A1的鉴权通过之后,根据所述第二用户设备的标识,检测B1与B2当前是否存在即时通信连接;
如果是,则允许A1与A2使用所述当前的即时通信连接进行通信;
如果否,则B1根据所述第二用户设备的标识与B2建立即时通信连接,并允许A1与A2使用所建立的即时通信连接进行通信。
4.根据权利要求1所述的方法,其特征在于,所述A1使用所述即时通信连接与A2进行通信,包括:
B1与B2建立即时通信连接;
B1启动本地用户设备中的单机软件A1;向B2发送单机软件通信请求,所述单机软件通信请求中,携带所述单机软件A1的标识;
B2接收所述单机软件通信请求;根据所述单机软件通信请求中携带的单机软件标识,启动本地用户设备中的单机软件A2;
A1与A2使用B1与B2所建立的时通信连接进行通信。
5.根据权利要求4所述的方法,其特征在于,所述即时通信客户端启动本地用户设备中的单机软件,具体实现为:
即时通信客户端创建即时通信聊天窗口的扩展窗口,并在所述扩展窗口中启动单机软件。
6.根据权利要求5所述的方法,其特征在于,所述即时通信客户端在扩展窗口中启动单机软件,包括:
即时通信客户端在相同的扩展窗口中启动本地用户设备中的多个单机软件;或
即时通信客户端在不同的扩展窗口中启动本地用户设备中的多个单机软件。
7.根据权利要求4、5或6所述的方法,其特征在于,B1向B2发送单机软件通信请求之前,还包括:
B1检测A1是否需要用户通过网络互动使用,如果是,则向B2发送单机软件通信请求。
8.一种实现单机软件通信的装置,位于本地用户设备与对端用户设备中,其特征在于,该装置包括:
连接建立单元,用于建立本地用户设备与对端用户设备建立的即时通信连接;
请求接收单元,用于接收本地用户设备中的单机软件A1发送的通信请求;
鉴权通信单元,用于对A1进行鉴权,如果鉴权通过,则允许A1与对端用户设备中的单机软件A2使用所述即时通信连接进行通信;其中,所述单机软件A1与单机软件A2为相同软件。
9.一种实现单机软件通信的装置,位于本地用户设备与对端用户设备中,其特征在于,该装置包括连接建立单元、请求发送单元、请求接收单元和单机软件启动单元;
所述连接建立单元,用于建立本地用户设备与对端用户设备的即时通信连接;
在本地用户设备侧:
所述单机软件启动单元,用于启动本地的单机软件A1;
所述请求发送单元,用于向对端用户设备发送单机软件通信请求,所述单机软件通信请求中,携带所述单机软件A1的标识;
在对端用户设备侧:
所述请求接收单元,用于接收所述单机软件通信请求;
所述单机软件启动单元,用于根据所述单机软件通信请求中携带的单机软件标识,启动本地的单机软件A2;
所述单机软件A1与单机软件A2使用所述连接建立单元建立的即时通信连接进行通信。
10.根据权利要求9所述的装置,其特征在于,所述单机软件启动单元,包括:
扩展窗口创建子单元,用于创建即时通信聊天窗口的扩展窗口;
启动子单元,用于在所述扩展窗口中启动单机软件。
CN200910208728.2A 2009-11-05 2009-11-05 一种实现单机软件通信的方法及装置 Active CN102055732B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN200910208728.2A CN102055732B (zh) 2009-11-05 2009-11-05 一种实现单机软件通信的方法及装置
EP10828704.6A EP2497032A4 (en) 2009-11-05 2010-09-03 Method and apparatus for implementing communication of stand-alone software
PCT/US2010/047783 WO2011056289A1 (en) 2009-11-05 2010-09-03 Method and apparatus for implementing communication of stand-alone software
US12/995,391 US8443421B2 (en) 2009-11-05 2010-09-03 Method and apparatus for implementing communication of stand-alone software
JP2012536808A JP5722906B2 (ja) 2009-11-05 2010-09-03 スタンドアロン型ソフトウェアの通信を実施するための方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910208728.2A CN102055732B (zh) 2009-11-05 2009-11-05 一种实现单机软件通信的方法及装置

Publications (2)

Publication Number Publication Date
CN102055732A true CN102055732A (zh) 2011-05-11
CN102055732B CN102055732B (zh) 2018-05-08

Family

ID=43959662

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910208728.2A Active CN102055732B (zh) 2009-11-05 2009-11-05 一种实现单机软件通信的方法及装置

Country Status (5)

Country Link
US (1) US8443421B2 (zh)
EP (1) EP2497032A4 (zh)
JP (1) JP5722906B2 (zh)
CN (1) CN102055732B (zh)
WO (1) WO2011056289A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162255A (zh) * 2019-05-30 2019-08-23 腾讯科技(深圳)有限公司 单机程序的运行方法、装置、设备及存储介质
WO2022083722A1 (zh) * 2020-10-22 2022-04-28 华为技术有限公司 一种不同设备之间的跨应用互联方法及相关装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1357828A (zh) * 2000-12-08 2002-07-10 英业达股份有限公司 可在单机版与网络版间转换的软件设计方法
CN1512339A (zh) * 2002-12-27 2004-07-14 清华大学 基于网络的应用程序协同工作、决策系统及其实现方法
US20050086309A1 (en) * 2003-10-06 2005-04-21 Galli Marcio Dos S. System and method for seamlessly bringing external services into instant messaging session
US20060036692A1 (en) * 2004-08-10 2006-02-16 Microsoft Corporation Method and system of integrating instant messaging with other computer programs
CN1996964A (zh) * 2006-12-05 2007-07-11 华为技术有限公司 终端间传输数据的方法、系统及终端、gdxs和gdxts
CN101064693A (zh) * 2006-04-24 2007-10-31 腾讯科技(深圳)有限公司 一种在即时通讯中同步呈现动画的方法
CN101217508A (zh) * 2007-12-29 2008-07-09 腾讯科技(深圳)有限公司 一种基于即时通信平台的网络代理系统及其实现方法
CN101425983A (zh) * 2007-11-02 2009-05-06 国际商业机器公司 用于同步协作消息传送环境中的询问和回答的方法和系统

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7074999B2 (en) 1996-07-10 2006-07-11 Sitrick David H Electronic image visualization system and management and communication methodologies
US6246688B1 (en) 1999-01-29 2001-06-12 International Business Machines Corp. Method and system for using a cellular phone as a network gateway in an automotive network
SE9902137D0 (sv) 1999-06-08 1999-06-08 Ericsson Telefon Ab L M A method and a system relating to a mobile communication device
US7496578B2 (en) 1999-11-04 2009-02-24 Aol Llc Shared internet storage resource, user interface system, and method
US6351776B1 (en) 1999-11-04 2002-02-26 Xdrive, Inc. Shared internet storage resource, user interface system, and method
US6898623B1 (en) 2000-06-16 2005-05-24 Hewlett-Packard Development Company L.P. Simplified configuration of an internet-enabled device
US7386878B2 (en) * 2002-08-14 2008-06-10 Microsoft Corporation Authenticating peer-to-peer connections
US7549924B2 (en) * 2003-05-09 2009-06-23 Microsoft Corporation Instant messaging embedded games
WO2005050395A2 (en) 2003-11-18 2005-06-02 Gh Llc Content communication system and methods
US7765263B1 (en) * 2003-12-19 2010-07-27 Apple Inc. Method and apparatus for processing electronic messages
US7660904B2 (en) * 2004-05-11 2010-02-09 Microsoft Corporation Providing keys to share data within an instant messaging session
US8869043B2 (en) * 2004-06-07 2014-10-21 Avaya Inc. System for presenting applications on instant messaging clients
US8903919B2 (en) * 2004-09-14 2014-12-02 International Business Machines Corporation Dynamic integration of application input and output in an instant messaging/chat session
US20070174405A1 (en) 2006-01-23 2007-07-26 Yen-Fu Chen Remote operation of instant messaging systems
US20070203993A1 (en) * 2006-02-28 2007-08-30 Yigang Cai Instant messaging control
US20090015567A1 (en) 2006-03-20 2009-01-15 Marwa Abdelbaki Digital Stand Alone Device For Processing Handwritten Input
US20070260675A1 (en) * 2006-05-08 2007-11-08 Forlines Clifton L Method and system for adapting a single-client, single-user application to a multi-user, multi-client environment
US7962556B2 (en) 2007-08-08 2011-06-14 International Business Machines Corporation Instant messaging session initiation using a proxy session request
US20090150499A1 (en) * 2007-12-10 2009-06-11 International Business Machines Corporation Method for sharing information over an instant messaging network
US8683046B2 (en) 2008-11-21 2014-03-25 Microsoft Corporation Unified interface for configuring multiple networking technologies
US20100235430A1 (en) 2009-03-13 2010-09-16 Bruce Kim Methods and systems to provide services to a mobile device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1357828A (zh) * 2000-12-08 2002-07-10 英业达股份有限公司 可在单机版与网络版间转换的软件设计方法
CN1512339A (zh) * 2002-12-27 2004-07-14 清华大学 基于网络的应用程序协同工作、决策系统及其实现方法
US20050086309A1 (en) * 2003-10-06 2005-04-21 Galli Marcio Dos S. System and method for seamlessly bringing external services into instant messaging session
US20060036692A1 (en) * 2004-08-10 2006-02-16 Microsoft Corporation Method and system of integrating instant messaging with other computer programs
CN101064693A (zh) * 2006-04-24 2007-10-31 腾讯科技(深圳)有限公司 一种在即时通讯中同步呈现动画的方法
CN1996964A (zh) * 2006-12-05 2007-07-11 华为技术有限公司 终端间传输数据的方法、系统及终端、gdxs和gdxts
CN101425983A (zh) * 2007-11-02 2009-05-06 国际商业机器公司 用于同步协作消息传送环境中的询问和回答的方法和系统
CN101217508A (zh) * 2007-12-29 2008-07-09 腾讯科技(深圳)有限公司 一种基于即时通信平台的网络代理系统及其实现方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162255A (zh) * 2019-05-30 2019-08-23 腾讯科技(深圳)有限公司 单机程序的运行方法、装置、设备及存储介质
CN110162255B (zh) * 2019-05-30 2021-06-01 腾讯科技(深圳)有限公司 单机程序的运行方法、装置、设备及存储介质
WO2022083722A1 (zh) * 2020-10-22 2022-04-28 华为技术有限公司 一种不同设备之间的跨应用互联方法及相关装置

Also Published As

Publication number Publication date
JP2013510349A (ja) 2013-03-21
WO2011056289A1 (en) 2011-05-12
JP5722906B2 (ja) 2015-05-27
US8443421B2 (en) 2013-05-14
US20120222088A1 (en) 2012-08-30
EP2497032A4 (en) 2017-02-08
CN102055732B (zh) 2018-05-08
EP2497032A1 (en) 2012-09-12

Similar Documents

Publication Publication Date Title
JP6417041B2 (ja) 端末間でアプリケーションデータを移行するための方法、装置、およびシステム
US7336602B2 (en) Apparatus and method for wireless/wired communications interface
US8838073B2 (en) Systems and methods for pairing bluetooth devices
US7519950B2 (en) Method and system for version negotiation of distributed objects
CN103477322B (zh) 在操作系统环境之间传输web数据
KR101042745B1 (ko) 클라이언트 단말장치와 서버 사이의 세션 재설정을 위한시스템 및 방법
KR101996624B1 (ko) 분산 협약 프로토콜에서의 crud형 프로토콜 바인딩 기법
KR20080068647A (ko) 이형, 분산 컴퓨팅 시스템에 서비스 애플리케이션 실행환경을 형성하기 위한 방법 및 시스템, 그리고 상기 서비스애플리케이션 실행 환경에서 실행하는 사용자 친화적데이터 전달 서비스 애플리케이션
CN105183675A (zh) 对usb设备的访问方法、装置、终端、服务器及系统
US20110246654A1 (en) Wireless Shared Resource Computing
KR102118415B1 (ko) 애플리케이션 실행 방법 및 장치
CN105491081A (zh) 移动智能终端下转发应用内流量的方法
US20090106401A1 (en) System and method for Intra Network Internet Protocol (IP) address modification by dual controller
US20090077428A1 (en) Software Method And System For Controlling And Observing Computer Networking Devices
CN102055732A (zh) 一种实现单机软件通信的方法及装置
US20120003960A1 (en) Mobile device control using a tethered connection
CN103138961B (zh) 服务器控制方法、被控服务器及中心控制服务器
CN109189629B (zh) 基于usb设备实现终端远程控制的方法、存储介质
CN113596197B (zh) 一种地址切换方法、装置、电子设备及存储介质
KR20060087758A (ko) 모바일 기기용 인터넷 디스크 시스템 및 방법
KR100524588B1 (ko) 무선인터넷에서 다운로드 중단된 데이터를 이어받는 방법
CN105721278A (zh) 基于即时通的一问一答机制
CN106101835A (zh) 智能电视升级控制方法及装置
JP2017091261A (ja) 装置、プログラム及びシステム
CN112769780B (zh) 设备信息获取方法、装置、电子设备及存储介质

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: 1152169

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant