throbber
I 1111111111111111 11111 1111111111 111111111111111 IIIII IIIII IIIIII IIII 11111111
`US007043532Bl
`
`c12) United States Patent
`Humpleman et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,043,532 Bl
`*May 9, 2006
`
`(54) METHOD AND APPARATUS FOR
`UNIVERSALLY ACCESSIBLE COMMAND
`AND CONTROL INFORMATION IN A
`NETWORK
`
`5,347,304 A
`5,387,927 A
`5,389,963 A
`
`9/1994 Moura et al.
`2/1995 Look et al.
`2/1995 Lepley et al.
`
`(Continued)
`
`(75)
`
`Inventors: Richard Humpleman, Fremont, CA
`(US); Dongyan Wang, Santa Clara, CA
`(US)
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`84110755.0
`
`9/1984
`
`(73) Assignee: Samsung Electronics Co., Ltd., Suwon
`(KR)
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by O days.
`
`This patent is subject to a terminal dis(cid:173)
`claimer.
`
`(21) Appl. No.: 09/307,004
`
`(22) Filed:
`
`May 7, 1999
`
`Related U.S. Application Data
`
`(60) Provisional application No. 60/084,578, filed on May
`7, 1998.
`
`(51)
`
`Int. Cl.
`G06F 151173
`(2006.01)
`G06F 15116
`(2006.01)
`(52) U.S. Cl. ....................................... 709/208; 709/223
`(58) Field of Classification Search ................ 709/223,
`709/208, 328,227; 345/329, 733, 734; 707/102;
`715/733, 734; 719/317, 328
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,031,543 A
`4,860,006 A
`5,249,043 A
`5,257,366 A *
`5,293,635 A
`
`6/1977 Holz
`8/ 1989 Barall
`9/1993 Grandmougin
`10/1993 Adair et al.
`................... 707/4
`3/1994 Faulk, Jr. et al.
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`Evans , G. "Solving home automation problems using
`artificial intelligence techniques", IEEE Trans. on Consumer
`Electronics, pp. 395-400, Aug. 1991.*
`
`(Continued)
`
`Primary Examiner-Patrice Winder
`(74) Attorney, Agent, or Firm-Michael Zarrabian, Esq.;
`Kenneth L. Sherman, Esq.; Myers, Dawes, Andras &
`Sherman, LLP
`
`(57)
`
`ABSTRACT
`
`A method and system for performing a service on a home
`network, by: connecting a first and a second home device to
`the home network; providing a database including a plurality
`of application interface description data objects, where each
`application interface description data object includes infor(cid:173)
`mation in a structured format for commanding and control(cid:173)
`ling of a home device by one or more other home devices
`connected to the network; the second home device accessing
`a first application interface description object for the first
`home device in the database; the first home device accessing
`a second application interface description object for the
`second home device in the database; sending control and
`command data from the first home device to the second
`home device utilizing the second application interface
`description object over the network; and sending control and
`command data from the second home device to the first
`home device utilizing the first application interface descrip(cid:173)
`tion object over the network. Whereby, the first and second
`home devices perform said service.
`
`27 Claims, 14 Drawing Sheets
`
`____ Library(eases 3,4)
`
`Case 1. XMLA\:lplleation-C INTERFACE (A)for remotaquery by (E)
`Casa 2. Move XMLApplicalion-C INTERFACE (A) to cofrtroller fer 1oc:a1 quar, by (El
`Case 3. Move XML Applicatlon.C INTERFACE (A) to 3rd party devi=e-a eollectlng
`place (library) for all lnterfacas for remote query by (E). Tiw Ubrary would have to
`lla<Jethtaddreu{URl)oflheauaeiatedappUcallonavalllll:l!efordirec:tcontrol
`ar;tlonandiuponses.
`Case4.l!1Ga!1e3but:he'lndirecl'conlroladlon{andresponse)lsalll.0dlrededat
`thelibraryde\lica.lnthl1Jcall91heibrayis'ouilt\llitha'fo!'warder'.
`
`Ex.1008
`APPLE INC. / Page 1 of 35
`
`

`

`US 7,043,532 Bl
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`5,392,033 A
`5,452,291 A
`5,488,412 A
`5,495,561 A *
`5,526,483 A *
`5,546,484 A
`5,561,709 A
`5,570,085 A *
`5,572,643 A
`5,579,308 A
`5,596,702 A *
`5,612,730 A
`5,636,211 A *
`5,657,221 A *
`5,740,362 A *
`5,778,226 A *
`5,790,789 A *
`5,826,000 A
`5,860,010 A *
`5,864,669 A *
`5,886,732 A
`5,909,183 A *
`5,940,072 A
`5,940,387 A
`5,953,526 A *
`5,956,487 A *
`6,005,861 A
`6,020,924 A
`6,032,202 A *
`6,037,933 A
`6,052,750 A
`6,078,783 A
`6,085,236 A
`6,101,499 A
`6,128,619 A *
`6,134,594 A *
`6,151,624 A *
`6,175,362 Bl
`6,181,333 Bl
`6,182,094 Bl
`6,188,397 Bl
`6,189,019 Bl*
`6,191,781 Bl
`6,198,479 Bl*
`6,288,716 Bl *
`6,349,352 Bl *
`
`2/1995 Oman et al.
`9/1995 Eisenhandler et al.
`1/1996 Majeti et al.
`2/1996 Holt .......................... 358/1.15
`6/1996 French et al ................... 714/4
`8/ 1996 Fling et al.
`10/ 1996 Remillard et al.
`10/1996 Bertsch ..................... 340/3.54
`ll/ 1996 Judson
`11/1996 Humpleman
`1/1997 Stucka et al. ............... 345/746
`3/ 1997 Lewis
`6/1997 Newlin et al. .............. 370/465
`8/1997 Warman et al. ............... 700/83
`4/1998 Buickel et al .............. 709/201
`7 / 1998 Adams et al.
`.............. 709/311
`8/ 1998 Suarez ....................... 709/202
`10/ 1998 Hamilton
`1/1999 Attal .......................... 717/137
`1/1999 Osterman et al ............ 709/203
`3/1999 Humpleman
`6/ 1999 Borgstahl et al. .. ... . 340/825 .22
`8/1999 Jahanghir et al.
`8/1999 Humpleman
`9/1999 Day et al .................... 717/108
`9/ 1999 Venkatraman et al. ...... 709/218
`12/1999 Humpleman
`2/2000 Jahanghir
`.. ... .. ... ... ... ... ... 710/8
`2/2000 Lea et al.
`3/2000 Blonstein et al.
`4/2000 Lea et al.
`6/2000 Kawamura et al.
`7/2000 Lea
`8/2000 Ford et al.
`............ 707/102
`10/2000 Fogarasi et al.
`10/2000 Helland et al .............. 709/229
`11/2000 Teare et al .................. 709/217
`1/2001 Harms et al.
`1/2001 Chaney et al.
`1/2001 Humpleman et al.
`2/2001 Humpleman
`2/2001 Blumer et al. .............. 707 /513
`2/2001 Chaney et al.
`3/2001 Humpleman et al ........ 345/733
`9/2001 Humpleman et al ........ 345/733
`2/2002 Lea ... ... ... ... .. ... ... ... ... .. . 710/72
`
`6,466,971 Bl* 10/2002 Humpleman et al ........ 709/220
`6,539,422 Bl *
`3/2003 Hunt et al .................. 709/217
`6,546,419 Bl*
`4/2003 Humpleman et al ........ 709/223
`6,560,639 Bl *
`5/2003 Dan et al .................... 709/218
`6,618,764 Bl*
`9/2003 Shteyn ....................... 709/249
`
`FOREIGN PATENT DOCUMENTS
`
`EP
`EP
`EP
`EP
`EP
`EP
`EP
`EP
`JP
`JP
`JP
`JP
`JP
`JP
`JP
`JP
`WO
`WO
`WO
`WO
`WO
`
`90305213.2
`91401245.5
`96304706.3
`96306507.3
`96307200.4
`96116873.9
`97100356.1
`97117812.4
`9-261355
`9-282263
`10-145773
`11-88406
`11-194987
`11-317756
`11-355294
`11-355357
`PCT/EP95/00191
`PCT/US95/00354
`PCT/US95/17108
`PCT/US96/18798
`PCT/US97/08490
`
`5/1990
`5/1991
`6/1996
`9/1996
`9/1996
`10/1996
`1/1997
`10/1997
`10/1997
`10/1997
`5/1998
`3/1999
`7 /1999
`11/1999
`12/1999
`12/1999
`1/1995
`11/1995
`12/1995
`11/1996
`5/1997
`
`OTHER PUBLICATIONS
`
`Deng, Shuang "Capture effect in residential Ethernet LAN",
`IEEE GLOBEC, ISBN: 0-7803-2509-5, pp. 1678-1682,
`Nov. 1995.*
`Kokubun, T. et al. "Object-oriented database system with
`GIS for optical cable network operation", IEEE GLOBEC,
`ISBN: 0-7803-3336-5, pp. 1521-1527, Nov. 1996.*
`Corcoran, P.M. et al. "Browser-style interfaces to a home
`automation network", IEEE Trans. on Consumer Electron(cid:173)
`ics, pp. 1063-1069, Jun. 1997.*
`Corcoran, P.M. "Mapping home-network appliances to TCP/
`IP sockets using hree-tiered home architecture", IEEE Trans
`on Consumer Electronics, pp. 729-736, Jun. 1998.*
`
`* cited by examiner
`
`Ex.1008
`APPLE INC. / Page 2 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 1 of 14
`
`US 7,043,532 Bl
`
`, s
`
`,z.
`
`BaildJq Blodcl or Modules
`
`Ac,. t
`
`CLIENT
`
`SERVEl\
`
`I I--------.}-~ --1 Et::
`™<N ~ Lm
`~ E 11--------c ... '_"' ___ , Et 1
`10 -
`
`0"
`
`
`
`"
`
`SERVY.R
`
`I i..f
`
`.____
`SERVD
`
`1.,0
`
`Maldple Client Multiple Server Bame Network Control Model
`CLIENTS
`SERVERS
`
`SERVERS
`
`h6,_ 3
`
`Access Network
`
`Acc:eu Netwark
`
`D-
`VCR
`
`DVD
`p
`
`I &/
`
`I '1
`
`CableM
`AccessD
`
`141
`
`I '1
`1i.f r
`
`,.,
`
`DBS
`AccesaD
`
`Toaas
`
`Smart
`Card
`
`PC
`
`l l-
`
`DTV- -~
`I c./
`
`b/w
`
`1
`
`1'1...
`
`DTV -~
`l
`11./
`
`b./w
`
`-
`
`'z.
`
`PDA
`
`11..
`
`1(p
`
`B me Network
`
`Ex.1008
`APPLE INC. / Page 3 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 2 of 14
`
`US 7,043,532 Bl
`
`457
`
`GUI
`
`HUMAN
`
`Control System
`
`Commanu
`• • Communicadam • •
`
`zo
`
`CLIENT
`
`Service
`Control
`Pntgram
`
`SERVER
`
`1'4
`
`Commaad:I
`- • Commumcatiom - -
`
`Jt)
`
`Modale EJcmeaa GUI Co11trol
`
`2, 0
`
`Service
`Control
`PrOP"Bm
`
`SERVER
`
`20
`
`Sentcc
`Control
`Proiram
`
`SERVER
`
`GUI Actions/ Responses
`
`CLIENT
`
`I 2.
`
`GUI
`R.enduer
`
`L1-
`
`Control
`Procram
`C4atroJ
`State
`
`.,,._ ---
`
`•Graphic
`: Conttol
`I Object
`
`SERVER
`
`..., ' , - GCO Transfer Communication
`
`-----------------
`
`.,.
`,,
`- , .,,. .,
`
`z.o
`
`z.O
`
`Caacrol
`Prop-am
`Coatrol
`Slate
`
`Cock
`
`2,. lci
`
`3o Modale Elements for S«ver/Sener CL
`CL
`Actions / Raponses
`
`Command
`Langaaee
`laterfac:e
`
`Commaud
`Lanpap
`Iaterface
`
`30
`
`Coll1r0•
`Proo-am
`Coatrol
`Stace
`
`Clock
`
`• t.(
`
`SERVER
`
`2.0
`
`2.C.
`
`SERVER
`
`\~
`
`,s
`
`Ex.1008
`APPLE INC. / Page 4 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 3 of 14
`
`US 7,043,532 Bl
`
`lloxa wffla Cliell'tl
`DTV(STB)
`r -
`-
`-,
`I Humaa I CLlENT
`Control
`I GUI
`l
`
`' - - -~ l " l -Fl SINK
`
`~SERVER
`1'1
`
`PC
`r -
`-
`,
`Buman
`I Cantrui I
`I GUI
`I
`L---~,1-
`
`CUENr
`
`~~, -=
`L; 7"&n1a k.o'f
`
`1.. i
`I
`1 . . - - . J
`
`Bo:r.es with Server(a)
`AUDIO
`AMPLD"lf'T!Tr'IE-R
`
`SINK
`SERVER.
`
`DVCR
`
`LJ SOURCE OR SINK
`
`SERVER
`\ '{
`
`,'-{
`
`BOX MANAGEMENT
`SERVER
`
`PDA (RemoteC)
`r -
`-
`.,
`I Haman I CLIENT
`Cantrol
`! GUI
`I
`L---1
`{ "2...
`
`DVDP
`Smart Card
`
`SER.VER
`
`□ SOURCE
`
`) "\
`
`LJ l'-{
`LJ
`
`DBS Access Device
`Cable TV Access Device
`ATSC Access Device
`Intemet Access Device
`
`REMOTE SERVERS
`
`r -
`-
`,
`I Service L
`r--
`,
`I
`I Service L
`r -
`,
`L. 7
`I Service h I ~
`Li
`I
`'- - - ~
`
`Ex.1008
`APPLE INC. / Page 5 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 4 of 14
`
`US 7,043,532 Bl
`
`Buie I.JV, ClleatJSffver/Sernr, Model
`r-- ✓ rz ..
`I Buman I OJENl'
`C ntral
`I
`I GUI
`,r-f .J
`Control
`I Action/RespoDsc
`
`-
`
`-
`
`-
`
`Control
`A c t i o ~ - -
`
`---
`
`-
`
`Data transfen
`
`HUMAN
`Session Manager
`Input ~
`I serv1 I I serv2 I
`: -ssrvS -: : · sarv4 · :
`
`~
`
`/2..
`
`16
`CLIENT (eg 1 /2 DTV)
`
`/
`
`/
`
`fetch control
`object (GUI)
`I
`I
`I
`I
`I
`
`Serv1
`contrl
`object
`
`Serv2
`contrl
`object
`
`.,,. _,,. -
`
`-
`
`-
`
`'
`
`,
`
`fetch control
`' object (GUI)
`'
`\
`
`\
`\
`I
`I
`
`SERVER 2
`SERVER 1
`(data sink
`(data source
`eg 1/ 2 DTV)
`DATA
`eg DVCR)
`~-State-~ ~ cia-c"k- ~ . . - - - - - - - - - - -~ f-sfata-: ~-Clock~
`and Control
`--~~~t;;,_J-
`--~~t;; •. J-· 2
`2 ~
`
`:
`
`:
`
`I
`
`I
`
`I
`
`t
`
`I
`
`I
`
`~
`
`10
`
`I '-t
`
`Ex.1008
`APPLE INC. / Page 6 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 5 of 14
`
`US 7,043,532 Bl
`
`Table 1: Capabilities Table
`
`Table 2: Attributes Table
`
`Ex.1008
`APPLE INC. / Page 7 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 6 of 14
`
`US 7,043,532 Bl
`
`-
`
`Faacdoaal
`Spedfiatioa
`ofSenice
`
`Malage
`Composition
`
`M.eaage eoastnictloa ued by CAL and AV/C
`yt.\
`
`... , 1-
`
`Applayer< 1
`
`Industry
`Standard
`Format
`
`Messap
`Compressio11
`
`Masap
`String
`Construction
`
`IIF
`
`(..\(g
`
`<; i
`
`Message coastnction of new XCF.IXML
`
`{': l,. IJ
`
`~o
`
`~~
`
`Fuactional
`Speciftcadoa
`olServiee
`
`Iadllltry
`Standard
`Format
`(vocabulary)
`
`•. p-
`
`Message
`Composition
`
`App layer<
`
`> HTTP Ll layer
`
`Maap
`String
`Coastnctlon
`
`Message
`CompRSSion
`
`I/F
`
`A
`
`HUMAN
`◄-
`
`' 2..
`
`B
`
`SERVICE
`AP PU CATION
`
`C
`
`'-18
`
`'-f- lP
`
`Client Server Models Usina Web and XML
`
`SERVICE
`
`APPLICATION s
`
`App
`
`'2.0
`
`◄- ____ HTML or XML
`
`Commands/XML
`
`fie,. ,,J
`
`Ex.1008
`APPLE INC. / Page 8 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 7 of 14
`
`US 7,043,532 Bl
`
`t'a.f
`
`XML API black dla&nm
`
`SERVICE (or device) B
`
`CE.APl'sie
`Objcas, Mcdlads. Psamctas.
`C L.aaguqe (XCE ddlaidoa) rep=- __ :su!Met__, ot
`~
`
`C>.U..DTD
`.
`(ME"l'HODREQUEST)
`Doc:umcat Typa Oetiniriaii
`ta mab: Mcthaci ca!b In
`:oe..
`
`l,.o
`
`SERVICE (or device) A
`
`CE.APr,ic
`Objeas, Methods, Psrmm:tms.
`C Llagvap QCCE di:t!aitian) cep(cid:173)
`nmmmloa
`
`INTERFACE.D'TD
`Doaanent 1yi,e Demlition
`to maim XML Receive illo:(cid:173)
`tilcc far Mcdiods Calls
`
`hlsmtcc of scrvic:c or dcviGo
`IN'TERFACl!-A.XML
`(fer fflidlt.y cbci:ting)
`(.ma Cacililililfc:s file)
`
`APP
`B
`
`C Mcauge TO XML
`LOOK-UP TAB~ tiir
`RTJN•TIME
`
`H/W
`
`t,_O
`
`XML oa NETWORK
`
`XMLTOCM-o,
`LOOK-UP TABl.11: for
`IWN-11M£
`
`APP
`A
`
`Transfer and Learn forelp IN'l'ERFACE-INSTANCE.XML
`De,..,,'tJl.A
`
`TRANSFER XML OBJECT
`
`Ouertes at foreign
`- - - App A Interface by App B
`~..;....,;;,..;;;;.;..;;;~,;"-,,.-,..._,
`
`XML QUERY
`
`Ex.1008
`APPLE INC. / Page 9 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 8 of 14
`
`US 7,043,532 Bl
`
`'
`
`Library (cases 3,4)
`!-·-·---· ··-·-····-·-· ···-----·-·-·····--·-·--···-·-······-··· ·-·-·--···:
`,-----
`~~~
`i l·:~lf~~-~~~1~~11 AP~~~~~CE I r~~~~;;:l~~1 l
`l I Description{s) I ! Oescription(s)
`i Oescription(s)
`i I
`. _ ! al Ap~;catlon(C1) j ~. :• ~lcl1kl~ j al Appication(C2) j j
`
`~ Quary
`lntarface
`C--3
`
`API
`Transfer
`Cue-3
`
`•••
`
`•••- •• • •• I
`
`NETWORK
`
`i
`
`CONTROLLER
`
`I•••••••-•---'" -•••-- •-••••
`
`: ..
`
`CONTROLLED
`, ....... ·---·-----------··-···--·--·-
`,!:a1-f
`, - - - - - - - - , '
`'
`I ;
`l
`(A-mcved}
`AP!
`\
`{A)
`I APP. INTERFACE I l
`·. Case-2 ·APP.INTERFACE
`Trans1arcas.2 i
`Ii:
`, Description(s)
`r I of Appucation(C)
`.-·-·-·---·;-----~ Description(s)
`!
`t
`: cf Applicaticn(C) , ;
`I ·-·-·-·-·-·-·-·-· )
`I
`
`zo
`
`'
`
`Ac:ion
`
`~esoonse:
`
`1Ackn~
`
`Ll /:·
`I-,
`
`i
`..... -·. -----·---·····-··. -----------···· ........................... .
`'
`
`'
`
`2.0
`
`HAR~~ARE I !
`I!
`1 ;
`
`OR
`SERVICE
`
`Case 1. XML Application-C INTERFACE (A) for remote query by (E)
`Case 2. Move XML Application-C INTERFACE (A) to controller for local query by (E)
`Case 3. Move XML Application-C INTERFACE (A) to 3rd party device -a collecting
`place (librar1) for all Interfaces for remote query by (E). The library would have to
`have the address (URI) of tt,e associated application available for direct control
`action and responses.
`Case 4. Is case 3 but ~he 'indirect' control action (and response) is also directed at
`the library device. In U,is case the library is built with a 'forwarder'.
`
`Ft(,. 11-
`
`Ex.1008
`APPLE INC. / Page 10 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 9 of 14
`
`US 7,043,532 Bl
`
`XCE/XML Protoeoi Stack
`
`r -App.otigin•llyiiiAWC- , ... ---
`-teonv=tiiF-
`1- -
`- -.- ..... -
`-
`App. onginaily m CAL
`ID XCEIXML
`
`~-------j
`I
`
`Appllcadan In XCE for XML iDterface
`
`-
`
`-
`
`---
`I
`'· ~ XML
`+XML
`,o ~---
`
`1 XCE deflni-
`I
`tion
`I
`___ J
`CALLJ>m
`I
`
`h..C..B
`I XCEdefini-
`- --7
`tion
`I
`INTER-
`I
`FACE.DTD
`I
`
`I
`
`Layer
`JN
`
`Layer
`OUT
`
`BTTPDl.1
`WebServerLayer
`IP Networil Layer
`
`Physiwl..ayer
`
`<,,b? • . .
`
`Commun1canon
`Stack
`
`--
`
`Command Tramlatlaa Process.
`
`/'
`t-------RECEIVER.-------1
`
`Command
`Language
`intcrprctcr
`
`Applic:a(cid:173)
`uon
`
`Convert
`
`Service
`Software
`
`Driven
`
`DfftceBaniware
`
`Service
`or Device
`S/W,H/W
`Stack
`
`SENDER.
`
`, -i. O
`
`Command
`Origimm,r
`
`1"'
`I I
`I I
`f ..J.
`
`Tramlatc
`i.ntcnally.-
`
`IP Home
`NetWOrk
`
`TRANSLATION
`SER.VER.
`-· or fulfill ttllDSJarion over the Inti:met.
`
`Ex.1008
`APPLE INC. / Page 11 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 10 of 14
`
`US 7,043,532 Bl
`
`HN De\ice A: Controller Module
`
`HN De>ice B: Controlled Module
`
`Hardware Service
`
`Handlers
`
`XML RPC Action
`
`XML RPC Response
`
`CALL.OTO describes the message format of XMLRPC output. It can be used by receiver of
`XMLRPC message for validity check.
`
`Io -
`
`Ex.1008
`APPLE INC. / Page 12 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 11 of 14
`
`US 7,043,532 Bl
`
`Relation between Interface Library & XCE Database
`
`Standardiied CE
`Standardized
`Interface Document
`Definition of
`Type Definition
`Objects, M:thods,
`(010)
`Parameter.i
`Standardized XCE Database
`
`................................ i
`tof3 /' =~-.- <>mom.
`
`1.
`
`Manufacturert
`
`Hom,
`Nenwrk
`
`I
`
`__ ..._ __ , - - - - - - -1 , - - - - - - - ,
`I
`11
`Dc'Vicc XML
`Device XML
`I
`I I
`I
`lnterfilce 3
`I I
`lnteriace 2
`____ _,II ____ _. I
`__ T ________ T _ _ _ _
`
`•
`
`•
`
`•
`
`, - - - - - - - ,
`I
`I Device XML
`Interlace N
`I
`I - - - - . . . -
`----T--
`
`I
`1
`, "l. RcgistclfUpdaleln1crtaccf- - -
`
`- -
`
`-
`
`-
`
`- -
`
`-
`
`- -
`
`- -
`
`-
`
`I
`
`7"2.
`
`,----- -----·- - ---
`1/P r-:_ Gener~g ~oftwo.r,z. ot"t~ 1
`r----------------I----------------,
`:
`I
`I
`HN IL (Home Network lnterfa:e Library)
`__,
`................. .:
`'
`r
`,~~ J _________________________________ _
`,~~~m
`
`1
`
`Interface Library
`
`~
`
`!
`
`Relation between Interface Library & XCE Database
`
`Ex.1008
`APPLE INC. / Page 13 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 12 of 14
`
`US 7,043,532 Bl
`
`HN Middleware
`Layer
`
`HNORB&ll...
`
`Connected to Internet
`
`RF
`
`Powerlire
`
`Device 8 Interface
`
`Device
`Interface
`-----------------------·----·---- ll ,e, _________ _
`
`Example of Hierarchical IL & Device Interfaces
`
`Links, e.g.
`XLinkor
`XPointer
`
`HN
`Interface
`
`Ex.1008
`APPLE INC. / Page 14 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 13 of 14
`
`US 7,043,532 Bl
`
`Hierarchical Interface Structure. Four layers.
`
`,-
`
`...I
`/
`
`La)'cr
`I
`2
`
`3
`4
`
`lnlcrfacc·E:rnmpl~ --
`Interface La~ er
`XML interface for each HN, listing cWTent available devices.
`MyHN (VCRs, TVs ... )
`General XML interfaces for each device, listing function
`General VCR Interface .
`categories.
`(Record, play ... )
`Specific XML interface for each function category for a device. VCR.record category.
`Specific XML interface for each function in a function category. VCR.record.tdr function
`
`h ~- 2..'2..
`
`Ex.1008
`APPLE INC. / Page 15 of 35
`
`

`

`U.S. Patent
`
`May 9, 2006
`
`Sheet 14 of 14
`
`US 7,043,532 Bl
`
`Table 3: Example Formats and Types
`
`Type
`
`command
`
`•
`image
`
`language
`
`-
`video 5tleam
`-
`video clib
`
`text
`
`audio
`
`application
`
`Fonnat
`CAL, AV/C, X-10
`
`jpeg, ~ bitmap,
`tiff
`
`EngJish,F~
`etc ..
`
`mpcg2
`
`a.vi, quicktime,
`mpcg
`
`html, plain
`wav, aiff'
`
`msword,pdf,
`postscript, gzip
`
`Ex.1008
`APPLE INC. / Page 16 of 35
`
`

`

`US 7,043,532 Bl
`
`1
`METHOD AND APPARATUS FOR
`UNIVERSALLY ACCESSIBLE COMMAND
`AND CONTROL INFORMATION IN A
`NETWORK
`
`CROSS-REFERENCES TO RELATED
`APPLICATIONS
`
`2
`manufacturers have developed control units for controlling
`and commanding their home devices from a single interface.
`One drawback associated with using the remote control
`unit to command and control home devices is that it provides
`5 static and command logic for controlling and commanding
`each home device. Another drawback associated with using
`remote control units is that known remote control units
`cannot control a plurality of diverse devices, and more
`particularly, cannot control a plurality of devices having
`10 different capabilities to communicate with each other in
`order to accomplish tasks or provide a service.
`In conventional network systems a user provides com(cid:173)
`mands using a remote control unit or device control panel.
`Once the user ceases, there is no controller unit or device in
`the network to provide commands for automatic operation.
`After a user initially controls and commands a first set of
`devices, conventional systems do not provide a mechanism
`for the first set of devices to automatically communicate
`with a second set of devices in the network as necessary in
`order to accomplish tasks without direct user control and
`command of the second set of devices. Further, conventional
`systems do not provide an efficient method for various
`network devices to obtain information about other network
`devices in the network for command and control.
`There is, therefore, a need for a method and a system
`which provides dynamic control and command devices in a
`home network. There is also a need for such a method and
`system to provide the ability to control a plurality of diverse
`devices having different capabilities to communicate with
`each other in order to accomplish tasks or provide a service.
`There is also a need for such a method and system to provide
`the ability for various network devices to automatically
`command and control other various network devices. There
`is also a need for such a method and system to provide
`universally accessible command and control information for
`inter-device communication.
`
`Applicant claims the benefit of U.S. Provisional Applica(cid:173)
`tion No. 60/084,578 entitled "Command and Control Using
`XML", filed on May 7, 1998 which is incorporated herein by
`reference. The present application is related to the following
`copending applications that are commonly assigned and
`which are incorporated herein by reference: U.S. patent
`application Ser. No. 09/104,299, entitled "Browser Based 15
`Command and Control Home Network" now U.S. Pat. No.
`6,288,716; U.S. patent application Ser. No. 09/104,297,
`entitled "Method and Apparatus for A Home Network Auto(cid:173)
`Tree Builder"; U.S. patent application Ser. No. 09/104,298,
`entitled "Improved Home Network, Browser Based, Com- 20
`mandand Control" now U.S. Pat. No. 6,198,479; U.S. patent
`application Ser. No. 9/103,469, entitled "Method and Appa(cid:173)
`ratus for Creating Home Network Macros" now U.S. Pat.
`No. 6,243,707; and U.S. patent application Ser. No. 09/104,
`606, entitled "Progranmiing Tool For Home Networks now 25
`U.S. Pat. No. 6,182,904.
`
`FIELD OF THE INVENTION
`
`The present invention relates to the field of network
`systems, and more particularly, to home network having
`multiple devices connected thereto.
`
`BACKGROUND OF THE INVENTION
`
`30
`
`35
`
`A network generally includes a communication link and
`various devices with communication capability connected to
`the communication link. The devices include computers,
`peripheral devices, routers, storage devices, and appliances
`with processors and communication interfaces. An example 40
`of a network is a home network for a household in which
`various devices are interconnected. A usual household can
`contain several devices including personal computers and
`home devices that are typically found in the home. As such
`the term "device" typically includes logical devices or other
`units having functionality and an ability to exchange data,
`and can include not only all home devices but also general
`purpose computers. Home devices include such electronic
`devices as security systems, theater equipment, TVS, VCRs,
`stereo equipment, and direct broadcast satellite services or
`(DBSS), also known as digital satellite services (DSS),
`sprinkler systems, lighting systems, micro waves, dish
`washer, ovens/stoves, washers/dryers, and a processing sys(cid:173)
`tem in an automobile.
`In general, home devices are used to perform tasks that
`enhance a homeowner's life style and standard ofliving. For
`example, a dishwasher performs the task of washing dirty
`dishes and relieves the homeowner of having to wash the
`dishes by hand. A VCR can record a TV program to allow
`a homeowner to watch a particular program at a later time. 60
`Security systems protect the homeowner' s valuables and can
`reduce the homeowner's fear of unwanted entry.
`Home devices, such as home theater equipment, are often
`controlled using a single common control unit, namely a
`remote control device. This single common control unit 65
`allows a homeowner to control and command several dif(cid:173)
`ferent home devices using a single interface. Thus, may
`
`SUMMARY OF THE INVENTION
`
`The present invention satisfies these needs. In one
`embodiment the present invention provides a method and
`system for performing a service on a home network, by:
`connecting a first and a second home device to the home
`45 network; providing a database including a plurality of appli(cid:173)
`cation interface description data objects, where each appli(cid:173)
`cation interface description data object includes information
`in a structured format for commanding and controlling of a
`home device by one or more other home devices connected
`50 to the network; the second home device accessing a first
`application interface description object for the first home
`device in the database; the first home device accessing a
`second application interface description object for the sec(cid:173)
`ond home device in the database; sending control and
`55 command data from the first home device to the second
`home device utilizing the second application interface
`description object over the network; and sending control and
`command data from the second home device to the first
`home device utilizing the first application interface descrip(cid:173)
`tion object over the network. Whereby, the first and second
`home devices perform said service.
`In one version of the invention, the first home device
`stores first application interface data therein, and the second
`home device stores second application interface data therein.
`The database is formed by querying the first and second
`home devices to transfer said application interface data for
`the first and second home devices to the database device.
`
`Ex.1008
`APPLE INC. / Page 17 of 35
`
`

`

`US 7,043,532 Bl
`
`3
`The database can be stored in a database device and con(cid:173)
`nected to the network for universal access by network
`devices. In that case, the first application interface descrip(cid:173)
`tion object for the first home device can be provided from
`the data base to the second home device over the network. 5
`Further, the second application interface description object
`can be provided from the data base to the first home device
`over the network.
`Further, three or more home devices can be connected to
`the network, wherein at least one home device accesses the 10
`database to query the application interface description
`objects of a plurality of home devices for sending command
`and control data to the plurality of home devices over the
`network. Each application interface description object can
`include data in a structured format. The structured format 15
`can include XML format.
`
`4
`FIG. 19 shows another embodiment of server device to
`server device command and control architecture;
`FIG. 20 shows the relationship between a device interface
`library and consumer electronics definition data base for
`home devices;
`FIG. 21 shows hierarchal form of an embodiment of a
`device interface definition;
`FIG. 22 shows an example of layers in device interface
`definition of FIG. 21;
`FIG. 23 shows a command transmission and interpreta(cid:173)
`tion process between a sender and receiver device; and
`FIG. 24 shows an example table of a partial list of packet
`types and formats for providing translation services accord(cid:173)
`ing to an aspect of the present invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`25
`
`45
`
`In one aspect, the present invention provides inter-device
`These and other features, aspects and advantages of the 20 communication in a network such as a home network. As
`home devices become more intelligent and can share infor(cid:173)
`present invention will become better understood with regard
`mation, inter-device communication allows a user to inter(cid:173)
`to the following description, appended claims and accom(cid:173)
`connect devices in a network to take advantage of the
`panying drawings where:
`information sharing capabilities of those devices. As such,
`FIG. 1 shows a block diagram on an embodiment of a
`inter-device communication plays a crucial role in affording
`network according to one aspect of the present invention;
`a user with the ability to fully and flexibly utilize the
`FIG. 2 shows the block diagram of FIG. 1 in an example
`networked devices.
`device control and communication scenario;
`Referring to FIG. 1, in an embodiment of the present
`FIG. 3 shows a block diagram of an example home
`invention, a network 10 includes at least one client device 12
`network system according to the present invention which
`30 and at least one server device 14 interconnected via a
`includes a plurality of client and server devices;
`communication link 16. The communication link 16 can
`FIG. 4 shows a block diagram of example embodiments
`include a 1394 serial bus providing a physical layer (me(cid:173)
`of a client device and a server device of FIG. 3;
`dium) for sending and receiving data between the various
`FIG. 5 shows example embodiments of client devices;
`connected home devices. The 1394 serial bus supports both
`FIG. 6 shows example embodiments of server devices;
`FIG. 7 shows a block diagram of two example networked 35 time-multiplexed audio/video (AN) streams and standard IP
`(Internet Protocol) communications. In certain embodi(cid:173)
`server devices capable of communication with, and control
`ments, a home network uses an IP network layer as the
`of, one another;
`communication layer for the home network. However, other
`FIG. 8 shows a block diagram of an example architecture
`communication protocols could be used to provide commu-
`of an audio/video (AN) model including examples of a
`source server device, a sink server device and a client device 40 nication for the home network.
`Each client device 12 may communicate with one or more
`in a network;
`server devices 14 in the network 10. Further, each server
`FIG. 9 shows another example audio/video (A/V) model;
`device 14 may communicate with one or more other server
`FIG. 10 shows an example capabilities data table for a
`devices 14, and one or more client devices 12, in the network
`network device;
`10. Each client device 12 can include a user communication
`FIG. 11 shows an example attribute data table for a
`interface including input devices such as a mouse and
`network device;
`keyboard for receiving user input, and a display for provid(cid:173)
`FIG. 12 shows an example configuration of building
`ing a control user interface for a user to interact with the
`blocks for generating command messages among networked
`networked devices. The user interface can include a graphi-
`devices;
`50 cal user interface (GUI) display 18 for providing informa(cid:173)
`FIG. 13 shows another example configuration of the
`tion to the user. Referring to FIG. 2, as defined herein, each
`building blocks of FIG. 12 for generating command mes(cid:173)
`server device 14 provides a service for the user, except
`sages;
`control user interface, and each client device 12 provides
`FIG. 14 shows three examples of interaction among
`control user interface for user interaction with the network
`networked client and server devices;
`55 10. As such, only client devices 12 interact directly with
`FIG. 15 shows an example block diagram for definitions
`users, and server devices 14 interact only with client devices
`of API extensions of networked device interfaces;
`12 and other server devices 14. Example services can
`FIG. 16 shows an example architecture for a server device
`include MPEG sourcing/sinking and display services.
`application accessing the interface description document of
`FIG. 3 shows a block diagram of an example home
`another server device;
`60 network 10 that includes a plurality of client devices 12 and
`FIG. 17 shows another example inter-device control
`a plurality of server devices 14. Each server device 14 may
`architecture between a controller server device and a con(cid:173)
`include hardware as a resource in the network for providing
`trolled server device;
`services to the user. Further, each server device 14 may store
`FIG. 18 shows an embodiment of an XML protocol
`a server or service control program 20 for controlling the
`providing a Web standard common middleware layer in a
`65 server hardware, and include a graphical control object
`(GCO) user interface description 22 for user interface with
`communication stack at the API level between networked
`the server control program 20 as shown in FIG. 4.
`devices;
`
`Ex.1008
`APPLE INC. / Page 18 of 35
`
`

`

`US 7,043,532 Bl
`
`5
`For control between a controlling client device 12 and a
`controlled server device 14, the client device 12 accesses the
`GCO 22 of the server device 14 by, for example, transferring
`the GCO 22 from the server device 14 to the client device
`12 over the network. The client device 12 then uses the 5
`transferred GCO 22 to create a control user interface GUI 18
`for the user to communicate with the control program 20 of
`the server device 14 from the client device 12 over the
`network. The user provides command and control to at least
`the control program 20 of the server device 14 from the
`client device 12.
`Storing the GCO 22 of each server device 14 in the server
`device itself may reduce the processing and storage require(cid:173)
`ments of the client devices 12 in net

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