throbber
(19) United States
`(12) Patent Application Publication (10) Pub. N0.: US 2002/0059405 A1
`ANGWIN et al.
`(43) Pub. Date:
`May 16, 2002
`
`US 20020059405A1
`
`(54) METHODS SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR THE
`AUTOMATED DISCOVERY OF A SERVICES
`MENU
`
`(22) Filed:
`
`Jun. 17, 1999
`
`Publication Classi?cation
`
`(76) Inventors; ALASTAIR ANGWIN,
`HAMPSHIRE (GB); DAVID GEoRGE
`BEVIS, HAMPSHIRE (GB); STEFAN
`GEoRG HILD, ZURICH (CH);
`SANDEEP KISHAN SINGHAL,
`RALEIGH, NC (US)
`
`Correspondence Address:
`MYERS BIGEL SIBLEY & SAJOVEC
`PO BOX 37428
`RALEIGH, NC 27627 (US)
`
`( * ) Notice:
`
`This is a publication of a continued pros
`ecution application (CPA) ?led under 37
`CFR 1.53(d).
`
`(21) Appl. No.:
`
`09/335,375
`
`(51) Int. Cl.7 ....................... .. G06F 15/16; G06F 15/173
`(52) US. Cl. .......................................... .. 709/223; 709/200
`
`(57)
`
`ABSTRACT
`
`Methods, systems and computer program products are pro
`vided for the automated discovery of a services menu of a
`processing system such as a pervasive computing device by
`broadcasting to a plurality of devices connected to a net
`Work, a Request Services Menu message. The Request
`Services Menu message provides information about the
`pervasive computing device broadcasting the message. In
`response to the broadcast message, a services menu associ
`ated With the pervasive computing device is received and
`provided to a user of the pervasive computing device. The
`services menu may also be updated by sending a Services
`Menu Update to the device.
`
`Service
`Menu
`Repository
`
`Apple, Exhibit 1048, Page 1
`
`

`

`Patent Application Publication May 16, 2002 Sheet 1 0f 5
`
`US 2002/0059405 A1
`
`28'
`\ /
`
`10 /
`
`30
`
`Service
`Menu
`Repository
`
`Figure 1
`
`Apple, Exhibit 1048, Page 2
`
`

`

`Patent Application Publication May 16, 2002 Sheet 2 0f 5
`
`US 2002/0059405 A1
`
`100
`
`1 02
`
`YES
`i
`Generate
`message with
`device
`identi?cation
`
`i
`104 /
`
`Broadcast
`message on
`network
`
`106
`
`108
`
`i
`Store received
`service menu
`and display for
`user
`
`v
`
`End
`
`Figure 2
`
`Apple, Exhibit 1048, Page 3
`
`

`

`Patent Application Publication May 16, 2002 Sheet 3 0f 5
`
`US 2002/0059405 A1
`
`Yes
`
`i
`
`Parse
`message for
`user and/or
`device
`information
`
`l
`
`Generate
`Service Menu
`for user and/or
`device
`
`i
`
`Transmit
`generated
`message to
`source of
`request
`
`204
`
`206
`
`Figure 3
`
`Apple, Exhibit 1048, Page 4
`
`

`

`Patent Application Publication May 16, 2002
`
`Sheet 4 0f 5
`
`US 2002/ 0059405 A1
`
`Figure 4
`
`/ 306
`
`300
`
`pdate Menu -
`Server
`
`I
`7
`
`No
`
`Yes
`i
`
`302
`
`Get service
`menu change
`
`304
`
`Add item?
`
`Yes 308
`
`NO
`
`incorporate
`Add operation
`for item into
`Service Menu
`Update
`
`.
`
`Yes—>
`
`' message
`
`/310
`
`incorporate
`Delete
`operation for
`item into
`Service Menu
`Update
`message
`
`Delete item?
`
`Yes——->
`
`312
`
`M
`
`/ 316
`
`Yes———>
`
`Generate new
`service menu
`and
`incorporate
`into Replace
`operation of
`Service Menu
`Update
`message
`
`314
`
`318
`
`More items? 4
`
`Replace
`menu?
`
`No
`l
`Transmit
`Service Menu ‘
`Update
`‘
`message
`
`End
`
`Apple, Exhibit 1048, Page 5
`
`

`

