throbber
||||||||||||||Ill|||||||||||||||||||||||||||||||||||||
`US007123695B2
`
`(12; United States Patent
`Malik
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,123,695 B2
`Oct. 17, 2006
`
`(54) VUICE MESSAGE l)El.I\"ICRY OVER
`INSTANT NIESSAGING
`
`(56)
`
`References Cited
`U.S. PATTNT DOCI IMENTS
`
`I-"I994 (iasper et .11.
`S-""2002 Dowens el
`:11
`I [-2002 Lew et ai.
`4-"2003 Chen et al.
`5-2003 (indjonsson et al.
`I0-"2003 Miller
`152004 Nabke] el al.
`3-'2(J05 Sagi et at.
`9-"2002 Becker el al.
`
`.
`
`
`
`"F04-"200
`3?9'52
`379.-"'88. I2
`3?9"3'.-'
`T0‘).-'22?
`400.-"472
`3T0-‘Z52
`455.-'412.|
`
`5.2?8.943 A "
`6.389.114 Bl “
`6.483.898 Bl “
`6.5S3.l00 Bl “‘
`6564.26] Bl “'
`6.629.".-'93 Bl "'
`fi.6?4.T25 Bl “
`6.855.384 BI *
`2002:'0l30904 .-’\l "‘
`
`* cited by examiner
`
`I’rinmr_1‘ E.\‘t:m:'ncr Gerald Gauthier
`(T4)
`-*!e‘rornr2_t', Agent.
`or
`F':‘rm—T|1on1as. Kayden.
`llorslelneyer & Risley. l.l..P
`
`( * ) Notice:
`
`Inventor: Dale W. Malik. Dunwoody. GA (US)
`(75l
`(T3) Assignee: Bellsnuth Intellectual Property
`Corporation. Wilmington. DE (US)
`Subject to any disclaimer. the temt of this
`patent is extended or adjusted under 35
`U.S.(‘. 154(h) by 0 days.
`(21) Appl. No.: 101223.903
`
`(22) Filed:
`
`Aug. 19.. 2002
`
`(65)
`
`Prior Publication Data
`US 2003.-'02l9l04 Al
`Nov. 27. 2003
`
`Related U.S. Application Data
`
`(60)
`
`Provisional application No. 602382.106. filed on May
`21. 2002.
`
`(5?)
`
`.\BSTRA( ."!'
`
`(51)
`
`[I1t. (II.
`HMM [1206
`(52) U.S. Cl.
`
`(58)
`
`(2006.01)
`379188.13: 379393.09:
`455."4l2.l: 455:’-41-4.]; 455!422.l; 455.9133
`Field of Classification Search
`37952.
`379038. 14. 93.15. 100.09. 201.0]. 205.01.
`37"9:"88.|3. 88.19: 348404. I5. 16.17: 455r"4l7:
`T044258. 260
`See applieat ion [ile lor complete search history.
`
`(Jne preferred embodiment of the present invention provides
`a S}'SIt3l1'I and method liar sending voice instant messages.
`Briefly described.
`in areliitectune. one embodiment of l|1e
`system. among others. includes 3 cotmtmnieations client of
`a user that is eonligtlred to generate a voice instant message
`and send a voice instant message to another user. Methods
`and other systems are also provided.
`
`42 Claims. 9 Drawing Sheets
`
`mo
`—
`
`PROVIDE DESC RIPTEVE
`CAPTION
`fl
`
`E
`
`A FIRST user: tmmokizes A
`THE. VIM CLIENT OF THE SECOND
`
`secown uses TO BE ABLE TO SEND
`USER GENERATES VOICE.
`A VOICE INSTANT MESSAGE To THE
`
`RECORDING
`
`FIRST Us ER
`Q
`
`
`
`
`GENERATE VOICE
`INSTANT MESSAGE.
`fl
`
`STOR E VOICE. INSTANT
`MESSAGE UNTIL FIRST
`USER IS PRESE1\"['4.__.5
`
`DNLFNE PRESENCE OF
`THE FIRST USER I5
`DETECTED
`48
`
`VOICE INSTANT
`MESSAGE IS
`DELIVERED TO VIM
`CLIENTOF THE FIRST
`
`USER.
`
`is‘;
`
`
`
`
`
`
`
`CAPABLE‘?
`E
`
`
`
`THE VLM CLLENT OF‘ THE SECOND
`USER CHECKS ‘PO SEE ll‘ 'l'l~|E
`SECOND USER IS AUTHORIZED TO
`LEAVE A VOICE MESSAGE FOR TH E
`FIRST USER
`E
`
`
`
`
`
`
`
`
`
`THE VIM CLIENT OF THE SECOND
`USER RECEIVES A REQUESTFROM
`THE SECOND USER TO SEND AN
`INSTANT MESSAGE TO THE FIRST
`
`USER WHO IS NOT PRESENT 420
`THE VIM CLIENT OF TH E SECOND
`
`
`USER INVITES THE SECOND USER
`TO SEND A VOICE INSTANT
`
`THE \«'l.|\-‘I CLIENT OF THE SECOND
`MESSAGE TO THE FLRST USER ‘S0
`USER DETECTS THAT THE FIRST
`
`
`
`USER IS NOT PRESENT AND
`
`AV .1\lLABl,E 425
`
`
`
`
`AUTHOR]ZE.D'.’
` E
`‘ms VIM CLIENT or ‘THE SECOND
`
`USER enecxs ‘F0 see LE-‘ rr IS
`CAPABLE or GENERATING A VOICE
`
`neconnmo
`gm
`
`0001
`
`Apple 1007
`U.S. Pat. 7,535,890
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 1 of9
`
`US 7,123,695 B2
`
`FIG.1 (PRIORART)
`
`If!
`F‘!
`
`'6')
`o
`
`"'1
`Z
`
`ca('7I’.
`
`c:(‘-1
`
`V3
`
`‘ 0
`
`002
`0002
`
`:3
`
`"'
`
`O
`«r
`
`V"?
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 2 of 9
`
`US 7,123,695 B2
`
`
`
`HZHAUmmmmflI
`
`mom
`
`
`
`H2540mmmmfi
`
`HM?»MODEN.05
`
`
`
`Hzmfiummmmfl
`
`8
`N
`
`SN
`
`
`
`H2940mmmmfi
`
`
`
`HZHAUmmmmi
`
`.oN
`
`mmmmi
`
`mmimm
`
`
`
`HZMEOmmmmfl
`
`SN
`
`0003
`0003
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 3 of 9
`
`US 7,123,695 B2
`
`
`mmm:
`
`mzoumm<noHZMEO.23
`
`.52.2200
`
`«mm
`
`N2
`
`mmoxoummmu_o>
`
`m.03
`
`
`
`._.mZ.2200
`
`2...
`
`
`mum:
`
` »mEn_4moezmzo.23
`
`em
`
`0004
`0004
`
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 4 of9
`
`US 7,123,695 B2
`
`3
`
`QZO:.n_<U
`
`m>_EEummnme>om___
`
`%oaoxoumm
`
`
`
`85>mmfiémzmoammo
`
`0nzoommmin_Oezmnu_>:>m:.:
`
` mE.opmofimmzE<._.mz_85><azmmo...m:m<mmOhmum:ozoumm<mm_~Eo_.:.:<mum:5.5<
`
`fin
`
`55>Efiazmo
`
`
`
`mo<mmms_.E<$z_
`
`
`
`hZ<hm7:mu_o>$0.5
`
`v.05
`
`2.3yam:
`
`Em:atmohzmao
`
`
`
`E,am~EoE:<m.«mm:azoomm
`
`:3mmm:Sm;
`
`
`
`m_.:.xommoémmz85><m><m._
`
`Ewzmmmfi2mum:
`ca.ammoSE2:,0+mo<mmm:
`
`
`
`._.z§mz_85><nzmmow
`
`Ex:.52:moémmz
`
`
`
`
`
`mum:nzoomm2:.mm:>z.«mm:
`
`
`
`E.Bbmin
`
`
`
`momuzmmmmmm7:HZO
`
`m.mum:Emamze
`
`Q_....nmNEO_.:.D<
`
`
`
`»z<.Sz_mu_o>
`
`
`2:,Op.nm:n,_>_._m_o2moémmg
`azoummB:noezmsu25E?
`
`mapEmumopmmomzommm:
`
`3ozamoumm
`
`ozoummmm....5._.zm:u2:,2.:
`
`m_u_o><ozfiémzmo"5Bm§<o2:5mm;2.mzomzu
`yam:
`
`3»m._m<.:<><
`
`ozoummmap“.0ezmfiu2;mm...
`
`
`
`Emamzebiz.meomemommm:
`
`oz<Hzmmmx;52w_mum:
`
`0005
`0005
`
`
`
`azoumm2.?mo._.Zm.EO_2n>3:oww.HzmmmmmH02m.OI?mmmfl
`
`
`
`
`
`
`
`
`
`3$8Em:
`
`azoummm:.:.no._.zm:u25E:
`
`
`
`:9:E503.<mmamummyam:
`
`
`
`Z<92%O._..mum:ozoumm2:.
`
`emu:MIHOHmo<mmm2E52
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 5 of9
`
`US 7,123,695 B2
`
`500
`
`7”
`
`PRESENCE STATUS OF VIM CLIENT OF
`
`FIRST USER CHANGES FROM OFFLINE TO
`ONLINE
`
`gm
`
`STORED VOICE INSTANT MESSAGE IS
`DELIVERED TO VIM CLIENT OF FIRST USER
`
`520
`
`VOICE RECORDING TN VOICE INSTANT
`MESSAGE IS PLAYED
`
`530
`
`FIG. 5
`
`0006
`0006
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 6 of9
`
`US 7,123,695 B2
`
`o.05
`
`HDm._.DO.._._.D.w7m
`
`Qmuremo
`
`85
`
`Sc
`
`HZMEUE3
`
`film.mm
`
`mommmuomm
`
`ma
`
`flomu§mBz_#63
`
`0007
`0007
`
`
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 7 of9
`
`US 7,123,695 B2
`
`
`mmw:
`
`ozoumm<moezmsu_>:>
`
`amomoommmu_o>
`
`Rm
`
`h.05
`
`can
`
`ezmsu23
`
`$205mimosa
`
`><3m._..<O
`
`0008
`0008
`
`
`
` MMWD52:<n_OFZEJU_>:>
`
`Em
`
`
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 8 of9
`
`US 7,123,695 B2
`
`mzo_.am.m:.2+2
`
`w.05
`
`,:<2m§o>
`
`zmfimxm
`
`Sm
`
`l|I\I\\mamsoS=>
`
`ea
`
`0009
`0009
`
`Emmi<"5pzmso3:.)
`«mm:
`
`em
`
`
`
`mmfiaaO_DD<
`
`NTr.
`
`
`
`

`
`US. Patent
`
`Oct. 17, 2006
`
`Sheet 9 of9
`
`US 7,123,695 B2
`
`A FIRST USER SUBSCRIBES TO A VOICE MESSAGING SYSTEM 910
`
`THE FIRST USER DESIGNATES THAT NEW VOICEM AIL RECORDINGS
`
`ARE TO BE FORWARDED TO A VIM CLIENT
`
`21_5
`
`NEW VOICEMAIL RECORDING FOR THE FIRST USER IS GENERATE£D
`
`TELEPI-IONE NUMBER OF ORIGINATOR OF VOICEMAIL RECORDING
`
`IS OBTAINED AND ASSOCIATED WITH THE VOICEMAIL RECORDING
`
`2-?_5
`
`A VOICE MESS AGING INSTANT MESSAGE CONTAINING A
`REEERENCE LINK IS GEBEERATEDAND FORWARDED TO VIM SERV9%I{{)
`
`A VOICE MESSAGING INSTANT MESSAGE IS SENT TO THE VIM
`
`CLIENT OF THE FIRST USER AND DELIVERED TO THE FIRST USER AS
`
`SOON AS THE FIRST USER IS PRESENT
`
`Qgg
`
`VIM-CLIENT OF THE FIRST USER RECEIVES THE VOICE MESSAGING
`
`INSTANT MESSAGE
`
`REFERENCE LINK IS ACTIVATED
`
`E
`
`E
`
`ASSOCIATED VOICE RECORDING IS INCLUDED IN A VOICE INSTANT
`
`MESSAGE AND SENT TO VLVI CLIENT OF THE FIRST USER QE
`
`VOICE RECORDING IS DELETED FROM VOICE MESSAGING SYSTEM
`2%
`
`VOICE INSTANT MESSAGE IS RECEIVED AND VOICE RECORDING IS
`
`PLAYED
`
`FIG. 9
`
`0010
`0010
`
`990
`
`

`
`US 7,123,695 B2
`
`1
`VOICE MESSAGE DELIVERY OVER
`INSTANT MESSAGING
`
`CROSS-REFERENCE TO RELATED
`APPI. [CAI[ION
`
`This application claims priority to copending U.S. provi-
`sional application e11titled_. “Integration oflnstant Messaging
`and Computer Operating Systenis." having Ser. No. 60!382.
`106, filed May. 21. 2002. which is entirely incorporated
`herein by reference.
`
`'[‘l.iC[lNI(TAI. I’iF[..[)
`
`The present invention is generally related to communica-
`tions and. more particularly.
`is related to a system and
`n1etl1od for relaying voice messages over a communication
`network.
`
`BACKGROUND OF THE INVENTION
`
`Presence and availability are terms used to describe a
`present ability of an individual to communicate. Presence is
`an ability of an individttal to corrununicate in real time. and
`availability is the willingness ofan individual to communi-
`cate in real time. In communications. it is advantageous to
`know whether a potential
`recipient of a communication
`message is present and available.
`i.e._. available to receive
`and respond to the message before initiating the transmis-
`sion of the message. By making the presence and availability
`of individual users known before any contmnnication is
`attempted. a realtime communications environment is facili-
`tated that is more elfective and less obtrusive than conven-
`tional communication mediums. Clearly. the coinmunication
`message that is sent to an addressee that is known to be
`present and available is more likely to be received promptly
`than a conventional message. For example, olien times.
`conventional telephone calls are forwarded to a person"s
`voicemail and are never returned.
`
`Instant messaging ([M) is one comnninication medium
`that employs presence and availability technology. An
`instant messaging network recognizes when a user
`is
`present“ on the network. Accordingly. the network sends
`notification to other users (usually members of a “buddy
`list“ or “contact list“) that are also logged on the network
`that the user is “present.” Further. instant messaging lets a
`user display custotn status messages to his “buddies” online
`about
`the user's “availability." For example. a user can
`specify his availability status as being “busy. not
`taking
`messages." Therefore another user on the “buddy list" that
`is connected to the instant messaging network will be
`notified that although the user is present on the network. he
`is not available for receiving messages. Presence and avail-
`ability information is most useful when an individual shares
`his or her online status with a trusted group of users. A
`connnunication message sent
`to someone who is readily
`present and available is less obtrusive. when the addressee
`has made hintself or herself available to the comntunicatiolt.
`
`An example of a traditional “closed” instant messaging
`(IM) architecture is shown in FIG. 1. The traditional [M
`architecture consists ofa central [M server [05 connected to
`a number ofindividual clients (110. 115. 120. 125, I30. I35.
`140. and 145) in a closed network. For example, to send an
`instant message from client [[0 to client 145. [M client 110
`first connects with an [M server 105 using a proprietary
`protocol. For example. AOl.tR; and Yahootllb use l(.'Q. Once
`the [M client 110 is connected to the [M server 105. the user
`
`2
`
`logs on by entering a user name and password. The [M client
`110 then sends the [M server 105 the connection informa-
`
`tion, such as the [P address and the munber of the port
`assigned to the [M client and the name and [P address of
`everyone in the [M contact list associated with the IM client
`110. An [M client may communicate directly with other [M
`clients if the [P addresses of these [M clients are known to
`
`the tra11s111itti11g IM client. For convenience. the lines of
`communication between individual [M clients are not shown
`in FIG. 1.
`
`lll
`
`The [M server 105 then creates a temporary file that
`contains the connection information for the [M client 110
`and for each IM client 115. 120. 125. 130. 135. 140. 145.
`Once the temporary files have been created. the [M server
`105 checks the network to detennine whether any [M client
`identified by the contact list associated with [M client 110 is
`currently logged into the system. If the [M server 105 finds
`any of the contacts logged onto the network. the [M server
`105 sends it message back to the [M client [It] with the
`connection information for each IM client I15. ]20. I25.
`130, 135, 140, 145 currently logged onto the network. When
`the ]M Client 110 receives the connection infonttation, the
`presence status of that particular [M client 115. I20. I25.
`130. I35. 140. 145 is updated to “Online.“ for example. The
`presence status is displayed to the user. At this point the user
`may select any [M client H5. 120. 125, 130, I35, I40. 145
`that is registered “Online.” at which point a dialog box will
`appear in which the user may enter text. Because the [M
`client 110 knows the [P address and port number of the [M
`client 145. the message is sent directly to the recipient [M
`client 145. The [M client 145 then receives the instant
`
`message and can respond. Once the [M session is complete
`the dialog box is closed. and the IM client 110 goes olliine
`and sends it message to the [M server 105 tenninating the
`session. The [M server 105. in response to acknowledging
`that the [M client 110 has logged ofl'. generates a message to
`each ofthe [M clients 115. I20. I30. 140. 145 on the client
`list of [M client 110 indicating that [M client 110 is logged
`ofl" the network.
`
`Jabber is an example of an “open" instant messaging
`architecture. Jabber, available from Jabber, Inc. of Denver,
`(.'o.. includes an [M system focusing on providing [M access
`to a user. Jabber includes an Extensible Markup Language
`(XML) open source server software that was developed by
`a community of developers over the lnternet. Jabber allows
`conunun.ication among applications and systems across plat-
`forms. Developers write additional modules to submit them
`back for possible incorporation into the Jabber software.
`A block diagram illustrating a prior art [M network that
`uses Jabber interoperable XML-based network architecture
`is shown in FIG. 2. Jabber is a real—time communications
`platform based on open protocols whose architecture is
`based on the well-known electronic mail system. Because
`Jabber is based on the email system. the .[abber architecture
`contains distributed network servers. called Jabber servers
`215 -217 and clients. known as Jabber clients 200 -205 that
`receive and send messages to Jabber clients 200 -205 con-
`nected to other Jabber server 215-217 on the Internet.
`
`However. unlike typical entail systems. which are store and
`forward systems. Jabber delivers messages in real
`time
`because the Jabber server 215-21‘? knows when a particular
`Jabber client 200- --205 is online and available.
`
`3U
`
`35
`
`4t":
`
`45
`
`50
`
`55
`
`60
`
`The Jabber architecture is based on client-server architecture
`and not o11 a client—to—client architecture. as are most [M
`systems. Messages from Jabber client 200 to Jabber client
`20] must pass through the Jabber server 215. [Each _labber
`0011
`0011
`
`

`
`US 7,123,695 B2
`
`3
`client 200-205 is attached to a local Jabber server 215-217.
`Each local Jabber server 215-217 receives infonnation from
`one Jabber client 200-205 and transfers the information to
`
`another Jabber client 200-205 along with presence and
`availability information. Each local Jabber server 215- -21?
`functions independently from one another. and can eo1runu-
`njcate with any other Jabber server 215-217 that is con-
`nected to the I11ter11et as long as it has been identified. and
`predisposed to do so ahead of time. Each local Jabber server
`215-217 performs two functions: listening for and commu-
`nicating directly with Jabber client applications 200-205.
`and comruunieating with other Jabber servers 215 -217.
`liach local Jabber server 215--217 consists of multiple
`components that separately handle individual functions with
`the Jabber system.
`In many instant messaging communications, if a user is
`not present to receive an instant message. the instant mes-
`sage can still be sent and queued in the IM server 105 or
`Jabber server 215-217 that is servicing the IM client of the
`user. The MI server will hold the message until the user is
`present again on the instant messaging network.
`In this
`manner. the instant message is delivered to the user as soon
`as the user is present on the instant messaging network.
`Today's instant messaging services mostly focus on the
`storing of text instant messages in a queue for later delivery
`to the user once the user becomes present on the network.
`I-Iowever. toda)/‘s service typically does not allow for non-
`text
`instant messages to be stored in a queue for later
`immediate delivery. Thus. a heretofore unaddressed need
`exists in the industry to address the aforementioned defi-
`ciencies and inadequacies.
`
`SUMMARY OF THE INVENTION
`
`Preferred embodiments of the present invention provide
`systems and methods for sending voice instant messages.
`Briefly described.
`in architecture. one embodiment of the
`system, among others. can be implemented as follows. A
`connnunications client of a user is configured to: generate a
`voice instant message and send a voice instant Iuessage to
`another user.
`The present invention can also be viewed as providing
`methods for sending voice instant messages. In this regard.
`one embodiment of such a method, among others, can be
`broadly summarized by the following steps: generating a
`voice instant message: and sending a voice instant message.
`Other systems. methods. features. and advantages of the
`present invention will be or become apparent to one with
`skill in the art upon examination of the following drawings
`and detailed description. It
`is intended that all such addi-
`tional
`systems. methods,
`features. and advantages be
`included within this description and be within the scope of
`the present invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Many aspects of the invention can be bener understood
`with reference to the following drawings. The components
`in the drawings are not necessarily to scale, emphasis instead
`being placed upon clearly illustrating the principles of the
`present invention. Moreover. in the drawings. like reference
`numerals designate corresponding parts throughout the sev-
`eral views.
`
`FIG. I is a block diagram of a closed instant messaging
`architecture of the prior art.
`l"I('i. 2 is a block diagram of an open instant messaging
`architecture of the prior art.
`
`4
`
`FIG. 3 is a block diagram of a voice message delivery
`system of one preferred embodiment of the present inven-
`tion.
`
`FIG. 4 is a flowchart describing the functionality of a
`representative implementation of the voice message delivery
`system of FIG. 3.
`FIG. 5 is a fltiwcllafl describing the functionality of a
`representative implementation ofthe voice message delivery
`system of FIG. 3.
`FIG. 6 is a block diagram of an implementation of the
`VIM client in FIG. 3 using a general computer system.
`FIG. 7 is a block diagram of a voice message delivery
`system of one preferred etllhoditncnl of the present inven-
`tion.
`
`ll]
`
`FIG. 8 is a block diagram of a voice message delivery
`system of one preferred embodiment of the present inven-
`tion.
`
`FIG. 9 is a flowchart describing the litnctioiiality of a
`representative implementation of the voice message delivery
`system of FIG. 8.
`
`DILTAILLEI) DlF.SC_‘RIP'l‘lON OF 'l'llli
`PREFERRED EMBODIMENTS
`
`3o
`
`35
`
`Depicted in FIG. 3 is a block diagram of one represen-
`tative enibodiment. among others. ofa voice message deliv-
`ery system 300. The voice message delivery system 300
`includes a voice instant messaging (VIM) client 310 of a Iirst
`user. wherein the VIM client 310 is configured to receive
`and play a voice recording [via an audio player 312, for
`example) in a voice instant message it receives from other
`users. such as a second user. Accordingly, a VIM client 320
`of the second user is configured to generate a voice record-
`ing [via a voice recorder 322. for example) of the second
`user and include the voice recording in an instant message
`upon accepting a VIM invitation. A VIM invitation is a
`message that is trimsmitted by the VIM client 310 of the first
`user to the VIM client 320 of the second user. wherein the
`
`4t":
`
`45
`
`message invites or prompts the VIM client 320 of the smond
`user to generate a voice recording for the that user.
`Each VIM client 310, 320 communicates with and
`receives presence status information from a VIM server 330
`via the Internet or some other corrununication network 325.
`The VIM server 330 may act as a single IM server 105 of
`FIG. I or a local IM server. such as a .Iabber Server 215 of
`FIG. 2. The VIM server 330 monitors the presence inflor-
`mation of the VIM clients. such as the VIM client of the first
`user310_. and notifies a VIM client 310 ofthe presence status
`information of other VIM clients 320 and their associated
`users. Accordingly, the VIM server 330 includes the capa-
`bilities of conventional IM servers and the additional capa-
`bilities for handling VIM message delivery and storage.
`For example. in one preferred embodiment of the inven-
`tion. the first user designates contact parameters. The contact
`parameters are criteria on (a) whom a user wants to receive
`presence infonnation about and (b) how a user wants to
`receive the presence information. Within the contact param-
`eters. the first user may name the second user as a person
`about whom the first user wants to receive presence infor-
`tnation about. Other information may also be contained in
`the contact parameters such as
`the instant messaging
`addresses of the people named in the contact list. The contact
`parameters are then stored in a centralized storage medium
`340 that is accessible by the VIM client 310 of the first user
`or the VIM server 330 depending upon the architecture of
`the instant messaging network.
`0012
`0012
`
`50
`
`55
`
`60
`
`

`
`5
`
`US 7,123,695 B2
`
`6
`
`111 a closed system (FIG. I), tl1e contact parameters are
`typically stored in a storage medium (not shown) that is
`accessible by the VIM client 310. 320. such as an internal
`disk drive of a general purpose computer or the memory of
`a mobile device. Then. a copy of the contact‘ parameters are
`given to the VIM server 33!]. In an open system (l"'I(i. 2),
`however.
`the co11tact parameters are stored in a storage
`n1ediu111 (not shown) accessible by the VIM server 33 0. such
`as an internal disk drive or a separate storage niedium, such
`as a database. The VIM server 330 then forwards a copy of
`the contact parameters to the VIM client 310. Typically. the
`VIM client 310 knows from the contact parameters the
`t'taJ'nes of the people that the first user wants to receive
`presence status infonnation about. Accordingly. the voice
`message delivery system can be incorporated over many
`instant messaging configurations. such as peer-to-peer. with
`the VIM server 330 providing primarily passive directory
`services. and clients-to-clients, with a single VIM server 330
`providing directory services as well as message queuing and
`delivery.
`In one preferred embodiment of the invention, whenever
`a user is not present and available to receive an instant
`message. a voice instant message may be stored in a queue
`340 of the VIM server 330 for the user. Accordingly. the
`voice instant message is delivered to the user the next time
`that the user connects to the instant tnessaging network via
`his or her IM client. In an alternative preferred embodiment
`of the present invention. a user (“first user") may designate
`or authorize the people named on his or her contact param-
`eters from whom the user will accept voice instant messages.
`Accordingly. a VIM client of an authorized user (“second
`user”) can check to see if the second user is authorized by
`the first user to generate a voice instant message for the first
`user. "lhese designations are specified in a set of voice
`contact parameters that may be a subset of the contact
`parameters. or the voice contact parameters may be stored
`separately fro111 the contact parameters. Preferably. the voice
`contact parameters of a first user are readily accessible by
`the VIM clients of other users. such as the second user. so
`that the VIM clients of other users can verify if the first user
`has authorized the other users to send a voice instant
`message to the first user.
`The flowchart of FIG. 4 shows the functionality of a
`representative implementation ofthe voice message delivery
`system 300 of the present invention. It should also be noted
`that in some alternative implementations the functions noted
`in the various blocks may occur out of the order depicted in
`the flowchart of FIG. 4. I"or example. two blocks shown in
`succession in FIG. 4 may. in fact. be executed substantially
`concurrently. Altematively, the blocks may sometimes be
`executed in the reverse order depending upon the function-
`ality involved. In other embodiments, some blocks shown in
`FIG. 4 are omitted.
`
`As depicted in FIG. 4. the functionality of a representative
`embodiment of the voice message delivery system 300 or
`method 400 may be construed as beginning at block 410. In
`block 410, a first user designates in voice contact parameters
`that the first user will accept voice messages from a second
`user. For example, a first user may specify in his or her
`contact
`list
`the persons that
`the first user would like to
`provide voice instant messaging capability to. via checking
`a box by that person’s name in the person's contact list. for
`example. The contact parameters are stored in a centralized
`storage medium 340 that is accessible by the VIM client 310
`of the first user or the VIM server 330 depending upon the
`arch.itcctt.tre of the instant messaging iietwork. Therefore. at
`a later time, when an authorized user attempts to send an
`
`instant message to the first user and the: first user is not
`present andfor available, the authorized user may be given
`the opportunity to generate a voice instant message for the
`lirst user. In altemative embodiments. the authorized user
`may generate a voice instant message regardless of the
`presence andfor availability state of the first user.
`In block 420. the VIM client 320 of the second user
`
`receives a request or prompt by the second user to send an
`instant message to the lirst user. Typically. the request is
`generated after the second user attempts to initiate the
`transmission of the instant message. The VIM client 320 of
`the second user. however. detects that the lirst user is not
`present andfor available and. therefore, does not initiate the
`sending of the instant message. as shown in block 425.
`Accordingly. in blocks 430-435. the VIM client 320 of the
`second user checks to see if the computing device of the
`VIM clicnt 320 is capable of generating a voice recording.
`Typically. the voice recording capabilities of the computing
`device are specified in settings of the VIM client by the
`second user.
`In blocks 449 445.
`the VIM client of the
`second user also checks the voice contact parameters of the
`first user to see if the second user is authorized by the first
`user to leave a voice instant message for the first user. If the
`second user is not authorized to leave a voice instant
`
`message or if the VIM client 320 of the second user cannot
`generate a voice recording. the second user is then given the
`option of sending a textual instant message and having the
`message placed in a queue of the VIM server 33!]. as shown
`in blocks 436 and 446. Alternatively. the second user may
`not be able to store the instant message in a queue.
`If the second user is authorized to leave a voice instant
`
`message zmd the VIM client 320 ofthe second user has the
`capability to leave a voice instant message, then the VIM
`client 320 of the second user invites or prompts the second
`user to leave a voice message, as depicted in block 450. If
`the second user declines the VIM invitation, then the second
`user again is given the option of sending a textual instant
`message and having the message placed in the queue of the
`VIM server 330. as shown in blocks 455 and 456. However.
`in block 460. if the second user accepts the VIM invitation.
`then the VIM client 320 of the second user starts a voice
`recorder 322. Accordingly, the second user speaks into a
`microphone that is coupled to the computing device of the
`VIM client 320 of the second user. and the VIM client 320
`of the second user generates a voice recording for the first
`user.
`
`5
`
`ll]
`
`3U
`
`35
`
`4t":
`
`45
`
`50
`
`55
`
`60
`
`In block 465. after the voice recording has been gener-
`ated. the VIM client 32!) of the second user prompts the
`second user to type a descriptive caption for the voice
`recording. Then in block 470, a voice instant message is
`generated by including the descriptive caption and the voice
`recording in an instant message. The descriptive caption
`may be marked by XML tags so that it can subsequently be
`identified by the VIM client 310 of the lirst user. If a
`descriptive caption is not provided by the second user, the
`voice instant message may be sent without the caption.
`The voice instant message is sent to the VIM server 330
`and stored in a VIM queue 340 of the VIM server 358. as
`depicted in block 475. Next. in block 480. the VIM server
`350 detects when the first user is present andfor available to
`receive instant messages again by monitoring the presence
`status of the first user. Then. the VIM server 33!} delivers the
`voice instant message from the VIM queue 340 to the VIM
`client 310 of the first user_. as depicted in block 485.
`FIG. 5 is a flowchart depicting a method 500 for receiving
`and playing a voice instant message at the VIM client 310
`of the first user for one preferred embodiment of the inven-
`0013
`0013
`
`

`
`US 7,123,695 B2
`
`7
`In block 510, the VIM client 310 of the first user
`tion.
`changes from an ollline presence status to an online presence
`status. In block 520, tl1e voice instant messages stored in the
`VIM queue 340 for the first user are delivered to the VIM
`client 310 of the first user. Each voice instant message
`contains a descriptive caption a11d a voice recording that was
`provided by the originator of the voice instant message. As
`depicted in block 530. the first user via the VIM client 310
`plays the voice recording by activating the recording using
`a mouse click or a keysuoke from a keyboard or keypad. for
`example. Alternatively, the voice instant message may not
`be delivered to the first user. until the first user specifically
`requests for the voice instant message to be sent from the
`queue.
`In some embodiments of the present invention. the voice
`instant message is distinctively marked with XML tags so
`that a VIM client 3.10 that receives a voice instant message
`will recognize the instant message as a voice instant ines-
`sage. Additionally. the descriptive caption tnay be marked so
`that the VIM client may display the caption without opening
`the voice instant message. After a VIM client 310 recognizes
`a marked voice instant message. the VIM client 310 may
`prompt the recipient of the voice instant message to send a
`voice instant message in reply. The reply voice instant
`message would then be delivered irmnediately to the
`addressee if the addressee is presently online. Else. the voice
`instant message would be stored in a VIM queue 340.
`Additionally.
`in some embodiments of the invention
`where the voice instant message is not automatically deliv-
`ered to the first user, the VIM server 340 sends the VIM
`client 31 0 o fthe first user a list ofthe voice instant messages
`contained in the VIM queue 340 for the first user so that the
`first user can selectively choose which voice instant Ines-
`sages that
`the first user listens to. The list contains the
`identity of the originator of each voice instant message and
`the descriptive caption for each voice instant message.
`Altematively. for each voice instant message placed in the
`VIM queue for the lirst user. the VIM server 340 may send
`an update message to the VIM client 310 ofthe first user.
`The update message may contain an identifier or tracking
`number for the VIM message it pertains to. the identity of
`the originator of the voice instant message, and the descrip-
`tive caption froru the voice instant message. Accordingly.
`the VIM client 310 of the first user may track and update the
`number of voice instant messages that are currently awaiting
`to be received by the first user. Additionally. the VIM client
`310 can track the identities of the originators of these
`messages. For example, the VIM client 310 may display the
`contact list of the lirst user. and next to each user‘s name on
`the contact list, the number of unreceived voice messages
`that users I1ave let’: the first user may be shown. Also,
`additional infomiation, such as the date and time. may be
`shown.
`The VIM client 310. 320 or the VIM server 330 of a
`representative embodiment of the present invention can be
`implemented in software. firmware. hardware. or a combi-
`nation thereof. Preferably, the VIM client 310, 320 or VIM
`server 330 are implemented in software. as an executable
`program. and are executed by special or general purpose
`digital computers, such as a personal computer. workstation.
`mirticomputer. or mainframe computer. An example of a
`general purpose computer that can implement
`the VIM
`client 310, 320 or VIM server 330 (although not shown} of
`one preferred embodiment of the present invention is shown
`in FIG. 6.
`Generally. in terms ofliardware architecture. as sliown in
`l*l(j. 6. the computer 600 includes a processor 602. memory
`
`Ill
`
`3o
`
`35
`
`4t":
`
`45
`
`50
`
`55
`
`60
`
`8
`
`604, and one or more input andfor output (U0) devices 606
`[or peripherals) that are communicatively coupled via a local
`interface 608. The local interface 608 can be, for example
`but not limited to, one or more buses or other wired or
`wireless connections. as is known in the art. The local
`interface 608 may have additional elements, which are
`omitted for simplicity. such as controllers. bufl'ers

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket