US20060258461A1 - Detecting interaction with an online service - Google Patents

Detecting interaction with an online service Download PDF

Info

Publication number
US20060258461A1
US20060258461A1 US11/383,184 US38318406A US2006258461A1 US 20060258461 A1 US20060258461 A1 US 20060258461A1 US 38318406 A US38318406 A US 38318406A US 2006258461 A1 US2006258461 A1 US 2006258461A1
Authority
US
United States
Prior art keywords
client
online service
communication
client program
service
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.)
Abandoned
Application number
US11/383,184
Inventor
Denis Bekman
Lee Crawford
Jesse Macnish
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.)
Yahoo Inc
Original Assignee
Yahoo Inc until 2017
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 Yahoo Inc until 2017 filed Critical Yahoo Inc until 2017
Priority to US11/383,184 priority Critical patent/US20060258461A1/en
Priority to PCT/US2006/018647 priority patent/WO2006124733A2/en
Assigned to YAHOO!INC. reassignment YAHOO!INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CRAWFORD, LEE, BEKMAN, DENIS, MACNISH, JESSE
Publication of US20060258461A1 publication Critical patent/US20060258461A1/en
Assigned to YAHOO HOLDINGS, INC. reassignment YAHOO HOLDINGS, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YAHOO! INC.
Assigned to OATH INC. reassignment OATH INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YAHOO HOLDINGS, INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3202Hardware aspects of a gaming system, e.g. components, construction, architecture thereof
    • G07F17/3223Architectural aspects of a gaming system, e.g. internal configuration, master/slave, wireless communication
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F17/00Coin-freed apparatus for hiring articles; Coin-freed facilities or services
    • G07F17/32Coin-freed apparatus for hiring articles; Coin-freed facilities or services for games, toys, sports, or amusements
    • G07F17/3225Data transfer within a gaming system, e.g. data sent between gaming machines and users
    • G07F17/3232Data transfer within a gaming system, e.g. data sent between gaming machines and users wherein the operator is informed