`Patent Application Publication May 16, 2002 Sheet 5 0f 5
`
`US 2002/0059405 A1
`
`pdate Menu -
`Received
`
`400
`
`Figure 5
`
`Yes
`i
`Parse
`‘ Message for
`7
`change
`
`operations
`
`402
`
`404
`
`406
`
`/
`
`Re iace
`Mepnu')
`_
`
`Replace
`Yes~———> services menu
`with new menu
`
`No
`
`408
`
`410
`
`Add item?
`
`Yes
`
`Incorporate
`Yes————> new item into
`services menu
`
`No
`
`412
`
`414
`
`/
`
`Delete item?
`
`Remove
`speci?ed item
`Yes-->
`from services
`menu
`
`N°
`
`416
`
`More items? 4
`
`End
`
`<
`
`Apple, Exhibit 1048, Page 6
`
`

`

`US 2002/0059405 A1
`
`May 16, 2002
`
`METHODS SYSTEMS AND COMPUTER
`PROGRAM PRODUCTS FOR THE AUTOMATED
`DISCOVERY OF A SERVICES MENU
`
`FIELD OF THE INVENTION
`
`[0001] The present invention relates to network manage
`ment in general and in particular to networks employing
`pervasive computing devices With limited storage capabili
`ties.
`
`BACKGROUND OF THE INVENTION
`
`[0002] With the increasing mobility of today’s society, the
`demand for mobile computing capabilities has also
`increased. Many Workers and professionals are doWnsiZing
`their laptop computers to smaller palm-top or hand-held
`devices, such as personal digital assistants (PDAs). In addi
`tion, many people noW utiliZe cellular telephones to access
`the Internet and to perform various other computing func
`tions. Computing devices including, but not limited to,
`PDAs, cellular telephones, and computing devices utiliZed
`Within appliances and automobiles are often collectively
`referred to as “pervasive” computing devices. Many hand
`held computing devices utiliZe the Microsoft® WindoWs
`CE, 3Com Palm Computing®, and Symbion Epoc platforms
`as Well as Web broWsers such as HandWeb from SmartCode,
`Inc. and the Pocket Internet EXplorer from Microsoft, Inc.
`As used herein, the term “pervasive computing device”
`refers to a data processing system Which may connect to
`different netWorks and is intended to include PDAs, laptop
`and portable computers, pen-based portable computers,
`Wireless telephones, smart phones, screenphones, copies and
`other of?ce equipment, appliances, factory controllers, etc.
`[0003] Unfortunately, as the siZe of pervasive computing
`devices has decreased, typically, the capabilities of the
`devices for stand alone operation have also decreased. Such
`devices generally have reduced amounts of memory, little or
`no permanent storage capabilities and no display or reduced
`siZe displays having reduced color capabilities and resolu
`tion. For eXample, many of the emerging pervasive com
`puting devices do not eXecute applications locally on the
`device but, instead, obtain a menu of available services from
`a netWork server and then act as a portable netWork terminal
`for execution of the available applications. Such devices
`typically are highly portable and may connect to many
`different netWorks as the user moves throughout an operat
`ing environment.
`
`[0004] It is Well knoWn in the art for a netWork terminal or
`netWorked computer to learn its Internet Protocol (IP)
`address upon booting. For eXample, using the Address
`Resolution Protocol (ARP) a machine publishes its Ethernet
`Media Access Control (MAC) address and an ARP server
`returns the IP address that should be used for subsequent IP
`transmissions. Such an address resolution model has further
`been used in neWer protocols such as Dynamic Host Con
`?guration Protocol (DHCP).
`[0005] As described above, pervasive computing devices,
`hoWever, may be less capable than even netWorked termi
`nals. Certain pervasive computing devices typically require
`a description of the set of available services that the user
`may access from Within the netWork environment in Which
`the device currently resides (i.e., a services menu). Such a
`list of services may be provided, for eXample, as a Hyper
`
`Text Markup Language (HTML) home page for netWorked
`computers, a Wireless Markup Language (WML) deck for
`smart phones and PDAs or a Speech Markup Language
`(SpeechML)of Voice Markup Language (VoXML) menu for
`voice-based devices. Thus, the services and mechanism for
`delivery may change from environment to environment and
`may further be limited depending on the type of pervasive
`computing device connecting to the netWork. Furthermore,
`unlike address resolution, the pervasive computing device is
`typically under the physical control of the end-user rather
`than an issuing authority and, therefore, the parameters of
`the device may be substantially more diverse than, for
`eXample, merely providing an IP address to an Ethernet
`adapter.
`[0006] Currently, in order for a pervasive computing
`device to obtain a list of services, the device typically must
`have a priori knoWledge of the environment in Which it is
`operating to obtain the list from a prede?ned server. For
`eXample, a pervasive device Would access a prede?ned
`Universal Resource Locator (URL) for the netWork to Which
`it is connected to obtain the list of services. Alternatively, the
`netWorks to Which the device may attach typically must be
`speci?cally con?gured to route special URLs to prede?ned
`servers. HoWever, such systems may require knoWledge at
`the device of the different URLs to access and knoWledge of
`the netWork to Which the device is connected or cooperation
`among service providers to agree on common treatment of
`these special URLs. Such restrictions may limit the usability
`of pervasive computing devices.
`
`[0007] In light of the above discussion, a need eXists for a
`user friendly mechanism by Which pervasive computing
`devices may obtain a list of available services available to
`the devices Which does not require a priori knoWledge of the
`netWork environment by the pervasive computing device or
`eXtensive cooperation among service providers.
`
`SUMMARY OF THE INVENTION
`
`[0008] Accordingly, it is an object of the present invention
`to provide methods, systems and computer program prod
`ucts Which can obtain a services menu Without requiring
`prior knoWledge of the location of the services menu.
`
`[0009] It is a further object of the present invention to
`provide such methods, systems and computer program prod
`ucts that can automatically accommodate various types of
`hardWare operating under different operating systems.
`[0010] A still further object of the present invention is to
`provide methods, systems and computer program products
`Which enhance the mobility of pervasive computing devices.
`[0011] Another object of the present invention is to pro
`vide methods, systems and computer program products
`Which are user friendly and require no user setup.
`
`[0012] These and other objects can be provided, according
`to the present invention, by methods, systems and computer
`program products Which automatically obtain a service
`menu for a data processing system, such as a pervasive
`computing device, connected to a netWork by broadcasting
`to a plurality of devices connected to the netWork, a Request
`Services Menu message. The Request Services Menu mes
`sage provides information about the pervasive computing
`device broadcasting the message. In response to the broad
`cast Request Services Menu message, a services menu
`
`Apple, Exhibit 1048, Page 7
`
`

`

