Netflix, Inc. v. Blockbuster, Inc.
Filing
22
Attachment 3
Request for Judicial Notice re
21 MOTION to Dismiss
OR, ALTERNATIVELY, TO BIFURCATE AND STAY DEFENDANT BLOCKBUSTER'S ANTITRUST COUNTERCLAIMS AND TO STRIKE AFFIRMATIVE DEFENSES OF UNENFORCEABILITY AND PATENT MISUSE filed byNetflix, Inc.. (Attachments: #
1 Exhibit A 1 of 2#
2 Exhibit A 2 of 2#
3 Exhibit B#
4 Exhibit C 1 of 2#
5 Exhibit C 2 of 2#
6 Exhibit D 1 of 2#
7 Exhibit D 2 of 2#
8 Exhibit E#
9 Exhibit F#
10 Exhibit G 1 of 2#
11 Exhibit G 2 of 2#
12 Exhibit H 1 of 2#
13 Exhibit H 2 of 2#
14 Exhibit I)(Related document(s)
21) (Durie, Daralyn) (Filed on 7/6/2006)
Netflix, Inc. v. Blockbuster, Inc.
Doc. 22 Att. 3
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 1 of 36
EXHIBIT B
Dockets.Justia.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
USOOS9S1643A
Page 2 of 36
111111111111111111111111111111111111111111111111111111111I1IIII11111I111111
United States Patent (19)
Shelton et al.
(54) MECHANISM FOR DEPENDABLY ORGANIZING AND MANAGING INFORMATION FOR WEB SYNCHRONIZATION AND TRACKIG AMONG MULTIPLE BROWSERS
(75) Inventors: James A. Shelton, Holmdel; Michael i.
(11) Patent Number:
5,951,643
Sep. 14, 1999
(45) Date of Patent:
5,734,835 5,737,619 5,742,768 5,774,660 5,774,670 5,784,058 5,793,972 5,796,952 5,802,299 5,809,250 5,862,330 5,887,143
3/1998 Selker ................................... 709/249
4/1998 Judson ................................... 707/500 4/1998 Gennaro et al. ................... 395/200.33
6/1998 Brendel et al. .................... 395/200.31 6/1998 MontulJ ................................ 709/227
7/1998 LaStrange et al. ..................... 345/340 8/1998 Shane ..................................... 709/219
Ingrnssia, Jr., Edisn; Thomas M. Rowland, Fair Haven, all of N.J.
(73) A~signee: NCR Corporation, Dayton, Ohio
(21) (22) (51) (52) (58)
8/1998 Davis et al. ...................... 395/200.54 9/1998 Logan et al. .................... 395/200.48 9/1998 Kior ...................................... 709/227 1/1999 Anupam et al. ....................... 709/204 3/1999 Saito et al. .............................. 709/248
AppJ. No.: 08/944,124
Filed: Oct. 6, 1997
Primary Examiner--sna Lim Attorney, Agent, or Fimi-Ying Tuo; Kenneth M. Berner
(57)
ABSTRACT
Int. Ci.6 ........................... G06F 13/00; G06F 13/14
U.S. Ci. .......................... 7091227; 709/224; 7091223; 709/248 Field of Search ................................... 707/104, 500;
395/200.33, 200.57, 200.54, 200.48; 709/227,
Described is a mechanism for dependably organizing and managing information for web synchronization and tracking among multiple consumer browsers. A session is created for
each of one of the consumer browsers when an individual
224,223,248
(56)
Reicrences Cited
consumer downloads an initial web page from an HTT server. A unique ID is assigned to that session. After the
session has been created for an individual browser, the
information about the all activities from that consumer
browser will be recorded into the session. Such a mechanism overcomes the diffculty to organize and manage the activities from the multiple consumer browsers that are in stateless nature.
u.s. PATENT DOCUMENTS
5,260,878 5,535,256 5,544,649 5,715,453 5,727,129
11/1993 Luppy. 7/1996 Maloney el al. . 8/1996 David et al. . 2/1998 Stewart .................................. 707/104 3/1998 Barrett et al. ............................. 706/10
23 Claims, 22 Drawing Sheets
~102A.,..
. Ival\
TERMINAL 1
~102K
; iu4K
~102N...
; lU4N
TERMINAL N 114N
115N
SESSIONID APPLET
DTS APPLETS MASTER APPLET
128A
SESSIONID APPLET
DTS APPLETS MASTER APPLET
128N
126A
126N 124N
146
149
156
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 3 of 36
u.s. Patent
Sep. 14, 1999
Sheet 1 of 22
5,951,643
FIG. i
Wi10104A - 2A
TERMINAL 1
Wi10104K - 2K
TERMINAL K 114A
Wi10104N - 2N
TERMINAL N
114K
WEB
BROWSER
WEB BROWSER
WEB BROWSER
114N
115A
115K
115N
...
...
129
NETWORK
134
WTS GATEWAY
142
152
144
WTS SERVER
SESSION TABLE
MASTER APPLET,
DTS APPLET, &
146
SESSION 10 APPLET
USER CLASS TABLE
147
...
148
DATABASE
¡MASTER APPLET,I AGENT APPLET & SUPERVISOR
149
APPLET
PROCESSING
APPLICATION
...
156
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 4 of 36
u.s. Patent
Sep. 14, 1999
Sheet 2 of 22
5,951,643
~102A
i 104A
TERMINAL 1
czi 0104K 1 2K
TERMINAL K
~102N
i 104N
TERMINAL N
114K
114A WEB
WEB
BROWSER
115A
BROWSER
115K
WEB BROWSER
114N
115N
SESSIONIO APPLET
OTS APPLETS
...
126A
128A
SESSIONIO APPLET
DTS
...
126K
128K
SESSIONIO APPLET
DTS
128N
APPLETS
MASTER APPLET
APPLETS
MASTER APPLET
126N
MASTER APPLET
124A
124K
124N
FIG. 2
NETWORK
134
WTS GATEWAY
142
152
144
WTS SERVER
SESSION TABLE
USER CLASS TABLE
145
MASTER APPLET, DTS APPLET, & SESSION ID APPLET
146
147
...
IMAA~J~~~ ~~~~!,i
148
OAT ABASE
t\i- 1'1 I t\r r Lot: I
& SUPERVISOR APPLET
149
PROCESSING
APPLICATION
...
156
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 5 of 36
u.s. Patent
Sep. 14, 1999
Sheet 3 of 22
5,951,643
~102A
i 104A
TERMINAL 1
FIG. 3
114A (3)
WEB
BROWSER
----, (6)
I
-------- r' +I
204
0( -------t-;-T------- ~
\:i
208
115A I
to( --------1"--,-------- ~ l
SESSIONIO APPLET
OTS
128A :
I 0( --------\~¡-------- ~) I
i .~
I I
_I
126A 124A
APPLETS
MASTER APPLET
r---I I
I__(5)-JI---I-_I I I~-(7) I _ I ---I - I- I L ii
(1 )
1(4)
I
(2)
I ----, '---------__
-I i I II I
I I I I
I
152
HTTPSERVER
145 I
I
WTS SERVER
SESSION TABLE
USER CLASS TABLE
I I I I
MASTER APPLET,
OTS APPLET, &
146
SESSION 10 APPLET
...
147
148
OAT ABASE
IMt,""...... :ib~LE~,1 i J'J~~ I.. I ..E.
& SUPERVISOR
149
APPLET
...
PROCESSING
APPLICATION
156
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 6 of 36
U.S. Patent
Sep.
14,
1999
Sheet 4 of 22
5,951,643
FIG. 4
(t102A i 104A
TERMINAL 1
214
114A (3)
WEB BROWSER
----1 (4)
115A 1 :
1-+--
c( -------t-:-t--m-- ;;
i:I r c( -------(~r------- ;; 1 L c( ____--__\-__1--__--__ ;; '-
208
SESSIONID APPLET
DTS APPLETS
MASTER APPLET
1
128A I I
I: _I I
126A :
124A 1
I (1)
I
I 1
'---------,
I
(2)
I (5)
'----1
I
WTS SERVER
SESSION TABLE
USER CLASS TABLE
MASTER APPLET,
145
DTS APPLET, &
146
SESSION ID APPLET
...
147
MASTER APPLET, AG ENT APPLET & SUPERV¡SûR APPLET
...
148
DATABASE
149
PROCESSING
APPLICATION
156
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 7 of 36
u.s. Patent
Sep.
14,
1999
Sheet 5 of 22
5,951,643
~102A
i 104A
TERMINAL 1
FIG. 5
224
WEB BROWSER
-----(1 )
114A
(4)
I
.: -------t-~-¡_------ ;:
I:J
. .: --------\---1-------- ;:
208
115A I
t .: -------t0r------ ;: J
I I
SESSIONID APPLET
DTS
128A:
126A I
I
APPLETS
MASTER APPLET
I I I
___________-i
124A
(2) I
134
I I
L.---l
I (3)
I I I
152
144
154
WTS SERVER
SESSION TABLE
USER CLASS TABLE
MASTER APPLET, DTS APPLET, & SESSION 10 APPLET
...
146
147
;48
DATABASE
MASTER APPLET, AGENT APPLET & SUPERViSOR APPLET
...
149
PROCESSING
APPLICATION
DATABASE
156
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 8 of 36
u.s. Patent
LO
Sep. 14, 1999
Sheet 6 of 22
5,951,643
"" ..
w :2
I(z ! :
-i a:
::
W W
1= w U)
z 0
I() W
a:
Cl CI CI
ø ... a
I(! Z
Cl
::
w CJ e. a: w :-: e: ~
a: ::
--
w a:
Cl Cl
.. 0 -i
w
n
I- .. u. :: :: 9 c: zZ
CI
() Ia:
.. I2 .. a.
z ::
::
l-
~ c:
w
:2 e: :z
ø ... a
a: :: w
-i
.. a.
ø 2 Cl .. 0 -i
Cl
~ e:
c:
UJ
~ e:
z: ci -:
UJ
LL
z ..
Cl
:: :: 0
()
Cl
lZ 0;
xx ~~
oI 02 C
CI Clw n w we:: CI CI
~
CI a:
.. I-I lC a: c :: a:. I2: Cl c a. 2 () 0 CI I- CI a: w ... CI a
()
a.
I2
e
..
()
..
Cl
.. () I- ICI a: c. -i a: )- e a:
-i CI w a: CI
0:
~ 2
IZ
0:
0 I.. l-I e C :z :: 0 .. U) I- (f c: Uf 0 (J
a: e: a.
e: a.
02 Ien 0 en
:i
.. l-I C :: Cl 2 .. ::
:: 0
()
la:
.. a.
Cl
CI
2 0I C
W en
ICI 2 a: :2CI -i
-i .. 0 I- Cl
:: :: I- I:: CI CI
-i -i l- I- )-
::
Z a. I- en z
CI I- :i .. CI a: -i I- ::
O()~::~
WI c: a: c: Ü C 0. :: 0 0
~
::
\0
t
§
Ci
t
t
t
ll+l
" ~
..
fT,
.
L-
§
ci w
t¿
en
2 z 0I oI Cf ( C
::
CI w CI CI
0i e
CI w CI
Z
...
b z 0
CI CI w CI
x x
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 9 of 36
u.s. Patent
Sep. 14, 1999
Sheet 7 of 22
5,951,643
FIG. 7
START)
,
í702
TYPE IN AN AGENT URL (OR A SUPERVISOR URL)
,l
í704
RETRIEVE AGENT PAGE (OR SUPERVISOR PAGE)
,
r706
DOWNLOAD AGENT PAGE (OR SUPERVISOR PAGE)
,
/708
r7 10
DOWNLOAD MASTER APPLET AND AGENT APPLET (OR MASTER APPLET AND SUPERVISOR APPLET)
,l
OPEN A DEDICATED SOCKET AND ESTABLISHES A SOCKET CONNECTION
,l
í 712
CREATE AGENT SESSION INTERFACE (OR SüPERVISûR SESSlûN INTERFACE)
,It
END)
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 10 of 36
u.s. Patent
Sep. 14, 1999
Sheet 8 of' 22
5,951,643
c .o . co
o' C
co
\
~~
~ !;
~~
\~
DDD
.s Õi c
Q)
IIQ
==
cr ::
..
1:
:i
.. E C :: m :i C c. 0 o 13 Ü 1: '¡j 'm .. ~i E r: : rI r: a. :: ü
Q)
o ()
.. r:
I. .
r:
1i
~ o
io -
::
=
o ø
l~~~
~ r\ ~
r:
o
co
~I
o
ë, ~
E
U2
j ..ll e H~ Q ~D 0 ~
c
õi 0:
Q)
Z
m
ë m
o
~i Q
r~
c
.e
r- = i: o
(i5 rn
c.
.13
.-2 m
a.
.Q
~ c
~
IIVI
Q)
en en
Q)
CJ
Q)
"5 r: ~c -$
.. ~
~
.
jW l
\
..
ëS
i:
Cl
~ m
a.
m
r
,
'. 13
c.
I
\
\
-. o
\
CO
o
co co
\
) co T" co
. 'I
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 11 of 36
u.s. Patent
Sep. 14, 1999
Sheet 9 of 22
5,951,643
FIG. 8B
(8008
i: AdminSupervlsor Agent
1I..1IL1I1X
SESSION LIST
SERVER STATISTICS
Session Count
I I
- -.
I
-
834
83
2- ltr
I
-
~
User Count
I
Agent Count
I I
Server Start Time
I I
üSER ûAïA
UserlD
User Name
I
AgentiD
AgentCustomer #
.-
836
838
--
-- -11 Select Session II II
Go To User
II
840
www.freepatentsonline.com
li Lj .
'"
(1 (1
Q) .1( :: .J (
o ::
FIG. 8C
800e
II .iii:iiix
rJ .
~
::
(1
("
~ ~ ~
Case 3:06-cv-02361-WHA
o 3
Agent Input Enter Session ID
Select Leadership Position
Session Length
en Admin Supervisor Agent
= ~
'?
rJ ~
~~
~ LeaderI
Participant count
o Follower 852
URL Count
Document 22-4
844 - -- --l
Join Session
II
846
Participant Name
AgEintlD
~ Drop Session
l8848 ~ 50
Current URL I
r-~ C~
L:J
I
.. .. I.
I. I.
rJ
ParticipantlD
URL History
~
!Q
II
~ ~
~
Go To URL
ii
II
858
("
('
:: ..
Filed 07/06/2006
856 -
0. -
.. c
N N
i- ~ 860
0 ~1
\C
Page 12 of 36
" ~" 0'
01
.¡ ~
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 13 of 36
U.S. Patent
Sep. 14,1999
Sheet 11 of 22
5,951,643
FIG. 9
902
BROWSE A WEB PAGE
920
STORE THE PARTICIPANTID
904
CONNECTED TO THE CALL CENTER
AND PARTICIPANTADDRESS
922
SET SYNCHRONIZATION DIRECTION
906
IDENTIFY CURRENT SESSION ID
908
ENTER THE CURRENT SESSION ID
SEND THE CURRENT URL TO THE (ADMINISTRATION) MASTER APPLET
924
910
SEND A COMMAND FROM
926
OPEN A BROWSER WINDOW (A SECOND BROWSER
1t.IQT M,If"t:\ ..1IV I ru'tVL-j
AGENT APPLET TO WTS SERVER
r- 912
SEND THE INFORMATION REQUESTED TO THE AGENT APPLET
928
DOWNLOAD WEB PAGE
914
IDENTIFIED BY CURRENT URL
DISPLAY INFORMATION RECEIVED BY THE AGENT APPLET
930
DOWNLOAD (CONSUMER) MASTER APPLET, A SET OF DTS APPLETS AND SESSIONID APPLET
916
SELECT JOIN BUTTON IN AGENT SESSION INTERFACE
932
SYNCHRONIZE WITH THE
918
SENDS Vv'TS SERVER A COMMAND TO JOIN THE
WEB PAGES
SELECTED SESSION
www.freepatentsonline.com
:: :: ::
-0
CD CD
:i. L .j r .J
Q)
rCD :: rne o
:: ::
~
CD
Case 3:06-cv-02361-WHA
()
o 3
800A
FIG. 10
1004
~ ~ ~
= ~
f'__
Selecll.dership Posltoo
I
l'
rt: (
~.l
I:
TELEPHONE BILL
~
1200
107101/95 - 0l01l95 -i
Time Period
804
I i1 FOllower. 80S ~ 0 Leader I ~
Agent Input Enler SesIon JD
.. .. \C
N.
Partnantcoont c=
\C \C
URlCouiit c=
Name ISli.nK""g 1
Acunl Balaiia IS100.00 -.
Document 22-4
S06
Drop Session
i- Join Seion
Curront URL I ::
--- = J
URL History
ParldpatlO
Partclpant Name
AgenllO
Payment I -i
Comments
81
i -i
r: :: (t (t ..
SessionlD 1123467 -i
Call Center Number 11-80056-77:J
~
J
Go TO URL I
,
/i
i
.. N o. .
N N
Filed 07/06/2006
818
S:W
O .. l
\0
Ol
..
Page 14 of 36
~ "' .i ~
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 15 of 36
U.S. Patent
Sep. 14, 1999
Sheet 13 of' 22
5,951,643
FIG. 11
1104
1106
INITIALIZE AND INVOKE MASTER APPLET
1108
ESTABLISH A SOCKET CONNECTION TO WTS GATEWAY AND SEND A COMMAND TO WTS SERVER
1110
IDENTIFY SESSION
1112
SEND A COMMAND (TOGETHER WITH THE URL) TO ALL THE PARTICIPANT TERMINALS
1114
PASS URL TO RESPECTIVE BROWSERS
1116
DOWNLOAD AND DISPLAY WEB PAGE II (,(,f'Dnlt.l~ I unL. MVVVnUIl'4UTf'vII DI
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 16 of 36
u.s. Patent
Sep. 14,1999
Sheet 14 of 22
5,951,643
FIG.12A
r 1200
TELEPHONE BILL
Name I Susan King
Time Period 0 107/01/95 - 08/01/95
Account Balance 1$100.00
11202 11204
11206
r-1208
Payment
Comments
SessionlD 11234567
j1210
1 1212
,I
Call Center Number 11-800-456-7777
11214
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 17 of 36
u.s. Patent
Sep. 14, 1999
Sheet 15 of 22
5,951,643
FIG. 12B
TELEPHONE BILL
1200
Name
Time Period
ISue Grant __________+~2~~__
r: 1204
107/01/95 - 08/01/95 J
Account Balance
rt100.00 J
changed
r: 1206
Payment
11208
1210
Comments Account name has been
_---r --- ---
Session
I D 11234567 J
r: 1212
Call Center Number 11-800-456-7777 J
r: 1214
r 1200'
TELEPHONE BILL
Name.
Time Period
ISueGrant ~_______~~=~2~__ r:1204'
107/01/95 - 08/01/95 J
Account Balance
1$100.00 J
r: 1206'
Payment
11208'
1210'
.-
Comments Account name has been - - . changed ---' -SessionlD 11234567
11212'
Call Center Number 11-800-456-7777
11214'
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 18 of 36
U.s. Patent
Sep. 14, 1999
Sheet 16 of 22
5,951,643
FIG. 13
1304
CHANGE NAME IN NAME FIELD FROM SUSAN KING TO SUE GRANT
1306
DETECT CHANGE AND PASS CHANGE TO MASTER APPLET
1308
SEND A COMMAND (TOGETHER WITH CHANGE)
TO WTS SERVER
1310
1312
SEND A COMMAND (TOGETHER WITH THE CHANGE) TO MASTER APPLETS IN PARTICIPANT TERMINALS
1314
PASS CHANGE TO RESPECTIVE DTS APPLETS
1316
DiSPLÂ Y CHÂNGE
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 19 of 36
U.S. Patent
Sep. 14, 1999
Sheet 17 of 22
5,951,643
FIG. 14
1404
DOWNLOAD WEB PAGE
1420 1406
INITIALIZE AND INVOKE MASTER APPLET, DTS APPLETS, AND SESSIONID APPLET
1422
LOCATE SESSIONLIST AND URL HISTORY LIST
1408
ESTABLISH A SOCKET CONNECTION AND SEND URL TO WTS GATEWAY
ISSUE TIME STAMP (UNLOADING TIME), AND STORE URL AND TIME STAMP TO URL HISTORY LIST
1424
1410
1412
I...,"V£" I L. I U..VI L-V I I y.. Ci:CCI('\l\1 I ("\'liTi: Oi:COi:f'TI\1i: VL-VVIVI ~
1426
DISCONNECT SOCKET CONNECTION
LIST AND URL HISTORY LIST
1414
ISSUE TIME STAMP (LOADING TIME), AND STORE URL AND TIME STAMP TO URL HISTORY LIST
1416
LOAD SUBSEQUENT WEB PAGE
1418
SEND A COMMAND ITri~CTUCD IAIITU 1101
\IV,-L.iiii-n YYIIII uni-
IDENTIFYING PREVIOUS PAGE)
TO WTS SERVER
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 20 of 36
u.s. Patent
Sep. 14, 1999
Sheet 18 of 22
5,951,643
FIG. 15
START
1504
MAKE CHANGE
1506
DETECT CHANGE AND PASS CHANGE TO MASTER APPLET
1508
SEND COMMAND (T()'" I-=THI=i. ... . .. . ITHJ: I~~at\I~J:' ~ I . . ~. ~ WITH ... '" I. 1.1 · "".. J \.-
TO WTS SERVER
1510
IDENTIFY SESSION
1512
STORE URL AND CHANGE INTO DATA LIST
END
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 21 of 36
U.S. Patent
Sep. 14, 1999
Sheet 19 of 22
5,951,643
FIG. 16
1604
CREATE SUPERVISOR
SESSION INTERFACE IN FIRST BROWSER INSTANCE
1618
DISPLAY INFORMATION
1606
1620
1608
1622
OPEN THIRD BROWSER INSTANCE
CREATE SUPERVISOR AGENT SESSION INTERFACE IN SECOND BROWER INSTANCE 1610
SET SYNCHRONIZATION DIRECTION
1624
DOWNLOAD WEB PAGE IDENTIFIED BY
CURRENT URL
1612
1626
UVVVI'IL.Vl\U \'-VI ùuivii::n
f"l-'All.lI 1" A r" '''rlNt'1 II .Ir-~'\\)
MASTER APPLET, DTS
1614
SENDS A COMMAND (TOGETHER WITH THE
APPLETS, AN 0 SESSIONID APPLET
1628
ESTABLISHES SOCKET CONNECTION TO WTS GATEWAY FOR THIRD BROWSER INSTANCE
SELECTED SESSION 10) TO WTS SERVER
1615
LOCATE SESSION INDICATED BY SELECTED SESSION ID AND SEND INFORMATION TO MASTER APPLET
~~~Q LULU
1630
SYNCHRONIZE THE WEB PAGES
ADD NEW RECORD IN PARTICIPANT LIST
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 22 of 36
u.s. Patent
Sep. 14, 1999
Sheet 20 of 22
5,951,643
C\
or
0 0
~ ~
r'"
.. ..
v o r-
-i -i
U zJ 0
!;
5
8 'D
"" ""
ãi
~
'"
on
"-
:i i:
"
UJ -iJ U
..
Je
'" E '"
~
g ~
~ ..
Cl
~ ~
;0 : .~
(J
" z
Ii 1:
1l E
~ i:
E i=
'"
j
ai
z
§ 0 ~
"
i'" :
." l Q)
~
8
E E
Q ü) -¡ Ü
0 0
0 cx
~~D~
C\ La cx
go ¡¡ ~ ~ !! ~ §
l. ~ uit ~ ~ . :¡
I
~
~
r
0 to
cx cx La cx cx V cx
In a. :: 0
I~¡=
õ
I
~
j
0
~
!
to ..
cx
,~
ii
0
I
2"~ õW
~
I
to La
cx
" ~
~
t. ..
CD
o o cx
v" C
CI
"C"
CZ
u
~ f0
II
w (J
F= CI CI
DODD
"
.3
'~
C' cx
to
C\
:; II
w
~
! 0
~
"5 .3
"
~
~
&
l
0
L1 CI
c:
CX
f0
CI
::
::
ën CJ CI
z 0
w
~
D
.s IUi o õl l .. ~~
l
,'
(l
i "i
o .x . c
cx C" cx
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 23 of 36
U.S. Patent
Scpo 14, 19?9
Shcet 21 of 22
5,951,643
FIG. 18
1802
REVIEW URLs FOR WEB PAGES PREVIOUSLY BROWSED
1804
1806
SEND A COMMAND (TOGETHER WITH THE SELECTED URL)
TO WTS SERVER
1808
SEND COMMAND (TOGETHER URLAND TIME INFORMATION) TO MASTER APPLETS
~ n~ n
IOIV
CHECK WHETHER BROWSER PREVIOUSLY PERFORMED ANY ACTIVITIES TO DATA FIELDS ON WEB PAGE IDENTIFIED BY URL
1812
IF BROWSER PREVIOUSLY PERFORMED ANY ACTIVITIES, SEND A COMMAND (TOGETHER WITH DATA FIELD NAMES, VALUES OF DATA FIELDS, AND TIME INFORMATION) TO MASTER APPLETS
PÄSS COMMÄND DATA FIELD NAMES AND DATA FIELD VALUES TO DST APPLETS
,,
1814
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 24 of 36
u.s. Patent
Sep. 14, 1999
Sheet 22 of 22
5,951,643
FIG. 19
1902
REVIEW THE URLs FOR ALL WEB PAGES PREVIOUSLY BROWSED
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 25 of 36
5,951,643
1
2
There is another need for an improved method to dependably organize and manage information for web synchroni-
There is yet another need for an improved method to design applications for dependably organizing and managRELATED APPLICATIONS ing information for wcb synchronization and tracking that This application relates to five other applications: (1) U.S. are portable to different software environments. Ser. No. 08/944,757 filed Oct. 6, 1997, entitled "DEPENDThe present invention meets these needs. ABLE DATA ELEMENT SYNCHRONIZATION MECHA- 10
MECHANISM FOR DEPENDABLY ORGANIZING AND MAAGING INFORMATION FOR WEB SYNCHRONIZATION AND TRACKIG AMONG MULTIPLE BROWSERS
zation and tracking without requiring knowledge of. the
details about the web navigation software.
sites (network sites) via the Internet. The basic model for retrieving information from web sites is user initiated infor-
SUMMARY OF TIlE INVNTION entitled "DEPENDABLE DATA ELEMENT TRACKING MECHANISM"; (3) U.S. Ser. No. 08/944,759 fied Oct. 6, In one aspect, 'the invention provides a method for estab1997, entitled "DEPENDABLE WEB PAGE ilACKlNG lishing a session to manage activities being performed to SYSTEM"; (4) U.S. Ser. No. 08/944,121 filed Oct. 6, 1997, 15 pages at a first terminaL. The method comprises the steps of: entitled "DEPENDABLE WEB PAGE SYNCHRONIZA(a) receiving an initial request from said first terminal for TION MECHANSM"; and (5) U.S. Ser. No. 08/944,125 retrieving an initial page; filed Oct. 6, 1997, entitled "MECHASM FOR DEPEND(b) creating a session for said first terminal in response to ABLY WEB SYNCHRONIZATION AND TRACKING said initial request; OPERATIONS AMONG MULTIPLE BROWSERS". 20 (c) receiving subsequent requests from said fist terminal BACKGROUND OF THE INVNTION for retrieving subsequent pages; The present invention relates generally to a method and (d) monitoring activities performed to any of said initial system forgetting access to Internet web sites by a group of and subsequent pages at said first terminal; web browsers that are being run at a group of user terminals. (f) storing information about said activities performed to It is known that users can retrieve information from web 25 any of said initial and subsequent pages at said first
terminal into said session created for said first terminaL.
NISM"; (2) U.S. Ser. No. 08/944,951 filed Oct. 6, 1997,
mation searching. Specifically, a user interacts with (via a terminal) a web browser to send a request to a web site. In
In another aspect, the invention provides a method for establishing sessipns to manage activities being performed
30 to pages at a plurality of user terminals. The method
response to the request, the web server for the web site retrieves the information requested and sends the web browser the information arranged in so called web page
comprises the steps of:
(a) receiving an initial request from each one of said user terminals for retrieving an initial page for said each.one
of said user terminals;
(HTML) format. One of the unique features of this model is the feature of "hyper-text link" embedded in web pages that 35 have been retrieved. This feature enables a user searching for information to "navigate" from one vieb page to another. In order to provide services (or assistam:e) to users (or consumers) via the Internet, it is desirable to provide features to: (1) synchronize web pages that are being browsed 40
(b) creating a session for each one of said user terminals
in response to initial requests sent from said user
terminals;
( c) receiving subsequent requests from each one of sa id user terminals for retrieving subsequent pages for each
one of said user terminals;
among a group of web browsers, (2) track activities performed to the web pages, and (3) synchronize activities performed to data elements on a web page that is being
displayed at a group of user terminals, and (4) track activities performed to data elements on a web page that is being 45 displayed at a group of user terminals.
(d) monitoring activities performed to any of said initial and subsequent pages at each one of said user terminals;
One diffculty in achieving such features is that individual browsers do not report all the activities performed to a web
server. For example, when a browser loads web pages from
send requests to any web servers. This increases the dif-
(e) storing information about the activities performed to any of said initial and subsequent pages at each one of said user terminals into sessions created for each one of
said user terminals.
The present invention also provides corresponding system its browser cache space or from a proxy server, it does not 50 for the respective aspects mentioned above.
culty to synchronize and' track the activities from the
browser.
BRIEF DESCRIPTION OF THE DRAWINGS
The purpose and advantages of the present invention will be apparent to those skiled in the art from the following Another diffculty in achieving such features is to design application programs portable to diferent web browsers. 55 detailed description in conjunction with the appended drawing, in which: Application programs designed to perform the feature for FIG. 1 shows a system includes N terminals, a network, one web browser are typically not portable to aoother web and a web site, in accordance with the present invention; browser manufactured by another vendor because browser
interface mechanisms are proprietary.
FIG. 2 shows a situation where each of the N terminals
Still another difculty in achicving such featurcs is that 60 has downloaded its respective Master Applets, DTS Applets, individual browsers send their requests to web servers in a and SessionID Applet, in accordance with the present invenDTS Applets, and SessionID Applet being downloaded into Therefore, there is a need for an improved method to 65 a terminal, in accordance with the present invention; dependably organize and manage information for web synPIG. 4 shows the process the (consumer) Master Applet, chronization and tracking. DTS Applets, and SessionID Applet being invoked, in
stateless manner. To a web server, a preceding request has no relation with a subsequent request. In processing of requests, a web site has no control over the sequences of the requests.
tion;
FIG.
3 shows the process the (consumer) Master Applet,
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 26 of 36
5,951,643
3
response to loading a subsequent web page, to perform the operations in accordance with the present invention, when these Applets have been previously downloaded and cached
in a terminal;
4
the spirit and scope of the invention. Thus, the present
invention is not intended to be limited to the embodiment(s)
shown, but is to be accorded with the broadest scope
consistent with the principles and features disclosed herein.
FIG. 5 shows the process of the (consumer) Master
Applet, DTSApplets, and SessionID Applet being invoked, in response to loading a subsequent web page, to perform the
Referring to FIG. 1, there is shown an exemplary web page synchronization system 100, in accordance with the
present invention.
operations in accordance with the present invention, when As shown in FIG. 1, the system includes N terminals both these Applets and the web page have been previously (104A, . , combination of 104N), a network 129 (the 10 Internet,. or. a 104K, . . . , andthe Internet and an Intranet), downloaded and cached in a terminal; FIG. 6 shows a session table in greater detail, in accorand a web site 134. Each of the terminals has a telephone set dance with the present invention; (102A, . . . , 102K, . . . , or 102N) installed in its vicinity. Each of the terminals can be a PC computer, a workstation, FIG. 7 shows how an agent (or supervsor) can create a
session interface by downloading an agent page (or a supervisor page) from administration page repository 149, in accordance with the present invention. FIG. 8A shows an agent session interface, in accordance
with the present invention;
15
a Java station, or even a web TV system. Web site 134 includes a WTS (Web Tracking and
Synching) gateway 142, a WTS server 144 containing a
session table 145 and a user class table 147, a database
processing application 148, an HTf (Hyper Text Transfer
FIG. 8B shows a browser supervisor session interface, in 20 Protocol) server 152, and a hard disk unit 154 for storing consumer page repository 146, administration page reposiaccordance with the current invention; . tory 149, and database 156. All the components in web site FIG. 8C shows a supervisor agent session interface, in 134 can be installed in one or more computer systems. Each accordance with the present invention; of the computer systems includes a processing unit (which FIG. 9 shows a flowchart illustrating the operation of joining a session by an agent, in accordance with the present 25 mayainclude a plurality of processors), a memory device, and disk unit (which may include a plurality of disk sets). invention; Each of the terminals (104A, . . . , I04K, . . . , or 104N)
FIG. 10 shows a screen display containing two browse
instances, in accordance with the present invention;
includes a processor unit (not shown) and a memory area
(115A, . . . ,
115K, . . . , 115N), and runs a Java enabled web
FIG. 11 shows a flowchart ilustrating the operation of 30 browser (114A, . . . , 114K, . . . , or 114N). Each of the web page synchronization, in accordance with the present memory area (115A, . . . , 115K, . . . , or 115N) is maintained
invention; by its respective browser (114A, . . . , 114K, . . . , or 114N). Via network 129, each of the browsers (114A, . . . , I'G.12Ashows a web page containing five data fields, in 114K, . . . , or 114N) is able to send requests to and receive accordance with the present invention. FIG. 12B shows a web page that is similar to that of FIG. 35 web pages from HTTP server 152, and. to display the web pages received at its respective terminaL. Each of the brows12A, except that the data in one of the five data fields is ers (114A, . . . , 114K, . . . , or 114N) is able to run a Master changed, in accordance with the present invention; Applet (124A, . . . , 124K, . . . , or 124N), a set of DTS (Data FIG. 13 shows a flowchart illustrating the operation of Tracking and Synching) Applets, a SessionID Applet, and an data synchronization, in accordance with the present inven40 Agent Applet. As shown in FIG. 1, these Applets are stored tion; in consumer page repository 146 and can be downloaded FIG. 14 shows a flowchart illustrating the operation of from consumer page repository 146 and stored in the web page tracking, in accordance with the present invention; memory areas of the terminals (104A, . . . , 104K, . . . , I04N). FIG. 15 shows a flowchart illustrating the operation of data tracking, in accordance with the present invention; 45 Referring to FIG. 2, there is shown the situation where each of the terminals (104A, . . . , 104K, . . . , or 104N) has FIG. 16 shows a flowchart illustrating the operation of
joining a session by a supervisor, in accordance with the
downloaded its respective Master Applets (124A, . . . ,
124K, . . . , or 124N), DTS Applets (126A, . . . , 126K, . . . ,
present invention.
FIG. 17, there shows three browser instances for a
supervisor, in accordance with the present invention;
or 128N), and SessionID Applet (128A, . . . , 128K, . . . , 50 128N), in accordance with the present invention.
In FIG. 2, each of the (consumer) Master Applet FIG. 18 shows a flowchart ilustrating the operation of (124A, . . . , 124K, . . . , or 124N) is primarily responsible re-browsing a web page previously viewed in a session, in for: (1) in response to loading each web page at its respective accordance with the present invention; and browser, opening a dedicated socket, and establishing a FIG. 19 shows a flowchart illustrating the operation of 55 socket connection to WTS gateway 142 via network 129 for re-browsing all web pages previously viewed in a session, in its respective browser (114A, . . . , 114K, . . . , 114N), (2) accordance with the present invention.
communicating with WTS server 144 via the socket
connection, from which WTS server 144 is able identify the
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
origin (i.e. which browser, which web page, etc.) of the
60 commands and information that are being delivered through,
The following description is presented to enable any
person skilled in the art to make and use the invention, and is provided in the context of a particular applica tion and its
requirements. Various modifications to the preferred
(3) monitoring the activities of its respective browser, (4)
sending the information about its respective browser's
activities to WTS server 144, (5) receiving and processing the information about other browsers' activities, (6) via the
to WTS server 144 for DTS Applets (126A, . . . , 126K, . . . , or 126N), SessionID Applets (128A, . . . , 128K, . . . , or
embodiment(s) will be readily apparent to those skilled in 65 socket connection, providing a single communication path
the art, and the principles defined herein may be applied to
other embodiments ancl applications without departing from
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 27 of 36
5,951,643
5
U8N), or any other consumer Applets embedded on the
6
embedded into consumer web pages. Exemplary consumer same page with the Master Applet, (7) sending commands .to Applets include: (consumer) Master Applet, DTS Applets, WTS server 144 to request services, for itself and for DTS SessionID Applet, etc. Applets (126A, 126K, . . . , or 126N), SessionID Applets Administration page repository 149 stores the web pages (USA, . . . , 128K, . . . , or U8N), or any other consumer 5 and Applets for call center administration users, including: App1ets embedded on the same page with the Master Applet, administrator, supervisor, agent, etc. Administration Applets and (8) sending user class information together with the can be selectively embedded into administration web pages. commands, to indicate that its respective browser is a Exemplary administration Applets include: (administration) consumer user. Master Applet, Agent Applet, Supervisor Applet, etc. Each set of DTS Applets (126A, . . . , 126K, . . . , or 126N) 10 To better describe the present invention, the Applets contains one or more individual DTS Applets, which are stored in (or downloaded from) repository 146 can be primarily responsible for: (1) displaying and monitoring the referred to as consumer Applets, and the Applets stored in data activities (data inputs or data updates of data fields) on (or downloaded from) repository 149 can be referred to as web pages that are being displayed by its respective browser, administration Applets. For example, the Master Applet (2) sending the data activities to WTS server 144 via its 15 stored in (or downloaded from) repository 146 can be respective Master Applet, (3) receiving the data activities referred to as consumer Master Applet, and the Master from other browsers via its respective Master Applet, and (4) Applet stored in (or downloaded from) repository 149 can be processing the data activities from other browsers for the referred to as administration Master Applet~. HTT server web pages that are being displayed by its respective browser. 152 contains a security application that allows consumer Each of the SessionID Applets (U8A, . . . , 128K, . . . , 20 users to get access only to the web pages stored in consumer or 12SN) is responsible for retrieving, and for displaying on page repository 146, and allows administration users (such as administrator, supervisor, agent, etc.) to get access to the a web page the current SessionlD. web pages stored in both consumer page repository 146 and A~ shown in administration page repository 149, Agent Applet (or Supervisor Applet) is responsible for creating a 25 administration page reposIlory 149. session intedace, joining, monitoring, and controlling a Session table 145 is responsible for maintaining the session through the session interface. The( administration) information for all active sessions. Master Applet is primarily responsible for: (1) opening a Class table 147 is responsible for keeping records of user dedicated socket, and establishing a socket connection to classes assigned to diferent users. Listed are exemplary user WTS gateway 142 via network 129 for the session interface administrator, supervisor, agent, created by Agent Applet, Supervisor Applet, or any other 30 classes: d on user classes (administrator, and consumer. Base supervisor, agent, administration Applet~ embedded on the same web page and consumer), WTS server 144 provides the following with the Master Applet, (2) communicating with WTS server services: 144 via the socket connection, from which WTS server 144 (1) crea ting a session (consumer); is able identify the origin (i.e. from which session interface) 35 (2) storing data received from a session participant of the commands and information that are being delivered
through, (3) via the socket ccn.riecticn, providing a single communication path to WTS server 144 for Agent Applet,
Supervisor Applet, or any other administration Applets
(supervisor, agent, and consumer);
embedded on the same web page with the Master Applet, 40 and (4) sending user class information together with the
commands, to indicate that its respective browser is an
administration user. WTS gateway 142 is responsible for maintaining all socket connections between Master Applets and WTS server 45 144. The connections between Master Applets and WTS
(3) listing active sessions (administrator and supervisor); (4) listing the information associated with active sessions (administrator, and supervisor); (5) listing current users (administrator);
(6) joining a session (supervisor and agent);
(7) terminating a session (supervisor);
gateway 142 take place using standard sockets. The connection between WTS gateway 142 and WTS server 144
takes place using RMI (Remote Method Invocation).
(8) monitoring a session (supervisor and agent); (9) configuring a session parameters (administrator); and (10) sending commands and information to a consumer Master Applet or an aclministration Master Applet in a
participating browser (supervisor, agent, and
consumer).
WTS server 144 is responsible for: (1) managing and 50
tracking the activities of all browsers participating in active session table 145. sessions, exemplary activities including: loading of, interHTT server 152 is responsible for processing the acting with, and unloading of web pages, (2) recording the requests issued by one of the web browsers, retrieving the information about the activities, (3) managing the synchroweb pages from eIlher consumer page repository 146 or nization of the activities for all browsers participating in the 55 administration page repository 149, and sending the web active sessions, (4) creating a session when a consumer user pages to the browsers that have generated these requests. (via a browser) sends a request to web site 134 for the first Database processing application 148 is responsible for time, (5) defining the session length intervals, (6) purging writing the.data collected in session table 145 into database sessions that have been inactive for more than the specifed 156. session length intervals, (7) adding and deleting participants 60 Referring to FIG. 3, there is shown the process of how the to a session, and (8) providing services to all commands (consumer) Master Applet, DTS Applets, and SessionID from consumer Applets, such as: (consumer) Master Applet, Applet being downloaded into terminal 104A from HTT DTS Applets, SessionID Applets, and administration server 152 in response to loading an initial web page, and Applets, such as: (administration) Master Applet, Agent then being invoked to perform the operations in accordance Applets, and Supervisor Applet. 65 with the present invention. Consumer page repository 146 stores the web pages and As shown in FIG. 3, a (consumer) Master Applet, a set of Applets for consumers. Consumer Applets can be selectively DTS Applets, and a SessionID Applet are embedded into
Database 156 is responsible for storig data collected in
ww.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 28 of 36
5,951,643
7
web page 204 by using a set of appli:t tags 208. Web page
8
126A, and SessionID Applet 12SA. As indicated by dotted line (3), web browser 114A loads web page 214. As indi-
204 is associated with a specific URL indicating the location
of web page 204 in HTT server 152. cated by dotted lie (4), in response to the loading of web As indicated by dotted line (1), web browser 114Asends page 214, web browser 114A locates Master Applet 124A, a request including the URL of web page 204 to HTlP 5 DTS Applets 126A, and SessionID Applet 128A (based on
server 152 via network 129. As indicated by dotted line (2),
the indication of applet tags 208) that are cached by browser
114Ain memory area 115A, and initializes these
in response to the request, HTT server 152 retrieves web.
page 204 from consumer page repository 146 and sends it to web browser 114A via network 129. Web page 204 contains
a set of applet tags 208, which indicate the location of 10
Applets and
thcn invokes them. As indicated by line (5), Master Applet
124A opens a dedicated socket and establishes a socket
connection to WTS gateway 142 for browser 114A and web page 214. Via the socket connection established for browser
Master Applet, DTS Applets, and SessionID Applet in HTT
server 152. As indicated by dotted line (3), web browser 114A loads web page 204. As indicated by dotted line (4),
since Master Applet, DTS Applets, and SessionID Applet
have not been downloaded, web browser 114A sends 15
114A and web page 214, Mastcr Applet 126A sends a
command, together with the ID unique to browser 114A and the URL of web page 214, to inform WTS server 144 that
web page 214 has been loaded. WTS server 144 issues a
time stamp (loading time) indicating the time the command
requests via network 129, to download these Applets based
on applet tags 208. As indicated by dotted line (5), HTT server 152 sends Master Applet, DTS Applets, and SessionID Applet to browser 114A via network 129. As indi124A, DTS Applets 126A, and SessionID Applet 128A into
was received and stores the URL and time stamp of web page into the session created for browser 114A. As wil be
seenin the description in connection with FIG. 6, following,
cated by dotted lie (6), browser 114Astores Master Applet 20 URL, command, and loading time are stored in a URL
history list and a command list created for the session. Referring to FIG. S, there is shown the process of the (consumer) Master Applet 124A, DTS Applets 126A, and are running togethcr with web browser 114A, to monitor and SessionID Applet 128A being invoked, in response to loadproces the activities for which they are assigned to be 25 ing a subsequent web page 224 (subsequent to web page responsible. As indicated by line (7), Master Applet 124A 214), to perform the operations in accordance with the opens a dedicated socket and establishes a socket connection present invention, when both these Applets and web page to WTS gateway 142 for browser 114A and web page 204. 224 have been previously downloaded and cached by Via .the socket connection, Master Applet 126 sends WTS browser 114A in terminal 104A. server 144 a command, together with an ID unique to 30 A~ indicated by dotted line (1), web browser 114A loads browser 114A. In response to the command from Master web page 224 cached in memory area USA maintained by Applet 126, WTS server 144 creates a session for browser browser 114A. Like wcb pages 204 and 214, wcb page 224 114A based on the unique ID, and issues a time stamp contains a set of applet tags 208 indicating the location of Master Applet 124A, DTS Applets 126A, and SessionID (loading time) indicating the time at which the command was received, and stores the URL and time stamp of web 35 Applet 128A. Before loading web page 224, the following page 204 into the session created for browser 114. As will events occur: (a) browser 114A instructs Master Applet see in the description in connection with FIG. 6 following, 124A to run a stop routine, (b) via the socket connection the URL, command, and loading time are stored in a URL established for browser 114A and web page 214A, Master history list and a command list created for the session. Applet 124A sends a command to inform WTS server 144 Referrig to FIG. 4, there is shown the process of the 40 that wcb page 214 has been unloaded, and disconnects the socket connection established for browser 114A and web (consumer) Master Applet 124A, DTS Applets 126A, and SessionID Applet 128A being invoked, in response to loadpage 214, (c) WTS server 144 issues a time stamp ing a subsequent web page 214 (subsequent to web page (unloading time) indicating the time the command was
memory area 115A of terminal 104A, and initializes and invokes these Applets. Afer being invoked, these Applets
204), to perform the operations in accordance with the
received, and (d) WTS server 144 records the URL and time
present invention, when these Applets have been previously 45 downloaded and cached in terminal 104A. A~ indicated by dotted line (1), to download web page 214, web browser 114A sends a request including the URL
of web page 214 to HTT server 152 via network 129.
routine, (b) via the socket connection established for
stamp of web page 214 into the session created for browser 114A. As will be seen in the description in connection with FIG. 6, following, the URL, command, and unloading time are stored in a URL history list and a command list creatcd for the session. As indicated by dotted line (2), in rcsponse
128A that have been cached by browser 114A in memory
Before loading web page 214, the following events occur: 50 to the loading of web page 224, browser 114A locates Master Applet 124A, DTS Applets 126A, SessionID Applet (a) browser 114Ainstructs Master Applet 124A to run a stop
browser 114A and web page 204, Master Applet 124 sends a command to inform WTS server 144 that web page 204 has
been unloaded, and disconnects the socket connection estab- 55
area llSA in terminal 104A, and initializes and invokes
these Applets. As indicated by line (3), Master Applet 124A opens a dedicated socket and establishes a socket connection to WTS gateway 142 for browser 114A and web page 224. Via the socket connection established for browser 1141\ and
web page 224, Master Applet 126A sends a command,
lished for browser 114A and web page 204, (c) WTS server 144 issues a time stamp (unloading time) indicating the time the command was received, and (d) records the URL and the
time stamp of web page 204 into the session created for
time are stored in a URL history list and a command list created for the session. As indicated by dotted line (2), HTTP server 152 retrieves web page 214 from consumer
together with the ID unique to browser 114A and the URL browser 114A. As will be seen in the description in connec- 60 of web page 224, to inform WTS server 144 that web page tion with FIG. 6, following, URL, command, and unloading 224 has been loaded. WTS server 144 issues a time stamp
(loading time) indicating the time the command was
received and stores the URL and time stamp into the session
created for browser U4. As wil be seen in the description
page repository 146 and sends it to browser 114A. Like web 65 in connection with FIG. 6, following, the URL, command, page 204, web page 214 contains a set of applet tags 208 for and loading time are stored in a URL history list and a indicating the location of Master Applet 124A, DTS Applets command list created for the session.
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 29 of 36
5,951,643
9
In the example shown in FIG. 5, it should be appreciated
10
a session, (4) a data list for maintaining information about that even through no request arrives at HTT server 144 the data fields on the web pages visited by all participants in when web page 224 is loaded from cached memory in a session, and (5) a command lit for maintaining information about all commands issued to WTS server 144 by the terminal I04A, Master Applet 124A still sends browsing activities to WTS server 144. 5 various participants in a session. Typical items in a session list are: (1) SessionID for It should be noted that the processes shown in FIGS. 3-5 identifying a session, (2) UserName for indicating the actual of loading and invokig Master Applet, DTS Applets, and name for whom the session is created, (3) StartTime for SessioolD Applet for terminal 104A can also be used for indicating the time of starting the session, (4) StopTime for terminals 104K, . . . , I04N. In FIGS. 3-5, Master Applet, DTS Applets, and Ses- 10 indicating the time of stopping the session, and (5) SessionNotes for recording the notes of the session. sionlD Applet are all embedded into web pages 204, 214, Typical fields contained in a participant list are: (1) and 224. However, it should be noted that not all the Applets SessionlD for linking the participant list to a session, (2) are required to be embedded into a web page. Depending on ParticipantID for identifying a participant, (3) Participanthe desired functions to be performed, respective Applets
can be selectively embedded into a web page by selectively 15 Class for indicating the user class of the participant
tAddresses for indicating a participant's IP address, (4)
setting applet tags in the web page. For example, if data synchronization and trackig of individual elements are not
needed, the applet tags for ling DTS Applets can be
eliminated from the web page. By the same token, if Typical fields contained in a URL history list are: (1) additional functions are needed, additional applet tags can 20 SessionID for linking the URL history list to a session, (2) be added into the web page to link additional Applets. PageURL for indicating the URL of a web page visited, (3) Referring to FIG. 6, there is shown session table 145 (see ParticipantID for identifying a participant who visited the web page, (4) LoadingTime for indicating the loading time FIG. 1) in greater detail, in accordance with the present of the web page, and (4) UnloadingTime for indicating the invention. While browsers at their respective terminals are browsing 25 unloading time of the web page. Typical fields contained in a data list are: (1) SessionID through the web pages in web site 134, WTS server 144 for ling the data list to a session, (2) WasRelayed for collects and analyzes the information about the interactions indicating if this data field has been broadcasted, (2) Fieldbetween all browsers and the web pages that have been Name for indicating the actual name of the data field, (3) downloaded to the browsers from web site 134. One diffD for of culty in collecting and analyzing such information is that 30 onataNamepage,indicating the nameindicatingthe data field displayed a web (4) DataValue for the value of the browsing individual web pages in web site 134 is a stateless data field, (5) TimeStamp for indicating the time at which process. More specifically, web site 134 receives a sequence this data field is updated, (6) URL for indicating the web of requests from different browsers, and sends the respective page on which the data field was displayed, and (7) Particiweb pages to the respective browsers in response to the pantID for indicating the participant browser who updated sequence requests. Since in processing the requests from an 35 this data field. individual browser, web site 134 does maintain a constant Typical fields contained in a command list are: (1) Sesconnection lo the same browser to keep an one-to-one sionib for linkng the data list to a session, (2) Comrra'nd for relationship, web site 134 has no control over, or maintain indicating the specifc command executed (loading a pagc, data on, the sequences of the requests from the browsers. unloading a page, changing a data field, etc.), (3) URL for To meaningfly collect and analyze thc information 4D indicating the web page to which the command operated, (4) about the interactions between the browsers and web pages, FieldPoint for indicating the data field to which the coma session is defined as a collection of web page interactions mand operated, and (5) TimeStamp for indicating the time at that occur over a given period of time from a specific which command was executed. browser. A session is created when a browser first hits web Before a session is purged from session table 145, datasite 134, and a session window (or session length interval) 45 base processing application 147 stores the associated session
(customer, agent, supervisor, administrator, etc.) and (5) Direction for indicating the synchronization direction for the participant browser.
is defined for the session. If activities from a specifc
browser (identified by an ID unique to the browser, isued by
list, URL history list, and command list to database 156. The
data contained in these three lists can be late used by data
warehouse integration applications.
Referring to FIG. 7, there is shown an operation for
a respective Master Applet) does not occur within the
session window, the session is terminated and cleaned up by
time zero) each time the information about the associated
WTS server 144. A session window is refreshed (reset to 50 creating a session interface for an agent (or a supervisor) by
downloading an agent page (or a supervisr page) from
browser is sent to WTS server 144. For example, if a session window is defined as 15 minutes, as long as the associated terminal has some activity every 15 minutes, the session wil
administration page repository 149, in accordance with the
present invention. In the example shown in FIG. 7, it is assumed that administration user class (either agent user
the access to the web page stored in both consumcr pagc
remain open. After 15 minutes of inactivity, the session is 55 class or supervisor user class) is assigned to terminal 104N, terminated and purged. A subsequent request from the same so that the security application in HTT server 152 grants
terminal will cause a new session to be created. l\fter a
session has been created for a terminal, one or more other repository 146 and administration page repository 149. terminals can join the session. At step 702, an agent at terminal 144N types in an agent As shown in FIG. 6, session table 145 includes M Session 60 URL at terminal 104N, and browser 114N sends the URL to IDs created for M sessions respectively. Each of the session HTT server 152, to retrieve an agent page, in which an ID is associated with: (1) a session list for maintaining (administration) Master Applet and an Agent Applet are informa tion about a session, (2) a participant list for mainembedded. For a supervisor, he/she types in a supervisor taining information about all participant browsers in a URL at terminal 104N, and browser 114N sends the URL to session (note: when a session is first created, it only contains 65 HTT server 152, to retrieve a supervisor page, in which an one participant), (3) a URL history list for maintaining (administration) Master Applet and a Supervisor Applet are information about all web pages visited by all participants in embedded.
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 30 of 36
5,951,643
11
At step 704, HTT server 152 retrieves the agent page (or
a supervsor page) from administration page repository 149 and sends it to browser 114N.
12
consumer page repository 146 via browser 114A, (2) session list 1 shown in FIG. 6 has been created for browser 114A,
(3) an agent class has been assigned to browser 114N, (4)
At step 706, browser 114N downloads the agent page, in
page, in which a Master Applet (administration Master Applet) and a Supervisor Applet are embedded. At step 708, browser 1l4N downloads the Master Applet
which a Master Applet (administration Master Applet) and 5 displayed on terminal 104N; (5) a (administration) Master an Agent Applet are embedded; or downloads the supervisor Applet and Agent Applet have been previously downloaded
agent session interface 800A shown in FIG. 8A has been
into browser 114N, (6) a dedicated socket connection has been established for session interface 800A displayed at
and Agent Applet from HTT server 152, initializes and 10 terminal 100N by the (administration) Master Applet, and (7) the agent at terminal 104A is on duty at a call center. invokes these Applets; or downloads the Master Applet and As shown in FIG. 9, at step 902, the consumer is browsing Supervisor Applet from H'ITP server 152, initializes and
invokes these Applels.
At step 710, Master Applet opens a dedicated socket,
establihes a socket connection to WTS gateway 142, and
a web page at terminal 104A. On the web page, SessionlD Applet 128A displays the current session ID. A call center
telephone number the consumer can call is also displayed on
sends an ID unique to browser 114N to WTS server 144. 15 the web page. At step 904, the consumer is connected to the call center WTS server 144 is able to identif browser 114N based on by dialing the telephone number via telephone 102A (see the unique ID. FIG. 1), and the call is directed by the call center to the At step 712, Agent Applet creates an agent session inter-
face 800A shown in figure BA for the agent user; or
Supervisor Applet creates a supervisor session interface 20
agent.
800B shown in FIG. 8B for the supervisor agent.
Referrig to FIG. 8A, there is shown an agent session
interface 800A created for an agent at step 712, in accordance with the present invention.
At step 906, the consumer tells, via telephone 102A (see FIG. 1), the agent the current session ID displayed. It should be noted that, instead of using the telephone, the agent can be informed of the current session ID by alternative methods. For example, the consumer can enter his!ler telephone
number into a special web page that contains the caller ID
As shown in FIG. 8A, the session interface contains a text 25 box 804 for enterig a session ID, a Join session button 806 for joining a session identified by the session ID, a drop button 808 for leaving a session, a leader check box 810 (selecting of which designates a browser as a leading
of the consumer along with the current session ID. This
information can be stored into a special lookup table that can
be used by the agent to lool-up the current session ID.
At step 908, at terminal 104N, the agent types the current
browser in synchronization), a follower check box 812 30 session ID into text box 804 (see FIG. 8A). At step 910, in response to a loss of focus or a pressing (selecting of which designates a browser as a following browser in synchronization), a scrollable list box 816 for of the Enter key, through the socket connection established
displaying the information contained in the participant list associated with a selected session, a scrollable list box 818 for displaying the information in an identified URL history 35 list, and a text box 820 for displaying the information in an
identilìed data list. If both the leader and follower check
boxes 810 and 812 are selected in the agent session
interface, browser 114A acts as both leading and following browser in synchronization. Referring to FIG. 8B, there is shown a browser supervisor session interface 800B created for a supervisor at step 712, in accordance with the current invention.
40
for agent session interface 800A displayed on terminal 104N, the (administration) Master Applet at terminal 100N sends a command to WTS server 144, to retrieve the information in participant list 1, URL history lit 1, and data list 1 (see FIG. 6) for the Agent Applet. At step 912, WTS server 144 sends the information requested to the Agent Applet (via the Master Applet). At step 914, the Agent Applet at terminal 104N displays some information from participant list 1 and URL history list 1 in (participant) scrollable list box 816 and (URL history) scrollable list box 818, respectively.
At step 916, the agent selects join button 806 in agent
As shown in FIG. 8B, the session interface contains a
sessions in session table 145 and for selecting one of the
session IDs, a text box 834 for displaying relevant statistics of WTS server 144, a multi column scrollable list box 836 for displaying details about the session selected in scrollable
scrollable list box 832 for displaying session IDs of all active 45 session interface 800A displayed on terminall04N.
At step 918, in response to the selection at step 916,
through the socket connection which has been established for agent session interface displayed on terminal 104N, the
(administration) Master Applet sends WTS server 144 a
list box 832, a select session button 838 for selecting a 50 command to join the selected session. Based on the identisession from scrollable list box 832. By using the informa-
tion in scrollable list box 832, a supervisor agent can monitor all active sessions. By using the information in multi column scrollable list box 836, a supervisor can
monitor operational status of a session selected from scrol- 55
fication associated with the socket connection, WTS server is able to generate a ParticipantID for browser 114N and to
find the ParticipantAddress for terminal 104N.
lable list box 832, including: (1) whether this session is
being helped by an agent, (2) user name, and (3) agent !D.
At step 920, WTS server 144 stores the ParticipantID and ParticipantAddress into participant list 1. At this step, participant list 1 includes two participant records (two rows) containing the Participant!Ds for browsers 114A and 114N
By selecting select session button 838, a supervisor can respectively. create an agent session interface as shown in FIG. 8C At step 922, at terminal 104N, the agent selects: leading Referring to FIG. 8C, there is shown a supervisor agent 60 check box 810 or following check box 812, or both of them. session interface 800C, in accordance with the present By only selecting leader check box 810, the activities at invention. terminal 104N are synchronized at terminal 104A, but not Referring to FIG. 9, there is shown a flowchart ilustrating other way around. By only selecting follower check box the operation of joining a session by an agent, in accordance 812, the activities at terminal 104A are synchronized at
with the present invention.
In the example shown in FIG. 9, it is assumed that: (1) a consumer at terminal 104A is browsing web pages from
65 terminal 104N, but not other way around. By selecting both leader and follower check boxes 810 and 812, the activities
at terminals 104A and 100N are synchronized with each
www.freepatentsonline.com
Case 3:06-cv-02361-WHA
Document 22-4
Filed 07/06/2006
Page 31 of 36
5,951,643
13
other (bi-directional synchronization). In response to the selection(s), through the socket connection which has been
established for agent session interface SOOA, the
14
At step 1106, in response to the loading of the web page, browser 114A initializes and invokes Master App1et 124A, DTS Applets 126A, and SessionID Applet 12SA. At step 110S, Master Applet 124A: (1) opens a dedicated 5 socket, and establishes a socket connection to WTS gateway 142 for browser 114A and the web page loaded, and (2) via
the socket connection, sends WTS server 144 a command
command designating the synchronization direction. WTS server 144 stores the synchronization direction information into the Direction fields of the two records in participation list 1. In this example, it is assumed that the bi-directional synchronization has been selected for terminals 104A and
104N.
(administration) Master Applet sends WTS server 144 a
together with an ID unique to browser 114A and the URL of the web page loaded. Based on the unique ID, WTS server
At step 1112, WTS server 144 locates all IP addresses. assigned to participant terminals in participant list 1 (shown At step 926, the Agent Applet at terminal 104N opens a in FIG. 6), and sends a command, together with the URL, to browser widow 1004 (a second browser instance) as shown 15 all the participant terminals (except that WTS server 144 in FIG. 10. does not sent the URL to terminal 104A, because the URL
browsed at terminal 104A.
At step 924, WTS server 144 sends the (administration) Master Applet the URL of the web page being currently
10 is able to identify the session created for browser 114A. At step 1110, WTS server 144 identifies the session for
browser 114A.
At step 928, browser 114N downloads the web page
identied by the URL from consumer page repository 146,
is originated from terminal 100A).
At step 1114, upon receiving the command, the
and displays it in browser widow 1004. A (consumer)
Master Apple!, a set of DTS Applets, and a SessioolD Applet
20 tialize themselves and pass the URL to their respective
browsers.
(consumer) Master Applets in the participant terminals ini-
are embedded in the web page downloaded.
At step 930, browser 114N downloads (consumer) Master
Applet 124N, set of DTS Applets 126N, and SessionID Applet 12SN.
At step 1116, the respective browsers in the participant terminals dbwnload and display the web page according to
the URL.
At step 932, the web pages displayed in second browser 25
window 1004 at terminal 104N are being synchronized with the web pages being displayed at terminal 104A.
It should be noted that, like terminal 104A, each of the participant terminals (at which agent session interface is
displayed) can lead the page synchronization using the
After step 932, if the agent (the first agent) at terminal
104A needs assistance from another agent (the second agent)
operation shown in FIG. 11.
Referring to FIG. 12A, there is shown a web page
at terminal 104K, the first agent can call the second agent 30 containing five data fields, specifically: name 1202, time and tell him!ler the current session ID. The second agent can period 1204, account balance 1206, payment 120S, comthen join the current session using an agent session interface ments 1210, a text box 1212 for displaying the current as shown in FIG. SA displayed at terminal 104K. session ID, and a text box for displaying the call center Referring to FIG. 10, there is shown a screen display number the consumer can call, in accordance with the containing two browser instances (SOOA and 1004) at ter- 35 present invention. minal 104N, in accordance with the present invention. Referring to FIG. 12B, there is shown a web page that is As shown in FiG. lû, at terminal lû4N, the first browser similar to that of FIG. 12A, except that the data in the field instance provides an agent session interface SOOA to control of name .202 is changed from Susan King to Sue Grant and and monitor the current session, and the (adm
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?