Definitions

  • the present invention relates generally to multi-person online services, and more particularly, but not exclusively, to detecting participation of a client in an online service and notifying other clients so that the other clients may participate in the same online service.
  • Online multiplayer games and other collaboration services have become increasingly popular as network communications have improved. Users who may be geographically distant from each other may communicate with an online service to participate together in games and/or other collaboration services. Typically, users run a client program that performs local processing and communicates with the online service to coordinate joint state of the multi-user game or service. For users to initiate participation in the same online game or online service, users may meet in an online lobby or other matching system that is associated with the online game or online service. However, if a person is not already communicating with the same lobby, or already participating in the same online service, the person may not be aware that a friend or colleague is participating. The friend or colleague can manually telephone the person or send a message with an identifier to invite the person to participate in the same online game or service.
  • a message is typically sent through an independent messaging service, such as an online portal email service or instant message service, which is generally not limited to registered users of the online game service.
  • an independent messaging service such as an online portal email service or instant message service, which is generally not limited to registered users of the online game service.
  • this out-of-band messaging may be time consuming to find contact information and may distract from a current game session or other service session.
  • FIG. 1 shows a functional block diagram illustrating one embodiment of an environment for practicing the invention
  • FIG. 2 shows one embodiment of a client and/or server device that may be included in a system implementing the invention
  • FIG. 3 illustrates one embodiment of an architecture for the present invention
  • FIG. 4 is a flow diagram illustrating exemplary logic for one embodiment of a games monitor to provide a listing and status of currently available games
  • FIG. 5 is a flow diagram illustrating exemplary logic for one embodiment of a game probe to detect execution of a game program and notify another client.
  • the present invention is directed towards detecting execution of a program on a client and notifying other related clients that wish to interact with the first client.
  • the invention is not so limited, an exemplary embodiment is described below in terms of a client executing a game program to participate in an online game system, and informing other clients through an instant message system that is not directly associated with the online game system.
  • FIG. 1 illustrates one embodiment of an environment in which the present invention may operate. However, not all of these components may be required to practice the invention, and variations in the arrangement and type of the components may be made without departing from the spirit or scope of the invention.
  • a system 10 includes client devices 12 - 14 , a network 15 , a portal service 16 , and a third party game service 17 that is not directly associated with the portal service.
  • Network 15 is in communication with and enables communication between each of client devices 12 - 14 , portal service 16 , and game service 17 .
  • Client devices 12 - 14 may include virtually any computing device capable of receiving and sending a message over a network, such as network 15 , to and from another computing device, such as portal service 16 , each other, and the like.
  • the set of such devices may include mobile terminals that are usually considered more specialized devices and typically connect using a wireless communications medium such as cell phones, smart phones, pagers, walkie talkies, radio frequency (RF) devices, infrared (IR) devices, CBs, integrated devices combining one or more of the preceding devices, or virtually any mobile device, and the like.
  • RF radio frequency
  • IR infrared
  • the set of such devices may also include devices that are usually considered more general purpose devices and typically connect using a wired communications medium such as personal computers, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, and the like.
  • client devices 12 - 14 may be any device that is capable of connecting using a wired or wireless communication medium such as a personal digital assistant (PDA), POCKET PC, wearable computer, and any other device that is equipped to communicate over a wired and/or wireless communication medium.
  • PDA personal digital assistant
  • POCKET PC wearable computer
  • Each client device within client devices 12 - 14 includes a user interface that enables a user to control settings, such as presence settings, and to instruct the client device to perform operations.
  • Each client device also includes a communication interface that enables the client device to send and receive messages from another computing device employing the same or a different communication mode, including, but not limited to instant messaging (IM), email, short message service (SMS) messaging, multi-media message service (MMS) messaging, internet relay chat (IRC), Mardam-Bey's internet relay chat (mIRC), Jabber, and the like.
  • Client devices 12 - 14 may be further configured with a browser application that is configured to receive and to send web pages, web-based messages, and the like.
  • the browser application may be configured to receive and display graphics, text, multimedia, and the like, employing virtually any web based language, including, but not limited to Standard Generalized Markup Language (SGML), HyperText Markup Language (HTML), Extensible Markup Language (XML), a wireless application protocol (WAP), a Handheld Device Markup Language (HDML), such as Wireless Markup Language (WML), WMLScript, JavaScript, and the like.
  • SGML Standard Generalized Markup Language
  • HTML HyperText Markup Language
  • XML Extensible Markup Language
  • WAP wireless application protocol
  • HDML Handheld Device Markup Language
  • WML Wireless Markup Language
  • WMLScript JavaScript
  • Network 15 is configured to couple one computing device to another computing device to enable them to communicate.
  • Network 15 is enabled to employ any form of medium for communicating information from one electronic device to another.
  • network 15 may include a wireless interface, such as a cellular network interface, and/or a wired interface, such as an Internet interface, in addition to an interface to local area networks (LANs), wide area networks (WANs), direct connections, such as through a universal serial bus (USB) port, other forms of computer-readable media, or any combination thereof.
  • LANs local area networks
  • WANs wide area networks
  • USB universal serial bus
  • a router acts as a link between LANs, enabling messages to be sent from one to another.
  • network 15 includes any communication method by which information may travel between client devices 12 - 14 , portal service 16 , and/or game service 17 .
  • Network 15 is constructed for use with various communication protocols including transmission control protocol/internet protocol (TCP/IP), WAP, code division multiple access (CDMA), global system for mobile communications (GSM), and the like.
  • TCP/IP transmission control protocol/internet protocol
  • WAP WAP
  • CDMA code division multiple access
  • GSM global system for mobile communications
  • Computer-readable media may include computer storage media, wired and wireless communication media, or any combination thereof. Additionally, computer-readable media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, data signal, or other transport mechanism and includes any information delivery media.
  • modulated data signal and “carrier-wave signal” includes a signal that has one or more of its characteristics set or changed in such a manner as to encode information, instructions, data, and the like, in the signal.
  • communication media includes wireless media such as acoustic, RF, infrared, and other wireless media, and wired media such as twisted pair, coaxial cable, fiber optics, wave guides, and other wired media.
  • client device 20 may include any computing device capable of connecting to network 15 to enable a user to communicate with other client devices, portal server 16 , and/or game service 17 .
  • client device 20 may include many more components than those shown. The components shown, however, are sufficient to disclose an illustrative embodiment for practicing the invention. Many of the components of client device 20 may also be duplicated in a server of portal service 16 , a server of game service 17 , and/or other server devices.
  • client device 20 includes a processing unit 22 in communication with a mass memory 24 via a bus 23 .
  • Mass memory 24 generally includes a RAM 26 , a ROM 28 , and other storage means.
  • Mass memory 24 illustrates a type of computer-readable media, namely computer storage media.
  • Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
  • Computer storage media include EEPROM, flash memory or other semiconductor memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
  • EEPROM electrically erasable programmable read-only memory
  • flash memory or other semiconductor memory technology
  • CD-ROM compact disc-read only memory
  • DVD digital versatile disks
  • magnetic cassettes magnetic tape
  • magnetic disk storage magnetic disk storage devices
  • Mass memory 24 stores a basic input/output system (“BIOS”) 30 for controlling low-level operation of client device 20 .
  • BIOS basic input/output system
  • the mass memory also stores an operating system 31 for controlling the operation of client device 20 .
  • this component may include a general purpose operating system such as a version of WindowsTM, UNIX, LINUXTM, or the like.
  • the operating system may also include, or interface with a virtual machine module that enables control of hardware components and/or operating system operations via application programs.
  • Mass memory 24 further includes one or more data storage units 32 , which can be utilized by client device 20 to store, among other things, programs 34 and/or other data.
  • Programs 34 may include computer executable instructions which can be executed by client device 20 to implement an HTTP handler application for transmitting, receiving and otherwise processing HTTP communications.
  • programs 34 can include an HTTPS handler application for handling secure connections, such as initiating communication with an external application in a secure fashion.
  • Other examples of application programs include schedulers, calendars, web services, transcoders, database programs, word processing programs, spreadsheet programs, and so forth. Accordingly, programs 34 can process web pages, audio, video, and enable telecommunication with another user of another electronic device.
  • mass memory 24 stores one or more programs for messaging, gaming and/or other applications.
  • a messaging client module 36 may include computer executable instructions, which may be run under control of operating system 31 to enable instant messaging, SMS, e-mail, and/or other messaging services.
  • a server device configured much like client device 20 (and/or client device 20 itself) may include a messaging server module 37 , which provides routing, access control, and/or other server-side messaging services.
  • Client device 20 may further include a game 38 , which interacts with a game service to enable client device 20 to participate in an online game.
  • a game probe 39 may further detect execution of game 38 and notify other clients through messaging client 36 and/or messaging server 37 .
  • Client device 20 also includes an input/output interface 40 for communicating with input/output devices such as a keyboard, mouse, wheel, joy stick, rocker switches, keypad, printer, scanner, and/or other input devices not specifically shown in FIG. 2 .
  • a user of client device 20 can use input/output devices to interact with a user interface that may be separate or integrated with operating system 31 and/or programs 34 - 39 .
  • Interaction with the user interface includes visual interaction via a display, and a video display adapter 42 .
  • client device 20 may include a removable media drive 44 and/or a permanent media drive 46 for computer-readable storage media.
  • Removable media drive 44 can comprise one or more of an optical disc drive, a floppy disk drive, and/or a tape drive.
  • Permanent or removable storage media may include volatile, nonvolatile, removable, and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include a CD-ROM 49 , digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, RAM, ROM, EEPROM, flash memory or other memory technology, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
  • DVD digital versatile disks
  • RAM random access memory
  • ROM read only memory
  • EEPROM electrically erasable programmable read-only memory
  • flash memory or other memory technology, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
  • client device 20 can communicate with a wide area network such as the Internet, a local area network, a wired telephone network, a cellular telephone network, or some other communications network, such as network 15 in FIG. 1 .
  • Network communication interface unit 44 is sometimes known as a transceiver, transceiving device, network interface card (NIC), and the like.
  • FIG. 3 illustrates one embodiment of an architecture 10 a for the present invention.
  • the illustrated modules may be required to practice the invention, and variations in the arrangement and type of the components may be made without departing from the spirit or scope of the invention.
  • a first client 12 a includes a game 38 a that may communicate through network 15 and interface with game service 17 to participate in an online, multiplayer game.
  • a games monitor 18 also communicates through network 15 with game service 17 and other game services to determine which online games and/or other programs are available. Games monitor 18 may also monitor a changing status of the games and/or other programs.
  • An example, of a games monitor is an All Seeing EyeTM (ASE) server that detects new games, monitors loading on numerous games servers, matches clients for play, and performs other services.
  • ASE All Seeing EyeTM
  • games monitor 18 provides executable process names and status information through network 15 to portal service 16 and/or to clients.
  • Games monitor 18 may provide information services related to a wide variety of games and games providers. Accordingly, games monitor 18 may comprise a collection of monitors that may or may not be directly associated with particular games and/or game services.
  • first client 12 a executes game 38 a as an application program process
  • the corresponding process name is listed in an operating system process list 31 a.
  • a game probe 39 a monitors operating system process list 31 a to detect when game 38 a and/or other predetermined programs are executing.
  • game probe 39 a detects executing game 38 a
  • the game probe instructs a messenger client 36 a to inform portal service 16 that first client 12 a is participating in the online game.
  • the game probe also instructs the messenger client to request that portal service 16 notify other clients that first client 12 a is participating in the online game.
  • the other clients are generally members of a contact list associated with first client 12 a.
  • the contact list may comprise contacts in an instant messenger list, an email address book, and/or other collections of communication contacts.
  • First client 12 a and/or portal service 16 may store the contact list. Some contacts may be obtained from game service 17 , however the contact list is not limited to members of game service 17 .
  • Portal service 16 is also generally independent of game service 17 , which might be limited to a single game, or a small subset of programs. Although portal service 16 may include one or more game services, portal service 16 need not be directly related to, or controlled by game service 17 . Instead, portal service 16 may act as an intermediary between a wide variety of game services, enabling clients to interact beyond the boundaries of an particular game service.
  • portal service 16 can communicate the notification through network 15 to a messenger client 38 b of a second client 12 b who may, or may not be a current member of game service 17 .
  • the notification can be displayed and/or otherwise provided to a user of second client 12 b, who may choose to download and/or execute a game 38 b and participate in the online multiplayer game with the user of first client 12 a. If the user of second client 12 b executes game 38 b, the corresponding process name will be added to an operating system process list 31 b. If second client 12 b includes a game probe 39 b, it can instruct messenger client 38 b to notify first client 12 a and/or other clients that second client 12 b is also participating in the online multiplayer game.
  • FIG. 4 is a flow diagram illustrating exemplary logic for one embodiment of a games monitor to provide a listing and status of currently available games.
  • the games monitor determines which games and/or other programs are available from one or more game services and/or other services.
  • the games monitor may obtain information from program publishers, program developers, users, reviewers, and the like.
  • the games monitor updates a configuration data file (e.g., config.dat), with the name and other information about any new program executable files that have become available.
  • the games monitor creates a table of game services (and/or other services).
  • the table includes communication information, such as a network address(s), port(s), protocol requirements, and the like.
  • Table 1 A sample table is illustrated in Table 1 below: TABLE 1 Program Name File Name Server Address Port No. No. of Messages Time Period Status Half Life 2 HL2.exe 123.456.789.101 80 10 1 sec. 98% Half Life 2 HL2.exe 963.852.741.951 80 10 1 sec. 53% Quake 3 Q3D.exe 101.987.654.321 60 20 1.5 sec. 84% Sims Sims.exe 147.258.369.741 40 10 .5 sec. 46%
  • the table may also include information that the game probe may use to determine whether the game is truly an online game in which other clients can participate.
  • the table may include information on communication traffic that would indicate an executing game is interacting with the online game service. Such information may include a number of messages that typically pass between the game service and the client within a specified time period.
  • the games monitor makes the table available to game probes that are installed on clients. Each game probe may check for and download the table upon initiation of the game probe. Alternatively, the games monitor may push the table down to clients that are known to have a game probe installed.
  • the games monitor regularly updates the table with a current status of each game server. The status information may be used by newly initiated game probes to determine which game server(s) may be better to connect with and/or determine whether sufficient resources are available on a game server on which a friend is playing.
  • FIG. 5 is a flow diagram illustrating exemplary logic for one embodiment of a game probe to detect execution of a game program and notify another client.
  • a client device receives permission to install the game probe. Permission may be provided when the client requests the game probe, when the game probe initiates its installation process, and/or at another suitable time.
  • the game probe is installed on the client device. The game probe contacts the games monitor and downloads the current table of game services at an operation 114 .
  • the game probe monitors the operating system process list for filenames of predefined executable files corresponding to games and/or other application programs that are listed in the table. If the game probe does not detect one the predefined executable files, the game probe continues to monitor the process list. The game probe may wait that have predefined or selectable intervals, such as every 15 seconds, to check for any of the predefined executable files. Once the game probe detects a predefined executable file in the process list, the game probe checks headers of communication traffic associated with the predefined executable file, at an operation 118 . The game probe may check to see whether most the communication traffic is with the same game server, on the same port, and/or other communication characteristics.
  • the game probe determines whether a large amount of communication traffic is associated with the predefined executable file. For example, the game probe may detect whether a certain number of user datagram protocol (UDP) messages have been exchanged with the same game server within a specific time period.
  • UDP user datagram protocol
  • the number of messages and time period are generally provided in the table. However, the threshold number of messages and time period may depend on communication optimizations for each game, game servers, and/or other aspects.
  • the game probe instructs the messenger client to send an instant message to one or more contacts, at an operation 122 .
  • the client user may preselect contacts to which a message should be sent and/or predefine other limitations on sending messages related to execution of the predefined program(s).
  • the instant message may include information associated with the game service, so that contacts may communicate with the same game service. This provides an automated way to invite friends to participate in an online game and/or other services.
  • the message may be sent directly to contacts based on information stored on the client. Alternatively, or in addition, the message may be communicated to a portal service which may distribute the message to other clients based on an address book and/or other contact information stored by the portal service.
  • the communication traffic indicates that the client is not communicating with an online game service, but instead may be playing the game only locally, no message is sent.
  • the game probe detects whether the predefined executable file is still executing as indicated by the process list. If the game is still executing, the game probe determines, at a decision operation 126 , whether a messages already been sent. If a message has already been sent, the game probe continues to monitor the process list to detect delisting of the predefined executable file. However, if a message was not previously sent control returns to operation 118 to continue to monitor communication traffic related to the predefined executable file. If the game has ended, the predefined executable file will no longer be listed, and the game probe can return to detecting and/or monitoring any other predefined executable files.
  • the client probe may detect any predetermined process being executed on a client, and notify other clients. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.