`US 2002/0059405 A1
`
`May 16, 2002
`
`associated With the pervasive computing device is received
`and provided to a user of the pervasive computing device.
`
`[0013] By broadcasting a request for a services menu to
`the netWork, the pervasive computing device does not have
`to knoW in advance the location of the server Which provides
`the services menu to the device. Furthermore, because the
`services menu is provided in response to a speci?c request,
`rather than a general HTTP request for a URL, the request
`may be broadcast onto the netWork. Devices Which cannot
`or need not respond to the request may ignore the request.
`Thus, the present invention provides for obtaining a services
`menu for a pervasive computing device Without requiring
`the device to knoW in advance the location from Which the
`services menu is to be obtained. Accordingly, a user of the
`device may simply connect to the netWork and the services
`menu may be automatically obtained Without requiring the
`user to knoW the speci?cs of the netWork con?guration to
`Which the device is attached.
`
`[0014] In a further embodiment of the present invention,
`the services menu received in response to the broadcast
`Request Services Menu message is a pointer to a services
`menu ?le. In such a case, the device may request the services
`menu ?le utiliZing the pointer received in response to the
`broadcast Request Services Menu message.
`
`[0015] In another embodiment of the present invention,
`the Request Services Menu message includes at least one of
`information regarding a user of the pervasive computing
`device, the type of pervasive computing device and/or the
`connection betWeen the pervasive computing device and the
`netWork. In such a case, a pointer to a services menu ?le or
`a services menu ?le may be selected based on one or more
`of the information regarding a user of the pervasive com
`puting device, the information regarding the type of perva
`sive computing device and/or the information regarding the
`connection betWeen the pervasive computing device and the
`netWork included in the Request Services Menu message. In
`response to the broadcast Request Services Menu message,
`the selected pointer to a services menu is transmitted to the
`pervasive computing device.
`
`[0016] In a particular embodiment of the present inven
`tion, the pointer is a Universal Resource Locator (URL).
`
`[0017] In a further aspect of the present invention, a
`services menu or pointer to a services menu is generated for
`transmission to the pervasive computing device in response
`to receiving a broadcast Request Services Menu message
`from the pervasive computing device. The generated ser
`vices menu or pointer is then transmitted to the pervasive
`computing device. In particular, the services menu or pointer
`may be generated by accessing a services menu database.
`Where the Request Services Menu message includes at least
`one of, information regarding a user of the pervasive com
`puting device, the type of pervasive computing device
`and/or the connection betWeen the pervasive computing
`device and the netWork, the services menu database may be
`accessed based on the provided information regarding a user
`of the pervasive computing device, the type of pervasive
`computing device and/or the connection betWeen the per
`vasive computing device and the netWork included in the
`Request Services Menu message.
`
`device may include pointers to additional services menus
`accessible to the pervasive computing device. Furthermore,
`at least one of the services associated With the services menu
`received by the pervasive computing device may be a
`telephony service. Also, the services menu received by the
`pervasive computing device may include credentials for
`presentation by the pervasive computing device to access
`services identi?ed in the services menu. In addition, the
`received services menu may be encrypted. In such a case, the
`pervasive computing device may decrypt the received ser
`vices menu.
`
`[0019] In another embodiment of the present invention an
`update of the services menu is provided by receiving a
`Services Menu Update message containing information
`associated With a modi?cation to the services menu of the
`pervasive computing device. The services menu displayed to
`the user is then updated to incorporate the modi?cations to
`the services menu contained in the Services Menu Update
`message. Preferably, the Services Menu Update message
`contains at least one of information regarding a delete
`operation, information regarding an add operation and/or
`information regarding a replace operation. In a particular
`embodiment it is determined if a change to the services
`menu of the pervasive computing device has occurred and a
`Services Menu Update message is transmitted to the perva
`sive computing device if a change to the services menu of
`the pervasive computing device has occurred.
`[0020] By providing an update procedure to the services
`menu of the pervasive computing device, the present inven
`tion may assure that the user is displayed a current services
`menu. Furthermore, such an ability alloWs for the control of
`the services menu presented to a user, for eXample, to add
`and remove services Which are only temporarily accessible
`to the user or to present different services menus for different
`user environments.
`
`[0021] While the invention has been described above
`primarily With respect to the method aspects of the inven
`tion, both systems and/or computer program products are
`also provided.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0022] FIG. 1 is a schematic diagram of a computer
`netWork suitable for use With the present invention;
`
`[0023] FIG. 2 is a ?oWchart illustrating operations of a
`pervasive computing device according to one embodiment
`of the present invention;
`[0024] FIG. 3 is a ?oWchart illustrating operations of a
`netWork server according to one embodiment of the present
`invention;
`[0025] FIG. 4 is a ?oWchart illustrating operations of a
`netWork server according to the present invention to update
`a services menu provided to a pervasive computing device;
`and
`
`[0026] FIG. 5 is a ?oWchart illustrating operations of a
`pervasive computing device to update a services menu
`provided to the pervasive computing device.
`
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`
`[0018] In still another embodiment of the present inven
`tion, the services menu received by the pervasive computing
`
`[0027] The present invention noW Will be described more
`fully hereinafter With reference to the accompanying draW
`
`Apple, Exhibit 1048, Page 8
`
`

`

