throbber
US009304758B2
`
`(12) United States Patent
`Chatterjee
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 9,304,758 B2
`Apr. 5, 2016
`
`(54)
`
`(71)
`(72)
`
`(73)
`
`(*)
`
`(21)
`(22)
`(65)
`
`(63)
`
`(60)
`
`(51)
`
`(52)
`
`MODIFICATION OF TERMINAL AND
`SERVICE PROVIDER MACHINES USING AN
`UPDATE SERVER MACHINE
`
`Applicant: Shuv Gray LLC, Foster City, CA (US)
`Inventor: Sandeep Chatterjee, Foster City, CA
`(US)
`Assignee: S3G Technology LLC, Foster City, CA
`(US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`Appl. No.: 14/788,506
`
`Notice:
`
`Filed:
`
`Jun. 30, 2015
`
`Prior Publication Data
`US 2015/O3O1820 A1
`Oct. 22, 2015
`
`Related U.S. Application Data
`Continuation of application No. 14/060,490, filed on
`Oct. 22, 2013, now Pat. No. 9,081.897, which is a
`continuation of application No. 12/841,113, filed on
`Jul. 21, 2010, now Pat. No. 8,572,571.
`Provisional application No. 61/325,212, filed on Apr.
`16, 2010, provisional application No. 61/228,140,
`filed on Jul 23, 2009.
`
`Int. C.
`G06F 9/44
`G06F 3/00
`G06F 9/445
`
`(2006.01)
`(2006.01)
`(2006.01)
`(Continued)
`
`U.S. C.
`CPC ................ G06F 8/65 (2013.01); G06F 9/4443
`(2013.01); G06F II/3664 (2013.01); H04W
`4/003 (2013.01)
`
`(58) Field of Classification Search
`CPC ....... H04W 4/027; H04W 4/02; H04W 64/00;
`G06F 21/88: G06F 8/65; G06F 8/34; G06F
`8/38; G06F 1 1/3664
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`6,047,327 A
`6,574,791 B1
`6,668,368 B1
`
`4/2000 Tso et al.
`6/2003 Gauthier et al.
`12/2003 Hernandez, III
`(Continued)
`OTHER PUBLICATIONS
`
`Stewartet al., Transition relevance place: a proposal for adaptive user
`interface in natural language dialog management systems, Apr. 2006,
`6 pages.
`
`(Continued)
`
`Primary Examiner — Thuy Dao
`(74) Attorney, Agent, or Firm — Morgan, Lewis & Bockius
`LLP
`
`ABSTRACT
`(57)
`A system including a terminal machine and a service provider
`machine is modified using a service provider machine. The
`terminal machine includes a terminal application for display
`ing a prompt in a first sequence of prompts and accepting a
`user data entry in a first series of data entries. The service
`provider machine includes a provider application for receiv
`ing the user data entry. The update server machine sends a
`dialog module including a first and second set of updated code
`to the terminal machine and the service provider machine,
`respectively. The dialog module does not modify computer
`executable instructions saved on the terminal or service pro
`vider machines. The first and second set of updated code
`adapts the terminal application and provider application,
`respectively, to use a second sequence of prompts and a
`second sequence of data entries.
`23 Claims, 15 Drawing Sheets
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 1 of 26
`
`IALOGE SEENCE MCNGA
`ErMAACHINEAN A SERVCE
`ROWERMACN
`
`2
`TERMINAL MANE
`
`434
`SPLAY FIRST ROWPT
`
`1.
`SERWICE PR fier
`MACNie
`
`3.
`NITIAEAigE
`SEQUENCE
`
`room
`
`ACCEETJSERATA ENTRY
`INPUT
`
`as
`SENUSERATA ENTRY
`
`:
`RECEIVE SERAAERY
`
`ai.
`SplAYSECON PROvi
`
`at 2
`NITATESECNPRMR
`
`