Abstract

A system and method are directed towards detecting that a client is participating in an online service such as an online multiplayer game. A client probe module monitors an operating system process list to detect an executable file name, indicating that a client program is executing. The client probe evaluates client program communication to determine whether the communication is consistently directed to the same online service and meets a predefined communication rate threshold. The executable file name and communication rate threshold are provided before the client probe begins monitoring the process list. Meeting the threshold may cause the client program to instruct a client messaging module to send a message to contacts associated with the client through an independent portal service. The contacts may not be registered members of the online service, but the message may include information that enables the contacts to communicate with the same online service.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application claims the benefit of U.S. Provisional Application, titled “Detecting Interaction With an Online Service,” Ser. No. 60/681,201 filed on May 13, 2005, the benefit of the earlier filing date of which is hereby claimed under 35 U.S.C. §119(e), and further is incorporated by reference.
  • FIELD OF THE INVENTION
  • The present invention relates generally to multi-person online services, and more particularly, but not exclusively, to detecting participation of a client in an online service and notifying other clients so that the other clients may participate in the same online service.
  • BACKGROUND OF THE INVENTION
  • Online multiplayer games and other collaboration services have become increasingly popular as network communications have improved. Users who may be geographically distant from each other may communicate with an online service to participate together in games and/or other collaboration services. Typically, users run a client program that performs local processing and communicates with the online service to coordinate joint state of the multi-user game or service. For users to initiate participation in the same online game or online service, users may meet in an online lobby or other matching system that is associated with the online game or online service. However, if a person is not already communicating with the same lobby, or already participating in the same online service, the person may not be aware that a friend or colleague is participating. The friend or colleague can manually telephone the person or send a message with an identifier to invite the person to participate in the same online game or service. To reach people outside of the online game service, a message is typically sent through an independent messaging service, such as an online portal email service or instant message service, which is generally not limited to registered users of the online game service. However, this out-of-band messaging may be time consuming to find contact information and may distract from a current game session or other service session.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Non-limiting and non-exhaustive embodiments of the present invention are described with reference to the following drawings. In the drawings, like reference numerals refer to like parts throughout the various figures unless otherwise specified.
  • For a better understanding of the present invention, reference will be made to the following Detailed Description of the Invention, which is to be read in association with the accompanying drawings, wherein:
  • FIG. 1 shows a functional block diagram illustrating one embodiment of an environment for practicing the invention;
  • FIG. 2 shows one embodiment of a client and/or server device that may be included in a system implementing the invention;
  • FIG. 3 illustrates one embodiment of an architecture for the present invention;
  • FIG. 4 is a flow diagram illustrating exemplary logic for one embodiment of a games monitor to provide a listing and status of currently available games; and
  • FIG. 5 is a flow diagram illustrating exemplary logic for one embodiment of a game probe to detect execution of a game program and notify another client.
  • DETAILED DESCRIPTION OF THE INVENTION
  • The present invention now will be described more fully hereinafter with reference to the accompanying drawings, which form a part hereof, and which show, by way of illustration, specific exemplary embodiments by which the invention may be practiced. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Among other things, the present invention may be embodied as methods or devices. Accordingly, the present invention may take the form of an entirely software embodiment, an entirely hardware embodiment or an embodiment combining software and hardware aspects. The following detailed description is, therefore, not to be taken in a limiting sense. Briefly stated, the present invention is directed towards detecting execution of a program on a client and notifying other related clients that wish to interact with the first client. Although the invention is not so limited, an exemplary embodiment is described below in terms of a client executing a game program to participate in an online game system, and informing other clients through an instant message system that is not directly associated with the online game system.
  • Illustrative Operating Environment
  • FIG. 1 illustrates one embodiment of an environment in which the present invention may operate. However, not all of these components may be required to practice the invention, and variations in the arrangement and type of the components may be made without departing from the spirit or scope of the invention.
  • As shown in the figure, a system 10 includes client devices 12-14, a network 15, a portal service 16, and a third party game service 17 that is not directly associated with the portal service. Network 15 is in communication with and enables communication between each of client devices 12-14, portal service 16, and game service 17.
  • Client devices 12-14 may include virtually any computing device capable of receiving and sending a message over a network, such as network 15, to and from another computing device, such as portal service 16, each other, and the like. The set of such devices may include mobile terminals that are usually considered more specialized devices and typically connect using a wireless communications medium such as cell phones, smart phones, pagers, walkie talkies, radio frequency (RF) devices, infrared (IR) devices, CBs, integrated devices combining one or more of the preceding devices, or virtually any mobile device, and the like. The set of such devices may also include devices that are usually considered more general purpose devices and typically connect using a wired communications medium such as personal computers, multiprocessor systems, microprocessor-based or programmable consumer electronics, network PCs, and the like. Similarly, client devices 12-14 may be any device that is capable of connecting using a wired or wireless communication medium such as a personal digital assistant (PDA), POCKET PC, wearable computer, and any other device that is equipped to communicate over a wired and/or wireless communication medium.
  • Each client device within client devices 12-14 includes a user interface that enables a user to control settings, such as presence settings, and to instruct the client device to perform operations. Each client device also includes a communication interface that enables the client device to send and receive messages from another computing device employing the same or a different communication mode, including, but not limited to instant messaging (IM), email, short message service (SMS) messaging, multi-media message service (MMS) messaging, internet relay chat (IRC), Mardam-Bey's internet relay chat (mIRC), Jabber, and the like. Client devices 12-14 may be further configured with a browser application that is configured to receive and to send web pages, web-based messages, and the like. The browser application may be configured to receive and display graphics, text, multimedia, and the like, employing virtually any web based language, including, but not limited to Standard Generalized Markup Language (SGML), HyperText Markup Language (HTML), Extensible Markup Language (XML), a wireless application protocol (WAP), a Handheld Device Markup Language (HDML), such as Wireless Markup Language (WML), WMLScript, JavaScript, and the like.
  • Network 15 is configured to couple one computing device to another computing device to enable them to communicate. Network 15 is enabled to employ any form of medium for communicating information from one electronic device to another. Also, network 15 may include a wireless interface, such as a cellular network interface, and/or a wired interface, such as an Internet interface, in addition to an interface to local area networks (LANs), wide area networks (WANs), direct connections, such as through a universal serial bus (USB) port, other forms of computer-readable media, or any combination thereof. On an interconnected set of LANs, including those based on differing architectures and protocols, a router acts as a link between LANs, enabling messages to be sent from one to another. Also, communication links within LANs typically include twisted wire pair or coaxial cable, while communication links between networks may utilize cellular telephone signals over air, analog telephone lines, full or fractional dedicated digital lines including T1, T2, T3, and T4, Integrated Services Digital Networks (ISDNs), Digital Subscriber Lines (DSLs), wireless links including satellite links, or other communications links that are equivalent and/or known to those skilled in the art. Furthermore, remote computers and other related electronic devices could be remotely connected to either LANs or WANs via a modem and temporary telephone link. In essence, network 15 includes any communication method by which information may travel between client devices 12-14, portal service 16, and/or game service 17. Network 15 is constructed for use with various communication protocols including transmission control protocol/internet protocol (TCP/IP), WAP, code division multiple access (CDMA), global system for mobile communications (GSM), and the like.
  • The media used to transmit information in communication links as described above generally includes any media that can be accessed by a computing device. Computer-readable media may include computer storage media, wired and wireless communication media, or any combination thereof. Additionally, computer-readable media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, data signal, or other transport mechanism and includes any information delivery media. The terms “modulated data signal,” and “carrier-wave signal” includes a signal that has one or more of its characteristics set or changed in such a manner as to encode information, instructions, data, and the like, in the signal. By way of example, communication media includes wireless media such as acoustic, RF, infrared, and other wireless media, and wired media such as twisted pair, coaxial cable, fiber optics, wave guides, and other wired media.
  • One embodiment of a general purpose client computing device, such as a client device 20, is described in more detail below in conjunction with FIG. 2. Briefly, client device 20 may include any computing device capable of connecting to network 15 to enable a user to communicate with other client devices, portal server 16, and/or game service 17. Client device 20 may include many more components than those shown. The components shown, however, are sufficient to disclose an illustrative embodiment for practicing the invention. Many of the components of client device 20 may also be duplicated in a server of portal service 16, a server of game service 17, and/or other server devices.
  • As shown in the figure, client device 20 includes a processing unit 22 in communication with a mass memory 24 via a bus 23. Mass memory 24 generally includes a RAM 26, a ROM 28, and other storage means. Mass memory 24 illustrates a type of computer-readable media, namely computer storage media. Computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Other examples of computer storage media include EEPROM, flash memory or other semiconductor memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
  • Mass memory 24 stores a basic input/output system (“BIOS”) 30 for controlling low-level operation of client device 20. The mass memory also stores an operating system 31 for controlling the operation of client device 20. It will be appreciated that this component may include a general purpose operating system such as a version of Windows™, UNIX, LINUX™, or the like. The operating system may also include, or interface with a virtual machine module that enables control of hardware components and/or operating system operations via application programs.
  • Mass memory 24 further includes one or more data storage units 32, which can be utilized by client device 20 to store, among other things, programs 34 and/or other data. Programs 34 may include computer executable instructions which can be executed by client device 20 to implement an HTTP handler application for transmitting, receiving and otherwise processing HTTP communications. Similarly, programs 34 can include an HTTPS handler application for handling secure connections, such as initiating communication with an external application in a secure fashion. Other examples of application programs include schedulers, calendars, web services, transcoders, database programs, word processing programs, spreadsheet programs, and so forth. Accordingly, programs 34 can process web pages, audio, video, and enable telecommunication with another user of another electronic device.
  • In addition, mass memory 24 stores one or more programs for messaging, gaming and/or other applications. A messaging client module 36 may include computer executable instructions, which may be run under control of operating system 31 to enable instant messaging, SMS, e-mail, and/or other messaging services. Similarly, a server device configured much like client device 20 (and/or client device 20 itself) may include a messaging server module 37, which provides routing, access control, and/or other server-side messaging services. Client device 20 may further include a game 38, which interacts with a game service to enable client device 20 to participate in an online game. A game probe 39 may further detect execution of game 38 and notify other clients through messaging client 36 and/or messaging server 37.
  • Client device 20 also includes an input/output interface 40 for communicating with input/output devices such as a keyboard, mouse, wheel, joy stick, rocker switches, keypad, printer, scanner, and/or other input devices not specifically shown in FIG. 2. A user of client device 20 can use input/output devices to interact with a user interface that may be separate or integrated with operating system 31 and/or programs 34-39. Interaction with the user interface includes visual interaction via a display, and a video display adapter 42.
  • For higher capability client devices such as a personal computer, client device 20 may include a removable media drive 44 and/or a permanent media drive 46 for computer-readable storage media. Removable media drive 44 can comprise one or more of an optical disc drive, a floppy disk drive, and/or a tape drive. Permanent or removable storage media may include volatile, nonvolatile, removable, and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. Examples of computer storage media include a CD-ROM 49, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, RAM, ROM, EEPROM, flash memory or other memory technology, or any other medium which can be used to store the desired information and which can be accessed by a computing device.
  • Via a network communication interface unit 44, client device 20 can communicate with a wide area network such as the Internet, a local area network, a wired telephone network, a cellular telephone network, or some other communications network, such as network 15 in FIG. 1. Network communication interface unit 44 is sometimes known as a transceiver, transceiving device, network interface card (NIC), and the like.
  • Exemplary Program Detection and Notification
  • FIG. 3 illustrates one embodiment of an architecture 10 a for the present invention. However, not all of the illustrated modules may be required to practice the invention, and variations in the arrangement and type of the components may be made without departing from the spirit or scope of the invention.
  • As shown in the figure, a first client 12 a includes a game 38 a that may communicate through network 15 and interface with game service 17 to participate in an online, multiplayer game. A games monitor 18 also communicates through network 15 with game service 17 and other game services to determine which online games and/or other programs are available. Games monitor 18 may also monitor a changing status of the games and/or other programs. An example, of a games monitor is an All Seeing Eye™ (ASE) server that detects new games, monitors loading on numerous games servers, matches clients for play, and performs other services. In particular, games monitor 18 provides executable process names and status information through network 15 to portal service 16 and/or to clients. Games monitor 18 may provide information services related to a wide variety of games and games providers. Accordingly, games monitor 18 may comprise a collection of monitors that may or may not be directly associated with particular games and/or game services.
  • While first client 12 a executes game 38 a as an application program process, the corresponding process name is listed in an operating system process list 31 a. A game probe 39 a monitors operating system process list 31 a to detect when game 38 a and/or other predetermined programs are executing. When game probe 39 a detects executing game 38 a, the game probe instructs a messenger client 36 a to inform portal service 16 that first client 12 a is participating in the online game. The game probe also instructs the messenger client to request that portal service 16 notify other clients that first client 12 a is participating in the online game. The other clients are generally members of a contact list associated with first client 12 a. The contact list may comprise contacts in an instant messenger list, an email address book, and/or other collections of communication contacts. First client 12 a and/or portal service 16 may store the contact list. Some contacts may be obtained from game service 17, however the contact list is not limited to members of game service 17. Portal service 16 is also generally independent of game service 17, which might be limited to a single game, or a small subset of programs. Although portal service 16 may include one or more game services, portal service 16 need not be directly related to, or controlled by game service 17. Instead, portal service 16 may act as an intermediary between a wide variety of game services, enabling clients to interact beyond the boundaries of an particular game service.
  • For example, portal service 16 can communicate the notification through network 15 to a messenger client 38 b of a second client 12 b who may, or may not be a current member of game service 17. The notification can be displayed and/or otherwise provided to a user of second client 12 b, who may choose to download and/or execute a game 38 b and participate in the online multiplayer game with the user of first client 12 a. If the user of second client 12 b executes game 38 b, the corresponding process name will be added to an operating system process list 31 b. If second client 12 b includes a game probe 39 b, it can instruct messenger client 38 b to notify first client 12 a and/or other clients that second client 12 b is also participating in the online multiplayer game.
  • FIG. 4 is a flow diagram illustrating exemplary logic for one embodiment of a games monitor to provide a listing and status of currently available games. At an operation 102, the games monitor determines which games and/or other programs are available from one or more game services and/or other services. The games monitor may obtain information from program publishers, program developers, users, reviewers, and the like. On a periodic basis, such as each day, the games monitor updates a configuration data file (e.g., config.dat), with the name and other information about any new program executable files that have become available. At an operation 104, the games monitor creates a table of game services (and/or other services). The table includes communication information, such as a network address(s), port(s), protocol requirements, and the like. A sample table is illustrated in Table 1 below:
    TABLE 1
    Program Name File Name Server Address Port No. No. of Messages Time Period Status
    Half Life
    2 HL2.exe 123.456.789.101 80 10 1 sec. 98%
    Half Life
    2 HL2.exe 963.852.741.951 80 10 1 sec. 53%
    Quake 3 Q3D.exe 101.987.654.321 60 20 1.5 sec. 84%
    Sims Sims.exe 147.258.369.741 40 10 .5 sec. 46%

    The table may also include information that the game probe may use to determine whether the game is truly an online game in which other clients can participate. For example, the table may include information on communication traffic that would indicate an executing game is interacting with the online game service. Such information may include a number of messages that typically pass between the game service and the client within a specified time period.
  • At an operation 106, the games monitor makes the table available to game probes that are installed on clients. Each game probe may check for and download the table upon initiation of the game probe. Alternatively, the games monitor may push the table down to clients that are known to have a game probe installed. At an operation 108, the games monitor regularly updates the table with a current status of each game server. The status information may be used by newly initiated game probes to determine which game server(s) may be better to connect with and/or determine whether sufficient resources are available on a game server on which a friend is playing.
  • FIG. 5 is a flow diagram illustrating exemplary logic for one embodiment of a game probe to detect execution of a game program and notify another client. At an operation 110, a client device receives permission to install the game probe. Permission may be provided when the client requests the game probe, when the game probe initiates its installation process, and/or at another suitable time. At an operation 112, the game probe is installed on the client device. The game probe contacts the games monitor and downloads the current table of game services at an operation 114.
  • At a decision operation 116, the game probe monitors the operating system process list for filenames of predefined executable files corresponding to games and/or other application programs that are listed in the table. If the game probe does not detect one the predefined executable files, the game probe continues to monitor the process list. The game probe may wait that have predefined or selectable intervals, such as every 15 seconds, to check for any of the predefined executable files. Once the game probe detects a predefined executable file in the process list, the game probe checks headers of communication traffic associated with the predefined executable file, at an operation 118. The game probe may check to see whether most the communication traffic is with the same game server, on the same port, and/or other communication characteristics. At a decision operation 120, the game probe determines whether a large amount of communication traffic is associated with the predefined executable file. For example, the game probe may detect whether a certain number of user datagram protocol (UDP) messages have been exchanged with the same game server within a specific time period. The number of messages and time period are generally provided in the table. However, the threshold number of messages and time period may depend on communication optimizations for each game, game servers, and/or other aspects.
  • If the communication traffic indicates that the client is communicating with an online game service, the game probe instructs the messenger client to send an instant message to one or more contacts, at an operation 122. The client user may preselect contacts to which a message should be sent and/or predefine other limitations on sending messages related to execution of the predefined program(s). The instant message may include information associated with the game service, so that contacts may communicate with the same game service. This provides an automated way to invite friends to participate in an online game and/or other services. The message may be sent directly to contacts based on information stored on the client. Alternatively, or in addition, the message may be communicated to a portal service which may distribute the message to other clients based on an address book and/or other contact information stored by the portal service. Conversely, if the communication traffic indicates that the client is not communicating with an online game service, but instead may be playing the game only locally, no message is sent.
  • And decision operation 124, the game probe detects whether the predefined executable file is still executing as indicated by the process list. If the game is still executing, the game probe determines, at a decision operation 126, whether a messages already been sent. If a message has already been sent, the game probe continues to monitor the process list to detect delisting of the predefined executable file. However, if a message was not previously sent control returns to operation 118 to continue to monitor communication traffic related to the predefined executable file. If the game has ended, the predefined executable file will no longer be listed, and the game probe can return to detecting and/or monitoring any other predefined executable files.
  • The above specification, examples, and data provide a complete description of the manufacture and use of the composition of the invention. However other embodiments will be clear to one skilled in the art. For example, the client probe may detect any predetermined process being executed on a client, and notify other clients. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.