`US 2002/0059405 A1
`
`May 16, 2002
`
`ings, in Which preferred embodiments of the invention are
`shown. This invention may, hoWever, be embodied in many
`different forms and should not be construed as limited to the
`embodiments set forth herein; rather, these embodiments are
`provided so that this disclosure Will be thorough and com
`plete, and Will fully convey the scope of the invention to
`those skilled in the art.
`
`[0028] As Will be appreciated by one of skill in the art, the
`present invention may be embodied as a method, data
`processing system, or computer program product. Accord
`ingly, the present invention may take the form of an entirely
`hardWare embodiment, an entirely softWare embodiment or
`an embodiment combining softWare and hardWare aspects.
`Furthermore, the present invention may take the form of a
`computer program product on a computer-usable storage
`medium having computer-usable program code means
`embodied in the medium. Any suitable computer readable
`medium may be utiliZed including hard disks, CD-ROMs,
`optical storage devices, or magnetic storage devices.
`[0029] Computer program code for carrying out opera
`tions of the present invention is preferably Written in an
`object oriented programming language such as J ava®,
`Smalltalk or C++. HoWever, the computer program code for
`carrying out operations of the present invention may also be
`Written in conventional procedural programming languages,
`such as the “IC” programming language. The program code
`may execute entirely on the user’s computer, partly on the
`user’s computer, as a stand-alone softWare package, partly
`on the user’s computer and partly on a remote computer or
`entirely on the remote computer. In the latter scenario, the
`remote computer may be connected to the user’s computer
`through a local area netWork (LAN) or a Wide area netWork
`(WAN), or the connection may be made to an external
`computer (for example, through the Internet using an Inter
`net Service Provider).
`[0030] The present invention is described beloW With
`reference to ?oWchart illustrations of methods, apparatus
`(systems) and computer program products according to an
`embodiment of the invention. It Will be understood that each
`block of the ?oWchart illustrations, and combinations of
`blocks in the ?oWchart illustrations, can be implemented by
`computer program instructions. These computer program
`instructions may be provided to a processor of a general
`purpose computer, special purpose computer, or other pro
`grammable data processing apparatus to produce a machine,
`such that the instructions, Which execute via the processor of
`the computer or other programmable data processing appa
`ratus, create means for implementing the functions speci?ed
`in the ?oWchart block or blocks.
`
`[0031] These computer program instructions may also be
`stored in a computer-readable memory that can direct a
`computer or other programmable data processing apparatus
`to function in a particular manner, such that the instructions
`stored in the computer-readable memory produce an article
`of manufacture including instruction means Which imple
`ment the function speci?ed in the ?oWchart block or blocks.
`
`[0032] The computer program instructions may also be
`loaded onto a computer or other programmable data pro
`cessing apparatus to cause a series of operational steps to be
`performed on the computer or other programmable appara
`tus to produce a computer implemented process such that the
`instructions Which execute on the computer or other pro
`
`grammable apparatus provide steps for implementing the
`functions speci?ed in the ?oWchart block or blocks.
`
`[0033] As is described in more detail beloW, the present
`invention alloWs for a ?rst processor such as a pervasive
`computing device to obtain a list or identi?cation of services
`available to the ?rst processor for a netWork session of the
`?rst processor. The present invention utiliZes broadcast
`requests for a services menu from remote processors such as
`pervasive computing devices to a netWork having access to
`a menu server Which either provides the menu of services or
`provides a pointer to the location of the menu of services
`(eg a URL). Thus, for differing sessions of the pervasive
`computing device the menus provided may differ or come
`from different servers, hoWever, the pervasive computing
`device need only knoW to broadcast onto the netWork to
`Which it is connected the request for a services menu.
`
`[0034] The types of information typically utiliZed to con
`trol the services available for a session may include the type
`of netWork connection (e.g. ethernet, modem, modem speed,
`duration of connection, connection cost, etc), the type of
`device connected (e.g. laptop computer, PDA, pen based
`system, cellular telephone, voiced based system, etc), char
`acteristics of the device connected (e.g. display type, oper
`ating system, processing poWer, memory, etc) and the user
`identi?cation of the user. Collectively, this information
`makes up the operating environment of a user session. Based
`on all or part of the information about a user’s operating
`environment, the services available to the pervasive com
`puting device may be identi?ed so as to take advantage of
`the particular operating environment of a session.
`
`[0035] FIG. 1 illustrates a system 10 in Which the present
`invention may be bene?cially utiliZed. As seen in FIG. 1, a
`server 20 may be accessed from a number of differing data
`processing systems (i.e., computers) such as PDAs 22 and
`22‘, desktop computer 23, PDA 24, pen based computer 26,
`cellular telephone 28, Which may be a smartphone, screen
`phone or voice only telephone and satellite telephone 28‘
`Which may be a smartphone, screenphone or voice-only
`telephone. These differing data processing systems 22, 22‘,
`23, 24, 26, 28 and 28‘ may each have differing processing
`capabilities, data presentation capabilities, operating sys
`tems and/or applications Which request information from
`server 20. Furthermore, each of these differing data process
`ing systems 22, 22‘, 23, 24, 26, 28 and 28‘ may be utiliZed
`by different users With different services associated With the
`users. As Will be appreciated by those of skill in the art, other
`types of processing systems may also bene?t from utiliZa
`tion of the present invention.
`
`[0036] The differing data processing systems 22, 22‘, 23,
`24, 26, 28 and 28‘ may also utiliZe different communication
`techniques for communicating With server 20. For example,
`PDA 22 and desktop computer 23 may utiliZe a netWork
`interface card to communicate With server 20 over a direct
`netWork connection such as the Ethernet 38 illustrated in
`FIG. 1. PDA 22‘ may communicate directly With server 20
`through modem 32 and modem 32‘. PDA 24 is illustrated as
`communicating With server 20 through desktop computer
`23. Similarly, pen based computer 26 may communicate
`through a modem 32“ connection to the netWork 40 Which
`may be the Internet or an intranet. Cellular telephone 28 may
`communicate With server 20 through a cellular connection
`
`Apple, Exhibit 1048, Page 9
`
`

`

