`Kim
`
`111111
`
`1111111111111111111111111111111111111111111111111111111111111
`US006546002B 1
`US 6,546,002 Bl
`Apr. 8, 2003
`
`(10) Patent No.:
`(45) Date of Patent:
`
`(54) SYSTEM AND METHOD FOR
`IMPLEMENTING AN INTELLIGENT AND
`MOBILE MENU-INTERFACE AGENT
`
`(76)
`
`Inventor:
`
`Joseph J. Kim, 1375 Montecito Ave.,#
`17, Mountain View, CA (US) 94043
`
`( *) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(21) Appl. No.: 09/346,788
`(22) Filed:
`Jul. 7, 1999
`Int. Cl? ................................................ H04L 12/28
`(51)
`U.S. Cl. ....................................................... 370/351
`(52)
`Field of Search ................................. 370/350-354,
`(58)
`370/401, 402, 338; 345/327, 721, 700,
`719; 709/232, 207, 315-317; 707/513,
`103, 104; 725!110-113; 455/552-556, 426,
`445, 414, 423, 401-403
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`3/1992 Roarty et a!. ................. 358/84
`5,093,718 A
`5,155,806 A
`10/1992 Roeber et a!. .............. 395/157
`1!1993 Rhoades .. ... .. ... ... ... ... .. . 358/86
`5,181,107 A
`5,347,632 A
`9/1994 Filepp et a!.
`............... 395/200
`5,433,614 A
`7/1995 Beye .......................... 434/307
`5,524,195 A
`6/1996 Clanton, III et a!.
`....... 395/155
`5,594,490 A
`1!1997 Dawson et a!. . ... ... ... ... ... 348/6
`5,737,560 A
`4/1998 Yohanan ..................... 395/349
`5,740,549 A
`4/1998 Reilly eta!. .................. 705/14
`
`6/1998 Stiegler ...................... 345/354
`5,774,121 A
`6,047,327 A * 4/2000 Tso et a!.
`................... 709/232
`6,101,510 A * 8/2000 Stone eta!. ................ 707/513
`6,141,003 A * 10/2000 Chor eta!. ................. 345/327
`OTHER PUBLICATIONS
`S.S. Chakraborty, Mobile Multimedia: In Context to ATM
`Transport and GSM/GPRS Mobile Access Networks, May
`1995, IEEE Globecom 95, entire document.*
`* cited by examiner
`Primary Examiner-Kwang B. Yao
`Assistant Examiner---Prenell Jones
`(74) Attorney, Agent, or Firm-Pillsbury Winthrop LLP
`ABSTRACT
`(57)
`The present invention provides a system and method for
`using a mobile interface agent to dynamically access
`programs, applications, bookmarked URLs, IP addresses,
`telephone numbers, television channels, radio stations, user
`profiles, and the like that are specific to a user via any
`computer type device. The mobile interface agent can be
`accessible using any computer from any geographical loca-
`tion so long as the computer can be connected to a network.
`The mobile interface agent is basically an agent that allows
`the user to access documents, files, programs, applications,
`URL bookmarks, IP addresses, telephone numbers, televi-
`sion channels, radio stations, and other menu items from any
`computer. Moreover, the present invention relates to a per
`user based licensing model that allows the user to remotely
`access and use computer programs.
`
`49 Claims, 15 Drawing Sheets
`
`1520
`
`1525
`
`Cellular
`Telephone
`
`102b
`
`136
`
`dB
`
`138a
`
`Profile Data
`
`user identification
`pointer data
`user info
`attributes/behavior
`statistics
`applications/
`services
`
`Cellular
`Telephone
`
`!
`
`~
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 1
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 1 of 15
`
`US 6,546,002 Bl
`
`FIG. 1A
`
`I~MIA D~l
`User
`
`10:
`
`Pass: .__ I _
`
`__ l
`
`OK
`
`I~ MIA-jakim D~l
`User Eile Network
`....
`. .
`...... · .. .'
`'
`
`..
`
`FIG. 18
`
`I Exit I
`
`::
`,•
`,•
`
`. .
`:
`
`. .
`:
`'. :: ':: :': ,• :'.
`Find
`Recommend
`Sing
`Poetry
`URLs
`Apps
`Images
`Docs
`Option
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 2
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 2 of 15
`
`US 6,546,002 Bl
`
`~
`
`~
`
`~
`
`~
`
`'-
`Q)
`
`> .._
`Q)
`(f)
`
`rrn Programs
`Documents
`~
`rm Settings
`I-
`z
`i Find
`en
`Help
`~ ~
`0
`Run
`-c
`~
`c: ·-
`~ lU Shut Down
`f~-8-ta-r-tl
`1------·--------..1
`
`FIG. 2
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 3
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e \Jl
`
`"""" Ul
`0 ......,
`~
`
`~ .....
`'JJ. =(cid:173)~
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`' ' '
`' ,L---------------~
`
`services
`
`applications!
`
`statistics
`behavior
`attributes/
`user info
`
`pointer data
`
`user identification
`
`' ' ' '
`
`FIG. 3
`
`-~P~~!~~:f~ta
`
`applications/
`
`services
`
`statistics
`behavior
`attributes/
`
`180
`
`178
`176
`
`user identification
`
`Profile Data
`
`138b
`
`/~60
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`//// 106_.) ~ocal Memo~
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`/
`
`Phone
`
`Screen I Mobile
`Desktop /TV
`
`104"'\
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 4
`
`
`
`1-"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`'"""' Ul
`0 ......,
`~
`
`~ .....
`'JJ. =(cid:173)~
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`FIG. 4
`
`Application/Service 1
`
`Application/Service 1
`
`1 Connection 1 ~
`
`212\
`
`1~
`
`112
`
`I
`
`Network
`
`Application/Service N
`
`AppServs
`External
`
`130
`
`Data
`
`Interface
`Network
`
`218
`
`Detector
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 5
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`~ .....
`'JJ. =(cid:173)~
`
`'"""' Ul
`0 ......,
`Ul
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`FIG. 5
`
`dB
`
`Process
`
`Fork()
`
`Profile Data
`
`138a
`
`136
`
`316
`
`Result
`Query
`
`Query
`
`134 J
`
`and Query Requests
`Further Commands
`
`'-.!hird Party Serverv
`Other PM Servers or
`
`Well Known Port
`Initial Send to SQL
`
`Daemon (Parent
`ManagerServer
`
`Profile
`
`310
`
`Well Known Port
`
`Initial Send on
`
`User
`
`300
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 6
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`'"""' Ul
`0 ......,
`0'1
`~ .....
`'JJ. =(cid:173)~
`
`N c 8
`
`~CIO
`:"l
`~
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`FIG. 6
`
`lication/Service
`
`Return
`
`436
`
`~ Server
`I Application
`
`I
`
`r Request Applicati;""
`
`Service
`
`Location
`
`Application/Service
`
`Return
`
`Application/Service
`
`Find
`
`Manager
`Profile
`
`Info.
`
`MIA
`
`11J..-:-pd....,...a-:-te......,/=s-yn_c..,.~.h\
`
`!.---+--------------1Authenticatel4-----+---i
`
`402
`
`Network
`
`134
`
`102
`
`Host Device
`
`~----------~-~
`[420
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 7
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`~ .....
`'JJ. =(cid:173)~
`
`'"""' Ul
`0 ......,
`-..J
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`546
`
`544
`
`new profile
`
`542
`
`FIG. 7
`
`iff lock set
`
`input
`other user/system
`
`540
`
`connection
`
`no connection
`
`~---no new profile
`
`iff lock set
`
`550
`
`selected
`menu item
`
`520
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 8
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`~ .....
`'JJ. =(cid:173)~
`
`'"""' Ul
`0 ......,
`CIO
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`(Games)
`
`Applications
`
`Sony Playstation
`
`PC Applications
`MacOS Applications
`
`+-+
`630
`
`Server
`
`Application
`Third Party
`
`150
`
`FIG. 8
`
`620
`
`Version, License, *Shared Memory Segment)
`Pointer Data: MS Word-(IP Address of Server,
`
`[ MJA(~s~r: ~I
`
`license: X1
`MS Word
`Computer
`
`Apple MacOS
`
`Network
`
`610
`
`Location 2
`
`Manager
`Profile
`
`134
`
`[MIA (user: ~) I
`
`license: x'
`I MSWord
`Windows 95 PC
`
`I
`
`600
`
`Location 1
`
`Applications and Licensing
`Multi-Platform Support of
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 9
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`'"""' Ul
`0 ......,
`'0
`
`~ .....
`'JJ. =(cid:173)~
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`services
`
`applications/
`
`statistics
`
`attributes/behavior
`
`emaphore: b
`I I 1 Jt variable: a
`
`user info
`
`pointer data
`
`user: x
`
`Profile Data
`
`.---------1
`138a~
`
`Profile Data
`
`FIG. 9
`
`r-------1 Application 2
`
`Server
`Services
`
`Application/
`
`150b
`
`1
`
`Application 1 I
`
`900a
`
`Server
`Services
`
`Application/
`
`150a
`
`dB
`
`Manager
`
`Profile
`
`134
`
`Network
`
`1
`
`MIA Client 1
`
`132~
`
`102
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 10
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`'"""' Ul
`0 ......,
`'"""' c
`~ ......
`'JJ. =(cid:173)~
`
`N c 8
`~ :-:
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`parameters
`
`update operating
`
`Need to sync/
`Set Status to
`
`890
`
`at profile manager
`store locally and
`
`parameter data
`
`manager and gather
`
`I 900
`
`go to profiile
`
`on profile data
`output based
`
`Interface
`
`Output proper
`
`950
`
`FIG. 10
`
`options/updates etc.
`manager for basic
`
`contact access
`
`850
`
`I N
`
`parameters
`
`update operating
`
`Need to sync/
`Set Status to
`
`840
`
`parameters
`
`update operating
`
`check if need to sync/
`
`y
`
`870
`
`local computer
`
`whether profile exists on
`
`I 810
`
`System Determines
`
`800
`
`and Password
`User Types in ID
`
`Initialization of MIA
`
`Start
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 11
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 11 of 15
`
`US 6,546,002 Bl
`
`MIA updates
`
`1000
`
`contact PM and
`check serial number/
`date of last
`modification listed in
`PM
`
`1020
`
`Set MIA's
`>----Y--1 update/synch
`status to not
`necessary
`
`end
`
`1030
`
`N
`
`Update MIA profile
`data with PM
`profile data
`
`FIG. 11
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 12
`
`
`
`1--"
`~
`N
`Q
`Q
`-..a-..
`~
`(It
`-..a-..
`
`e rJ'l
`
`'"""' Ul
`0 ......,
`'"""' N
`~ .....
`'JJ. =(cid:173)~
`
`N c 8
`~ :-;
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`1240
`
`f<D~ 4:52PM!
`
`Exit
`Pause
`Test
`Question
`Next Lesson
`.,
`~epeat Lesson 1
`
`~1220
`
`1210
`
`FIG. 12
`
`I :m s-tart I
`
`Answer?
`
`e. -2
`d. 2
`c. -1
`b. 1
`a. 0
`
`X = ?
`2x = x + 1
`
`rn~J
`
`Lesson Search Help
`I~ Algebra Tutor
`
`1250
`
`1200
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 13
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 13 of 15
`
`US 6,546,002 Bl
`
`Information Distribution(cid:173)
`Server Side Filtering
`
`102
`
`MIA Client
`(user: x)
`
`t-------i
`
`Network
`
`132
`
`132
`
`138a
`
`1300~
`
`user: x
`pointer data
`user info -+-~
`attributes/
`FILTER
`behavior
`statistics
`applications
`services
`
`FIG. 13
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 14
`
`
`
`1--"
`~
`N
`Q
`b
`0'1
`~
`'&.
`0'1
`e rJ'l
`
`'"""' Ul
`0 ......,
`'"""' ~
`~ .....
`'JJ. =-~
`
`~
`
`N c c
`'t:l :-:
`>
`
`~CIO
`
`~ = ......
`~ ......
`~
`•
`\Jl
`d •
`
`FILTER
`
`FIG. 14
`
`services
`
`applications/
`
`statistics
`
`attributes/behavior
`
`user info ---11----~
`
`141 0"""
`
`pointer data
`
`user~
`
`I
`
`[----i Server: News
`Application
`
`Multicast
`
`Network
`
`150"""
`
`I
`
`132"""
`
`I
`I ~
`
`MIA Client'
`
`MIA Client'" I
`
`I MiA Client" I
`
`140\
`
`Newscaster
`
`1420~
`
`Client Side Filtering
`Information Distribution(cid:173)
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 15
`
`
`
`U.S. Patent
`
`Apr. 8, 2003
`
`Sheet 15 of 15
`
`US 6,546,002 Bl
`
`1520
`
`Windows 95 PC 1 02a
`
`1510
`
`136
`
`dB
`
`138a
`
`Profile Data
`
`user identification
`pointer data
`user info
`attributes/behavior
`statistics
`applications/
`services
`
`1525
`
`Cellular
`Telephone
`
`102b
`
`1515
`
`Cellular
`\ T ~~~~~~~e )
`~
`FIG. 15
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 16
`
`
`
`US 6,546,002 Bl
`
`1
`SYSTEM AND METHOD FOR
`IMPLEMENTING AN INTELLIGENT AND
`MOBILE MENU-INTERFACE AGENT
`
`FIELD OF THE INVENTION
`The present invention relates generally to the field of
`computer networks. More particularly, the present invention
`is directed to an information management and storage sys-
`tem and method. The present invention is further directed to
`a mobile interface agent that can be used to dynamically
`access resources stored either locally in the computer device
`or across a network including programs, applications, book-
`marked URLs, user profiles, IP addresses, telephone
`numbers, television channels, radio stations, and the like that 15
`are specific to a user via any computer device. Moreover, the
`present invention relates to a per user based licensing model
`that allows the user to locally or remotely access and use
`computer programs from any computer device.
`BACKGROUND OF THE INVENTION
`Most computers and portable digital assistants (PDA)
`have an operating system (OS) such as MS-DOS, UNIX,
`Windows 98INT/CE, or Linux loaded thereon for managing
`basic operations. In general, an OS apportions the comput-
`er's main memory, handles requests, receives and transmits
`instructions to and from the input/output (I/0) devices,
`manages the flow of information into and out of the main
`processor and the 1!0 devices, and performs other tasks that
`are commonly known.
`The OS is also used to organize and manage menu items
`such as software programs, applications, files, folders,
`documents, and the like that are stored on the computer or
`PDA. A user interface in an OS generally includes "pointers"
`to software programs, applications, files, folders, 35
`documents, and other menu items. A pointer in this context
`is a reference to a type of menu item that can be accessible
`on the computer, PDA or a server.
`In the current versions of the Windows 98/NT (believed
`to be a registered Trademark of Microsoft Corp.) OS, 40
`pointers are commonly used to retrieve/access menu items.
`Pointers can be found in a "Start" menu bar on the Windows
`98/NT user interface and includes a list of pointers to
`folders, files, and programs (e.g., word processing program,
`spreadsheet data file, personal software folder, etc.). For 45
`example, FIG. 2 illustrates a screen shot of a conventional
`Windows NT "Start" menu bar.
`The "Start" menu bar's main function is to provide easy
`access to commonly used applications and files. The menu
`bar also has some basic configuration capability so that a
`user can personalize the pointer data by adding or removing
`pointer data found in the menu bar. However, the "Start"
`menu bar information and configuration for a particular user
`is limited to the personal computer on which the configu-
`ration and pointer information reside. Hence, a user using a
`different personal computer cannot dynamically recreate the
`configuration and pointer information stored on another
`personal computer. Further, the menu bar does not have any
`intelligence about a network connected to the personal
`computer so a user may not receive accessibility information
`about pointer data that may depend on a network connection.
`Even further, the current Windows "Start" menu bar infor-
`mation cannot be accessed across multiple operating sys-
`tems or platforms such as on a Macintosh computer running
`MacOS or within a web browser.
`Even further, the "Start" menu bar keeps no user infor-
`mation or profile data associated with the user of the menu
`
`2
`bar. A user could save time if the menu bar kept certain user
`profile data, and applications linked to the menu bar could
`access this data. Hence, a user who accesses a word pro-
`cessor's Fax template could automatically have the word
`5 processor access data kept by the menu bar interface such as
`his name, address, and telephone number and automatically
`insert this information into the Fax template. Applications
`would simply be given some kind of interface such as a
`software API to query data stored by the menu bar interface,
`10 and the stored data could be assumed to be associated with
`the current user using the menu bar interface.
`Computers in many environments are connected to a
`network such as a local area network (LAN), a metropolitan
`area network (MAN), or a wide area network (WAN).
`Computers on the network can conveniently manage and
`access software programs, applications, files, folders,
`documents, and the like from another computer or server.
`For example, most businesses store such menu items at a
`centralized location, e.g. central server, so that multiple
`20 users connected to the network can gain access to them.
`Another popular and common use of a computer or PDA
`is to access information on the Internet. A web browser such
`as the Internet Explorer 4.0/5.0 (believed to be a registered
`Trademark of Microsoft Corp.) or Navigator (believed to be
`25 a registered Trademark of Netscape, Inc.) is loaded onto the
`computer or PDA so that the user can access web sites. The
`web browser is also used so that the user can receive and
`transmit data. Because the user may visit many web sites
`during a given session, each web browser allows the users
`30 to store and save the addresses (URLs) of commonly visited
`web sites. This is done by bookmarking them. The user
`bookmarks commonly visited web sites so that the user can
`create shortcuts for future use. As a result, the user does not
`have to type the complete URLs to access these sites.
`It is not uncommon for many users to have multiple
`computers, PDAs, and other computer-related devices. Each
`individual computer or PDA may include specific menu
`items and bookmarks that do not exist in another computer
`or PDA. For example, a computer used at work may be the
`only device that includes a spreadsheet program while a
`computer used at home may be the only device that includes
`bookmarked URLs. Thus, the user will not have access to
`the bookmarks from the user's work computer and likewise,
`will not have access to the spreadsheet program from the
`user's home computer. As a result, this causes much incon-
`venience and inefficiency for the computer user.
`Further, the bookmarks pointer data is specific to a
`particular output interface; specifically, the web browser. It
`50 would be desirable to have bookmarks that can attach
`various types of output applications for the pointer data
`contained in the bookmarks. It would also be desirable to be
`able to attach various types of interfaces to the bookmarks
`themselves instead of being tied as a feature of a web
`55 browser: an independent entity that can optionally attach
`various kinds of user interfaces such as some kind of
`intelligent agent using a graphical icon of a human-like
`figure (for children to interact with on a Windows 95/98 PC)
`or a voice activated and controlled menu system (for cellular
`60 telephones).
`It is common for users to have two computers of two
`different OS's running an application such as Microsoft
`Word. In order to share a particular Microsoft Word data file,
`it is currently necessary in the prior art to manually export
`65 the file in the required format so that a computer using one
`OS can read the file of the computer using the other OS.
`Time would be saved if there existed a mechanism allowing
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 17
`
`
`
`3
`files to be exported to the network in a format specified using
`mobile interface agent application data. When the mobile
`interface agent running on one OS changes to a computer
`running a different OS, the mobile interface agent can signal
`a server daemon to perform an OS conversion of the data 5
`and get the data file in the proper format. To the user, this
`process would be automatic and transparent since the user
`can simply click a data file, which is a pointer data in his/her
`mobile interface agent.
`Currently, users may save a list of phone numbers on her 10
`personal computer's telephone directory software. Similarly,
`a user may go to a television guide web site and save a list
`of favorite television shows and times. Time and effort could
`be saved if the list of phone numbers were transparent to the
`user's telephone and the list of favorite television shows
`transparent and accessible to the user's television. In other 15
`words, besides the advantage of being cross platform, using
`the mobile interface agent system allows user profile, con-
`figuration and settings information to be handled intelli-
`gently by network services to export information between
`networks such as the Internet, cable television network, or 20
`telephone network. This allows not only cross platform
`advantages, but cross network advantages as well.
`Most software programs and applications are currently
`licensed on either a node locked paradigm in which the
`software is usable on a per device basis or as a floating 25
`license in which a fixed number of licenses are available to
`a certain group of users limited by the number of concurrent
`users. In the case of node locked licensing, a user is
`generally not allowed to install a software program in
`multiple computers unless a software developer grants a 30
`license to the user for such use. Thus, most users cannot
`install the same software program on both their home and
`work computers unless the user purchases two identical
`programs (one for home and one for work). For floating
`licenses, the number of instances of program execution is
`tracked and any additional attempt to execute a program 35
`above the licensed limit is blocked by some kind of license
`manager. However, this method does not allow the tracking
`of the usage of specific users and involves guessing an
`optimal number of concurrent licenses to purchase so that
`users are not blocked from using the program while mini- 40
`mizing the cost of the licenses. Also, current licensing
`models are generally restricted by platform so that a user
`with a license for a software program is allowed to re-install
`the program when the user is changing/upgrading computers
`of the same platform. However, when the user is changing 45
`to a different platform such as from a Windows 98 device to
`an Apple MacOS device, the re-installation is not possible.
`The trend in the future is that many software programs
`and the like may be licensed per user rather than per
`device/platform or number of concurrent users in a network. 50
`In this case, the user has a license to use such programs from
`any computer that is capable of running such programs. The
`present invention provides a system and method for imple-
`menting such a licensing model so that the user can access
`and run programs from any computer and from any geo- 55
`graphical location.
`Accordingly, the ability to dynamically access any soft-
`ware programs, files, documents, URL bookmarks, IP
`addresses, telephone numbers, television channels, radio
`stations, and the like from any computer is highly desirable. 60
`There is a need for a system and method that can provide
`access to such menu items and bookmarks using any com-
`puter.
`
`SUMMARY OF THE INVENTION
`It is an object of the present invention to provide a system
`and method that allows a user to access specific documents,
`
`65
`
`US 6,546,002 Bl
`
`4
`files, programs, applications, URL bookmarks, IP addresses,
`telephone numbers, television channels, radio stations, and
`other menu items from any computer device located in any
`geographic location.
`It is another object of the present invention to provide a
`system and method that allows a user to access specific
`documents, files, programs, applications, URL bookmarks,
`IP addresses, telephone numbers, television channels, radio
`stations, and other menu items using a mobile interface
`agent.
`It is yet another object of the present invention to provide
`a system and method that allows different applications or
`services to share information between them.
`It is another object of the present invention to provide a
`system and method that allows applications and services to
`access user profile information.
`It is another object of the present invention to provide a
`system and method that allows applications and services to
`access user configuration and settings information.
`It is another object of the present invention to provide a
`system and method that allows a mobile interface agent to be
`accessible by a user using any computer type device con-
`nected to the network.
`It is another object of the present invention to provide a
`system and method that allows an intelligent platform or OS
`conversion of documents, files, or other data that are listed
`in mobile interface agent pointer data.
`It is another object of the present invention to provide a
`system and method that allows a mobile interface agent to be
`accessible by a user using any digital communication device
`such as a cellular phone or a cable set top box that is
`connected to the network.
`It is another object of the present invention to provide a
`system and method that allows a profile manager to export
`a user's profile, configuration, or settings data from one
`communications network such as the Internet to another
`network (such as the cellular phone network or the cable
`television network) to be accessible by mobile interface
`agents or other software or devices on the other network.
`These and other objects of the present invention are
`obtained by providing a network based mobile interface
`agent. The mobile interface agent can be accessible using a
`computer, cable set top box, cellular phone, or other device
`from any geographical location. Once the mobile interface
`agent has been accessed, the user can gain access to any
`documents, files, programs, applications, URL bookmarks,
`and other pointer data that are available to the user. The
`mobile interface agent is basically an agent that allows the
`user to access documents, files, programs, applications, URL
`bookmarks, IP addresses, telephone numbers, television
`channels, radio stations, and other menu items from any
`computer that is connected to a network. The present inven-
`tion also provides a method for remotely accessing and
`using computer programs from any computer device based
`upon a per user licensing model.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`These and other objects and advantages of the present
`invention will become apparent and more readily appreci-
`ated from the following detailed description of the presently
`preferred exemplary embodiment of the invention taken in
`conjunction with the accompanying drawings, of which:
`FIG. la illustrates a user login screen associated with a
`mobile interface agent in accordance with the present inven-
`tion;
`
`Petitioners Old Republic Gen'l Insur. Group, et al., Ex. 1001, p. 18
`
`
`
`US 6,546,002 Bl
`
`5
`FIG. 1b illustrates a graphic interface used by a mobile
`interface agent once a user has logged on in accordance with
`the present invention;
`FIG. 2 illustrates a screen shot of a conventional Windows
`NT "Start" menu bar;
`FIG. 3 illustrates a block diagram of an information and
`storage system implementing a mobile interface agent in
`accordance with the present invention;
`FIG. 4 illustrates a detailed block diagram of a mobile 10
`interface agent in accordance with the present invention;
`FIG. 5 illustrates a detailed diagram of a profile manager
`interacting with a mobile interface agent in accordance with
`the present invention;
`FIG. 6 illustrates the relationships between the mobile 15
`interface agent, the profile manager, and the application/
`services server in accordance with the present invention;
`FIG. 7 illustrates a state diagram for the mobile interface
`agent in accordance with the present invention;
`FIG. 8 illustrates an implementation of the present inven- 20
`tion using multiple platforms;
`FIG. 9 illustrates an implementation of the present inven-
`tion using multiple application/service servers;
`FIG. 10 illustrates a flow chart for initializing and creating
`a mobile interface agent in accordance with the present
`invention;
`FIG. 11 illustrates a flow chart for synchronizing and
`updating a user profile in accordance with the present
`invention;
`FIG. 12 illustrates a graphical mobile interface agent and
`a visiting graphical mobile interface agent used for educa-
`tional purposes on a user interface screen in accordance with
`the present invention;
`FIG. 13 illustrates an implementation of the present
`invention having an information distribution with client side
`filtering;
`FIG. 14 illustrates an implementation of the present
`invention having a third party server communicating with
`the profile manager; and
`FIG. 15 illustrates an implementation of the present
`invention having profile managers of multiple communica-
`tion networks connected by a gateway.
`
`30
`
`6
`FIG. 1a illustrates an example of a user login screen
`associated with the MIA that is running as software on a
`computer or PDA device. FIG. 1a illustrates a conventional
`log in window showing a use rid dialog box for inputting the
`5 userid code and a password dialog box for inputting the
`user's pre-selected password code. Once the correct userid
`and password codes are inputted into the two boxes, the user
`can now access and use the MIA. Once the user has
`successfully logged in, a graphical interface such as that
`illustrated in FIG. 1b is displayed to the user. Although FIG.
`1b illustrates one such user interface that may be used in the
`present invention, other interfaces having different menu
`items than those illustrated herein may be included. As
`described in more detail later herein, the menu items/
`pointers shown in the user interface can be used to access
`and retrieve user specific resources and information.
`FIG. 3 illustrates a block diagram of an information and
`storage system implementing an MIA in accordance with the
`present invention. The diagram illustrates three sections of
`the overall system. Section 104 represents user input/output
`(110) components of a user interface that can be used with
`the present invention. Section 106 represents a local
`memory that is used to store profile data for a particular user.
`Section 108 represents a network that is accessible by a
`25 computer (standalone, LAN, MAN, WAN), a PDA, a tele-
`vision (cable network), or a cellular phone (cellular
`network). Other networks that are accessible using different
`electronic devices that are now specifically mentioned
`herein can also be used with the present invention.
`The MIA 102 interfaces the three sections (user 1!0
`section 104, local memory section 106, network section 108)
`of the system. The MIA 102 is used to manage, access,
`retrieve, etc. information from the network and local
`memory. The MIA 102 is also used to initiate programs,
`35 applications, URL bookmarks, and other menu items, and
`can be implemented by way of software, firmware, or
`hardware.
`The MIA 102 receives input commands through an input
`interface 110 and transmits output information through an
`40 output interface 112. Several methods of inputting com-
`mands via the MIA 102 can be used with the present
`invention. For example, the user can input commands via an
`action command 114. The action command 114 can be an
`action such as dragging and dropping a document, folder,
`45 etc., or selecting and clicking a specific menu item. The
`action command 114 is generally performed using a con-
`ventional keyboard, mouse, or pad. The user may also input
`commands to the MIA 102 via a voice command 116. A
`voice recognition program is commonly used to provide the
`capability to input the voice command 116. Examples of
`voice commands are the following: "MIA, what time is it?"
`or "MIA, find a Korean restaurant within 5 miles from my
`home." As another example for cellular phones, the MIA
`102 could accept voice commands such as "Call Mom" or
`55 "Send phone conversation to my E-mail". Another type of
`input command that can be used is a scheduled event
`command 118. An example of the scheduled event command
`118 includes launching certain applications at a specified
`time. Also, scheduled event command 118 can launch appli-
`cations with a scheduled activity such as when a system
`backup program is initiated. Lastly, other event command
`120 includes other types of commands that are commonly
`associated with external agents or modules that are unrelated
`to the user. Examples of such other event command 120 is
`when one MIA attempts to contact another MIA or when a
`request is received from another input source other than the
`user (e.g., profile manager 134).
`
`DETAILED DESCRIPTION OF 1HE
`PREFERRED EMBODIMENTS
`The preferred embodiments of the present invention will
`now be described with reference to FIGS. 1-15, wherein like
`components/steps are designated by like reference numerals 50
`throughout the various figures. As noted above, conven-
`tional systems and methods for information management,
`retrieval, and storage can be inefficient and burdensome. The
`present invention overcomes the disadvantages of prior art
`systems and methods.
`The present invention is directed to a mobile interface
`agent (MIA) that is used to store, distribute, and access
`information. The MIA is specifically used to access menu
`items (e.g., software programs, app