Claims (20)

1. A method for detecting participation in an online service, comprising:
detecting execution of a client program that is associated with the online service; and
determining that communication between the client program and the online service exceeds a predefined threshold indicating that the client program is participating in the online service.
2. The method of claim 1, wherein detecting execution of the client program comprises:
accessing an identifier of the client program; and
detecting the identifier in a list of executing processes.
3. The method of claim 2, wherein the identifier is a file name of an executable file.
4. The method of claim 1, wherein determining comprises:
evaluating a header of each communication from the client program to determine that the communication is between the client program and a same online service address; and
determining that a rate of communication between the client program and the same online service address exceeds a threshold number within a predefined time period.
5. The method of claim 1, wherein the client program executes on a client device in communication through a network with the online service.
6. The method of claim 1, wherein the online service comprises an online multi-player game.
7. The method of claim 1, further comprising sending a message to a remote client, indicating that the client program is participating in the online service.
8. The method of claim 7, wherein the message includes access information for the online service, so that the remote client may access the online service.
9. The method of claim 7, wherein the message comprises one of an instant message and an email message.
10. The method of claim 7, further comprising identifying the remote client from a contact list of a client messaging service.
11. The method of claim 7, further comprising communicating the message through a portal service that is independent of the online service.
12. A computer readable medium, comprising executable instructions for performing actions, including:
detecting execution of a client program that is associated with the online service; and
determining that communication between the client program and the online service exceeds a predefined threshold indicating that the client program is participating in the online service.
13. A modulated data signal for communicating data over a network, the modulated data signal comprising instructions that enable a computing device to perform the actions of:
detecting execution of a client program that is associated with the online service; and
determining that communication between the client program and the online service exceeds a predefined threshold indicating that the client program is participating in the online service.
14. A client device for detecting participation in an online service, comprising:
a communication interface in communication with the online service;
a memory for storing instructions; and
a processor in communication with the communication interface and with the memory, wherein the processor performs actions based at least in part on the stored instructions, including:
detecting execution of a client program that is associated with the online service; and
determining that communication between the client program and the online service exceeds a predefined threshold indicating that the client program is participating in the online service.
15. The client device of claim 14, wherein the processor action of detecting execution of the client program includes the actions of:
accessing an identifier of the client program; and
detecting the identifier in a list of executing processes.
16. The client device of claim 14, wherein the processor action of determining includes the actions of:
evaluating a header of each communication from the client program to determine that the communication is between the client program and a same online service address; and
determining that a rate of communication between the client program and the same online service address exceeds a threshold number within a predefined time period.
17. The client device of claim 14, wherein the processor actions further include sending a message to a remote client, indicating that the client program is participating in the online service.
18. The client device of claim 17, wherein the processor actions further include communicating the message through a portal service that is independent of the online service.
19. A server device for providing an identifier and corresponding threshold of an online service, comprising:
a communication interface in communication with a client and with the online service;
a memory for storing instructions; and
a processor in communication with the communication interface and with the memory, wherein the processor performs actions based at least in part on the stored instructions, including:
obtaining the identifier of the online service;
determining a threshold rate of communication that must occur between the online service and the client that will indicate the client is participating in the online service; and
making the identifier and the threshold rate available to the client, which detects execution of a client program that is associated with the online service and determines that communication between the client program and the online service exceeds threshold rate.
20. The server device of claim 19, wherein the processor performs further actions including communicating a message from the client to a remote client, wherein the message includes access information for the online service, so that the remote client may access the online service.
US11/383,184 2005-05-13 2006-05-12 Detecting interaction with an online service Abandoned US20060258461A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/383,184 US20060258461A1 (en) 2005-05-13 2006-05-12 Detecting interaction with an online service
PCT/US2006/018647 WO2006124733A2 (en) 2005-05-13 2006-05-15 Detecting interaction with an online service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US68120105P 2005-05-13 2005-05-13
US11/383,184 US20060258461A1 (en) 2005-05-13 2006-05-12 Detecting interaction with an online service