`US 2002/0059405 A1
`
`May 16, 2002
`
`36 and the network 40. Finally, satellite telephone 28‘ may
`communicate With server 20 through a satellite connection
`34 and the netWork 40.
`
`[0037] Furthermore, as Will be appreciated by those of
`skill in the art, the type of connection may change from
`session to session. Thus, for eXample, While PDA 22‘ is
`illustrated as using a modem to modem direct connection to
`communicate With server 20, in a subsequent session, PDA
`22‘ could communicate With server 20 through a netWork
`connection, by for eXample, connection to Ethernet 38. As is
`seen from the examples in FIG. 1, data processing systems
`may communicate With a server using a Wide variety of
`connection types With differing connection characteristics.
`Some connection types may be high speed, loW cost, con
`nections, such as the Ethernet connection 38, While others
`may be loWer speed, higher cost, connections, such as the
`cellular connection 36 or loWer speed, loWer cost, connec
`tions such as through a modem 32.
`
`[0038] As is further illustrated in FIG. 1, server 20 has
`access to a services menu repository 30. The services menu
`repository 30 may be incorporated in server 20 or may be
`accessible through a netWork or other communication con
`nection. The services menu repository 30 may also be
`periodically doWnloaded or otherWise provided to server 20
`and a copy of the services menu repository 30 maintained by
`server 20. The services menu repository 30 preferably
`includes an identi?cation of the services available to users of
`processing systems such as the data processing systems 22,
`22‘, 23, 24, 26, and 28 illustrated in FIG. 1. The services
`menu repository 30 may include the services menus to be
`provided to data processing systems or, as described above,
`may include links to other locations Where the menus may
`be obtained. While the services menu repository 30 is
`illustrated and described in the present application as a
`single database, as Will be appreciated by those of skill in the
`art, multiple databases may be utiliZed.
`
`[0039] In general, in a system according to the present
`invention, When one of data processing systems 22, 22‘, 23,
`24, 26 and 28, initially establishes a connection to a netWork,
`the data processing system broadcasts a Request Services
`Menu message on the netWork. The Request Services Menu
`message preferably includes the requesting data processing
`system’s physical address (Which may be an Ethernet
`address, a telephone number, a serial number, etc) and may
`include information on the data processing system itself,
`user of the data processing system and/or netWork to Which
`the data processing system is connected. The broadcast
`Request Services Menu message is received by server 20.
`Server 20 accesses the services menu repository 30 and,
`based on the information in the Request Services Menu
`message determines Which menu of services to provide to
`the requesting device. The server 20 then provides the
`services menu to the requesting data processing system.
`
`[0040] The services menu provided to the requesting data
`processing system may be tailored to the characteristics of a
`session With the requesting data processing system. For
`eXample, content provided to a smartphone With a limited
`vieWing area and display resolution may be tailored to
`provide only a limited menu of services or may be tailored
`to a format such as WML alloWing for effective display on
`a small screen. Alternatively, if the requesting device has
`voice-only capabilities, then the services menu may be
`
`provided as SpeechML or VoXML. As a further eXample, the
`services identi?ed in the services menu may be tailored
`based on the speed or cost of the communication connection
`such that communication intensive applications are limited.
`Furthermore, the services provided may be tailored based on
`other factors, such as billing information, for eXample, if the
`use of services is to be prepaid or if different levels of
`services are provided to different customers. Furthermore,
`because the connection type may change from session to
`session, the menu of services may change from session to
`session. Thus, for eXample, When PDA 24 is connected
`through a cellular connection 36 the menu of services may
`differ from that obtained When PDA24 is connected through
`Ethernet 38. Similarly, if a user utiliZes both a smartphone,
`such as cellular telephone 28, and a PDA 24, then the
`services menu provided may differ When the user uses
`cellular telephone 28 or PDA 24.
`
`[0041] FIG. 2 illustrates operations according to one
`embodiment of the present invention. As is seen in FIG. 2,
`a pervasive computing device, such as the data processing
`systems 22, 22‘, 23, 24, 26, and 28 illustrated in FIG. 1,
`Waits for connection to a netWork, such as netWork 40 or
`Ethernet 38 (block 100). The present invention may also be
`utiliZed With a direct connection to a server Which may act
`as a gateWay to a netWork, such as illustrated by modem 32
`and 32‘.
`
`[0042] After connecting to the netWork, the pervasive
`computing device generates a Request Services Menu mes
`sage Which preferably includes at least an address identify
`ing the pervasive computing device (block 102). The type of
`message generated may depend on the protocols utiliZed,
`hoWever, it is preferred that the message be an IP datagram.
`As Will be appreciated by those of skill in the art, the
`particular address included in the Request Services Menu
`message may depend on the type of connection and/or the
`type of device utiliZed. Thus, the address may be an IP
`address, an Ethernet address, a telephone number, a sub
`scriber identi?cation or other such address Which alloWs for
`communication With the pervasive computing device. Pref
`erably, the Request Services Menu message also includes
`further information about the session of the pervasive com
`puting device. For eXample, the message may include infor
`mation such as the type of device, a user identi?cation such
`as user logon, user account information, user preferences,
`user passWords, connection information such as the connec
`tion speed or device characteristics such as the type of
`display or other information Which may be useful in deter
`mining the services to be included in the services menu or
`the format for providing such menu to the pervasive com
`puting device. Furthermore, device information may be
`included in the Request Services Menu message utiliZing the
`CC/PP grammar.
`
`[0043] After generating the Request Services Menu mes
`sage the pervasive computing device broadcasts the message
`onto the netWork to Which the device is connected (block
`104). As used herein, the term broadcast is used to describe
`the transmission of the same message to a plurality of
`devices connected to a netWork. Such a message may be
`broadcast to every device connected to the netWork or to
`devices connected to the netWork Which have netWork
`addresses Within a prede?ned range of addresses. Thus, the
`term broadcast is intended to refer to both broadcast and
`multicast messages. The message is broadcast because the
`
`Apple, Exhibit 1048, Page 10
`
`

`

`US 2002/0059405 A1
`
`May 16, 2002
`
`pervasive computing device may not know in advance the
`address or location of the server on the network Which
`provides the services menu. If a networked device receives
`the message and cannot respond to the message, then the
`message is ignored by that device. HoWever, When the
`message is received by the server Which is capable of
`providing the services menu to the pervasive computing
`device, then the operations of FIG. 3 may be performed to
`respond to the message. Such a server may be referred to as
`a “Service Boot Host” and is illustrated in FIG. 1 by server
`20.
`
`[0044] After broadcasting the Request Services Menu
`message, the pervasive computing device Waits for a
`response (block 106). When the response is received by the
`pervasive computing device, the response may be stored
`locally at the device and displayed to the user (block 108).
`The display of the response to the user may be carried out
`as a visual display, an audio display and/or a tactile display.
`Thus, the display of a menu need not be limited to visual
`display.
`[0045] As brie?y described above, the response from the
`server 20 may be a complete menu of services or may be a
`pointer, such as a URL, to a services menu. In the latter case,
`the pervasive computing device may request the services
`menu from the location speci?ed by the pointer to obtain the
`services menu (e.g. request the speci?ed URL by issuing a
`Hyper-Text Transfer

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