`
`(12)
`
`United States Patent
`Lange et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,949,752 B2
`May 24, 2011
`
`(54) NETWORKSYSTEM EXTENSIBLE BY
`USERS
`
`(75) Inventors: Danny Lange, Cupertino, CA (US);
`Barbara Nelson, San Mateo, CA (US);
`E. Spe C SS ); James E.
`ite, San Carlos, CA (US)
`(73) Assignee: Ben Franklin Patent Holding LLC,
`Los Altos, CA (US)
`f thi
`h
`Sub
`disclai
`l ject to any d1Sc aimer, t eterm. Oths
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 1390 days.
`(21) Appl. No.: 10/995,159
`
`*) Not
`(*)
`Ot1Ce:
`
`(22) Filed:
`
`Nov. 24, 2004
`
`(65)
`
`Prior Publication Data
`US 2005/0091305 A1
`Apr. 28, 2005
`
`Related U.S. Application Data
`(63) Continuation of application No. 09/712,712, filed on
`Nov. 14, 2000, now Pat. No. 6,839,733, which is a
`continuation of application No. 09/178,366, filed on
`Oct. 23, 1998, now Pat. No. 6,163,794.
`
`(51) Int. Cl
`we
`(2006.01)
`G06F 5/73
`(2006.01)
`G06F 15/16
`(52) U.S. Cl. ........................................ 709/226; 709/202
`(58) Field of Classification Search .................. 709/202,
`709/226
`See application file for complete search history.
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`4.575,797 A
`3, 1986 Gruner et al.
`4,653,100 A
`3, 1987 Barnett et al.
`
`4,716,583. A 12, 1987 Groner et al.
`4,974,254 A 11/1990 Perine et al.
`5,001,745 A
`3, 1991 Pollock
`5,079,695 A
`1/1992 Dysart et al.
`5,093.914. A
`3/1992 Coplien et al.
`5,129,083. A
`7, 1992 Cutler et al.
`5,129,084 A
`7/1992 Kelly, Jr. et al.
`5,136,634 A.
`8/1992 Rae et al.
`5, 187,790 A
`2/1993 East et al.
`5,206,951 A
`4/1993 Khoyi et al.
`(Continued)
`
`EP
`
`FOREIGN PATENT DOCUMENTS
`O 495310 A2
`7, 1992
`(Continued)
`OTHER PUBLICATIONS
`Jonathan Dale, "A Mobile Agent Architecture to Support Distributed
`Resource Information Management', University of Southampton,
`Department of Electronics and Computer Science, 79 pages, Jun. 23.
`1998.
`
`(Continued)
`
`Kessler,
`
`Primary Examiner — Douglas B Blair
`(74). Attorney,
`Agent,
`or Firm – Sterne,
`Goldstein & Fox PL.L.C.
`(57)
`ABSTRACT
`In one aspect, a network system includes a user interface
`hich all
`ith th
`k sy
`An
`Wh1ch allows a user to 1nteract W1th the netWOrk SVStem.
`agent server is coupled to the user interface. The agent server
`manages the operation of the network system. Furthermore,
`the agent server in conjunction with the user interface is
`operable to create or modify an agent in response to interac
`tion by the user. In another aspect, a network system includes
`an agent server which manages the operation of the network
`system. An agent is operable to utilize a service within the
`network system. A service wrapper, associated with the Ser
`vice, cooperates with the agent server to mediate interaction
`between the service and the agent.
`34 Claims, 17 Drawing Sheets
`
`Graphical User
`Interface
`
`Woice ser
`Interface
`
`Computational
`Resources
`
`Agent Server
`
`:
`
`26
`26
`Service
`Service
`Service
`Wrapper
`Wrapper
`
`Service - 26 Programmable
`Functionality
`
`Hard-Wired
`Functionality
`
`
`
`
`
`
`
`
`
`
`
`
`
`5 2
`
`25
`
`Service
`Resources
`
`
`
`Service
`Resources
`
`25
`Service
`Resources
`
`Service
`Resources
`
`25
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 1 of 36
`
`
`
`US 7,949,752 B2
`Page 2
`
`U.S. PATENT DOCUMENTS
`5,261,080 A 1 1/1993 Khoyi et al.
`5,297.283 A
`3/1994 Kelly, Jr. et al.
`5,303.375 A
`4, 1994 Collins et al.
`5,303,379 A
`4/1994 Khoyi et al.
`5,307.490 A
`4, 1994 Davidson et al.
`5,321,841 A
`6, 1994 East et al.
`5,327,559 A
`7, 1994 Priven et al.
`5,339,430 A
`8, 1994 Lundin et al.
`5,351,276 A
`9/1994 Doll, Jr. et al.
`5,367,454 A 11, 1994 Kawamoto et al.
`5,377,350 A 12/1994 Skinner
`5,379,426 A
`1/1995 Foss et al.
`5,396,630 A
`3, 1995 Banda et al.
`5,414,852 A
`5, 1995 Kramer et al.
`5,421,013 A
`5, 1995 Smith
`5,421,015 A
`5/1995 Khoyi et al.
`5,446,842 A
`8, 1995 Schaeffer et al.
`5,446,901 A
`8, 1995. Owicki et al.
`5,452,433 A
`9, 1995 Nihart et al.
`5,500,920 A
`3/1996 Kupiec
`5,546,584 A
`8, 1996 Lundin et al.
`5,559,927 A
`9/1996 Clynes
`5,603,031 A
`2f1997 White et al. .................. 395/683
`5,608,786 A
`3, 1997 Gordon
`5,633,916 A * 5/1997 Goldhagen et al. ........ 379/88.17
`5,636,325 A
`6, 1997 Farrett
`5,655,081 A
`8, 1997 Bonnell et al. ................ TO9,202
`5,740,231 A * 4/1998 Cohn et al. ..
`379.8822
`5,781,228 A * 7/1998 Sposato .
`725/32
`5,825,759 A 10, 1998 Liu ..........
`370,331
`5,826,258 A 10/1998 Gupta et al. ...................... 707/4
`5,860,064 A
`1/1999 Henton
`5,873,057 A
`2f1999 Eves et al.
`5,890,123 A
`3, 1999 Brown et al.
`5,913,214 A
`6, 1999 Madnicket al. ................ 707/10
`5,953,392 A
`9, 1999 Rhie et al.
`5,963,949 A 10/1999 Gupta et al. .................. 7O7/1OO
`5.974.441 A 10/1999 Rogers et al. ..
`709/200
`11, 1999 Trower, II et al.
`704/276
`5,983, 190
`A
`5,983,267 A 11/1999 Shkliar et al. ....
`709/217
`5,987,415 A 11/1999 Breese et al.
`6,016,393 A
`1/2000 White et al.
`6,016,520 A
`1/2000 Facq et al. ....................... T10/33
`6,031,895 A * 2/2000 Cohn et al. ................. 379.88.13
`6,049,819 A * 4/2000 Buckle et al. ................. TO9,202
`6,067,568 A
`5/2000 Li et al. ......................... 709,223
`6,144.938 A 11/2000 Surace et al.
`6,163,794. A 12/2000 Lange et al. .................. TO9,202
`6,247,056 B1* 6/2001 Chou et al. .................... 709,229
`6,269,336 B1* 7/2001 Ladd et al. ..
`704/270
`6,285,977 B1
`9/2001 Miyazaki ...
`TO3/26
`6,363,411 B1
`3/2002 Dugan et al. .................. TO9,202
`6,366,650 B1
`4/2002 Rhie et al.
`6,457,063 B1
`9/2002 Chintalapati et al. ......... 709,317
`6,539.359 B1* 3/2003 Ladd et al. .................... 704/275
`6,657,990 B1* 12/2003 Dilip et al. .................... 370,352
`6,839,733 B1
`1/2005 Lange et al.
`7,043,532 B1* 5/2006 Humpleman et al. ........ TO9,208
`7.305,472 B2 * 12/2007 Mighdoll et al. ............. TO9,226
`2002fO1990.36 A1* 12, 2002 Arnold et al. ..
`709,330
`2005, OO27870 A1* 2, 2005 Trebes ........
`709/227
`2009,01328.05 A1* 5, 2009 Ginter et al.
`713,150
`2010/0332992 A1* 12/2010 Donoho et al. ............... 71.5/736
`
`
`
`EP
`EP
`EP
`WO
`WO
`WO
`
`FOREIGN PATENT DOCUMENTS
`O 495319 A2
`7, 1992
`O546809 A2
`6, 1993
`O 697780 A2
`2, 1996
`WO 91 10191 A1
`7, 1991
`WO96/11542 A2
`4f1996
`WO97/33416 A1
`9, 1997
`
`OTHER PUBLICATIONS
`JP Morgenthal, “XML Agents.” NC.Focus website (www.ncfocus.
`com), 1998, pp. 1-4.
`
`D. Tsichritzis, et al., “KNOs: Knowledge Acquisition, Dissemina
`tion, and Manipulation Objects.” ACM Transactions on Office Infor
`mation Systems, vol. 5, No. 1, Jan. 1987, pp. 96-112.
`C. Daniel Wolfson, et al., “Intelligent Routers.” The 9th International
`Conference on Distributed Computing Systems, IEEE Computer
`Society Press, 1989, pp. 371-376.
`S Gibbs, “Class Management for Software Communities”. Commu
`nications of the Association for Computing Machinery, vol.33,No.9.
`Sep. 1, 1990, pp. 90-103, XP 000162393.
`K. Nielsen, et al., “Inter-Processor Communication and ADA in
`Distributed Real-Time Systems”. Computer Communications, vol.
`13, No. 8, Oct. 1, 1990, pp. 451–459, XP 000161020.
`W. Gentleman, et al., “Administrators and Multiprocessor Rendez
`vous Mechanisms”. Software Practice & Experience, vol. 22, No. 1.
`Jan. 1992 Chichester GB.
`G. Welling, et al. "An Architecture of a Threaded Many-to-Many
`Remote Procedure Call”. Proceedings of the International Confer
`ence on Distributed Compution Systems, Yokohama, Jun.9-12, 1992
`No. Conf. 12, Jun. 9, 1992, Institute of Electrical and Electronics
`Engineers, pp. 504-511, XP 000341046.
`U. Ramachandran, et al. "An Implementation of Distributed Shared
`Memory”. Software Practice & Experience, vol. 21, No. 5, May 1,
`1991, pp. 443-464, XP 000297 178.
`H. Bruggemann, “Rights in an Object-Oriented Environment”. Data
`base Security V. Status and Prospects Results of the IFIP WG 11.3
`Workshop, Nov. 4, 1991. Shepherdstown, USA.
`M. Rottman and D. Thompson, “The Amcad Real-Time Multipro
`cessor Operating System”. Proceedings of the IEEE 1989 National
`Aerospace and Electronics Conference NAECON 1989, pp. 1813
`1818, (1989).
`A. Corradi, L. Leonardi and M. Zannini, “Distributed Environments
`Based on Objects: Upgrading Smalltalk Toward Distribution'. Ninth
`Annual International Phoenix Conference on Computers and Com
`munications, Mar. 21-23, 1990 Conference Proceedings, IEEE Com
`puter Society, pp. 332-339, (1990).
`J. Padget, R. Bradford and J. Fitch, “Concurrent Object-Oriented
`Programming in LISP, Computer Journal, vol.34, No. 4. Aug. 1991,
`pp. 311-319, (1991).
`L. Gunaseelan and R. LeBlanc, Jr., “Distributed Eiffel: A Language
`for Programming Multi-Granular Distributed Objects on the Clouds
`Operating System”. Proceedings of the 1992 International Confer
`ence on Computer Languages, IEEE Computer Society, pp. 331-340
`(1992).
`K. Ogata, S. Kurihara, M. Inari and N. Doi. "The Design and Imple
`mentation of HoME'. ACM Sigplan '92 Conference on Program
`ming Language Design and Implementation, San Francisco, CA Jun.
`17-19, 1992, ACM Sigplan Notices, vol. 27. No. 7, pp. 44-54, (Jul.
`1992).
`James W. Stamos and David K. Gifford, “Remote Evaluation', ACM
`Transctions on Programming Languages and Systems, vol. 12, No. 4.
`Oct. 1990, pp. 537-565.
`James W. Stamos and David K. Gifford, “Implementing Remote
`Evaluation', IEEE Transactions on Software Engineering, vol. 16.
`No. 7, Jul. 1990, pp. 710-722.
`Casais, Eduardo, "An Object Oriented System Implementing
`KNOs”. Proceedings of the Conference on Office Information Sys
`tems, vol. 9, Nos. 2-3, pp. 284-290 (1988).
`Kahn, Robert E., and Cerf, Vinton G., “The Digital Library Project:
`vol. 1: The World of Knowbots'; Corporation of National Research
`Initiatives (Draft) (1988).
`Borenstein, Nathaniel S., “Secure and Portable Active Messaging: A
`New Platform for Distributed Applications and Cooperative Work.”
`was to be submitted to Communications of the ACM for publication
`(date unknown), 1991.
`Curtis, Pavel. “LambdaMOO Programmer's Manual”, retrieved as
`flambda moof gamma Programmers.Manual texinfo
`from
`the
`Internet network (Aug. 1991).
`Hutchinson, Norman C.; Raj, Rajendra K.; Black, Andrew P.; Levy,
`Henry M., and Jul. Eric, “The Emerald Programming Language
`Report”. Technical Report 87-10-07. Department of Computer Sci
`ence, University of Washington (Oct. 1987).
`Jul, Eric; Levy, Henry; Hutchinson, Norman; and Black, Andrew,
`“Fine-Grained Mobility in the Emerald System”, ACM Transactions
`on Computer Systems, vol. 6, No. 1, pp. 109-133 (Feb. 1988).
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 2 of 36
`
`
`
`US 7,949,752 B2
`Page 3
`
`Rashid, Richard F., and Robertson, George G., “Accent: A Commu
`nication Oriented Network Operating System Kernel”. ACM docu
`ment No. 0-89791-062-1-12/81-0064, pp. 64-75 (1981).
`Butterfield, David A., and Popek, Gerald J., “Network Tasking in the
`Locus Distributed Unix System'. Locus Computing Corporation,
`Santa Monica, California, pp. 62-71 (date unknown), 1984.
`Douglis, Fred, “Process Migration in the Sprite Operating System'.
`Report No. UCB/CSD 87/343, Computer Science Division (EECS),
`University of California, Berkeley (Feb. 1987).
`Powell, Michael L., and Miller, Burton P. "Process Migration in
`DEMOS/MP, ACM document No. 0-89791-115-6/83/010/01 10 pp.
`110-119 (1983).
`Theimer, Marvin M.; Lantz, Keith A.; and Cheriton, David R.,
`“Preemptable Remote Execution Facilities for the V-System”, ACM
`document No. 0-89791-174-1-12/85-0002 pp. 2-12 (1985).
`Borenstein, Nathaniel S., "Computational Mail as Network Infra
`structure for Computer-Supported Cooperative Work.”CSCW 92
`Proceedings, pp. 67-74 (Nov. 1992).
`Makoto, “TNG PhoneShell (part 2). A proposal and an implimenta
`tion of internet access method with telephones and facsimilies'.
`JICST abstract 96A00533 11, May 1995.
`PwWebSpeak Overview online). The Productivity Works, Sep. 4.
`1996, retrieved on Apr. 15, 1997). Retrieved on the Internet <URL:
`http://www.prodworks.com/pwwwovw.htm.
`Hakkinen et al., "pwWebSpeak: User Interface Design of an Acces
`sible Web Browser', 1996.
`“WebSpeak' opens cyberspace to visually impaired.” The Times,
`Trenton, NJ, 3 pages (Feb. 12, 1996).
`Christodoulakis et al. “The Multimedia Object Presentation Manager
`of MINOS: A symmetric approach”, SIGMOD vol. 15 No. 2 pp.
`295-310, Jun. 1986.
`Zue, "Navigating the Information Superhighway Using Spoken Lan
`guage Interfaces' IEEE Expert pp.39-43, Oct. 1995.
`Caldwell et al., “Project Echo Telephonic Browser for the WWW,
`<http:www.cc.gatech.edu/people/home?tgay/echo.html> Apr. 15,
`1997, undated.
`James, “Presenting HTML Structure in Audio: User Satisfaction with
`Audio Hypertext', <http://www-pcd. Stanford.edu/about fames/re
`ports/pilot-tr/techrep-pilot. html> Apr. 14, 1997, undated.
`James, “AHA: Audio HTML Access” <http://www-pcd. Stanford.
`edu/..aboutfjames/aha/www.6/PAPER296.html Apr. 14, 1997),
`undated.
`
`Novick et al., “A multimodal browser for the World-Wide Web',
`undated, 1995.
`House, “Spoken-language Access to Multimedia (SLAM), Master's
`Thesis, Oregon Graduate Institute, undated, 1995.
`Groner, “The telephone—the ultimate terminal”, Telphony, pp.
`34-40, Jun. 1984.
`Arita et al., “The Voice Browser—an Archetype-Based Dialog
`Model”, NEC Res & Develop., vol.36 No. 4. pp. 554-561, Oct. 1995.
`Hemphill et al., “(Surfing the Web by Voice”, ACM 0-89791-751-0-
`95/11 pp. 215-222, Nov. 1995.
`Chin, John P. "Personality Trait Attributions to Voice Mail User
`Interfaces'. Proceedings of the 1996 Conference on Human Factors
`in Computing Systems, CHI96. Online Apr. 13-18, 1996, pp. 248
`249, XP002113878 Vancouver, BC, CA; retrieved from the Internet
`On 1999-09-96.
`"Method for Appropriately Interfacing to User Characteristics in a
`Voice Interface System.” IBMTechnical Disclosure Bulletin, vol. 37.
`No. 3, pp. 307-308, XP000441484, New York, Mar. 1994.
`Database Inspec 'Online' Institute of Electrical Engineers,
`Stevenage, GB, Trainer et al.: “The inclusion of personality trait
`based adaptive interfaces into computer based learning and training
`environments. Database accession No. 5193879 XP992 113879,
`Abstract and Proceedings of the Thirty-First International Matador
`Conference, Apr. 20-21, 1995, pp. 195-200, Manchester, UKISBN:
`0-333-64086-1.
`Reeves, B. and Nass, C., The Media Equation: How People Treat
`Computers, Television, and New MediaLike Real People and Places,
`pp. 89-108, ISBN No. 1-57586-052-X, CSLI Publications (1996).
`Dunlap, C. AT&T. Internet can talk, too. Computer Reseller News,
`Nov. 11, 1994, Iss. 607; p. 12 retrieved on 200-07-06). REtrieved
`from the Internet <URL: http://proguest.umi.com/-22.
`WebSpeak Browser Guides Blind on to Internet. The Sunday Times,
`Feb. 25, 1996, retrieved on 1997-04-97. Retrieved from the Internet
`<URL: http://www.prodworks.com/st960225.htm>.
`Aguilar, R. Visually Impaired Get Talking Browser. News.
`com.online, Feb. 12, 1996, retrieved on Feb. 12, 1997. Retrieved
`from the Internet <URL: http://www.news.com/News/Item?
`0.4642,00.htm>.
`“New Product Makes the Internet World Wide Web Usable by the
`Visually Impaired,” at <http://www.prodworks.com/pwwovw.
`html>, pwWebSpeak Press Release. The Productivity Works, Inc., 2
`pages (last updated Feb. 10, 1996).
`* cited by examiner
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 3 of 36
`
`
`
`US. Patent
`
`May 24, 2011
`
`Sheet 1 of 17
`
`US 7,949,752 B2
`
`or
`
`Em:86>
`
`womtw§
`
`5362:30
`
`893:.
`
`
`
`_mmEmm<
` _mm(—Emm<
`mmEmm<
`mmEmm<
`
`52mmEmm<
`
`ficofiSanO
`
`wmogsowml
`
`umt>>fi$I
`
`>Emcozucsm
`
`SBmEEmBoimm
`
`_llllllllll_3:20:83
`
`835m
`
`6&9;
`
`8:,me
`
`$392,
`
`835m
`
`8&9;
`
`$393
`83memm
`
`vm
`
`EL
`
`N
`
`mm
`
`836m
`
`mmoSOmmm
`
`83me
`
`$830me
`
`83.6w
`
`wmoSommm
`
`835m
`
`@830me
`
`mm
`
`mm
`
`Tmm
`
`F.GE
`
`VMware - Exhibit 1001
`
`VMware V. IV | - |PR2020-00470
`
`Page 4 of 36
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 4 of 36
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 2 of 17
`
`US 7,949,752 B2
`
`
`
`C'. s
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 5 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 3 of 17
`
`US 7,949,752 B2
`
`Graphical User Interface
`
`
`
`Web Browser (in client)
`
`Internet
`
`Web Server (in provider)
`
`Web Pages
`
`TO Rest of
`Network System
`
`FG. 3
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 6 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 4 of 17
`
`US 7,949,752 B2
`
`
`
`Telephone instrument (User's)
`
`Telephone Line
`
`Telephone Server (in provider)
`
`Grammar, Prompts, etc.
`
`TO Rest Of
`Network System
`
`FIG. 4
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 7 of 36
`
`
`
`U.S. Patent
`
`
`
`US 7,949,752 B2
`
`SueddeuAWG’5)|–|
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 8 of 36
`
`
`
`US. Patent
`
`May 24, 2011
`
`Sheet 6 0f 17
`
`US 7,949,752 B2
`
`mm
`
`
`
`82mmEmm<EoiBH
`
`52mmEmm<oh
`
`62mmEom<Eoi
`
`8282
`
`835m
`
`9
`
`52mmEmm<
`
`83me252mmEmm<
`
`Lwtw>coo
`
`835wEEEE.835m
`
`
`Eoi83meo...
`
`0.GE
`
`VMware - Exhibit 1001
`
`VMware V. IV | - |PR2020-00470
`
`Page 9 of 36
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 9 of 36
`
`
`
`
`
`
`
`US. Patent
`
`May 24, 2011
`
`Sheet 7 0f 17
`
`US 7,949,752 B2
`
`
`
`83memEmmmooi58
`
`
`
`AmooSowm:ucmv
`
`MEEESO
`
`.06665.91
`
`
`
`EmEsszmcofiflmc.
`
`
`
`memmooi=mo
`
`
`
`.8982,835m
`
`
`
`$393835m
`
`$9505DES
`
`
`
`@25369,8582,
`
`$8582Ucmv
`
`6592
`
`n.GE
`
`AmtmgmaEV52mmnw>>
`
`
`
`mmammom>>
`
`53mmnm>>
`
`
`
`Snag;023mm
`
`836m62%nm>>
`
`@85899:3
`
`
`
`mmmmn.pm>>
`
`9296ccEmgohmno;
`
`VMware - Exhibit 1001
`
`VMware V. IV | - |PR2020-00470
`
`Page 10 of 36
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 10 of 36
`
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 8 of 17
`
`US 7,949,752 B2
`
`Agent Object
`
`
`
`)
`
`Permissions
`
`Event Handlers
`
`DataStOre
`
`Pending Event Queue
`
`FIG. 8
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 11 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 9 of 17
`
`US 7,949,752 B2
`
`OO
`
`1.
`
`Admit SubSCriber
`to Ui (logon)
`
`Admit Subscriber
`to UI agent area
`
`Accept Command "C"
`from Subscriber
`
`Execute C if a
`Selection Command
`
`Execute C if a
`Template Command
`
`Execute C if an
`Agent Command
`14
`
`Any more
`COmmands?
`
`
`
`1 O2
`
`104
`
`1 O6
`
`1 O8
`
`1 1 O
`
`112
`
`Yes
`
`
`
`NO
`
`EXCuse Subscriber
`from U agent area
`
`116
`
`EXCuse Subscriber
`from Ui (logoff) - 18
`
`
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 12 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 10 of 17
`
`US 7,949,752 B2
`
`2O2
`
`ls C Select
`Template?
`
`
`
`
`
`Yes
`
`2O4
`
`Note
`template (T)
`Selected
`
`
`
`S C Select
`Agent?
`
`
`
`Note
`agent (A)
`Selected
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. O
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 13 of 36
`
`
`
`U.S. Patent
`
`US 7,949,752 B2
`
`009
`
`
`
`
`
`
`
`ON
`
`peoeleS () ele|due
`OU Seleul J AOL
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 14 of 36
`
`
`
`U.S. Patent
`
`US 7,949,752 B2
`
`007
`
`
`
`
`
`
`
`
`
`
`
`ON
`
`peoeleS (L) eleIduel
`OU Seleul JJOIJ
`
`peoeleS (W) uebe
`OU Seleu y JOLI
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 15 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 13 of 17
`
`US 7,949,752 B2
`
`Permissions of Agent (A)
`
`l
`
`
`
`
`
`
`
`Service permissions
`held by A
`for One Service
`
`Service permissions
`held by A
`for another Service
`
`Computational
`permissions
`held by A
`
`
`
`
`
`2O
`
`Agent Server
`
`Computational
`Resources
`
`
`
`
`
`
`
`
`
`
`Service Wrapper for
`S
`
`Service Wrapper for
`S2
`
`Service (S1)
`
`Service (S2)
`
`24
`
`25
`
`Service Resources
`Available to
`S1
`
`
`
`Service Resources
`Available to
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 16 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 14 of 17
`
`US 7,949,752 B2
`
`5OO
`
`Yes
`
`Select Agent
`
`
`
`
`
`Execute time
`slot for Agent
`
`
`
`
`
`Any more
`agents?
`
`
`
`NO
`
`F.G. 14
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 17 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 15 of 17
`
`US 7,949,752 B2
`
`Load Agent (A)
`
`6O2
`
`ls A
`suspended?
`
`Yes
`
`600
`
`
`
`NO
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Yes
`
`
`
`
`
`NO
`
`605
`
`is event
`(E) being
`handled?
`
`ls
`an event (E)
`pending
`for A2
`
`Yes
`
`DOes
`A have
`handler (H)
`for E2
`
`
`
`Execute portion
`of H for E
`
`FG 15
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 18 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 16 of 17
`
`US 7,949,752 B2
`
`7OO
`
`
`
`
`
`
`
`Yes
`
`Fetch instruction ""
`
`704
`
`is a Service
`instruction?
`
`
`
`
`
`Any more
`instructions?
`
`NO
`
`FG 16
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 19 of 36
`
`
`
`U.S. Patent
`
`May 24, 2011
`
`Sheet 17 of 17
`
`US 7,949,752 B2
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`8OO
`
`Identify permissions (Pr)
`required by
`
`
`
`Ask agent server for
`permissions (Ph) held by A
`806
`
`
`
`
`
`Does Ph
`include P2
`r:
`
`
`
`NO
`
`Yes
`Identify amounts (Ar and Ah)
`of quantitative permissions
`among Pr and Ph
`
`
`
`
`
`
`
`
`
`804
`
`8O8
`
`Error ROutine
`
`814
`
`
`
`at least Ar?
`
`NO
`
`Error Routine
`
`Yes
`
`Ask Service
`to execute
`
`ldentify amounts (Au)
`of quantitative permissions
`used by
`
`Ask agent Server to
`decrement Ah by Au
`
`
`
`F.G. 17
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 20 of 36
`
`
`
`1.
`NETWORKSYSTEM EXTENSIBLE BY
`USERS
`
`US 7,949,752 B2
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`The present application is a continuation of U.S. patent
`application Ser. No. 09/712,712, filed Nov. 14, 2000, allowed,
`which is a continuation of application Ser. No. 09/178,366,
`filed Oct. 23, 1998, now U.S. Pat. No. 6,163,794, each of
`which is incorporated herein by reference in its entirety.
`
`10
`
`TECHNICAL FIELD OF THE INVENTION
`
`15
`The present invention relates generally to the field of com
`puter Software systems and, more particularly, to a network
`system extensible by users.
`
`CROSS-REFERENCE TO MICROFICHE
`APPENDICES
`
`A portion of the disclosure of this patent document con
`tains material that is subject to copyright protection. The
`copyright owner has no objection to the facsimile reproduc
`tion by anyone of the patent disclosure as it appears in the
`Patent and Trademark Office patent files or records, but oth
`erwise reserves all copyright rights whatsoever.
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`25
`
`30
`
`35
`
`40
`
`This Application relates to the subject matter disclosed in
`the following United States Patent and co-pending United
`States Applications:
`U.S. Pat. No. 5,603,031 to White et al., entitled “System
`and Method For Distributed Computation Based Upon the
`Movement, Execution, and Interaction of Processes. In a Net
`work:
`U.S. application Ser. No. 08/609,699, filed Mar. 1, 1996,
`entitled “Method and Apparatus For Telephonically Access
`ing and Navigating the Internet:
`U.S. application Ser. No. 08/798,675, filed Feb. 10, 1997,
`entitled “System and Method For Distributed Computation
`45
`Based Upon the Movement, Execution, and Interaction of
`Processes. In a Network:” and
`U.S. application Ser. No. 09/071,717, filed May 1, 1998,
`entitled “Voice User Interface With Personality.”
`The above patent and co-pending applications are assigned
`to the present Assignee and are incorporated herein by refer
`CCC.
`
`50
`
`BACKGROUND OF THE INVENTION
`
`55
`
`Advances in computer and telephony Systems have led to
`the development of numerous technology-driven services,
`Such as electronic mail (e-mail), Voice mail, electronic orga
`nizers (for appointments and addresses), on-line databases
`(e.g., for periodicals and stock quotes), and the like. An
`60
`increasing popularity for these technological services in
`recent years has spawned an entire industry devoted to the
`provision and integration of the same. For example, numer
`ous companies now offere-mail service over the interconnec
`tion of computers widely known as the Internet. Other com
`65
`panies offer systems for voice mail services in both private
`branch exchange (PBX) and public telephone environments.
`
`2
`Entities which offer, supply, or otherwise provide services are
`referred to as “service providers. Entities which purchase,
`consume, or otherwise use services are referred to as “sub
`scribers.”
`Many technological services are Supported by one or more
`Software applications. These software applications are often
`developed with a broad spectrum of subscribers in mind. As
`Such, the respective technological services may address the
`generalized needs of many subscribers, but not the special
`ized needs of any one particular Subscriber or group of Sub
`scribers.
`With previous techniques, when a subscriber desires to
`alter, change, modify, or otherwise customize a service to Suit
`his or her own specialized needs, that Subscriber must contact
`the appropriate service provider. If the service provider
`deems that there is Sufficient demand for Such customization,
`the provider will initiate a modification of the supporting
`software application for the relevant service. Software pro
`grammers or developers must then modify the existing soft
`ware application to address the specialized needs of the
`requesting Subscriber(s), and afterwards, test the modified
`Software to ensure that it is functioning properly. Many itera
`tions of modification and testing may be performed before the
`finished, customized service is available to the subscriber.
`In light of the above, it is clear that previous techniques are
`problematic for numerous reasons. For example, a service
`provider is required to maintain or otherwise employ a staff of
`human Software developers for making modifications to Sup
`porting Software applications. This can be expensive. Further
`more, a Substantial amount of time may be required to
`develop, modify, and test Supporting Software applications in
`response to the request of a particular subscriber or group of
`subscribers. This can lead to subscriber dissatisfaction, and
`ultimately, defection to another service provider.
`
`SUMMARY OF THE INVENTION
`
`The disadvantages and problems associated with previous
`techniques for providing technological services have been
`Substantially reduced or eliminated using the present inven
`tion.
`The present invention provides a network system exten
`sible (e.g., programmable) by 'end-users, and a method of
`operation for the same. In general, an end-user (or simply
`“user') is any individual, party, or entity which somehow
`interacts with the network system. A user canthus be an entity
`known to the network system (i.e., an entity having a log-in
`ID). Such as, for example, a Subscriber and or an individual
`affiliated with the service provider. A user can also be an
`arbitrary third-party which somehow interacts with the net
`work system.
`With the present invention, users may extend or customize
`the network system according to their own particular needs.
`To accomplish this, a network system is augmented with an
`agent system. Capabilities of the network system are pro
`grammatically exposed by means of one or more services,
`service resources, and service wrappers. Each service indi
`vidually, or the network system as a whole, can be extended
`by adding agents (created by users). Furthermore, the con
`Sumption of computational and service resources are moni
`tored within the network system, thus protecting the subscrib
`ers and the service provider from harm or misuse, whether
`intentional or inadvertent. Accordingly, the network system
`can admit agents programmed by users.
`In addition, the present invention contemplates that a third
`party may modify existing agents and create new agents in the
`case where subscribers lack the desire or sophistication to do
`
`VMware - Exhibit 1001
`VMware v. IV I - IPR2020-00470
`Page 21 of 36
`
`
`
`3
`so themselves. The third party can then make such custom
`ized agents commercially available to Subscribers.
`According to an embodiment of the present invention, a
`network system includes a service. An agent uses the service
`on behalf of a principal. An agent server mediates the use of 5
`the service by the agent.
`According to another embodiment of the present invention,
`a network system includes a user interface which allows a
`user to interact with the network system. An agent server is
`coupled to the user interface. The agent server manages agent
`use of the network system. Furthermore, the agent server in
`conjunction with the user interface is operable to create or
`modify an agent in response to interaction by the user.
`According to yet another embodiment of the present inven
`tion, a method includes the following: admitting a user to a
`network system wherein at least one agent is operable to
`utilize a service to perform a task for the user; and allowing
`the user to create or modify the agent within the network
`system.
`According to still another embodiment of the present
`invention, a network system includes an agent server which
`manages agent use of the network system. An agent is oper
`able to utilize a service within the network system. A service
`wrapper, associated with the service, cooperates with the
`agent server to mediate interaction between the service and
`the agent.
`According to yet another embodiment of the present inven
`tion, a method includes the following: allowing an agent to
`utilize a service; and mediating interaction between the Ser
`Vice and the agent.
`A technical advantage of the present invention includes
`providing a network system (and a method of operation there
`for) which is programmable by users (including Subscribers)
`according to their own particular needs. From the standpoint
`of subscribers, this facilitates the process of adding or delet
`ing new services or extending existing services and, from the
`standpoint of a service provider, this is beneficial in that
`human Software developers and testers can be reduced or
`eliminated altogether with the automated system of the
`present invention.
`Other aspects and advantages of the present invention will
`become apparent from the following descriptions and accom
`panying drawings.
`
`10
`
`15
`
`25
`
`30
`
`35
`
`40
`
`US 7,949,752 B2
`
`4
`FIG.9 is a flow diagram of an exemplary method for a user
`session, according to an embodiment of the present invention;
`FIG. 10 is a flow diagram of an exemplary method for
`executing a selection command for selecting an agent or an
`agent template, according to an embodiment of the present
`invention;
`FIG. 11 is a flow diagram of an exemplary method for
`executing an agent template command, according to an
`embodiment of the present invention;
`FIG. 12 is a flow diagram of an exemplary method for
`executing an agent command, according to an embodiment of
`the present invention;
`FIG. 13 is a block diagram detailing the controlled con
`Sumption of service and computational resources, according
`to an embodiment of the present invention;
`FIG. 14 is a flow diagram of an exemplary method for
`executing time slices for an agent population, according to an
`embodiment of the present invention;
`FIG. 15 is a flow diagram of an exemplary method for
`executing a time slice for an agent, according to an embodi
`ment of the present invention;
`FIG. 16 is a flow diagram of an exemplary method for
`executing an event handler, according to an embodiment of
`the present invention; and
`FIG. 17 is a flow diagram of an exemplary method for
`executing a service instruction, according to an embodiment
`of the present invention.
`
`DETAILED DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`The preferred embodiments of the present invention and
`their advantages are best understood by referring to FIGS. 1
`through 17 of the drawings. Like numerals are used for like
`and corresponding parts of the various drawings.
`Turning first to the nomenclature of the specification, the
`detailed description which follows is represented largely in
`terms of processes and symbolic representations of opera
`tions performed by conventional computer components, such
`as a central processing unit (CPU) or processor associated
`with a general purpose computer system, memory storage
`devices for the processor, and connected pixel-oriented dis
`play devices. These operations include the manipulation of
`data bits by the processor and the maintenance of these bits
`within data structures resident in one or more of the memory
`storage devices. Such data structures impose a physical orga
`nization upon the collection of data bits stored within com
`puter memory and represent specific electrical or magnetic
`elements. These symbolic representations are the means used
`by those skilled in the art of computer programming and
`computer construction to most effectively convey teachings
`and discoveries to