`

`US 9,304,758 B2
`Page 2
`
`2005, 0102664 A1
`2006/0069568 A1
`
`5/2005 Eyres et al.
`3/2006 Passaretti ................ G1 OL15/O1
`704/27O
`
`4/2006 Craswell et al.
`2006/0073820 A1
`2006/0230379 A1* 10, 2006 Pintos ....................... G06F 8/38
`717/109
`2007/0240069 A1* 10/2007 Eldridge ......... GOSB 19,0426
`715,763
`2009/0171669 A1* 7/2009 Engelsma ............... G1 OL15, 22
`705/275
`
`10/2010 Berton et al.
`2010/0267345 A1
`8, 2013 Reitan
`2013/0219357 A1
`OTHER PUBLICATIONS
`
`Griol et al., Statistical dialog management methodologies for real
`applications, Sep. 2010, 4 pages.
`Perugini et al., A Study of out-of-turn interaction in menu-based, IVR,
`voicemail systems, Apr. 2007, 10 pages.*
`Lohr et al., Mixed-Initiative Dialog Management for Speech-Based
`Interaction with Graphical User Interfaces, Apr. 2008, 10 pgs.
`Pat
`MULTI: Multiple User Interactive Template Installati
`EO, 1
`ultiple User Interactive emplate installation,
`. ZUU f. I pg.
`ional Prelimi
`Sourcetrace Systems Inc., International Preliminary Report on Pat
`entability, PCT/US2010/042775, Feb. 2, 2012, 6 pgs.
`Sourcetrace Systems Inc., International Search Report and Written
`Opinion, PCT/US2010/042775, Sep. 13, 2010, 6 pgs.
`
`* cited by examiner
`
`(51) Int. C.
`H0474/00
`
`G06F II/36
`
`(2009.01)
`
`(2006.01)
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`3/2004 Haswell et al.
`6,701,514 B1
`2/2007 Bourke-Dunphy et al.
`7,185,334 B2
`3/2008 Saidenberg et al.
`7.343,550 B2
`9/2009 Ramachandran et al.
`7,594,219 B2
`7,827,545 B2 11/2010 Choe et al.
`7.930,182 B2 * 4, 2011 Sinai ......................... G06F 8/38
`- - W
`al
`TO4,231
`8,056,070 B2 * 1 1/2011 Goller ....................... GO6F 8.65
`TO4,231
`8,307,294 B2 * 1 1/2012 Luo ........................... G06F 8.34
`715,762
`3.26 R:
`.38: VICE
`I w
`C. ca.
`8,572,571 B2 10/2013 Chatterjee
`8,977,951 B2* 3/2015 Ethier ................... G06F 3.0484
`71.5/222
`9,158,508 B2 * 10/2015 Eldridge ............... G06F 3.0486
`2003/0022677 A1
`1, 2003 Pikivi
`2004/0205720 A1 10, 2004 Hundt
`2004/0242209 A1 12/2004 Kruiset al.
`2005, OO65995 A1
`3, 2005 Milstein et al.
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 2 of 26
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 1 of 15
`
`US 9,304,758 B2
`
`SERVE POWER
`VACH NE
`
`2 SERVCE ROWER
`At A
`
`4 frSS
`TRANSCEIVER
`
`24 fire SS
`TRANSCEWER
`
`12 RMNA ACACN
`
`
`
`
`
`
`
`
`
`
`
`28 SER
`|| DISPLAY
`
`
`
`2.E.
`DEVICE
`
`2 ERNAMACHN
`
`
`
`2
`
`DATE SERVER
`ACN
`
`14 IRE ESS
`RA SECEER
`
`OS DAC GUE WE
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 3 of 26
`
`FG.
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 2 of 15
`
`US 9,304,758 B2
`
`12
`
`2.
`
`
`
`122
`
`224
`
`22
`
`2 O
`
`SERVCE
`ROWOR ACN
`
`ER/viA
`ACN
`
`
`
`102 AE
`SERVER WACN
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 4 of 26
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 3 of 15
`
`US 9,304,758 B2
`
`33O
`ERMINAL MACHINE DALOGUE MODUE,
`DAE SECRENCE
`
`O2
`A SERVER /ACNE
`
`2)
`ERVNA. VACNE
`
`SEN ACGE WOULE
`WERSON NFORMAT ON
`
`CHE TERMINAL MACHINE
`
`338
`REEVE AND STORE
`ALOG E v.) E
`
`
`
`EXEC E ERMNAL
`APPLCAON
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 5 of 26
`
`F.G. 3A
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 4 of 15
`
`US 9,304,758 B2
`
`350
`SERVICE PROVIDER DALOGUE MODULE,
`UPDAE SECRUENCE
`
`O2
`PAE SERVER MAC-N-
`
`SERVE PROWER
`MAC-NE
`
`RECEVE AND SORE
`}}A(OGUE MOD E VERSON
`NFORMATON
`
`
`
`
`
`356
`SEND A A L8){GUE MOD E
`O THE SERVCE PROV ER
`MACH NE
`
`35
`SiN) 3A {{G JE Mi{})}
`WERSON INFORMA (ON
`
`
`
`
`
`358
`RECEIVE AND STORE
`A {}GUE N{}}J E
`
`EXE ("E SERVCE PRCW) R.
`AP {CAEN
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 6 of 26
`
`G. 38
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 5 Of 15
`
`US 9,304,758 B2
`
`(i)
`OAOGE SERENCE NCDNGA
`RMNA ACN AN A SERVCE
`PROWER MAC-NE
`
`2
`RNA WACN
`
`
`
`ROWER
`SERW
`WAC-NE
`
`$2
`NTAE AL OGE
`SEQUENCE
`
`44
`SPLAY SECON) ROW
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 7 of 26
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 6 of 15
`
`US 9,304,758 B2
`
`42O
`ACGE SEENCE NCDN G. A
`ERNA AC-N AND A SRW:
`PROVER WACH NE
`
`20
`ERVNA MAC-NE
`
`422
`NATE BEA CE
`SEQUENCE
`cricY
`A24
`SAY FRS R{OW
`
`ACCEPT SER ATA ENTRY
`NPT
`
`SEN SER AND PROWP
`AA
`
`
`
`
`
`O
`SERVCE OROW) R
`fACME
`
`- 43
`RECEWE SER AND R OT
`ATA
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 8 of 26
`
`F.G. E.
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 7 Of 15
`
`US 9,304,758 B2
`
`eiic ch
`
`S.
`
`tery: oak
`ef:
`

`
`CC
`
`FG. A
`
`S.
`as
`wer
`
`2.Éck is a haia ice
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 9 of 26
`
`FC. E.
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 8 of 15
`
`US 9,304,758 B2
`
`e
`
`A
`
`Pease eter year bark
`a CCC at
`ser:
`
`U A
`
`is
`
`a
`
`FG. A
`
`iWake i38 pay eit
`2. Wake sawings deposit
`S Wi t s
`3.
`S. S s
`
`ai
`
`Pease gester can
`payment art:
`
`FG. S.
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 10 of 26
`
`S.
`
`F.G. SC
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 9 Of 15
`
`US 9,304,758 B2
`
`S.
`
`eiic
`
`G. A
`
`S.
`he is
`
`sease eter cai
`ide tificatio is re:
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 11 of 26
`
`F.G. 78
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 10 of 15
`
`US 9,304,758 B2
`
`sigged Eri is:
`at are:
`Saurity as at:
`
`tisiifiti stars raise, Siri isfy if
`aii is
`Estasis. See als.
`gigs ask FE is
`
`S&S...SSS
`
`Raasis:
`
`S.
`
`sidset. Eggs:
`as fiti f :
`
`888S
`sci-frS5, Sa'iisa ri: 8.4 tissis, sps assassists sty,
`s.stas' assassia
`is tissisi saga as
`'aasi.
`
`s: guage Sit:
`
`Sigis Sysis
`
`risis it
`
`is is a gas Says roject 3; 3 trit Prict for if
`
`sing
`
`is
`
`is
`
`* Fixx Scy's 25
`
`Sess'':
`
`it
`
`as
`
`Sa'gift sists fi
`
`::ig, esc: ::::::::::::::::iii. as it.
`
`c is like it 3's air
`
`3 giga is
`
`sists:
`it is
`Services Feiya her:
`Fliiia Essigf8: Extreme
`
`is 58 E: sis.
`Faap::f a
`eServices if tidas paris
`sti
`i
`Sefik
`
`SSEE
`
`Fres: is ER FAN para contina:
`
`
`
`S.
`S
`S
`
`S.
`
`
`
`
`
`
`
`
`
`s
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 12 of 26
`
`SSSSSSSSSSSSSSSSSSSSSS
`
`
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 11 of 15
`
`US 9,304,758 B2
`
`
`
`estifia
`
`A:lark:
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 13 of 26
`
`FG. 8B
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 12 of 15
`
`US 9,304,758 B2
`
`2O
`TERNA
`AACME
`
`s
`
`
`
`FSS
`TRANSCEIVER
`
`VORY
`
`ROCESSOR
`
`
`
`
`
`908
`
`
`
`SK
`STORAGE
`
`MEDA L910
`
`RVE
`
`( MEDIA -"
`
`M
`r-, -, -,
`OOO 918
`|-
`
`cc
`
`circ Y.r
`
`
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 14 of 26
`
`SER
`DISPLAY
`
`92O
`
`ROGRA L91
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 13 of 15
`
`US 9,304,758 B2
`
`
`
`- 1018
`Fr SS
`TRANSCEIVER
`
`Y
`traxxxx xxxxxxx f- s
`
`O16
`
`NETWORK -
`CONNECTION
`
`1G
`
`SRVCE PROVER
`ACN
`
`
`
`
`
`VEVORY
`
`ROCESSOR
`
`
`
`
`
`*
`
`waxas -
`*
`e. easa
`DISK
`STORAGE
`S- as'
`
`1008
`
`w
`
`-
`vEDA -
`RW
`iDA
`
`2
`
`
`
`OA
`
`ROGRA
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 15 of 26
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 14 of 15
`
`US 9,304,758 B2
`
`102
`A SERVER
`AC-NE
`
`
`
`N 1118
`-
`
`WIRELESS
`TRANSCEIVER
`N- -
`
`
`
`1116
`NETWORK -
`CONNECTION
`
`MEMORY
`
`|
`
`PROCESSOR
`
`vie A
`
`y
`
`EA
`
`1 12
`
`
`
`DiSK
`STORAGE
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 16 of 26
`
`
`
`PROGRAM
`
`

`

`U.S. Patent
`
`Apr. 5, 2016
`
`Sheet 15 Of 15
`
`US 9,304,758 B2
`
`COViNCAONS AEKE
`
`EAER
`
`
`
`
`
`USER DATA, USER DATA,
`RCVP
`RCM?
`2
`
`
`
`24.
`
`28
`
`28
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 17 of 26
`
`

`

`US 9,304,758 B2
`
`1.
`MODIFICATION OF TERMINAL AND
`SERVICE PROVIDER MACHINES USING AN
`UPDATE SERVER MACHINE
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a continuation of U.S. patent applica
`tion Ser. No. 14/060,490, filed Oct. 22, 2013, which is a
`continuation of U.S. patent application Ser. No. 12/841,113,
`filed Jul. 21, 2010, now U.S. Pat. No. 8,572,571, issued Oct.
`29, 2013, which claims the benefit under 35 USC 119(e) of
`U.S. Provisional Patent Application No. 61/325,212, filed
`Apr. 16, 2010, and U.S. Provisional Patent Application No.
`61/228,140, filed Jul. 23, 2009, the disclosures of which are
`hereby incorporated by reference in their entireties.
`
`10
`
`15
`
`BACKGROUND
`
`2
`Software application may be further adapted to communicate
`the user input to another hardware device using a network
`connection.
`Oftentimes, after a computerized system has been initially
`constructed, modifications may be required, either to improve
`the functionality of the system or to customize the system to
`meet new requirements. In some cases, these modifications
`require changes to the Software application stored on each
`system device.
`Typically, a software application includes computer-ex
`ecutable instructions that are notable to be edited or modified
`directly by a developer. Using known methods, the developer
`may only implement the required changes by creating or
`editing source code. The updated Source code must then be
`recompiled or translated into an updated set of computer
`executable instructions and distributed to the hardware
`devices in the system as an updated Software application.
`Typically, the updated set of computer-executable instruc
`tions that comprises an updated Software application includes
`a relatively large amount of information.
`However, in many situations, it may be difficult to distrib
`ute a newly compiled version of the updated Software appli
`cation to all of the devices in the system. This is particularly
`true if the system is distributed over a large geographic area.
`For example, it may be difficult to locate each system device
`and transport it to a central location or development center.
`Because physical access to the devices is not practical, the
`new software application cannot be uploaded using a tradi
`tional wired transmission (e.g., an interface cable).
`In some computerized systems, the only practical option
`may be to upload the updated Software application using an
`existing communication network. However, if the communi
`cations network has limited data transmission capabilities, it
`may be difficult to transmit the large amount of information
`(e.g., an entire software application). For example, a Software
`application may be initially installed on a wireless mobile
`device (e.g., a cell phone or PDA). Typically, the device is
`issued to a user, who may travel or reside far from a software
`development center. The only method of communicating with
`the device may be over a wireless telecommunications net
`work. However, due to bandwidth limitations on data transfer
`over the wireless network, an upload of the entire software
`application may not be economically feasible. Even if an
`upload of the application is possible, it may take an unaccept
`able amount of time due to the slow transfer rate of a wireless
`network (as compared to a dedicated wired transmission line
`or cable). These problems are further exacerbated if the com
`puterized system includes a large number of wireless mobile
`devices, each requiring a separate application upload. Devel
`oping and testing separate applications for each mobile
`device can be time-consuming and economically infeasible.
`Additionally, if there are different versions of the software
`application distributed among a large number of mobile
`devices, a uniform Software application update may be diffi
`cult to manage and track.
`What is needed is a computerized system able to provide
`efficient modification of software applications that are dis
`tributed across a network of remote devices.
`
`1. Field of Invention
`This application relates generally to a computerized sys
`tem to provide efficient modification of remote software and,
`more specifically, to adaptation and customization of a com
`puter transaction dialogue module.
`2. Description of the Related Art
`It is well known to those of skill in the art that computerized
`systems can be adapted to perform specific functionality by
`implementing software code. For example, the Software code
`may be written in languages such as C, C++, or Java.
`A computerized system may be constructed, which
`includes electronic hardware, one or more computer proces
`sors, and software, which is able to perform system function
`ality. Typically, the software is written or created as source
`code and later compiled or converted into computer-execut
`able instructions able to be read and executed by a computer
`processor without additional translation or adaptation. For
`example, the source code may be written in languages such as
`C, C++, or Java. Computer-executable instructions are some
`times also referred to as executable code or machine code.
`For example, the computer-executable instructions may be
`compiled for and executed on a specific computer processor,
`such as the Intel Pentium processor from Intel Corporation, or
`may be used to modify the functionality of a Programmable
`Gate Array (PGA) or Field Programmable Gate Array
`(FPGA), such as those provided by Xilinx Corporation. In
`most cases, computer-executable code is specific to one type
`of processor or logical device.
`Virtual machines can be used to provide a method of
`executing code on a computer system that is not dependent on
`a specific processor or hardware configuration. When using a
`virtual machine, a portion of code (typically in the form of
`Source code) is compiled or translated into intermediary code,
`such as Java Byte Code. The intermediary code is thenable to
`be further translated using the virtual machine, which itself is
`run on a computer processor (and perhaps also an operating
`system). Thus, a virtual machine is able to emulate a stan
`dardized computer platform that is independent of the actual
`computer processor or hardware configuration.
`A computerized system, in the context of the embodiments
`described herein, includes more than one hardware device,
`each hardware device running a separate Software applica
`tion. Each Software application comprises, in part, computer
`executable instructions that allow the associated hardware
`device to interact with a user and communicate with another
`hardware device over a distributed network. For example, the
`Software application may be adapted to interact directly with
`a user of the hardware device by accepting user input. The
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 18 of 26
`
`60
`
`65
`
`SUMMARY
`
`A system including a terminal machine and a service pro
`vider machine is modified using a service provider machine.
`The terminal machine runs a terminal application. The termi
`nal application is able to display a prompt in a first sequence
`of prompts and accept a user data entry in an associated first
`sequence of user data entries. The terminal application is
`
`

`

`3
`comprised of a first set of computer-executable instructions
`and a first set of code. The service provider machine runs a
`provider application. The provider application is able to
`receive the user data entry. The provider application is com
`prised of a second set of computer-executable instructions
`and a second set of code.
`The update server machine is able to send a dialogue mod
`ule to the terminal machine and the service provider machine.
`The dialogue module modifies the first and second set of code
`to produce a first and second set of updated code, respectively.
`The dialogue module does not modify the first or second set of
`computer-executable instructions.
`The first set of updated code adapts the terminal applica
`tion to use a second sequence of prompts and a second
`sequence of data entries. The second set of updated code
`adapts the provider application to use the second sequence of
`prompts and the second sequence of data entries.
`
`10
`
`15
`
`DESCRIPTION OF THE FIGURES
`
`35
`
`40
`
`45
`
`FIG. 1 illustrates a computerized system for updating a
`dialogue protocol by adapting applications on a terminal
`machine and a service provider machine.
`FIG. 2 illustrates the use of a dialogue module in a com
`25
`puterized system.
`FIG. 3A illustrates a process for updating a dialogue mod
`ule on a terminal machine using an update server machine.
`FIG. 3B illustrates a process for updating a dialogue mod
`ule on a service provider machine using an update server
`30
`machine.
`FIG. 4A illustrates a dialogue sequence including a termi
`nal machine and a service provider machine in a continuous
`communications mode.
`FIG. 4B illustrates a dialogue sequence including a termi
`nal machine and a service provider machine in a delayed
`communications mode.
`FIG. 5A illustrates an example of a first prompt in a bank
`ing dialogue protocol.
`FIG. 5B illustrates an example of a subsequent promptina
`banking dialogue protocol.
`FIG. 6A illustrates an example of first prompt in a banking
`dialogue protocol.
`FIG. 6B illustrates an example of a multiple option prompt
`in a banking dialogue protocol.
`FIG. 6C illustrates an example of a data entry prompt in a
`banking dialogue protocol.
`FIG. 7A illustrates an example of a first prompt in a medi
`cal dialogue protocol.
`FIG. 7B illustrates an example of a subsequent promptina
`medical dialogue protocol.
`FIG. 8A to 8B illustrate examples of a design tool for
`modifying a system dialogue protocol.
`FIG. 9 illustrates an exemplary embodiment of a terminal
`machine.
`FIG. 10 illustrates an exemplary embodiment of a service
`provider machine.
`FIG. 11 illustrates an exemplary embodiment of an update
`server machine.
`FIG. 12 illustrates an exemplary logical communications
`packet structure.
`The figures depict one embodiment of the present inven
`tion for purposes of illustration only. One skilled in the art will
`readily recognize from the following discussion that alterna
`tive embodiments of the structures and methods illustrated
`
`50
`
`55
`
`60
`
`65
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 19 of 26
`
`US 9,304,758 B2
`
`4
`herein can be employed without departing from the principles
`of the invention described herein.
`
`DETAILED DESCRIPTION
`
`The following embodiments describe a system capable of
`conducting a transaction between a user at a terminal machine
`and a service provider at a second, remote machine. In some
`instances, the system can be used to facilitate a business
`transaction between a bank or financial institution (using a
`service provider machine) and a banking customer (using a
`terminal machine). The structure of the transaction may be
`custom tailored by adapting a dialogue protocol between at
`least two machines in the system. The dialogue protocol
`defines the contours of a transaction and includes various
`components such as: a sequence of dialogue prompts; a
`sequence of user data entry fields; and a set of dialogue
`parameters. Additionally, the dialogue protocol may define
`aesthetic features including the graphical user interface
`(GIU), display layout and GUI functionality. The dialogue
`protocol may be determined by the two software applications
`running on the two machines engaged in the transaction with
`the user.
`The system described herein allows for the adaptation of a
`dialogue protocol through the modification of one or more
`Software applications. Specifically, one or more of the Soft
`ware applications may be adapted by including or replacing a
`dialogue module, which includes a set of code. The code
`represents at least some information that must be translated
`by the software application before it can be implemented on
`the machine processor. In some embodiments, a developer
`may be able to generate an updated dialogue module as
`required in accordance with a particular dialogue protocol.
`In a preferred embodiment, an updated dialogue module is
`able to be communicated from an update server machine to
`individual machine (e.g., devices) in the system, each
`machine having a software application. In a preferred
`embodiment, the dialogue module adapts at least one of the
`Software applications to produce a modified dialogue proto
`col between the system components.
`1. Dialogue Updates Using a Three-Node System
`FIG. 1. depicts an exemplary computerized system for
`updating a dialogue protocol by adapting applications on a
`service provider machine 110 and a terminal machine 120. As
`described above, a transaction may be conducted between a
`user and the terminal machine 120 and the service provider
`machine 110. The transaction is conducted according to a
`dialogue protocol. The dialogue protocol may be changed by
`communicating a dialogue module 106 from the update
`server machine 102 to the service provider machine 110 and
`the terminal machine 120. As described below, the dialogue
`module 106 may include code that is unique to either the
`service provider machine 110 or the terminal machine 120.
`Although they are described separately, the service provider
`machine 110 and the update server machine 102 may or may
`not be on the same physical machine.
`The system embodiment shown in FIG. 1 provides for
`communication between a service provider machine 110 and
`a terminal machine 120. As depicted in FIG. 1, the commu
`nication can be facilitated using a wireless communications
`network between the terminal machine wireless transceiver
`124 and a wireless transceiver 114 in communication with the
`service provider machine 110. In some embodiments, the
`wireless communications network may be a CDMA or GSM
`telecommunications network capable of transmitting data
`between network users. Other components of the system such
`as wireless base stations, network links, network resource
`
`

`

`US 9,304,758 B2
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`5
`controllers and other components of the wireless communi
`cations network are not shown in FIG. 1. In alternative
`embodiments, the communication may also be transmitted
`over a wireless communications network that includes a
`wired network connection or a public switched telephone
`network (PSTN).
`As described above, a specialized communication or trans
`action occurs between a user and the terminal machine 120
`and the service provider machine 110. The transaction may be
`performed in accordance with a dialogue protocol. In one
`embodiment, the dialogue protocol is determined, at least in
`part, by the service provider application 112 (residing on the
`service provider machine 110) and the terminal application
`122 (residing on the terminal machine 120). In a preferred
`embodiment, the dialogue protocol guides a user through a
`transaction or series of transactions with a service provider.
`The system may conduct a transaction in a continuous
`communications mode, a delayed communications mode,
`and a mode that alternates between continuous and delayed
`communication modes. The mode depends on the availabil
`ity, performance, or cost of the communication network
`between the terminal machine 120 and the service provider
`machine 110.
`A system operating in a continuous communications mode
`transmits and receives data between the terminal machine 120
`and the service provider machine 110 at the same time or
`nearly the same time as a transaction is conducted between
`the user and a service provider. For example, data that is
`entered at the terminal machine 120 by a terminal user is
`typically transmitted to the service provider machine 110
`before the user is prompted for additional input. The system
`may operate in a continuous communications mode if the
`communication network is available and can provide perfor
`mance adequate to transfer data between prompts, without
`causing an appreciable delay in the transaction. One advan
`tage to operating in a continuous communications mode is
`that transactional information sent by the service provider
`machine 110 is likely to be more current than if the transac
`tional information had been previously stored on the terminal
`machine 120.
`A system operating in a delayed communications mode
`stores data input at the terminal machine 120 and transmits
`the data to a service provider machine 110 at a time that is
`after a transaction is completed between the user and service
`provider. For example, a series of prompts may be stored on
`the terminal machine 120 and used to collect a series of user
`inputs. The user inputs are stored and then transmitted to the
`service provider machine 110 at a later time. The system may
`operate in a delayed communications mode if the communi
`cation network is not accessible or reliable at the time of the
`transaction. An intermittent communications mode may also
`be used if the communication network is available, but it is
`advantageous to minimize the number of communications
`between the terminal machine 120 and the service provider
`machine 110. Typically, the cost of data transmission over a
`communications network is lower when the number of trans
`missions is reduced. Operating in a delayed communications
`mode may also result in an improved system response
`because there is little or no delay due to data transmission over
`the communications network.
`A system can also alternate between modes by operating a
`portion of the time in a continuous communications mode and
`a portion of the time in a delayed communications mode. For
`example, a series of data entries may be stored on the terminal
`machine 120 and then transmitted as a group to the service
`provider machine 110 before the transaction is complete. By
`alternating between communications modes, the system may
`
`Case 6:20-cv-00564-ADA Document 1-3 Filed 06/24/20 Page 20 of 26
`
`50
`
`55
`
`60
`
`65
`
`6
`reduce communications costs by minimizing the number of
`data transmissions. Alternating between communication
`modes also allows the service provider machine 110 to pro
`vide the terminal machine 120 with up-to-date transactional
`information.
`With regard to hardware components used communication
`using the wireless communications network, the service pro
`vider machine 110 may be in communication with a wireless
`transceiver 114, which is able to send and receive data over
`the wireless communications network. In some embodi
`ments, the wireless transceiver 114 is separate from the ser
`vice provider machine 110, and is in communication with the
`service provider machine 110 using a computer network con
`nection. For example, in some embodiments, the wireless
`transceiver 114 may be part of a base station in a wireless
`communications network. In alternative embodiment, the
`wireless transceiver 114 is dedicated to the service provider
`machine 110 and/or is connected directly to the service pro
`vider machine 110.
`The service provider machine 110 also includes a service
`provider application 112 that is able to direct the service
`provider machine's portion of the dialogue protocol. Details
`regarding the service provider application are described in
`more detail in FIG. 2 below.
`The terminal machine 120 may also include a wireless
`transceiver 124 able to send and receive data over the wireless
`communications network. The terminal machine 120 also
`includes a terminal application 122 that is able to direct the
`terminal machine’s portion of the dialogue protocol. Addi
`tionally, the terminal machine 120 includes a user display 126
`and a data entry device 128 for interacting with a system user.
`For example, the user display 126 may include a monitor or
`screen and the data entry device 128 may include a keypad or
`keyboard. See FIG. 9 for a more detailed description of the
`components of a terminal machine 120.
`Also depicted in FIG. 1, the update server machine 102
`communicates with the service provider machine 110 and the
`terminal machine 120 using the wireless communications
`network described above. The update server machine 102
`may include a wireless transceiver 104 adapted for commu
`nication over the wireless communications network. In some
`embodiments, the wireless transceiver 104 is separate from
`the update server machine 102, and is in communication with
`the update server machine 102 using a computer network
`connection.
`The update server machine 102 also includes at least one
`dialogue module 106. As discussed in more detail below, the
`dialogue module 106 may include portions of code and/or
`instructions that are able to modify the dialogue protocol
`between the terminal machine 120 and the service provider
`machine 110. In a preferred embodiment, the dialogue mod
`ule is less than 1 Mb to facilitate communication over a
`network with limited data transfer capacity.
`FIG. 2 illustrates components of a computerized system
`used to update a dialogue protocol. In one embodiment, an
`update server machine 102 includes a terminal dialogue mod
`ule 202 and a service provider dialogue module 206. Each
`dialogue module 202, 206 may include one or more portions
`of code or instructions. In this exemplary embodiment, the
`terminal dialogue module 202 includes terminal code 204 and
`the service provider dialogue module 206 includes service
`provider code 208. In some embodiments, the terminal code
`204 and the service provider code 208 are the same code.
`A dialogue module may be communicated to individual
`components in the system. The embodiment in FIG. 2 depicts
`two components, a service provider machine 110 and a ter
`minal machine 120. A dialogue module 206 containing ter
`
`

`

`US 9,30

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