`
`
`
`US 6,757,365 B1
`(10) Patent N0.:
`(12) United States Patent
`
`
`
`
`
`
`
`
`
`
`
`
`
`(45) Date of Patent:
`Jun. 29, 2004
`Bogard
`
`U5006757365B1
`
`
`
`7/2002 Sorsa ...................... 704/270.1
`6,424,945 B1 *
`
`
`
`
`
`
`
`8/2002 Kay et a1.
`...... 709/206
`6,430,602 B1 *
`
`
`8/2002 Ogle et al.
`...... 709/207
`6,430,604 B1 *
`..
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`6,463,142 B1 * 10/2002 Kilp ........................ 379/8811
`OTHER PUBLICATIONS
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Diament et al. Method an apparatus for telephony—enabled
`
`
`
`
`
`instant messaging Jun. 13, 2002*
`Diament et al., Method and Apparatus for Telephony—en-
`
`
`
`
`
`
`
`
`
`
`
`
`
`abled Instant Messaging Jun. 13, 2002*
`
`
`
`
`
`
`Myers, Telephone Based Access to Intant Messaging, May
`
`
`17, 2001*
`* cited by examiner
`
`
`.
`.
`Prtmary Examzner—Fan Tsang
`
`
`
`Assistant Examiner—Gerald Gauthier
`
`
`
`(74) Attorney, Agent, or Firm—Bever, Hoffman & Harms,
`
`
`
`
`
`
`LLP; Jeanette S. Harms
`
`
`
`
`
`(57)
`ABSTRACT
`Amethod and apparatus for enabling users of a phone based
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`speech activated system such as a voice portal to commu-
`nicate With users of an Internet based instant messenger (IM)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`service is described. Phone based users are able to send and
`receive IMs. Incoming messages can cause an asynchronous
`
`
`
`
`
`
`
`notification in the user’s current voice application and the
`
`
`
`
`
`
`
`
`user can (if they desire) switch contexts to hear the IM and
`
`
`
`
`
`
`
`
`respond. Sent messages may be expeditiously sent to users
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`of the GUI as a hypertext link to a recorded audio. Other
`
`
`
`
`
`
`
`
`
`sending formats are also possible; similarly, buddy lists can
`
`
`be surlported
`
`(54)
`
`
`
`INSTANT MESSAGING VIA TELEPHONE
`
`
`
`INTERFACES
`
`
`
`
`
`(75)
`
`
`
`
`
`
`
`Inventor: Travis A. Bogard, San Francisco, CA
`
`(US)
`
`
`
`
`
`
`
`(73) Assignee: Tellme Networks, Inc., Mountain View,
`
`
`CA (us)
`
`
`
`( * ) Notice:
`
`
`
`Subject to any disclaimer, the term of this
`
`
`
`
`
`
`patent is extended or adjusted under 35
`
`
`
`
`
`
`
`
`
`U.S.C. 154(b) by 213 days.
`
`
`
`
`
`(21) Appl. No.: 09/691,606
`Filed:
`Oct. 16, 2000
`
`
`
`
`
`(22)
`
`
`
`7
`
`
`
`
`(51)
`Int. Cl.
`(52) US. Cl.
`
`
`
`
`
`
`................................................. H04M 1/64
`................................ 379/8817; 704/270.1;
`
`
`
`709/206
`
`
`
`
`
`
`
`(58) Fleld 0:785:35: 88148816883229/27413’22281?
`
`
`
`
`
`
`’ 764/2’70 1',709/206’
`'
`’
`'
`’
`'
`
`
`'
`’
`
`(56)
`
`
`References Cited
`
`
`U.S. PATENT DOCUMENTS
`
`
`
`
`
`
`
`
`
`
`g’gé’gg: 2 * 3133: 22?: et al' """""" 379/8804
`
`
`
`...... 709/206
`6,301,609 B1 * 10/2001 Aravamudan et a1.
`
`
`
`
`
`
`
`.............. 709/206
`6:324:569 B1 * 11/2001 Ogilvie et a1.
`
`
`
`
`
`
`
`379/26501
`6,377,944 B1 *
`4/2002 Busey et a1.
`
`
`
`
`
`
`
`6,405,035 B1 *
`6/2002 Singh ...................... 455/414
`
`
`
`
`
`
`6,424,647 B1 *
`7/2002 Ng et a1.
`.................... 370/352
`
`
`
`
`
`
`
`
`7 Claims, 5 Drawing Sheets
`
`
`
`
`
`
`
`
`Wireless
`
`Telephone
`
`
`301
`
`Voice Portal
`Telephone Gateway
`
`
`Telephone Network
`
`
`
`
`
`
`
`31 0
`307
`304
`
`
`
`
`
`
`Telephone
`
`
`300
`
`
`
`
`
`
`Computer
`302
`
`
`Internet
`
`
`306
`
`
`
`
`
`Instant Messenging
`
`
`
`Sewer
`
`
`308
`
`
`
`Page 1 of 14
`
`LG EXHIBIT 1007
`
`Page 1 of 14
`
`LG EXHIBIT 1007
`
`
`
`
`US. Patent
`
`
`
`
`
`Jun. 29, 2004
`
`
`
`
`Sheet 10f5
`
`
`
`
`
`US 6,757,365 B1
`
`Buddy Chat
`/ Window 200
`
`
`Message History
`
`
`
`
`
`
`3 User1: HayJoe
`
`v Family (511])
`
`
`
`5: v Co-Wotkers i3I12 !
`Buddy2
`Buddy3
`Buddy4
`> Offline (’1 2mm
`
`Send Instant
`
`Message
`102
`
`
`
`
`
`Over
`
`Internet
`
`Voice
`
`Chat 104
`
`
`
`
`
`Message
`
`Composition 204
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Buddy1:HeyTon-i
`
`
`Over Internet
`
`
`
`Voice Chat
`
`
`104
`
`
`
`Figure 2
`
`
`(Prior Art)
`
`
`
`
`
`
`Figure 1
`
`(Prior Art)
`
`
`
`Page 2 of 14
`
`Page 2 of 14
`
`
`
`
`US. Patent
`
`
`
`
`
`Jun. 29, 2004
`
`
`
`
`Sheet 2 0f 5
`
`
`
`
`
`US 6,757,365 B1
`
`
`m239".
`
`oEEton.86>
`
`
`
`
`
`9658;E32:
`
`52%
`
`
`
`mom
`
`
`
`3595
`
`
`
`mom
`
`
`
`$398@8828
`
`
`gm
`
`
`
`acofigfi.
`
`won
`
`x5262
`
`
`--“““‘Z‘
`-'.""l‘:’
`
`%
`
`Page 3 of 14
`
`$22?
`
`
`
`
`89328
`
`Sm
`
`
`
`mm
`
`
`228E
`
`com
`
`
`
`@388
`
`mom
`
`Page 3 of 14
`
`
`
`
`US. Patent
`
`Jun. 29, 2004
`
`Sheet 3 0f 5
`
`US 6,757,365 B1
`
`E92:882
`
`
`
`853389.58me
`
`08
`
`E2902>552
`
`mom
`
`83ea“28_o>938m:9co_~_cm82
`58%8:
`
`9995:2$89
`
`__m”86>9“x38289
`
`
`
`E3395528_>__9%:
`
`REE«x988me
`
`mom
`
`C802538s:8:
`
`52:95:5E2909E888:8
`8_o>
`
`won
`
`m959".
`
`v959".
`
`
`
`E92:88%
`
`88238@6885
`
`ooq
`
`:55@2825E32520:Bow
`
`meV
`
`8_5:8_>__380
`
`>UU=Q
`
`wow
`
`:88anwmm
`
`wow
`
`
`
`...m:_m8mm_>_93:5
`
`88:88:m2
`
`Page 4 of 14
`
`Page 4 of 14
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Jun. 29, 2004
`
`Sheet 4 0f 5
`
`US 6,757,365 B1
`
`Ema;$82
`
`
`
`8:8:an9638c.
`
`eon
`
`
`
`>63626:8
`
`NE
`
`EmcozméesE53$3:$82
`
`E822555m:8£233
`
`«on
`
`N.2:9".
`
`o959".
`
`
`
`
`
`£ondosagesLo».52%_>__22.0
`
`
`
`EmHmEmmmoo<
`
`
`
`cofigaamgammwwe
`
`08
`
`856E53mm5:>520
`8938:.
`
`mom
`
`
`
`mmmwmmmEx08Em
`
`
`
`£32;2255;)
`
`mmcowmqméfie
`
`808$:
`
`woo
`
`
`
`...mmmmwmm_>_856933%
`
`Page 5 of 14
`
`Page 5 of 14
`
`
`
`
`
`
`
`US. Patent
`
`Jun. 29, 2004
`
`Sheet 5 0f 5
`
`US 6,757,365 B1
`
`m959”.
`
`w2:9".
`
`8:856:he86:
`
`_>__asmmmmwmmgho
`
`63%
`
`com
`
`.3:>502
`
`.3_>_w=ocoEo§mm
`
`25ficgm2226
`
`
`
`co=mo__&mEmtzo
`
`mom
`
`
`
`5:695m:;o__<
`
`
`
`$9:9538:.
`
`gm
`
`£83958
`
`Eng68:ng
`
`mcamwmme
`
`8w
`
`52%_>__9cocgw
`
`c_cozmées9%:
`
`2:03Em:
`
`mom
`
`
`
`232968:me
`
`
`vow
`
`5..Emaoa
`
`mammmmweB8:856:
`
`
`
`...cozmo_Eo:macaoEoc>m<
`
`
`
`...mo=mmmaEmamm
`
`Page 6 of 14
`
`Page 6 of 14
`
`
`
`
`
`
`
`1
`
`INSTANT MESSAGING VIA TELEPHONE
`
`
`
`
`INTERFACES
`
`
`
`
`US 6,757,365 B1
`
`2
`
`of the traditional computer based IM service to be notified
`
`
`
`
`
`
`
`
`when a buddy is signed in by way of the phone and message
`
`
`
`
`
`
`
`
`that buddy, and vice versa. Similarly, communication
`
`
`
`
`
`
`
`between phone based users by way of the IM service should
`
`
`
`
`
`
`
`
`be supported.
`
`
`SUMMARY OF THE INVENTION
`
`
`
`
`
`
`
`
`
`A method and apparatus for enabling users of a phone
`
`
`
`
`
`
`
`
`
`based speech activated system such as a voice portal to
`
`
`
`
`
`
`
`
`communicate with users of an Internet based instant mes-
`
`
`
`
`
`
`
`senger (IM) service is described. Phone based users are able
`
`
`
`
`
`
`
`
`
`to send and receive IMs. Incoming messages can cause an
`
`
`
`
`
`
`
`
`
`asynchronous notification in the user’s current voice appli-
`
`
`
`
`
`
`
`cation and the user can (if they desire) switch contexts to
`
`
`
`
`
`
`
`
`
`
`hear the IM and respond.
`
`
`
`
`
`Sent messages may be expeditiously sent to users of the
`
`
`
`
`
`
`
`GUI as a hypertext link to a recorded audio. Other formats
`
`
`
`
`
`
`
`may include textual representations of speech, e.g. through
`
`
`
`
`
`
`the results of speech recognition as well as initiation of a
`
`
`
`
`
`
`
`
`voice communication in the format of the IM protocol.
`
`
`
`
`
`
`
`
`Buddy lists can be provided, e.g. phone based users can
`
`
`
`
`
`
`
`
`
`
`indicate those users they want to know the online/offline
`
`
`
`
`
`
`
`status for. The buddy list might be presented verbally.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Notably, the IM functionality changes the general
`BRIEF DESCRIPTION OF THE FIGURES
`
`
`
`
`FIG. 1 illustrates a prior art graphical user interface based
`
`
`
`
`
`
`
`
`
`buddy list.
`FIG. 2 illustrates a prior art graphical user interface based
`
`
`
`
`
`
`
`
`
`buddy chat.
`FIG. 3 illustrates a system including embodiments of the
`
`
`
`
`
`
`invention used to provide instant messaging service to users
`
`
`
`
`
`
`
`of telephones.
`
`
`FIG. 4 is a process flow diagram for determining whether
`
`
`
`
`
`
`
`another user is online in the instant messaging (IM) service.
`
`
`
`
`
`
`
`
`FIG. 5 is a process flow diagram for initiating and sending
`
`
`
`
`
`
`
`
`an IM.
`
`
`FIG. 6 is a process flow diagram for retrieving stored IMs.
`
`
`
`
`
`
`
`
`FIG. 7 is a process flow diagram for querying an IM
`
`
`
`
`
`
`
`
`server for information.
`
`
`
`FIG. 8 is a process flow diagram for registering a tele-
`
`
`
`
`
`
`
`phone user’s presence with an IM service.
`
`
`
`
`
`FIG. 9 is a process flow diagram for asynchronous noti-
`
`
`
`
`
`
`
`fication of incoming IMs.
`
`
`
`DETAILED DESCRIPTION
`
`A. Introduction
`
`
`A voice portal supporting electronic commerce over a
`
`
`
`
`
`
`
`telephone interface is described. The voice portal allows
`
`
`
`
`
`
`
`
`users of telephones, including wireless telephones, to access
`
`
`
`
`
`
`a voice portal by dialing a phone number to purchase goods
`
`
`
`
`
`
`
`
`and services,
`interact with applications, and access IM
`
`
`
`
`
`
`
`
`services. The information provided over the voice portal
`
`
`
`
`
`
`
`
`may come from the World Wide Web (WWW), databases,
`
`
`
`
`
`
`
`
`
`third parties, and/or other sources.
`
`
`
`
`
`The voice portal can receive dual-tone multi-frequency
`
`
`
`
`
`
`
`(DTMF or touch-tone) commands as well as spoken com-
`
`
`
`
`
`
`mands to further control the content presented and direct
`
`
`
`
`
`
`
`
`commerce transactions as well as the manner of presenta-
`
`
`
`
`
`
`
`tion. The term audio request, or input, is used to refer to
`
`
`
`
`
`
`
`
`
`either a voice or touch-tone input, or a combination of the
`
`
`
`
`
`
`
`two types of input.
`
`
`
`Embodiments of the invention can use telephone identi-
`
`
`
`
`
`
`
`fying information to personalize caller interactions with the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`BACKGROUND OF THE INVENTION
`
`
`
`1. Field of the Invention
`
`
`
`
`This invention relates to the field of information services.
`
`
`
`
`
`
`
`In particular,
`the invention relates to technologies for
`
`
`
`
`
`
`
`
`improving voice-based access to instant messaging services
`
`
`
`
`
`
`over a telephone interface.
`
`
`
`2. Description of the Related Art
`
`
`
`
`
`Instant Messaging services such as the popular ICQ(TM)
`
`
`
`
`
`
`
`and AOL INSTANT MESSANGER(TM), also referred to as
`
`
`
`
`
`
`
`AIM, both operated by America Online, Inc., Dulles, Va.
`
`
`
`
`
`
`
`
`
`(AOL), have risen in popularity in the last few years and
`
`
`
`
`
`
`
`
`
`
`shown explosive growth. Older protocols and services such
`
`
`
`
`
`
`
`
`as Internet Relay Chat (IRC), see RFC 1459, and the even
`
`
`
`
`
`
`
`
`
`
`
`older talk program (primarily found on UNIX(TM)-type
`
`
`
`
`
`
`
`20
`
`
`
`
`
`
`
`computers) have quickly been eclipsed. Competitors to AOL
`such as Microsoft Corporation, Redmond, Wash., and
`
`
`
`
`
`
`
`Yahoo!, Inc., Santa Clara, Calif., have introduced competing
`
`
`
`
`
`
`
`
`instant messenger products that operate in a similar overall
`
`
`
`
`
`
`
`fashion to AIM which shall be used as a reference herein.
`
`
`
`
`
`
`
`Turning to prior art FIGS. 1—2, exemplary screenshots
`
`
`
`
`
`
`
`from AIM operating under the Windows(TM) operating sys-
`
`
`
`
`
`
`
`
`tem are shown. FIG. 1 shows the buddy list 100. The buddy
`
`
`
`
`
`
`
`
`
`list 100 allows a user of AIM to see which buddies (other
`
`
`
`
`
`
`
`
`
`users of interest
`to our particular user, e.g.
`friends,
`
`
`
`
`
`
`
`
`
`co-workers, family members) are signed on, e.g. Buddyl,
`
`
`
`
`
`
`
`
`Buddy2, Buddy3, and Buddy4 in this example. When the
`
`
`
`
`
`
`
`user desires to instant message, or IM, with a buddy, she
`
`
`
`
`
`
`
`
`simply clicks on the send instant message button 102 and a
`
`
`
`
`
`
`
`
`
`window such as the buddy chat window 200 of FIG. 2
`
`
`
`
`
`
`
`
`appears. The buddy chat window 200 allows a user to see a
`
`
`
`
`
`
`
`
`
`message history 202 of previous messages in an IM session
`
`
`
`
`
`
`and compose additional messages in the message composi-
`
`
`
`
`
`
`
`tion areas 204.
`
`
`
`if both users have sufficient computer
`Additionally,
`
`
`
`
`
`
`
`equipment, e.g. microphones, speakers, fast enough Internet
`
`
`
`
`
`
`connections, etc.,
`the newer versions of the AIM client
`
`
`
`
`
`
`
`
`
`software allow computer-to-computer voice communica-
`
`
`
`
`
`tions over the packet switched Internet backbone, e.g. by
`
`
`
`
`
`
`
`
`clicking on the over Internet voice chat button 104. Clicking
`
`
`
`
`
`
`
`
`
`on the button will bring up a window for monitoring
`
`
`
`
`
`
`
`
`
`performance and,
`in half duplex mode, controlling who
`
`
`
`
`
`
`
`
`speaks when.
`
`
`Previous IM systems do not provide a mechanism for
`
`
`
`
`
`
`
`
`allowing users of a basic telephone (or wireless telephone)
`
`
`
`
`
`
`
`to send and receive instant messages. Further, the existing
`
`
`
`
`
`
`
`
`
`systems are not adapted to handle voice only users, e. g. users
`
`
`
`
`
`
`
`
`
`who do not have a graphical user interface (GUI) for
`
`
`
`
`
`
`
`
`reviewing buddy lists and sending/receiving text messages.
`
`
`
`
`
`
`
`On the telephone side, several types of “party lines” have
`
`
`
`
`
`
`
`
`been offered, frequently of the pay variety (900 number in
`
`
`
`
`
`
`
`
`the United States). However, these services have never been
`
`
`
`
`
`
`
`
`
`integrated with an IM service and further these services do
`
`
`
`
`
`
`
`not have an “appearance”/“buddy” concept to allow specific
`
`
`
`
`
`
`users to contact each other. Rather, they are simply large
`
`
`
`
`
`
`
`
`
`conference calls.
`
`
`Lastly, previous systems have not allowed two telephone
`
`
`
`
`
`
`
`
`users to be connected by way of a computer based identity
`
`
`
`
`
`
`such as an instant message appearance.
`
`
`
`
`
`Accordingly, what is needed is a method and apparatus for
`
`
`
`
`
`
`
`allowing users with telephones to access IM services. The
`
`
`
`
`
`
`
`system should support a number of features that allow users
`
`
`
`
`
`
`
`
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Page 7 of 14
`
`Page 7 of 14
`
`
`
`
`
`US 6,757,365 B1
`
`
`3
`voice portal. This allows the system to present highly
`
`
`
`
`
`
`
`
`customized information to each caller based on a personal
`
`
`
`
`
`
`profile the system associates with the telephone identifying
`
`
`
`
`
`
`
`
`information. Additionally, since a single user can access the
`
`
`
`
`
`
`
`
`voice portal from a number of telephones, embodiments of
`
`
`
`
`
`
`the invention may construct user profiles that allow the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`telephone identifying information from multiple telephones
`to be associated with a single user profile.
`In some
`
`
`
`
`
`
`
`
`
`embodiments, the telephone identifying information may be
`
`
`
`
`
`
`used to access authenticating information from a user profile
`
`
`
`
`
`
`
`for provision to an IM service, e.g. the IM service username
`
`
`
`
`
`
`
`and password might be stored in the user profile.
`
`
`
`
`
`
`
`The invention will be described in greater detail as
`
`
`
`
`
`
`
`
`
`follows. First, a number of definitions useful to understand-
`
`
`
`
`
`
`ing the invention are presented. Then,
`the hardware and
`
`
`
`
`
`
`
`
`
`software architecture for one embodiment of a voice portal
`
`
`
`
`
`
`
`presented. Next, features provided by embodiments of the
`
`
`
`
`
`
`invention are discussed in greater detail.
`
`
`
`
`
`B. Definitions
`
`
`1. Telephone Identifying Information
`
`
`
`
`For the purposes of this application, the term telephone
`
`
`
`
`
`
`
`
`identifying information will be used to refer to ANI
`
`
`
`
`
`
`
`
`
`information, CID information, and/or some other technique
`
`
`
`
`
`
`
`for automatically identifying the source of a call and/or other
`
`
`
`
`
`
`
`
`call setup information. For example, telephone identifying
`
`
`
`
`
`
`
`information may include a dialed number identification
`
`
`
`
`
`
`service (DNIS). Similarly, CID information may include text
`
`
`
`
`
`
`
`
`data including the subscriber’s name and/or address, e.g.
`
`
`
`
`
`
`
`
`“Jane Doe”. Other examples of telephone identifying infor-
`
`
`
`
`
`
`
`mation might
`include the type of calling phone, e.g.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`wireless, pay phone, and/or hospital phone.
`Additionally, the telephone identifying information may
`
`
`
`
`
`
`include wireless carrier specific identifying information, e.g.
`
`
`
`
`
`
`
`location of wireless phone now, etc. Also, signaling system
`
`
`
`
`
`
`
`
`seven (SS7) information may be included in the telephone
`
`
`
`
`
`
`
`identifying information.
`
`
`2. User Profile
`
`
`
`A user profile is a collection of information about a
`
`
`
`
`
`
`particular user. The user profile typically includes collec-
`
`
`
`
`
`
`
`
`tions of different information as shown and described more
`
`
`
`
`
`
`
`fully in connection with FIGS. 3 and 4. Notably, the user
`
`
`
`
`
`
`
`
`
`profile contains a combination of explicitly made selections
`
`
`
`
`
`
`and implicitly made selections.
`
`
`
`
`Explicitly made selections in the user profile stem from
`
`
`
`
`
`
`
`
`requests by the user to the system. For example, the user
`
`
`
`
`
`
`
`
`
`might add business news to the main topic list. Typically,
`
`
`
`
`
`
`
`
`
`explicit selections come in the form of a voice, or touch-tone
`
`
`
`
`
`
`
`command, to save a particular location, e.g. “Add to my
`
`
`
`
`
`
`
`favorites”, “Remember this”, “Bookmark it”, “shortcut
`
`
`
`
`
`
`
`
`
`
`
`
`
`this”, pound (#) key touch-tone, etc., or through adjustments
`to the user profile made through the web interface using a
`
`
`
`
`
`
`
`
`
`
`computer.
`
`Additionally, the user profile provides a useful mecha-
`
`
`
`
`
`
`
`nism for associating telephone identifying information with
`
`
`
`
`
`
`
`a single user, or entity. For example, Jane Doe may have a
`
`
`
`
`
`
`
`
`
`
`
`home phone, a work phone, a cell phone, and/or some other
`
`
`
`
`
`
`
`
`
`telephones. Suitable telephone identifying information for
`
`
`
`
`
`
`each of those phones can be associated in a single profile for
`
`
`
`
`
`
`
`
`Jane. This allows the system to provide uniformity of
`
`
`
`
`
`
`
`
`customization to a single user, irrespective of where they are
`
`
`
`
`
`
`
`calling from.
`
`
`In contrast, implicit selections come about through the
`
`
`
`
`
`
`
`
`conduct and behavior of the user. For example, if the user
`
`
`
`
`
`
`
`
`
`repeatedly asks for the weather in Palo Alto, Calif.,
`the
`
`
`
`
`
`
`
`
`
`system may automatically provide the Palo Alto weather
`
`
`
`
`
`
`
`
`report without further prompting. In other embodiments, the
`
`
`
`
`
`
`
`
`10
`
`
`
`15
`
`
`
`20
`
`
`
`25
`
`
`
`30
`
`
`
`35
`
`
`
`40
`
`
`
`45
`
`
`
`50
`
`
`
`55
`
`
`
`60
`
`
`
`65
`
`
`
`4
`
`user may be prompted to confirm the system’s implicit
`
`
`
`
`
`
`
`choice, e.g. the system might prompt the user “Would you
`
`
`
`
`
`
`
`
`
`
`like me to include Palo Alto in the standard weather report
`
`
`
`
`
`
`
`
`
`from now on?”
`
`
`
`Additionally, the system may allow the user to customize
`
`
`
`
`
`
`
`
`the system to meet her/his needs better. For example, the
`
`
`
`
`
`
`
`
`
`user may be allowed to control the verbosity of prompts, the
`
`
`
`
`
`
`
`
`dialect used, and/or other settings for the system. These
`
`
`
`
`
`
`
`
`
`customizations can be made either explicitly or implicitly.
`
`
`
`
`
`
`
`For example if the user is providing commands before most
`
`
`
`
`
`
`
`
`prompts are finished, the system could recognize that a less
`
`
`
`
`
`
`
`
`
`verbose set of prompts is needed and implicitly set the user’s
`
`
`
`
`
`
`
`
`
`prompting preference to briefer prompts.
`
`
`
`
`3. Topics and Content
`
`
`
`
`Atopic is any collection of similar content. Topics may be
`
`
`
`
`
`
`
`arranged hierarchically as well. For example, a topic might
`
`
`
`
`
`
`
`be business news, while subtopics might
`include stock
`
`
`
`
`
`
`
`
`quotes, market report, and analyst reports. Within a topic
`
`
`
`
`
`
`
`
`different types of content are available. For example, in the
`
`
`
`
`
`
`
`
`stock quotes subtopic,
`the content might
`include stock
`
`
`
`
`
`
`
`
`quotes. The distinction between topics and the content
`
`
`
`
`
`
`
`
`within the topics is primarily one of degree in that each
`
`
`
`
`
`
`
`
`topic, or subtopic, will usually contain several pieces of
`
`
`
`
`
`
`
`
`
`content.
`
`4. Cookie
`
`
`The term cookie, as used herein, refers to a structured data
`
`
`
`
`
`
`
`
`element formatted according to the general principles of
`
`
`
`
`
`
`
`IETF RFC 2109 and/or some other state management stan-
`
`
`
`
`
`
`
`
`
`dard.
`
`A brief review of RFC 2109 may be useful. The core
`
`
`
`
`
`
`
`
`
`structure of a cookie is a name-value pair. The name is a
`
`
`
`
`
`
`
`token for identifying the cookie, e.g. “Customer”, and the
`
`
`
`
`
`
`
`
`
`value is the value of that corresponding token, e.g. “Jane
`
`
`
`
`
`
`
`
`
`Doe”.
`
`Implicitly, each cookie is associated with a sending
`
`
`
`
`
`
`
`domain on the World Wide Web. According to RFC 2109,
`
`
`
`
`
`
`
`
`the implicitly set domain is the originating domain to which
`
`
`
`
`
`
`
`
`an HTTP request was sent. For example, if an HTTP GET
`
`
`
`
`
`
`
`
`
`
`request is sent to the request host “www.example.com”, then
`
`
`
`
`
`
`
`the cookie set in response to that request would be implicitly
`
`
`
`
`
`
`
`
`associated with “www.example.com”
`
`
`
`Additionally, a number of optional fields can be set, for
`
`
`
`
`
`
`example: a different domain for which the cookie is valid
`
`
`
`
`
`
`
`(Domain); a time to live (Max-Age); a version string
`
`
`
`
`
`
`(Version); etc. The phrases in parenthesis correspond to the
`
`
`
`
`
`
`RFC 2109 standard field names for the options.
`
`
`
`
`
`
`
`5. Demographic and Psychographic Profiles
`
`
`
`
`
`
`
`
`
`
`
`Both demographic profiles and psychographic profiles
`contain information relating to a user. Demographic profiles
`
`
`
`
`
`
`typically include factual information, e.g. age, gender, mari-
`
`
`
`
`
`
`
`
`tal status,
`income, etc. Psychographic profiles typically
`
`
`
`
`
`
`
`include information about behaviors, e.g.
`fun loving,
`
`
`
`
`
`
`
`analytical, compassionate, fast reader, slow reader, etc. As
`
`
`
`
`
`
`
`
`used in this application, the term demographic profile will be
`
`
`
`
`
`
`
`
`used to refer to both demographic and psychographic pro-
`
`
`
`
`
`
`
`files.
`
`6. Locale
`
`
`As used in this application, the term locale refers to any
`
`
`
`
`
`
`
`
`
`geographic area. The geographic area may be a
`
`
`
`
`
`
`neighborhood, a city, a county, a metropolitan region, a state,
`
`
`
`
`
`
`a country, a continent, a group of countries, and/or some
`
`
`
`
`
`
`
`other collection of one or more geographic areas, e.g. all
`
`
`
`
`
`
`
`
`
`United State major metropolitan areas.
`
`
`
`
`
`For this reason, a single user of the system may be
`
`
`
`
`
`
`
`
`
`considered to be in several locales. For example, a caller
`
`
`
`
`
`
`
`from Palo Alto, Calif., might be in the Palo Alto locale, a
`
`
`
`
`
`
`
`
`
`Silicon Valley locale, a San Francisco Bay Area locale, a
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 8 of 14
`
`Page 8 of 14
`
`
`
`
`
`US 6,757,365 B1
`
`5
`
`Northern California locale, a California state locale, and a
`
`
`
`
`
`
`
`United States locale.
`
`
`
`Thus, the telephone identifying information for a single
`
`
`
`
`
`
`
`telephone number can be mapped to a number of system-
`
`
`
`
`
`
`defined locales.
`
`
`
`C. System Overview
`
`
`
`First, the hardware and software architecture of a system
`
`
`
`
`
`
`
`including an embodiment of the invention will be described
`
`
`
`
`
`
`with reference to FIG. 3. FIG. 3 illustrates a system includ-
`
`
`
`
`
`
`
`ing embodiments of the invention used to provide IM
`
`
`
`
`
`
`
`services to users of telephones. The system of FIG. 3 can be
`
`
`
`
`
`
`
`used to allow users of standard telephones and wireless
`
`
`
`
`
`
`
`
`telephones to access a voice portal.
`
`
`
`
`The following lists the elements of FIG. 3 and describes
`
`
`
`
`
`
`
`
`their interconnections. FIG. 3 includes a telephone 300, a
`
`
`
`
`
`
`wireless telephone 301, a computer 302, a telephone net-
`
`
`
`
`
`
`
`work 304, an Internet 306, a telephone gateway 307, an IM
`
`
`
`
`
`
`
`server 308, and a voice portal 310. The wireless telephone
`
`
`
`
`
`
`
`
`
`301 and the telephone 300 are coupled in communication
`
`
`
`
`
`
`
`
`with the telephone network 304. The telephone network 304
`
`
`
`
`
`
`
`
`
`is coupled in communication with the telephone gateway
`
`
`
`
`
`
`
`307. The telephone gateway 307 is coupled in communica-
`
`
`
`
`
`
`
`tion with the voice portal 310. The computer 302 is coupled
`
`
`
`
`
`
`
`
`
`
`in communication with the Internet 306. The Internet 306 is
`
`
`
`
`
`
`
`
`
`coupled in communication with the web server 308. The
`
`
`
`
`
`
`
`
`voice portal 310 and the web server 308 are coupled in
`
`
`
`
`
`
`
`
`
`
`communication with the shared database 312.
`
`
`
`
`
`
`The following describes each of the elements of FIG. 3 in
`
`
`
`
`
`
`
`greater detail. The use of each of the elements will be
`
`
`
`
`
`
`
`
`
`
`
`described further in conjunction with the sections describing
`
`
`
`
`
`
`
`the personalization features.
`
`
`
`The telephone 300 and the wireless telephone 301 are two
`
`
`
`
`
`
`
`
`
`different telephone interfaces to the voice portal 310. The
`
`
`
`
`
`
`
`
`telephone 300 and the wireless telephone 301 may be any
`
`
`
`
`
`
`
`
`
`sort of telephone and/or wireless telephone. For example the
`
`
`
`
`
`
`
`
`telephone 300, or the wireless telephone 301, may be a land
`
`
`
`
`
`
`
`
`line phone, a PBX telephone, a satellite phone, a wireless
`
`
`
`
`
`
`
`telephone, and/or any other type of communication device
`
`
`
`
`
`
`
`
`capable of providing voice communication and/or touch-
`
`
`
`
`
`
`
`tone signals over the telephone network 304. However, any
`
`
`
`
`
`
`
`
`
`audio signal carrying interface could be used.
`
`
`
`
`
`
`The telephone network 304 may be the public switched
`
`
`
`
`
`
`
`telephone network (PSTN) and/or some other type of tele-
`
`
`
`
`
`
`
`
`phone network. For example, some embodiments of the
`
`
`
`
`
`
`
`invention may allow users with a voice over Internet Pro-
`
`
`
`
`
`
`
`
`
`tocol (IP) phone to access the voice portal 310. The tele-
`
`
`
`
`
`
`
`
`
`
`phone network 304 is coupled to the telephone gateway 307
`
`
`
`
`
`
`
`
`that allows the voice communications and/or touch-tone
`
`
`
`
`
`
`
`signals from the telephone network 304 to reach the voice
`
`
`
`
`
`
`
`
`
`portal 310 in usable form. Similarly, the telephone gateway
`
`
`
`
`
`
`
`
`307 allows audio signals generated by the voice portal 310
`
`
`
`
`
`
`
`
`
`to be sent over the telephone network 304 to respective
`
`
`
`
`
`
`
`
`
`telephones, e.g. the telephone 300. The telephone network
`
`
`
`
`
`
`
`304 generally represents an audio signal carrying network.
`
`
`
`
`
`
`
`
`The computer 302 is a computer such as a personal
`
`
`
`
`
`
`
`computer, a thin client computer, a server computer, a
`
`
`
`
`
`
`handheld computer, a set top box computer, and/or some
`
`
`
`
`
`
`
`
`other type of visual web browsing device. The computer 302
`
`
`
`
`
`
`
`
`
`is coupled in communication with the Internet 306, e.g. by
`
`
`
`
`
`
`
`a dial-up connection, a digital subscriber loop (DSL), a cable
`
`
`
`
`
`
`
`
`modem, and/or some other type of connection. This allows
`
`
`
`
`
`
`
`
`the computer 302 to communicate with the IM server 308.
`
`
`
`
`
`
`
`
`The computer 302 typically provides a visual interface to the
`
`
`
`
`
`
`
`
`WW and the IM service, by way of IM server 308, using
`
`
`
`
`
`
`
`web browsing software and IM software such as Internet
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Explorer(TM) from Microsoft Corporation, Redmond, Wash.,
`and AIM.
`
`
`
`
`
`10
`
`
`
`15
`
`
`
`20
`
`25
`
`
`
`30
`
`35
`
`
`
`40
`
`
`
`45
`
`
`
`50
`
`55
`
`
`
`60
`
`65
`
`
`
`Page 9 of 14
`
`
`6
`Additional information regarding voice portal 310 and
`
`
`
`
`
`
`
`various components interfacing with voice portal 310 are
`
`
`
`
`
`
`
`
`discussed in further detail in US. patent application Ser. No.
`
`
`
`
`
`
`
`
`09/426,102, entitled “Method and Apparatus for Electronic
`
`
`
`
`
`
`
`Commerce Using a Telephone Interface”, filed on 22 Oct.
`
`
`
`
`
`
`1999, which is incorporated by reference herein.
`
`
`
`
`
`
`D. Instant Messaging Functionality
`
`
`
`Overview
`
`
`
`
`
`
`
`
`First the usage scenarios are considered. Then, the basic
`
`
`
`
`
`
`
`
`changes to the voice portal 310 to support IM functionality
`
`
`
`
`
`
`will be discussed. Finally, the process flow/implementation
`
`
`
`
`
`for those scenarios is described.
`
`
`
`
`Usage Scenarios
`
`
`It is helpful to understand how the IM functionality will
`
`
`
`
`
`
`
`
`be made available to users of the voice portal 310 by
`
`
`
`
`
`
`
`
`
`
`
`considering a few usage scenarios. The usage scenarios can
`
`
`
`
`
`
`
`
`easily be divided into two primary categories: initiating and
`
`
`
`
`
`
`
`
`receiving.
`In terms of initiating messages four primary
`
`
`
`
`
`
`
`
`sub-areas can be identified: (1) determining if user X is
`
`
`
`
`
`
`
`online; (2) sending text and/or voice messages to a user; (3)
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`retrieving stored messages (if supported by underlying IM
`service); and (4) getting information, e.g. user info, etc.
`
`
`
`
`
`
`
`
`
`From the receiving side there are four similar issues: (1)
`
`
`
`
`
`
`
`
`
`
`registering your presence on the phone with the IM service;
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(2) receiving notification of messages; (3) allowing partici-
`
`
`
`
`
`
`pating in messaging; (4) posting information/registering.
`These usage scenarios dovetail nicely into the implementa-
`
`
`
`
`
`
`
`
`tion issues.
`
`
`
`
`Platform Changes
`The voice portal 310 includes one or more programs for
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`interpreting voice applications, e.g. VoiceXML (or VXML)
`programs, colloquially these programs for running VXML
`
`
`
`
`
`
`
`programs for multiple phone users together with the asso-
`
`
`
`
`
`
`
`
`
`ciated functionalities are sometimes referred to as the “plat-
`
`
`
`
`
`
`
`form”. Although some shared messaging capabilities may
`
`
`
`
`
`
`
`have been available through the platform and voice portal
`
`
`
`
`
`
`
`
`
`310 through dedicated applications,
`those features were
`
`
`
`
`
`
`
`application specific, e.g. message board, chat room (voice
`
`
`
`
`
`
`
`
`based user discussion), etc. In some embodiments, those
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`specialized features can be generalized (and implemented)
`through the instant messaging functionality, e.g. channel
`
`
`
`
`
`
`
`features of an IM service.
`
`
`The platform in normal operation supports the execution
`
`
`
`
`
`
`
`of a single VXML application per user. For example, if the
`
`
`
`
`
`
`
`
`
`user is accessing weather information using a weather
`
`
`
`
`
`
`
`application, e.g. weather.vxml, then only that application
`
`
`
`
`
`
`
`would be running. The platform can be modified to support
`
`
`
`
`
`
`
`concurrent execution of multiple programs for users, for
`
`
`
`
`
`
`
`
`example both the weather application and,
`in the
`
`
`
`
`
`
`
`
`“background”, an instant messaging application.
`
`
`
`
`
`Additionally, mechanisms for switching between running
`
`
`
`
`
`
`applications must be provided, this mechanism should allow
`
`
`
`
`
`
`
`preservation of state (where the user is, variables, dialogue
`
`
`
`
`
`
`
`point, etc.) when the user switches applications, e.g.
`to
`
`
`
`
`
`
`
`
`respond to an instant message or send an instant message.
`
`
`
`
`
`
`
`Similarly, one or more “universal” commands, dual-tone
`
`
`
`
`
`
`multi-frequency (DTMF), or switch hook signals, may be
`
`
`
`
`
`
`provided to switch the running application. For example, in
`
`
`
`
`
`
`
`one embodiment, the word “Message” might be recognized
`
`
`
`
`
`
`
`to switch to the messaging application while preserving state
`
`
`
`
`
`
`
`
`in the other application.
`
`
`
`
`According to some embodiments, the voice portal 310
`
`
`
`
`
`
`
`allows users to control their experience. The system reacts to
`
`
`
`
`
`
`
`
`commands the user says (or doesn’t say in the allotted time)
`
`
`
`
`
`
`
`
`
`in a synchronous fashion. Since incoming messages may
`
`
`
`
`
`
`
`
`Page 9 of 14
`
`
`
`
`
`US 6,757,365 B1
`
`
`
`10
`
`15
`
`20
`
`7
`
`come at any time the voice portal 310 may also provide an
`
`
`
`
`
`
`
`
`
`
`asynchronous notification mechanism, e. g. a distinctive tone
`
`
`
`
`
`or beep, to alert the user to switch to messaging mode.
`
`
`
`
`
`
`
`
`These underlying architectural changes will be made
`
`
`
`
`
`
`
`clearer in the following discussion.
`
`
`
`
`
`Implementations
`The implementations will be discussed in greater detail
`
`
`
`
`
`with reference to FIGS. 4—9.
`
`
`
`
`1. Is a User Online?
`
`
`
`
`FIG. 4 is a process flow diagram for determining whether
`
`
`
`
`
`
`
`another user is online in th