Publications (1)

Publication Number Publication Date
US20060258461A1 true US20060258461A1 (en) 2006-11-16

Family

ID=37419861

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/383,184 Abandoned US20060258461A1 (en) 2005-05-13 2006-05-12 Detecting interaction with an online service

Country Status (2)

Country Link
US (1) US20060258461A1 (en)
WO (1) WO2006124733A2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060258417A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Mapping online service user id to portal user id
US20080313636A1 (en) * 2007-06-14 2008-12-18 Igt System and method for secure automated data collection
US20090019154A1 (en) * 2005-05-13 2009-01-15 Yahoo! Inc. Enabling rent/buy redirection in invitation to an online service
US20100306232A1 (en) * 2009-05-28 2010-12-02 Harris Corporation Multimedia system providing database of shared text comment data indexed to video source data and related methods
US8060604B1 (en) * 2008-10-10 2011-11-15 Sprint Spectrum L.P. Method and system enabling internet protocol multimedia subsystem access for non internet protocol multimedia subsystem applications
US20140317214A1 (en) * 2011-03-31 2014-10-23 Zynga Inc. Sending out-of-band instant messages from a game networking system

Citations (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771353A (en) * 1995-11-13 1998-06-23 Motorola Inc. System having virtual session manager used sessionless-oriented protocol to communicate with user device via wireless channel and session-oriented protocol to communicate with host server
US6005943A (en) * 1996-10-29 1999-12-21 Lucent Technologies Inc. Electronic identifiers for network terminal devices
US6009458A (en) * 1996-05-09 1999-12-28 3Do Company Networked computer game system with persistent playing objects
US6466969B1 (en) * 1998-03-18 2002-10-15 Sony International (Europe) Gmbh Notification subsystem
US20030105820A1 (en) * 2001-12-03 2003-06-05 Jeffrey Haims Method and apparatus for facilitating online communication
US6689125B1 (en) * 2000-04-04 2004-02-10 Spinalabs, Llc Devices and methods for the treatment of spinal disorders
US20040128252A1 (en) * 2002-10-09 2004-07-01 Sony Corporation Information processing device, contents distribution server, license server, and method and computer program
US20040128250A1 (en) * 2002-09-16 2004-07-01 Allen Fox On-line software rental
US20040138910A1 (en) * 2002-10-30 2004-07-15 Yohichiroh Matsuno Service providing apparatus, service providing method and computer-readable storage medium
US6769989B2 (en) * 1998-09-08 2004-08-03 Nintendo Of America Inc. Home video game system with hard disk drive and internet access capability
US20040203437A1 (en) * 2002-11-27 2004-10-14 Jeff Burch Systems and methods for measurement and/or control using mobile probes
US20040205473A1 (en) * 2000-01-27 2004-10-14 Gwyn Fisher Method and system for implementing an enterprise information portal
US20040235567A1 (en) * 2003-05-20 2004-11-25 Sony Computer Entertainment America Inc., Foster City, Ca Video game method and system with content-related options
US20050091164A1 (en) * 2003-10-24 2005-04-28 Thomas Bryan Varble Method and apparatus for the rental or sale, and secure distribution of digital content
US20050097007A1 (en) * 2001-06-25 2005-05-05 Microsoft Corporation Client portal
US6893347B1 (en) * 1999-07-09 2005-05-17 Nokia Corporation Method and apparatus for playing games between the clients of entities at different locations
US6898187B2 (en) * 2000-11-30 2005-05-24 Sun Microsystems, Inc. Automatic selection of unique node identifiers in a distributed routing environment
US6908389B1 (en) * 2001-03-07 2005-06-21 Nokia Corporation Predefined messages for wireless multiplayer gaming
US20050181878A1 (en) * 2000-02-29 2005-08-18 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
US20050273439A1 (en) * 2003-02-07 2005-12-08 Wei Yen System and method for generating new licenses
US6978933B2 (en) * 2000-09-12 2005-12-27 Canon Kabushiki Kaisha Card for service access
US20050286519A1 (en) * 2004-06-29 2005-12-29 Damaka, Inc System and method for peer-to peer hybrid communications
US20060025216A1 (en) * 2004-07-29 2006-02-02 Nintendo Of America Inc. Video game voice chat with amplitude-based virtual ranging
US20060036549A1 (en) * 2004-08-12 2006-02-16 Bo Wu Digital media distribution
US7043530B2 (en) * 2000-02-22 2006-05-09 At&T Corp. System, method and apparatus for communicating via instant messaging
US7056217B1 (en) * 2000-05-31 2006-06-06 Nintendo Co., Ltd. Messaging service for video game systems with buddy list that displays game being played
US20060136584A1 (en) * 2004-12-17 2006-06-22 Nokia Corporation System, network entity, client, method and computer program product for managing a contact list
US20060178216A1 (en) * 2003-07-15 2006-08-10 Shea Mattew T Multi-session user launching and invitation system and method
US7133368B2 (en) * 2002-02-01 2006-11-07 Microsoft Corporation Peer-to-peer method of quality of service (QoS) probing and analysis and infrastructure employing same
US20070165629A1 (en) * 2004-06-29 2007-07-19 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US7288028B2 (en) * 2003-09-26 2007-10-30 Microsoft Corporation Method and apparatus for quickly joining an online game being played by a friend
US7376696B2 (en) * 2002-08-27 2008-05-20 Intel Corporation User interface to facilitate exchanging files among processor-based devices
US7376621B1 (en) * 2000-01-26 2008-05-20 Paybyclick Corporation Method and apparatus for conducting electronic commerce transactions using electronic tokens
US20080125226A1 (en) * 2003-12-22 2008-05-29 Francis Emmerson Online Gaming
US7418663B2 (en) * 2002-12-19 2008-08-26 Microsoft Corporation Contact picker interface
US7435179B1 (en) * 2004-11-15 2008-10-14 Sprint Spectrum L.P. Location-based authorization of gaming action in wireless communication gaming devices
US7517282B1 (en) * 2003-08-04 2009-04-14 Microsoft Corporation Methods and systems for monitoring a game to determine a player-exploitable game condition
US7634558B1 (en) * 2003-09-22 2009-12-15 Sprint Spectrum L.P. Method and system for updating network presence records at a rate dependent on network load

Patent Citations (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771353A (en) * 1995-11-13 1998-06-23 Motorola Inc. System having virtual session manager used sessionless-oriented protocol to communicate with user device via wireless channel and session-oriented protocol to communicate with host server
US6009458A (en) * 1996-05-09 1999-12-28 3Do Company Networked computer game system with persistent playing objects
US6005943A (en) * 1996-10-29 1999-12-21 Lucent Technologies Inc. Electronic identifiers for network terminal devices
US6466969B1 (en) * 1998-03-18 2002-10-15 Sony International (Europe) Gmbh Notification subsystem
US6769989B2 (en) * 1998-09-08 2004-08-03 Nintendo Of America Inc. Home video game system with hard disk drive and internet access capability
US6893347B1 (en) * 1999-07-09 2005-05-17 Nokia Corporation Method and apparatus for playing games between the clients of entities at different locations
US7376621B1 (en) * 2000-01-26 2008-05-20 Paybyclick Corporation Method and apparatus for conducting electronic commerce transactions using electronic tokens
US20040205473A1 (en) * 2000-01-27 2004-10-14 Gwyn Fisher Method and system for implementing an enterprise information portal
US7043530B2 (en) * 2000-02-22 2006-05-09 At&T Corp. System, method and apparatus for communicating via instant messaging
US20050181878A1 (en) * 2000-02-29 2005-08-18 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
US7240093B1 (en) * 2000-02-29 2007-07-03 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
US6689125B1 (en) * 2000-04-04 2004-02-10 Spinalabs, Llc Devices and methods for the treatment of spinal disorders
US7056217B1 (en) * 2000-05-31 2006-06-06 Nintendo Co., Ltd. Messaging service for video game systems with buddy list that displays game being played
US6978933B2 (en) * 2000-09-12 2005-12-27 Canon Kabushiki Kaisha Card for service access
US6898187B2 (en) * 2000-11-30 2005-05-24 Sun Microsystems, Inc. Automatic selection of unique node identifiers in a distributed routing environment
US6908389B1 (en) * 2001-03-07 2005-06-21 Nokia Corporation Predefined messages for wireless multiplayer gaming
US20050097007A1 (en) * 2001-06-25 2005-05-05 Microsoft Corporation Client portal
US20030105820A1 (en) * 2001-12-03 2003-06-05 Jeffrey Haims Method and apparatus for facilitating online communication
US7133368B2 (en) * 2002-02-01 2006-11-07 Microsoft Corporation Peer-to-peer method of quality of service (QoS) probing and analysis and infrastructure employing same
US7376696B2 (en) * 2002-08-27 2008-05-20 Intel Corporation User interface to facilitate exchanging files among processor-based devices
US20040128250A1 (en) * 2002-09-16 2004-07-01 Allen Fox On-line software rental
US20040128252A1 (en) * 2002-10-09 2004-07-01 Sony Corporation Information processing device, contents distribution server, license server, and method and computer program
US20040138910A1 (en) * 2002-10-30 2004-07-15 Yohichiroh Matsuno Service providing apparatus, service providing method and computer-readable storage medium
US20040203437A1 (en) * 2002-11-27 2004-10-14 Jeff Burch Systems and methods for measurement and/or control using mobile probes
US7418663B2 (en) * 2002-12-19 2008-08-26 Microsoft Corporation Contact picker interface
US20050273439A1 (en) * 2003-02-07 2005-12-08 Wei Yen System and method for generating new licenses
US20040235567A1 (en) * 2003-05-20 2004-11-25 Sony Computer Entertainment America Inc., Foster City, Ca Video game method and system with content-related options
US20060178216A1 (en) * 2003-07-15 2006-08-10 Shea Mattew T Multi-session user launching and invitation system and method
US7517282B1 (en) * 2003-08-04 2009-04-14 Microsoft Corporation Methods and systems for monitoring a game to determine a player-exploitable game condition
US7634558B1 (en) * 2003-09-22 2009-12-15 Sprint Spectrum L.P. Method and system for updating network presence records at a rate dependent on network load
US7288028B2 (en) * 2003-09-26 2007-10-30 Microsoft Corporation Method and apparatus for quickly joining an online game being played by a friend
US20050091164A1 (en) * 2003-10-24 2005-04-28 Thomas Bryan Varble Method and apparatus for the rental or sale, and secure distribution of digital content
US20080125226A1 (en) * 2003-12-22 2008-05-29 Francis Emmerson Online Gaming
US20050286519A1 (en) * 2004-06-29 2005-12-29 Damaka, Inc System and method for peer-to peer hybrid communications
US20070165629A1 (en) * 2004-06-29 2007-07-19 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
US20060025216A1 (en) * 2004-07-29 2006-02-02 Nintendo Of America Inc. Video game voice chat with amplitude-based virtual ranging
US20060036549A1 (en) * 2004-08-12 2006-02-16 Bo Wu Digital media distribution
US7435179B1 (en) * 2004-11-15 2008-10-14 Sprint Spectrum L.P. Location-based authorization of gaming action in wireless communication gaming devices
US20060136584A1 (en) * 2004-12-17 2006-06-22 Nokia Corporation System, network entity, client, method and computer program product for managing a contact list

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060258417A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Mapping online service user id to portal user id
US20090019154A1 (en) * 2005-05-13 2009-01-15 Yahoo! Inc. Enabling rent/buy redirection in invitation to an online service
US7685241B2 (en) * 2005-05-13 2010-03-23 Yahoo! Inc. Mapping online service user ID to portal user ID
US8108515B2 (en) 2005-05-13 2012-01-31 Yahoo! Inc. Enabling rent/buy redirection in invitation to an online service
US20080313636A1 (en) * 2007-06-14 2008-12-18 Igt System and method for secure automated data collection
US8932137B2 (en) * 2007-06-14 2015-01-13 Igt System and method for secure automated data collection
US8060604B1 (en) * 2008-10-10 2011-11-15 Sprint Spectrum L.P. Method and system enabling internet protocol multimedia subsystem access for non internet protocol multimedia subsystem applications
US20100306232A1 (en) * 2009-05-28 2010-12-02 Harris Corporation Multimedia system providing database of shared text comment data indexed to video source data and related methods
US20140317214A1 (en) * 2011-03-31 2014-10-23 Zynga Inc. Sending out-of-band instant messages from a game networking system

Also Published As

Publication number Publication date
WO2006124733A3 (en) 2009-05-28
WO2006124733A2 (en) 2006-11-23

Similar Documents

Publication Publication Date Title
US8108515B2 (en) Enabling rent/buy redirection in invitation to an online service
US7685241B2 (en) Mapping online service user ID to portal user ID
US20060259632A1 (en) Redirection and invitation for accessing an online service
US20060259623A1 (en) Proxy for enabling communication between mobile device and game service
US6699125B2 (en) Game server for use in connection with a messenger server
US8799400B2 (en) System and method for managing multiple queues of non-persistent messages in a networked environment
US9700791B2 (en) Overlaying interactive video game play with real-time chat sessions with game switching
US6863612B2 (en) System and method for interactive on-line gaming
JP4411125B2 (en) How to provide games to users
US7587482B2 (en) Multimodal interface for mobile messaging
CA2476158C (en) A system, computer product and method for enabling multi-player gaming on a wireless device
US7707292B2 (en) Method for signing into a mobile device over a network
US20020090996A1 (en) Game machine, server system, information service method and recording medium
US20140372516A1 (en) System and method for providing a scalable translation between polling-based clients and connection-based message queues
US20060258461A1 (en) Detecting interaction with an online service
CA2537852A1 (en) Autoconfiguration method for interactive on-line gaming systems
WO2007112686A1 (en) Instant communication system and method based on wap
KR101619859B1 (en) Method, System and Computer-readable Storage Medium of On-Line Game on the base of Simultaneous Log-in to a Unique Account ID of the plural Game Terminals
CN101495984A (en) Proxy for enabling communication between mobile device and game service
JP2003126556A (en) Method and system for implementing network game using semantic information network, terminal, program and recording medium
WO2002098152A1 (en) Applications platform

Legal Events

Date Code Title Description
AS Assignment

Owner name: YAHOO|INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BEKMAN, DENIS;CRAWFORD, LEE;MACNISH, JESSE;REEL/FRAME:017657/0542;SIGNING DATES FROM 20060510 TO 20060512

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: YAHOO HOLDINGS, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YAHOO| INC.;REEL/FRAME:042963/0211

Effective date: 20170613

AS Assignment

Owner name: OATH INC., NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:YAHOO HOLDINGS, INC.;REEL/FRAME:045240/0310

Effective date: 20171231