The present invention will be better understood and its advantages will become more apparent to those skilled in the art by reference to the following drawings, in conjunction with the accompanying specification, in which:
The present invention is a method, apparatus and computer program product for providing the ability to create customizable text messages for buddies and to associate a buddy with a particular program such as a “to-do” list or calendar.
Reference now being made to
Bus 122 represents any type of device capable of providing communication of information within Computer System 100 (e.g., System bus, PCI bus, cross-bar switch, etc.)
Processor 112 can be a general-purpose processor (e.g., the PowerPC™ manufactured by IBM or the Pentium™ manufactured by Intel) that, during normal operation, processes data under the control of an operating system and application software 110 stored in a dynamic storage device such as Random Access Memory (RAM) 114 and a static storage device such as Read Only Memory (ROM) 116. The operating system preferably provides a graphical user interface (GUI) to the user.
The present invention, including the alternative preferred embodiments, can be provided as a computer program product, included on a machine-readable medium having stored on it machine executable instructions used to program computer system 100 to perform a process according to the teachings of the present invention.
The term “machine-readable medium” as used in the specification includes any medium that participates in providing instructions to processor 112 or other components of computer system 100 for execution. Such a medium can take many forms including, but not limited to, non-volatile media, and transmission media. Common forms of non-volatile media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, a Compact Disk ROM (CD-ROM), a Digital Video Disk-ROM (DVD-ROM) or any other optical medium whether static or rewriteable (e.g., CDRW and DVD RW), punch cards or any other physical medium with patterns of holes, a programmable ROM (PROM), an erasable PROM (EPROM), electrically EPROM (EEPROM), a flash memory, any other memory chip or cartridge, or any other medium from which computer system 100 can read and which is suitable for storing instructions. In the preferred embodiment, an example of a non-volatile medium is the Hard Drive 102.
Volatile media includes dynamic memory such as RAM 114. Transmission media includes coaxial cables, copper wire or fiber optics, including the wires that comprise the bus 122. Transmission media can also take the form of acoustic or light waves, such as those generated during radio wave or infrared data communications.
Moreover, the present invention can be downloaded as a computer program product where the program instructions can be transferred from a remote computer such as server 139 to requesting computer system 100 by way of data signals embodied in a carrier wave or other propagation medium via network link 134 (e.g., a modem or network connection) to a communications interface 132 coupled to bus 122.
Communications interface 132 provides a two-way data communications coupling to network link 134 that can be connected, for example, to a Local Area Network (LAN), Wide Area Network (WAN), or as shown, directly to an Internet Service Provider (ISP) 137. In particular, network link 134 may provide wired and/or wireless network communications to one or more networks.
ISP 137 in turn provides data communication services through the Internet 138 or other network. Internet 138 may refer to the worldwide collection of networks and gateways that use a particular protocol, such as Transmission Control Protocol (TCP) and Internet Protocol (IP), to communicate with one another. ISP 137 and Internet 138 both use electrical, electromagnetic, or optical signals that carry digital or analog data streams. The signals through the various networks and the signals on network link 134 and through communication interface 132, which carry the digital or analog data to and from computer system 100, are exemplary forms of carrier waves transporting the information.
In addition, multiple peripheral components can be added to computer system 100. For example, audio device 128 is attached to bus 122 for controlling audio output. A display 124 is also attached to bus 122 for providing visual, tactile or other graphical representation formats. Display 124 can include both non-transparent surfaces, such as monitors, and transparent surfaces, such as headset sunglasses or vehicle windshield displays.
A keyboard 126 and cursor control device 130, such as mouse, trackball, or cursor direction keys, are coupled to bus 122 as interfaces for user inputs to computer system 100.
The application software 110 can be an instant messaging program such as SameTime™ by IBM. The execution of the application software 110 on computer system 100 is explained in greater detail below.
Reference now being made to
Clients 202 and 208-N can be any type of computer system capable of supporting instant messaging communication (e.g., computer system 100, cell phone, PDA, and the like).
Server 206 is representative of any type of computer that is capable of providing instant messaging services (e.g., a web server). In this example, Server 206 maintains a list 206a of users of the instant messaging service and their status.
Communication medium 204 provides communication between each of the clients 201 and 208-N and server 206, and can be implemented using well-known and understood configurations (e.g., ISP 137 and Internet 138 of
Details concerning the provision of instant messaging by the server 206 to clients 201 and 208-N are explained in connection with
Reference now being made to
The method begins when one of the users of one of the clients such as client 202 initiates an instant messaging session by connecting to server 206 and logging on to the instant messaging service (Steps 300-302). Once communication has been established, client 202 sends the server 206 connection information for client 202 (i.e., IP address and port assigned to the instant messaging software, and buddy list (alternatively, the buddy list can be kept at server 206)) (Step 304).
Server 206 sends the status of each listed buddy to client 202 and the status of the user of client 202 to any other clients 208-N that have this user listed as a buddy (Step 306). If server 206 determines that any of the other users of clients 208-N are logged on, then it sends their connection information to client 202 and the connection information for client 202 to them (Step 308).
Upon receiving the connection information, client 202 and clients 208-N update the status of their buddy lists accordingly (e.g., status=active if signed in) and a notification such as “buddy 1 is signed in” or “buddy 1 is signed out” is displayed in a pop-up window or the like. A conversation can be initiated with an active buddy at this time (Step 310).
Reference now being made to
The user of client 202 can initiate a conversation with any active buddy such as buddy1 by double clicking them. In this example, it can be assumed that buddy 1 represents the user on client 208. The instant messages between client 202 and client 208 are sent directly to each of their respective IP address and port as illustrated in
The problem with existing solutions for instant messaging services is that they fail to provide any means for customizing the messages that are displayed when the status of a buddy changes. In addition, they also fail to allow the user to associate lists or other programs with a particular buddy. The present invention provides these additional features as explained below.
Reference now being made to
It should be noted that the particular means used for selecting the buddy can be numerous and are specific to the particular design supported by the instant messaging program, and therefore, the current example of double clicking and the use of pop-up windows are not to be considered a limitation on the many applications of the present invention, but rather, as a convenient manner in which to provide an explanation.
The method continues when the instant messaging program 400 (via itself or a plug-in), in response to the selection of buddy 2, creates a pop-up window 704 to display the various associations that can be attached to buddy 2 as shown in
In response to the selection, another pop-up window or menu list 804 is displayed as shown in
In response to this selection, a pop-up window 904 is created and the user is provided with the ability to type any specialized text for buddy2 that would be displayed upon the status of buddy 2 becoming active as shown in
Alternatively, the user could have selected another option such as list from pop-window 704 as shown in
The user could have also selected another option that allows one or more programs to be associated with a particular buddy. For example, the user could have selected the calendar option as illustrated in
In this instance, a pop-up window 1404 for displaying a calendar is displayed as shown in
It is thus believed that the operation and construction of the present invention will be apparent from the foregoing description. While the method and system shown and described has been characterized as being preferred, it will be readily apparent that various changes and/or modifications could be made without departing from the spirit and scope of the present invention as defined in the following claims.