throbber
Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 1 of 41
`Case 5:20-cv-08339—VKD Document 1—3 Filed 11/25/20 Page 1 of 41
`
`EXHIBIT C
`
`EXHIBIT C
`
`

`

`(12) United States Patent
`Rempell et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 9,471,287 B2
`*Oct. 18, 2016
`
`US009471287B2
`
`(54) SYSTEMS AND METHODS FOR
`INTEGRATING WIDGETS ON MOBILE
`DEVICES
`
`(71) Applicant: Express Mobile, Inc., Novato, CA (US)
`(72) Inventors: Steven H. Rempell, Novato, CA (US);
`David Chrobak, Clayton, CA (US);
`Ken Brown, San Martin, CA (US)
`
`(73) Assignee: Express Mobile, Inc., Novato, CA (US)
`(*) Notice:
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`This patent is Subject to a terminal dis-
`laimer.
`Ca1
`(21) Appl. No.: 14/708,074
`(22) Filed:
`May 8, 2015
`(65)
`Prior Publication Data
`
`(52) U.S. Cl.
`CPC ............... G06F 8/34 (2013.01); G06F 3/0482
`(2013.01); G06F 3/04842 (2013.01); G06F
`9/4443 (2013.01); H04L 51/046 (2013.01);
`H04L 65/60 (2013.01); H04L 67/02 (2013.01)
`(58) Field of Classification Search
`f
`CPC ..... ................................... G06F 3/048
`See application file for complete search history.
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`2004/0055017 A1
`3/2004 Delpuch et al.
`2004/0163020 A1
`8/2004 Sidman
`2004/01996.14 A1* 10, 2004 Shenfield ................ HO4L 29,06
`TO9.220
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`Nov. 5, 2015
`US 2015/031713O A1
`Related U.S. Application Data
`(63) Continuation of application No. 12/936,395, filed as
`application No. PCT/US2009/039695 on Apr. 6,
`Primary Examiner — Jennifer To
`2009, now Pat. No. 9,063,755.
`Assistant Examiner — X
`Xi
`R. V.
`(60) Provisional application No. 61/123,438, filed on Apr. 't al
`yong s
`(74) Attorney, Agent, or Firm — Steven R. Vosen
`7, 2008, provisional application No. 61/113,471, filed
`on Nov. 11, 2008, provisional application No.
`61/166,651, filed on Apr. 3, 2009.
`
`Stina Nylander et al. “The Ubiquitous Interactor Device Indepen
`dent Access to Mobile Services” (Computer-Aided Design for User
`Interfaces IV, Proceedings of the Fifth International Conference on
`Computer-Aided Design of User Interfaces CADUI 2004, Jan.
`2004, pp. 271-282).*
`
`(Continued)
`
`ABSTRACT
`(57)
`Embodiments of a system and method are described for
`generating and distributing programming to mobile devices
`over a network. Devices are provided with Players specific
`to each device and Applications that are device independent.
`Embodiments include a full-featured WYSIWYG authoring
`environment, including the ability to bind web components
`to objects.
`
`(51) Int. Cl.
`G06F 3/048
`G06F 9/44
`H04L 29/08
`G06F 3/0484
`G06F 3/0482
`H04L 29/06
`H04L 2/58
`
`(2013.01)
`(2006.01)
`(2006.01)
`(2013.01)
`(2013.01)
`(2006.01)
`(2006.01)
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 2 of 41
`
`28 Claims, 18 Drawing Sheets
`
`00 y
`
`
`
`10 Authoring
`Piatforr
`11 Memory
`12 Authoring
`
`Sewer
`12
`----------------------121 Network
`interface
`123 Memory
`12 Memory
`
`25. Processor
`
`114 Device
`Routies
`
`3 Processor
`
`is screen
`- 17 liput
`evice
`H
`
`Content
`140 server
`4. Network
`interface
`
`143 Memory
`
`145 processor
`
`

`

`US 9,471,287 B2
`Page 2
`
`International Search Report and Written Opinion —PCT/US2009/
`039695–Aug. 21, 2009.
`International Preliminary Report on Patentability and Written Opin
`ion PCT/US2009/039695 Oct. 21, 2010.
`Rempell et al, co-pending U.S. Appl. No. 14,708,087, filed May 8,
`2015.
`Rempell et al, co-pending U.S. Appl. No. 14,708,094, filed May 8,
`2015.
`Rempell et al, co-pending U.S. Appl. No. 14,708,097, filed May 8,
`2015.
`Rempell et al, co-pending U.S. Appl. No. 14,708, 100, filed May 8,
`2015.
`Rempell et al, co-pending U.S. Appl. No. 14,708, 108, filed May 8,
`2015.
`
`* cited by examiner
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`7/2005 Benedetti
`2005/01499.35 A1
`2005/0273705 A1* 12, 2005 McCain .................. GO6F 17 24
`T15,234
`
`2006, OO63518 A1
`
`3, 2006 Paddon et al.
`
`OTHER PUBLICATIONS
`
`Stina Nylander et at. “The Ubiquitous Interactor Device Indepen
`dent Access to Mobile Services” (Computer-Aided Design for User
`Interfaces IV, Proceedings of the Fifth international Conference on
`Computer-Aided Design of User Interfaces CADUT2004, Jan.
`2004, pp. 271-282).
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 3 of 41
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 1 of 18
`
`US 9,471,287 B2
`
`OO N
`
`
`
`11 O Authoring
`Platform
`1 11 Memory
`
`112 Authoring
`
`114 Device
`Routines
`
`3 Processor
`
`5 Screen
`
`Network
`interface
`
`123 Memory
`
`125 Processor
`
`13 Network
`interface
`
`-
`
`40
`Server
`ful
`4 Network
`
`Interface
`
`a
`
`---
`
`133 Memory
`
`s
`
`135 Processor
`
`O
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 4 of 41
`
`FG. A
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 2 of 18
`
`US 9,471,287 B2
`
`OO N
`
`
`
`O Authoring
`Platform
`
`
`
`
`
`Device
`
`C-1, R-1
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 5 of 41
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 3 of 18
`
`US 9,471,287 B2
`
`2OO y
`
`Players
`
`
`
`Authoring
`Patform
`
`Applications
`
`Load Registry
`
`120
`
`Server
`
`3.
`
`Registry
`
`220
`- WebComponent
`Registry
`
`Applications
`
`2O R
`SSe
`p
`Director
`
`N
`
`Player-
`
`3
`
`evice
`
`Web
`Content
`
`s:
`
`Content
`Recuest
`
`Deploy
`Registry
`
`Proxy
`HTTP/XM
`Request
`and
`Response
`23O
`
`
`
`Web Service
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 6 of 41
`
`F.G. 2A
`
`

`

`U.S. Patent
`
`US 9,471,287 B2
`
`
`
`4ÖSS3DO)
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 7 of 41
`
`| |-legel
`
`

`

`U.S. Patent
`
`US 9,471,287 B2
`
`
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 8 of 41
`
`

`

`U.S. Patent
`
`US 9,471,287 B2
`
`
`
`
`
`?608 p.608
`
`
`
`
`
`D608 q608 e608
`
`%
`
`608
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 9 of 41
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 7 of 18
`
`US 9,471,287 B2
`
`
`
`S&S
`
`st ExSessi šes as Sesiasting Ci SS assista
`Essexiesii is is age S.Essicises is is sistics
`sts as specisit age fiel:
`{} x's Saise age Sesiasig Saig SSS
`stic tise sexiste sies
`sectse S&SE:Sisies:
`assessessfire &se isses:
`Xscists Sississists
`R is S&Eiit Site is is series
`
`3O9b 1
`
`309b.5
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 10 of 41
`
`FG. 3C
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 8 of 18
`
`US 9,471,287 B2
`
`
`
`Š SSS
`
`3.
`s
`s
`S.
`
`Šiši-SS
`See ESS
`jSS38
`Sessi
`Eise
`SeSt.
`tags: S.
`
`is same'araws. :
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 11 of 41
`
`FG. 3D
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 9 of 18
`
`US 9,471,287 B2
`
`309
`
`
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 12 of 41
`
`309e9
`
`FG.3E
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 10 of 18
`
`US 9,471,287 B2
`
`
`
`319a
`
`is
`SSS is is
`Sississiest-SSEse:Siegss.setSEFe:Eoss
`Siassiss-Seisa Esa-sassissists
`S Sistest-sease E-SSESSaSS
`siastisest-Seti apiciuste-targas E
`Siassist-SetRapissie -8.3sš
`S$2:38:8siesis. ESSSSg-Sass,geSiasise:
`SSSSSSSSSS Š
`Siasiss-OiseER:
`Sisses
`SeSSS
`Flesher2
`Neather
`SSEiss
`SSESS
`Báciegsgeisiesis
`ESSESS...SeSats
`SSSE3SSSSSSS:
`FB&Siegsge:ER:
`
`Y
`
`319C
`
`319C
`
`319e
`
`gets::
`is
`Riigits-Spig
`Ssss;
`SE&SS
`Seases -Riigi Ees
`Siassissists

`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 13 of 41
`
`FG, 3F
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 11 of 18
`
`US 9,471,287 B2
`
`
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 14 of 41
`
`

`

`U.S. Patent
`
`US 9,471,287 B2
`
`
`
`
`
`
`
`
`
`009
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 15 of 41
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 13 of 18
`
`US 9,471,287 B2
`
`7OO
`
`"Nell asses
`
`
`
`7O1b
`
`S.
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 16 of 41
`
`FG. 7
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 14 of 18
`
`US 9,471,287 B2
`
`3OO N
`
`8O1
`Website System
`
`
`
`
`
`O3
`SMS Server
`
`
`
`Content Server
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 17 of 41
`
`FG. 9
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 15 of 18
`
`US 9,471,287 B2
`
`
`
`
`
`
`
`isis
`fist
`&esters&y
`
`SS&
`
`St& S
`
`
`
`
`
`
`
`O2
`O3
`O14
`
`1 O5
`
`&y& 88sts
`its Sisse
`if &c. &
`is 8. Rg88
`
`
`
`3O Y.
`
`S&:
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 18 of 41
`
`sers
`
`re
`yassi:
`at Sea 4O
`
`

`

`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 19 of 41
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 19 of 41
`
`U.S. Patent
`
`tC
`
`2a
`
`w
`
`S
`
`00
`
`t3‘!\x\\
`
`“mmmmmW0W23:5358chMW3..“3&5£5.
`
`1aEm£31,:f”2;.a\vaza€22aaa\qaa€2.52zzziaceezzzzifiaceiziismxmfiwwfi
`
`
`
`
`hmm:
`
`0w1;
`M36abnwfi
`
`1%1W..x
`
`
`
`guz§mn£$323.
`
`
`
`QtamaexOEQQQEN
`
`m3623Sam
`.magisa
`
`OEnaamn51new1.553233
`
`gaséw
`«E23.31ng333%éfiw
`
`
`{\‘xktstzi
`
`ugmxu‘wfi
`
`
`
`fiaawfinmuuu5,3
`
`US 9,471,287 B2
`
`mm:
`
`
`
`$.meSgnvuafikon$333x
`
`
`
`«magma$322
`
`omw
`
`S.@E
`
`
`
`
`
`

`

`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 20 of 41
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 20 of 41
`
`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 17 of 18
`
`US 9,471,287 B2
`
`_|_
`
`REESmm:mmmnmfimmmamGEEK»
`
`
`
`
`
`
`@311me.“mam._,§m§”WEE“mmfi“gmm
`
`wmmmflmm
`
`mmfinufimm
`
`
`
`gmSwamfimnfiwmww
`
`my.0:
`
`gmaggm
`
`mummmkmfifimmm
`
` §
`
`.3\\\\“\\\\M.
`
`§\
`
`huk-«Kk‘wkuu
`
`gmfihfiwm
`
`gfimmflfimmtmw.
`mwfimuda“mmmmmfi11%.1mummmfihfimm
`
`
`
`Em“mewegg
`
`Ems—m
`
`fixmfiMagi
`
`$§§§x§§§§§
`
`comw
`
`
`
`
`
`
`
`1ng3.3%rage?”Menage.11531hwmummmetacm
`
`
`
`
`

`

`U.S. Patent
`
`Oct. 18, 2016
`
`Sheet 18 of 18
`
`US 9,471,287 B2
`
`
`
`
`
`S&S
`
`S&SSSSSSSSSSSSSSSSSSSSSSSSSSS
`
`guery for
`&fice Ca3Sexistics
`sperator acticae
`
`
`
`
`
`
`
`
`
`SS
`S.
`
`
`
`
`
`S&reate
`
`
`
`Response irector
`
`
`
`evice Appropriate isyer instaii
`
`tiery and Receive
`R. for Narciag layey
`
`13O3
`
`Bayer foie
`fata: base
`
`
`
`Player Briti Process
`{Senerate RiaysFS for a
`AEast actic inpatientations
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 21 of 41
`
`F.G. 13
`
`

`

`US 9,471,287 B2
`
`1.
`SYSTEMIS AND METHODS FOR
`INTEGRATING WIDGETS ON MOBILE
`DEVICES
`
`TECHNICAL FIELD
`
`The present invention generally relates to providing soft
`ware for mobile devices, and more particularly to a method
`and system for authoring Applications for devices.
`
`BACKGROUND ART
`
`Internet-connected mobile devices are becoming ever
`more popular. While these devices provide portability to the
`Internet, they generally do not have the capabilities of
`non-mobile devices including computing, input and output
`capabilities.
`In addition, the mobility of the user while using such
`devices provides challenges and opportunities for the use of
`the Internet. Further, unlike non-mobile devices, there are a
`large number of types of devices and they tend to have a
`shorter lifetime in the marketplace. The programming of the
`myriad of mobile devices is a time-consuming and expen
`sive proposition, thus limiting the ability of service provid
`ers to update the capabilities of mobile devices.
`Thus there is a need in the art for a method and apparatus
`that permits for the efficient programming of mobile devices.
`Such a method and apparatus should be easy to use and
`provide output for a variety of devices.
`
`DISCLOSURE OF INVENTION
`
`10
`
`15
`
`25
`
`30
`
`2
`In another embodiment, one of the codes is an Application
`that is a device independent code that interpreted by the
`Player.
`These features together with the various ancillary provi
`sions and features which will become apparent to those
`skilled in the art from the following detailed description, are
`attained by the system and method of the present invention,
`preferred embodiments thereof being shown with reference
`to the accompanying drawings, by way of example only,
`wherein:
`
`BRIEF DESCRIPTION OF DRAWINGS
`
`FIG. 1A is an illustrative schematic of one embodiment of
`a system including an authoring platform and a server for
`providing programming instructions to a device over a
`network;
`FIG. 1B is schematic of an alternative embodiment sys
`tem for providing programming instructions to device over
`a network;
`FIG. 2A is a schematic of an embodiment of system
`illustrating the communications between different system
`components;
`FIG. 2B is a schematic of one embodiment of a device
`illustrating an embodiment of the programming generated
`by authoring platform;
`FIGS. 3A and 3B illustrate one embodiment of a publisher
`interface as it appears, for example and without limitation,
`on a screen while executing an authoring tool;
`FIG. 3C illustrates an embodiment of the Events Tab'
`FIG. 3D illustrates one embodiment of an Animation Tab:
`FIG. 3E illustrates one embodiment of Bindings Tab:
`FIG.3F illustrates one embodiment of a pop-up menu for
`adding web components;
`FIG. 4A shows a publisher interface having a layout on a
`canvas; and FIG. 4B shows a device having the resulting
`layout on a device screen;
`FIG. 5 shows a display of launch strips;
`FIG. 6A is a display of a Channel Selection List;
`FIG. 6B is a display of a Widget Selection List:
`FIG. 6C is a display of a Phone List;
`FIG. 7 shows a display of a mash-up:
`FIG. 8 is a schematic of an embodiment of a push capable
`system;
`FIG. 9 is a schematic of an alternative embodiment of a
`push capable system;
`FIG. 10 is a schematic of one embodiment of a feed
`collector;
`FIG. 11 is a schematic of an embodiment of a Mobile
`Content Gateway;
`FIG. 12 is a schematic of one embodiment of a system that
`includes a response director, a user agent database, an IP
`address database, and a file database; and
`FIG. 13 is a schematic of another embodiment of a system
`that includes a response director, a user agent database, an IP
`address database, and a file database.
`Reference symbols are used in the Figures to indicate
`certain components, aspects or features shown therein, with
`reference symbols common to more than one Figure indi
`cating like components, aspects or features shown therein.
`
`MODE(S) FOR CARRYING OUT THE
`INVENTION
`
`FIG. 1A is an illustrative schematic of one embodiment of
`a system 100 including an authoring platform 110 and a
`server 120 for providing programming instructions to a
`
`In certain embodiments, a system is provided to generate
`code to provide content on a display of a platform. The
`system includes a database of web services obtainable over
`a network and an authoring tool. The authoring tool is
`configured to define an object for presentation on the dis
`play, select a component of a web service included in said
`database, associate said object with said selected compo
`nent, and produce code that, when executed on the platform,
`40
`provides said selected component on the display of the
`platform.
`In certain other embodiments, a method is provided for
`providing information to platforms on a network. The
`method includes accepting a first code over the network,
`where said first code is platform-dependent; providing a
`second code over the network, where said second code is
`platform-independent; and executing said first code and said
`second code on the platform to provide web components
`obtained over the network.
`In certain embodiments, a method for displaying content
`on a platform utilizing a database of web services obtainable
`over a network is provided. The method includes: defining
`an object for presentation on the display; selecting a com
`ponent of a web service included in said database; associ
`55
`ating said object with said selected component; and produc
`ing code that, when executed on the platform, provides said
`selected component on the display of the platform.
`In one embodiment, one of the codes is a Player, which is
`a thin client architecture that operates in a language that
`manages resources efficiently, is extensible, Supports a
`robust application model, and has no device specific depen
`dencies. In another embodiment, Player P is light weight and
`extends the operating system and/or virtual machine of the
`device to: Manage all applications and application upgrades,
`and resolve device, operating system, VM and language
`fragmentation.
`
`35
`
`45
`
`50
`
`60
`
`65
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 22 of 41
`
`

`

`US 9,471,287 B2
`
`5
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`3
`device 130 over a network N. In one embodiment, device
`130 is a wireless device, and network N includes wireless
`communication to the device. Alternatively, system 100 may
`provide access over network N to other information, data, or
`content, such as obtainable as a web service over the
`Internet. In general, a user of authoring platform 110 may
`produce programming instructions or files that may be
`transmitted over network N to operate device 130, including
`instructions or files that are sent to device 130 and/or server
`120. The result of the authoring process is also referred to
`herein, and without limitation, as publishing an Application.
`Embodiments include one or more databases that store
`information related to one or more devices 130 and/or the
`content provided to the devices. It is understood that such
`databases may reside on any computer or computer system
`on network N, and that, in particular, the location is not
`limited to any particular server, for example.
`Device 130 may be, for example and without limitation,
`a cellular telephone or a portable digital assistant, includes
`a network interface 131, a memory 133, a processor 135, a
`screen 137, and an input device 139. Network interface 131
`is used by device 130 to communication over a wireless
`network, such as a cellular telephone network, a WiFi
`network or a WiMax network, and then to other telephones
`through a public switched telephone network (PSTN) or to
`a satellite, or over the Internet. Memory 133 includes
`programming required to operate device 130 (Such as an
`operating system or virtual machine instructions), and may
`include portions that store information or programming
`instructions obtained over network interface 131, or that are
`input by the user (Such as telephone numbers or images from
`a device camera (not shown). In one embodiment screen 137
`is a touch screen, providing the functions of the screen and
`input device 139.
`Authoring platform 110 includes a computer or computer
`system having a memory 111, a processor 113, a screen 115,
`and an input device 117. It is to be understood that memory
`111, processor 113, screen 115, and input device 117 are
`configured such a program stored in the memory may be
`executed by the processor to accept input from the input
`device and display information on the screen. Further, the
`program stored in memory 111 may also instruct authoring
`platform 110 to provide programming or information, as
`indicated by the line labeled “A” and to receive information,
`as indicated by the line labeled “B.”
`Memory 111 is shown schematically as including a stored
`program referred to herein, and without limitation, as an
`authoring tool 112. In one embodiment, authoring tool 112
`is a graphical system for designing the layout of features as
`a display that is to appear on screen 137. One example of
`authoring tool 112 is the CDERTM publishing platform
`(Express Mobile, Inc., Novato, Calif.).
`In another embodiment, which is not meant to limit the
`scope of the present invention, device 130 may include an
`operating system having a platform that can interpret certain
`routines. Memory 111 may optionally include programming
`referred to herein, and without limitation, as routines 114
`that are executable on device 130.
`Routines 114 may include device-specific routines—that
`is, codes that are specific to the operating system, program
`ming language, or platform of specific devices 130, and may
`include, but are not limited to, Java, Windows Mobile, Brew,
`Symbian OS, or Open Handset Alliance (OHA). Several
`examples and embodiments herein are described with ref
`erence to the use of Java. It is to be understood that the
`invention is not so limited, except as provided in the claims,
`and that one skilled in the art could provide Players for
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 23 of 41
`
`50
`
`55
`
`60
`
`65
`
`4
`devices using routines provided on a platform. Thus as an
`example, routines 114 may include Java APIs and an
`authoring tool System Development Kit (SDK) for specific
`devices 130.
`Server 120 is a computer or computer system that
`includes a network interface 121, a memory 123, and a
`processor 125. Is to be understood that network interface
`121, memory 123, and processor 125 are configured such
`that a program stored in the memory may be executed by the
`processor to: accept input and/or provide output to authoring
`platform 110; accept input and/or provide output through
`network interface 121 over network N to network interface
`131; or store information from authoring platform 110 or
`from device 130 for transmission to another device or
`system at a later time.
`In one embodiment, authoring platform 110 permits a user
`to design desired displays for screen 137 and actions of
`device 130. In other words, authoring platform 110 is used
`to program the operation of device 130. In another embodi
`ment, authoring platform 110 allows a user to provide input
`for the design of one or more device displays and may
`further allow the user to save the designs as device specific
`Applications. The Applications may be stored in memory
`123 and may then be sent, when requested by device 130 or
`when the device is otherwise accessible, over network N,
`through network interface 130 for storage in memory 133.
`In an alternative embodiment, analytics information from
`devices 130 may be returned from device 130, through
`network N and server 120, back to authoring platform 110.
`as indicated by line B, for later analysis. Analytics informa
`tion includes, but is not limited to, user demographics, time
`of day, and location. The type of analytic content is only
`limited by which listeners have been activated for which
`objects and for which pages. Analytic content may include,
`but is not limited to, player-side page view, player-side
`forms-based content, player-side user interactions, and
`player-side object status.
`Content server 140 is a computer or computer system that
`includes a network interface 141, a memory 143, and a
`processor 145. It is to be understood that network interface
`141, memory 143, and processor 145 are configured such
`that a stored program in the memory may be executed by the
`processor to accepts requests R from device 130 and provide
`content C over a network, such as web server content the
`Internet, to device 130.
`FIG. 1B is schematic of an alternative embodiment sys
`tem 100 for providing programming instructions to device
`130 over a network N that is generally similar to the system
`of FIG. 1A. The embodiment of FIG. 1B illustrates that
`system 100 may include multiple servers 120 and/or mul
`tiple devices 130.
`In the embodiment of FIG. 1B, system 100 is shown as
`including two or more servers 120, shown illustratively and
`without limitation as servers 120a and 120b. Thus some of
`the programming or information between authoring plat
`form 110 and one or more devices 130 may be stored,
`routed, updated, or controlled by more than one server 120.
`In particular, the systems and methods described herein may
`be executed on one or more server 120.
`Also shown in FIG. 1B are a plurality of devices 130,
`shown illustratively and without limitation as device 130-1,
`130-1, . . . 130-N. System 100 may thus direct communi
`cation between individual server(s) 120 and specific
`device(s) 130.
`As described subsequently, individual devices 130 may be
`provided with program instructions which may be stored in
`each device's memory 133 and where the instructions are
`
`

`

`US 9,471,287 B2
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`45
`
`5
`executed by each device's processor 135. Thus, for example,
`server(s) 120 may provide device(s) 130 with programming
`in response to the input of the uses of the individual devices.
`Further, different devices 130 may be operable using differ
`ent sets of instructions, that is having one of a variety of
`different “device platforms. Differing device platforms may
`result, for example and without limitation, to different
`operating systems, different versions of an operating system,
`or different versions of virtual machines on the same oper
`ating system. In some embodiments, devices 130 are pro
`vided with some programming from authoring system 100
`that is particular to the device.
`In one embodiment, system 100 provides permits a user
`of authoring platform 110 to provide instructions to each of
`the plurality of devices 130 in the form of a device- or
`device-platform specific instructions for processor 135 of
`the device, referred to herein and without limitation as a
`“Player,” and a device-independent program, referred to
`herein and without limitation as an “Application' Thus, for
`example, authoring platform 110 may be used to generate
`programming for a plurality of devices 130 having one of
`several different device platforms. The programming is
`parsed into instructions used by different device platforms
`and instructions that are independent of device platform.
`Thus in one embodiment, device 130 utilizes a Player and an
`Application to execute programming from authoring plat
`form 110. A device having the correct Player is then able to
`interpret and be programmed according to the Application.
`In one alternative embodiment, the Player is executed the
`first time by device 130 (“activated') through an Application
`directory. In another alternative embodiment, the Player is
`activated by a web browser or other software on device 130.
`In yet another alternative embodiment, Player is activated
`through a signal to device 130 by a special telephone
`numbers, such as a short code.
`When the Application and the Player are provided to
`memory 133, the functioning of device 130 may occur in
`accordance with the desired programming. Thus in one
`embodiment, the Application and Player includes program
`ming instructions which may be stored in memory 133 and
`which, when executed by processor 135, generate the
`designed displays on screen 137. The Application and Player
`may also include programming instructions which may be
`stored in memory 133 and which provide instructions to
`processor 135 to accept input from input device 139.
`Authoring tool 112 may, for example, produce and store
`within memory 111 a plurality of Players (for different
`devices 130) and a plurality of Applications for displaying
`pages on all devices. The Players and Applications are then
`stored on one or more servers 120 and then provided to
`individual devices 130. In general, Applications are pro
`vided to device 130 for each page of display or a some
`number of pages. A Player need be provided once or updated
`as necessary, and thus may be used to display a large number
`of Applications. This is advantageous for the authoring
`process, since all of the device-dependent programming is
`provided to a device only once (or possibly for some Small
`number of upgrades), permitting a smaller Application,
`which is the same for each device 130.
`Thus, for example and without limitation, in one embodi
`ment, the Player transforms device-independent instructions
`of the Application into device-specific instructions that are
`executable by device 130. Thus, by way of example and
`without limitation, the Application may include Java pro
`gramming for generating a display on Screen 137, and the
`Player may interpret the Java and instruct processor 135 to
`produce the display according to the Application for execu
`
`Case 5:20-cv-08339-VKD Document 1-3 Filed 11/25/20 Page 24 of 41
`
`50
`
`55
`
`60
`
`65
`
`6
`tion on a specific device 130 according to the device
`platform. The Application may in general include, without
`limitation, instructions for generating a display on Screen
`137, instructions for accepting input from input device 139,
`instructions for interacting with a user of device 130, and/or
`instructions for otherwise operating the device. Such as to
`place a telephone call.
`The Application is preferably code in a device-indepen
`dent format, referred to herein and without limitation as a
`Portable Description Language (PDL). The device's Player
`interprets or executes the Application to generate one or
`more "pages” (“Applications Pages') on a display as defined
`by the PDL. The Player may include code that is device
`specific—that it, each device is provided with a Player that
`is used in the interpretation and execution of Applications.
`Authoring tool 112 may thus be used to design one or more
`device-independent Applications and may also include
`information on one or more different devices 130 that can be
`used to generate a Player that specific devices may use to
`generate displays from the Application.
`In one embodiment, system 100 provides Players and
`Applications to one server 120, as in FIG. 1A. In another
`embodiment, system 100 provides Players to a first server
`120a and Applications to a second server 120b, as in FIG.
`1B.
`In one embodiment, authoring tool 112 may be used to
`program a plurality of different devices 130, and routines
`114 may include device-specific routines. In another
`embodiment, the Player is of the type that is commonly
`referred to as a “thin client' that is, software for running
`on the device as a client in client-server architecture with a
`device network which depends primarily on a central server
`for processing activities, and mainly focuses on conveying
`input and output between the user and the server.
`In one embodiment, authoring platform 110 allows user to
`arrange objects for display on screen. A graphical user
`interface (“GUI,” or “UI”) is particularly well suited to
`arranging objects, but is not necessary. The objects may
`correspond to one or more of an input object, an output
`object, an action object, or may be a decorative display, Such
`as a logo, or background color or pattern, such as a Solid or
`gradient fill. In another embodiment, authoring platform 110
`also permits a user to assign actions to one or more of an
`input object, an output object, or an action object. In yet
`another embodiment, authoring platform 110 also permits a
`user to bind one or more of an input object, an output object,
`or an action object with web services or web components, or
`permits a user to provide instructions to processor 135 to
`store or modify information in memory 133, to navigate to
`another display or service, or to perform other actions, such
`as dialing a telephone number.
`In certain embodiments, the applicant model used in
`developing and providing Applications is a PDL. The PDL
`can be conceptually viewed as a device, operating system
`and virtual machine agnostic representation of Java serial
`ized objects. In certain embodiments, the PDL is the com
`mon language for authoring tool 112, the Application, and
`Player. Thus while either designing the Application with the
`authoring tool 112, or programming with the SDK, the
`internal representation of the programming logic is in Java.
`In one embodiment the SDK is used within a multi-language
`Software development platform comprising an IDE and a
`plug-in system to extend it. Such as the Eclipse Integrated
`Development Environment (see, for example, http://www.e-
`clipse.org/). At publish time the Java code is translated into
`
`

`

`8
`display. Other information that may be provided by content
`server 140 may include, but is not limited to, pages, Appli
`cations, multimedia, and audio.
`FIG. 2A is a schematic of a system 200 of an embodiment
`of system 100 illustrating the communications between
`different system components. System includes a response
`director 210, a web component registry 220, and a web
`service 230. System 200 further includes authoring platform
`110, server 120, device 130 and content server 140 are which
`are generally similar to those of the embodiments of FIGS.
`1A and 1B, except as explicitly noted.
`Response director 210 is a computer or computer system
`that may be generally similar to server 120 including the
`ability to communicate with authoring platform 110 and one
`or more devices 130. In particular, authoring platform 110
`generates one or more Players (each usable by certain
`devices 130) which are provided to response director 210.
`Devices 130 may be operated to provide response director
`210 with a request for a Player and to receive and install the
`Player. In one embodiment, device 130 provides re

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