throbber
PATENT OWNER
`
`PATENT OWNER
`EXHIBIT 2031
`
`EXHIBIT 2031
`
`

`
`(19) United States
`(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2005/0076327 A1
`(12) Patent Application Publication (10) Pub. No.: US 2005/0076327 A1
`(43) Pub. Date:
`Apr. 7, 2005
`Helal et al.
`Helal et al.
`(43) Pub. Date:
`Apr. 7, 2005
`
`US 20050076327A1
`US 20050076327A1
`
`SERVER-SIDE WIRELESS DEVELOPMENT
`(54) SERVER-SIDE WIRELESS DEVELOPMENT
`(54)
`TOOL
`TOOL
`
`Inventors: Abdelsalam G. Helal, Gainesville, FL
`(75) Inventors: Abdelsalam G. Helal, Gainesville, FL
`(75)
`(US); Dushiant Kochhar, Bellevue,
`(US); Dushiant Kochhar, Bellevue,
`WA (US)
`WA (Us)
`
`Correspondence Address:
`Correspondence Address;
`AKERMAN SENTERFITT
`AKERMAN SENTERFITT
`PO. BOX 3188
`P.0. BOX 3188
`WEST PALM BEACH, FL 33402-3188 (US)
`WEST PALM BEACH, FL 33402-3188 (US)
`
`Assignee: University of Florida, Gainesville, FL
`Assignee: University of Florida, Gainesville, FL
`
`Appl, No;
`Appl. No.:
`
`10/758,180
`10/758,180
`
`Filed:
`Filed:
`
`Jan. 15, 2004
`Jan. 15, 2004
`
`(73)
`(73)
`(21)
`(21)
`(22)
`(22)
`
`Related U.S. Application Data
`Related US. Application Data
`
`(60) Provisional application No. 60/440,156, filed on Jan.
`(60) Provisional application No. 60/440,156, ?led on Jan.
`15, 2003.
`15, 2003.
`
`Publication Classi?cation
`Publication Classification
`
`(51)
`Int. Cl.7 ..................................................... .. G06F 9/44
`(51) Int. Cl? ..................................................... .. G06F 9/44
`(52) US. Cl.
`.......................................... .. 717/100; 717/106
`(52) Us. 01. .......................................... .. 717/100; 717/106
`(57)
`ABSTRACT
`(57)
`ABSTRACT
`.
`.
`An integrated development tool for constructing a server-
`An integrated development tool for constructing a server
`side proxy for interacting with a Wireless, mobile device can
`side proxy for interacting With a Wireless, mobile device can
`include at least one module. The module can be configured
`include at least one module. The module can be con?gured
`to generate program code to perform a speci?c function of
`to generate program code to perform a specific function of
`the server-side proxy. The integrated development tool also
`the server-side proxy. The integrated development tool also
`can include means for accessing the at least one module.
`can include means for accessing the at least one module.
`
`1.0.0
`
`135
`
`
`
`_
`webs'tesl
`
`140
`140
`
`_‘LO_Q
`9
`e0‘x
`Client
`Server
`Client
`Server /
`Interface
`Interface
`Interface
`Mobile Device
`Interface __H-|--|-P
`Mobile Device
`120
`125
`120
`125
`105 @ Adaptation Module
`105
`\ 804p
`
`Adaptation Module
`130
`130
`
`,,
`
`
`
`
`
`
`
`

`
`Patent Application Publication Apr. 7, 2005 Sheet 1 0f 3
`Patent Application Publication Apr. 7, 2005 Sheet 1 of 3
`
`US 2005/0076327 A1
`US 2005/0076327 A1
`
`140
`140
`
`
`
`
`
`
`
`J_0_Q
`J_O_Q
`115"'\v
` 115"\'
`Client
`Server
` Mobile Device
`Mobile Device
`Interface
`Interface
`105
`120
`125
`105
`@ Adaptation Module
` Adaptation Module
`130
`130
`
`FIG. 1
`FIG-1
`V
`200'\
`2oo'\,
`
`205
`220
`215
`m 210
`225
`Datagram Send/Receive
`’
`Datagram Send/Receive
`F
`230
`
`Extract text from HTML
`) f230
`Extract text from HTML
`>
`Generate HTTP Request
`}
`2%5
`Generate HTTP Request
`Convert to .png format
`- .... .
`I
`String Manipulation
`String Manipulation
`User Profile Manipulation
`User Profile M3niPUi3ii0n
`B'°W5e UDDI
`Browse UDD'
`
`TOPng()
`
`
`
`P ToPng(LPCTSTR source, LPCTSTR destination)
`V ToPng(LPCTSTR source, LPCTSTR destination)
`> void MakeTransparent(int red, int blue, int green)
`V void MakeTransparent(int red, int blue, int green)
`
`’ void ChangelmageReso|ution(int, vertical, int horizontal)
`’ void ChangelmageResolution(int, vertical, int horizontal)
`void ChangelmageSize(int width, int height)
`
`
`void ChangelmageSize(int width, int height)
`void Rotatelmage(int angle)
`
` void Rotatelmage(int angle)
`void filterlmage(int value)
`
` void filter|mage(int value)
`void convertlmage()
` void convert|mage()
`
`
`
`
`
`
`FIG. 2
`2
`
`305
`
`
`
`
`
`
`
`
`Local WSDL
`>
`Remote WSDL
`>
`Remote WSDL
`P Weather
`366
`Movies
`300
`Movies
`Stock
`Stock
`
`. .
`
`I
`
`Airline
`
`
`
`Travel
`
`News
`Yellow Pages
`Yellow Pages
`Sports
`Banking
`Banking
`Bidding
`Shopping
`Shopping
`Medical
`Medical
`
`FIG 3
`FIG. 3
`
` 305
`
`
`
`
`

`
`Patent Application Publication Apr. 7, 2005 Sheet 2 0f 3
`Patent Application Publication Apr. 7, 2005 Sheet 2 of 3
`
`US 2005/0076327 A1
`US 2005/0076327 A1
`
`All!)
`
`
`
`405_\
`
`Keyword
`
`g] WSDL Spec
`
`
`
`FIG. 4
`FIG. 4
`
`5.0.0
`
`41°’
`
`OK
`
`Cancel
`
`
`
`
`OK
`
`Filename
`
`Attribute
`
`Element
`
`505
`
`510
`
`515
`
`OK
`
`Cance|
`
`FIG. 5
`
`FIG. '6
`FIG. 6
`
`~ 5.011
`
`
`Mobile Proxy AppWizard - Step 1 of 4
`605
` I Datagram Packet support
`m Datagram Packet support
`610
` I Conversion to .png format
`m Conversion to .png format
`615 \EI String Manipulation
` I String Manipulation
`620
`\D Text extraction from HTML format
`I Text extraction from HTML format
`
`
`
`625
`
`\E] XML Parsing
`
`Back
`
`Next
`
`Finish
`
`Cancel
`
`Help
`
`
`
` I XML Parsing
`
`

`
`Patent Application Publication Apr. 7, 2005 Sheet 3 0f 3
`Patent Application Publication Apr. 7, 2005 Sheet 3 of 3
`
`US 2005/007 6327 A1
`US 2005/0076327 A1
`
`10.0
`100
`
`705
`
`710
`
`Mobile Proxy AppWizard - Step 2 of 4
`Mobile Prox ApWizard - Step 2 of 4
`
`\E] HTTP Access to a Website
`I HTTP Access to a Website
`
`-\|:] Web Services Access
`I Web Services Access
`
`Back
`
`Next
`
`Finish
`
`Cancel
`
`Help
`
`
`
`
`80
`805
`
`\II Your own Datasource
`I Your own Datasource
`(810
`Database
`”a‘a”“‘”' l::i’8‘°
`Object
`Object
`815
`815
`DSN :F
`DSN
`F
`820
`,
`82
`m User Profile Datasource
`I User Profile Datasource
`DSN "Profile" is needed in this case.
`DSN "Profile" is needed in this case.
`
`Mobile Proxy AppWizard - Step 3 of 4
`Mobile Proxy AppWizard - Step 3 of 4
`
`Back
`
`Next
`
`Finish
`
`Cancel
`
`Help
`
`
`
`Mobile Proxy AppWizard - Step 4 of 4
`Mobile Proxy AppWizard - Step 4 of 4
`
`
`[:1
`Hitachi C452H
`[:1 Hitachi C452H
`
`
`E] Palm m515
`E]
`Palm m515
`
`
` E] Nokia 7650
`[I] Nokia 7650
`
`[1 Siemens SL45i
`El Nokia Communicator 9210
`E] Siemens SL45i
`E]
`Nokia Communicator 9210
`
`[1 HP Jornada 560 Series/sh
`D HP Jornada 560 Series/sh
`
`
`
`Back
`
`Next
`
`Finish
`
`Cancel
`
`Help
`
`
`
`FIG. 7
`
`00.0
`
`FIG. 8
`
`9.0.0
`
`FIG. 9
`FIG. 9
`
`

`
`US 2005/0076327 A1
`US 2005/0076327 A1
`
`Apr. 7, 2005
`Apr. 7, 2005
`
`SERVER-SIDE WIRELESS DEVELOPMENT TOOL
`SERVER-SIDE WIRELESS DEVELOPMENT TOOL
`
`CROSS-REFERENCE TO RELATED
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`APPLICATIONS
`
`[0001] This application claims the benefit of U.S. Provi-
`[0001] This application claims the bene?t of US. Provi
`sional Application No. 60/440,156, filed in the United States
`sional Application No. 60/440,156, ?led in the United States
`Patent and Trademark Office on Jan. 15, 2003, the entirety
`Patent and Trademark Of?ce on Jan. 15, 2003, the entirety
`of which is incorporated herein by reference.
`of Which is incorporated herein by reference.
`
`BACKGROUND
`BACKGROUND
`
`[0002]
`1. Field of the Invention
`[0002] 1. Field of the Invention
`[0003] The present invention relates to the field of appli-
`[0003] The present invention relates to the ?eld of appli
`cation development for wireless mobile devices and, more
`cation development for Wireless mobile devices and, more
`particularly,
`to developing the server-side components
`particularly, to developing the server-side components
`which interact with wireless mobile devices and mobile
`Which interact With Wireless mobile devices and mobile
`clients.
`clients.
`[0004]
`2. Description of the Related Art
`[0004] 2. Description of the Related Art
`[0005] Mobile Devices have characteristics that differ
`[0005] Mobile Devices have characteristics that differ
`significantly from the desktop environment. For example,
`signi?cantly from the desktop environment. For example,
`mobile devices often are characterized by small displays,
`mobile devices often are characteriZed by small displays,
`low processor power,
`less memory, and low bandwidth
`loW processor poWer, less memory, and loW bandWidth
`communications links. Further complicating matters, char-
`communications links. Further complicating matters, char
`acteristics such as display size and bandwidth can vary not
`acteristics such as display siZe and bandWidth can vary not
`only among devices, but also among communications pro-
`only among devices, but also among communications pro
`tocols.
`tocols.
`[0006] Accordingly, mobile applications tend to be small
`[0006] Accordingly, mobile applications tend to be small
`and have a relatively small memory footprint. The mobile
`and have a relatively small memory footprint. The mobile
`applications must be able to operate in a low bandwidth
`applications must be able to operate in a loW bandWidth
`environment. Still, such applications must be able to adapt
`environment. Still, such applications must be able to adapt
`to changing user interfaces and bandwidth availability. In
`to changing user interfaces and bandWidth availability. In
`consequence, most mobile applications make use of a proxy.
`consequence, most mobile applications make use of a proxy.
`The proxy acts as an interface between the mobile applica-
`The proxy acts as an interface betWeen the mobile applica
`tion or client and one or more other servers. The proxy can
`tion or client and one or more other servers. The proxy can
`perform a variety of processing functions to aid the mobile
`perform a variety of processing functions to aid the mobile
`application.
`application.
`[0007] FIG. 1 is a schematic diagram illustrating an
`[0007] FIG. 1 is a schematic diagram illustrating an
`exemplary communications system 100 having a mobile
`exemplary communications system 100 having a mobile
`device 105, a mobile application (or client) 110 disposed
`device 105, a mobile application (or client) 110 disposed
`therein, and a proxy 115 which can communicate with a
`therein, and a proxy 115 Which can communicate With a
`Universal Description, Discovery, and Integration (UDDI)
`Universal Description, Discovery, and Integration (UDDI)
`registry 135, one or more Web sites and/or servers 140, and
`registry 135, one or more Web sites and/or servers 140, and
`one or more Web Services 145. Generally, the proxy 115 has
`one or more Web Services 145. Generally, the proxy 115 has
`two interfaces, a client interface 120 and a server interface
`tWo interfaces, a client interface 120 and a server interface
`125. The client interface 120 interacts with the mobile client
`125. The client interface 120 interacts With the mobile client
`110 and receives requests as well as sends responses. The
`110 and receives requests as Well as sends responses. The
`client interface 120 can use a limited number of protocols
`client interface 120 can use a limited number of protocols
`due to limitations of the client. The server interface 125 can
`due to limitations of the client. The server interface 125 can
`communicate with a variety of different servers to fetch data.
`communicate With a variety of different servers to fetch data.
`The server interface 125 can use a number of protocols such
`The server interface 125 can use a number of protocols such
`as Transmission Control Protocol (TCP), User Datagram
`as Transmission Control Protocol (TCP), User Datagram
`Protocol (UDP), Simple Object Access Protocol (SOAP),
`Protocol (UDP), Simple Object Access Protocol (SOAP),
`and the like. The proxy 115 can include a third component
`and the like. The proxy 115 can include a third component
`referred to as an adaptation module 130 which can transform
`referred to as an adaptation module 130 Which can transform
`data according to the needs of the mobile client 110. The
`data according to the needs of the mobile client 110. The
`adaptation module 130 helps reduce the processing burden
`adaptation module 130 helps reduce the processing burden
`not only on the mobile client 110, but also on the servers.
`not only on the mobile client 110, but also on the servers.
`Notably, the servers, for example Web sites 140, provide
`Notably, the servers, for example Web sites 140, provide
`information to both mobile clients and desktop clients.
`information to both mobile clients and desktop clients.
`[0008] At a fundamental level, proxies forward data from
`[0008] At a fundamental level, proxies forWard data from
`servers to mobile clients. More complex proxy functionality
`servers to mobile clients. More complex proxy functionality
`
`can include the adaptation of a server output stream to a
`can include the adaptation of a server output stream to a
`format and bandwidth that is suitable for use by the mobile
`format and bandWidth that is suitable for use by the mobile
`client. Proxies also can be configured to track the position of
`client. Proxies also can be con?gured to track the position of
`the mobile client.
`the mobile client.
`
`[0009] Consumer demand for wireless services and net-
`[0009] Consumer demand for Wireless services and net
`work-aware applications has fueled a trend to release more
`Work-aWare applications has fueled a trend to release more
`applications with ever decreasing design cycles and reduced
`applications With ever decreasing design cycles and reduced
`time to market. Still, the development of wireless applica-
`time to market. Still, the development of Wireless applica
`tions requires a significant amount of effort not only with
`tions requires a signi?cant amount of effort not only With
`respect to developing the mobile client, but also with regard
`respect to developing the mobile client, but also With regard
`to developing the necessary proxy counterpart to the mobile
`to developing the necessary proxy counterpart to the mobile
`application client. That
`is, often,
`the release of a new
`application client. That is, often, the release of a neW
`application or service requires the development of a new
`application or service requires the development of a neW
`proxy for that application, thereby potentially doubling the
`proxy for that application, thereby potentially doubling the
`necessary design time. The development of a proxy can
`necessary design time. The development of a proxy can
`demand the same commitment of resources as is required for
`demand the same commitment of resources as is required for
`the development of the mobile client. Moreover, the devel-
`the development of the mobile client. Moreover, the devel
`opment of a robust proxy is essential if the mobile client is
`opment of a robust proxy is essential if the mobile client is
`to provide significant services to the user.
`to provide signi?cant services to the user.
`
`[0010] Client
`side development has been addressed
`[0010] Client side development has been addressed
`through tools and platforms such as Java 2 Micro Edition
`through tools and platforms such as Java 2 Micro Edition
`(J2ME), which provides a minimal configuration of a Java
`(J2ME), Which provides a minimal con?guration of a Java
`virtual machine and application programming interfaces
`virtual machine and application programming interfaces
`(API’s) that embody essential capabilities for a mobile
`(API’s) that embody essential capabilities for a mobile
`device. Although a number of different
`tools exist
`for
`device. Although a number of different tools exist for
`client-side development, for example the J2ME Wireless
`client-side development, for example the J2ME Wireless
`Toolkit available from Sun Microsystems of Santa Clara,
`Toolkit available from Sun Microsystems of Santa Clara,
`Calif., and CODEWARRIOR from Metrowerks, of Austin,
`Calif., and CODEWARRIOR from MetroWerks, of Austin,
`Tex., a need exists for an integrated development environ-
`Tex., a need exists for an integrated development environ
`ment for the development of proxies for use with network
`ment for the development of proxies for use With netWork
`aware applications and other applications
`for mobile
`aWare applications and other applications for mobile
`devices.
`devices.
`
`SUMMARY OF THE INVENTION
`SUMMARY OF THE INVENTION
`
`[0011] The inventive arrangements disclosed herein pro-
`[0011] The inventive arrangements disclosed herein pro
`vide an interactive development environment (IDE) and
`vide an interactive development environment (IDE) and
`toolkit for the development of a server-side proxy for use
`toolkit for the development of a server-side proxy for use
`with wireless, mobile clients. Accordingly,
`the present
`With Wireless, mobile clients. Accordingly, the present
`invention provides a complete infrastructure allowing a
`invention provides a complete infrastructure alloWing a
`developer to efficiently develop a server-side application or
`developer to ef?ciently develop a server-side application or
`proxy to compliment a client side development kit.
`proxy to compliment a client side development kit.
`
`[0012] The present
`invention provides a complete and
`[0012] The present invention provides a complete and
`integrated development environment
`for
`the developer
`integrated development environment for the developer
`which can include an editor and a debugger. Additional
`Which can include an editor and a debugger. Additional
`features can be provided by incorporating aspects of the
`features can be provided by incorporating aspects of the
`present invention within an existing development environ-
`present invention Within an existing development environ
`ment as is commercially available from third party devel-
`ment as is commercially available from third party devel
`opers. For example, a toolbar can be provided within an
`opers. For example, a toolbar can be provided Within an
`existing IDE. The toolbar can provide information about the
`existing IDE. The toolbar can provide information about the
`API as well as automatically generate code in accordance
`API as Well as automatically generate code in accordance
`with developer
`specified parameters.
`In consequence,
`With developer speci?ed parameters. In consequence,
`manual coding of the proxy is minimized as several code
`manual coding of the proxy is minimiZed as several code
`generators are provided for developing a proxy shell.
`generators are provided for developing a proxy shell.
`
`[0013] One aspect of the present invention can include an
`[0013] One aspect of the present invention can include an
`integrated development tool for constructing a server-side
`integrated development tool for constructing a server-side
`proxy for interacting with a wireless, mobile device. The
`proxy for interacting With a Wireless, mobile device. The
`integrated development tool can include at least one module
`integrated development tool can include at least one module
`configured to generate program code to perform a specific
`con?gured to generate program code to perform a speci?c
`function of the server-side proxy. The integrated develop-
`function of the server-side proxy. The integrated develop
`ment
`tool further can include means for accessing the
`ment tool further can include means for accessing the
`module(s).
`module(s).
`
`

`
`US 2005/0076327 A1
`US 2005/0076327 A1
`
`Apr. 7, 2005
`Apr. 7, 2005
`
`[0014]
`In one embodiment of the present invention, the
`[0014] In one embodiment of the present invention, the
`means for accessing functions can include a wizard module
`means for accessing functions can include a WiZard module
`for receiving user specified attributes of the server-side
`for receiving user speci?ed attributes of the server-side
`proxy. The wizard module can control operation of the
`proxy. The WiZard module can control operation of the
`module(s) to automatically generate program code specify-
`module(s) to automatically generate program code specify
`ing a programmatic architecture for the server-side proxy
`ing a programmatic architecture for the server-side proxy
`according to the user specified attributes. In another arrange-
`according to the user speci?ed attributes. In another arrange
`ment,
`the means for accessing functions can include a
`ment, the means for accessing functions can include a
`toolbar having at least one icon that can be activated via user
`toolbar having at least one icon that can be activated via user
`input.
`input.
`[0015]
`In another embodiment,
`the integrated develop-
`[0015] In another embodiment, the integrated develop
`ment
`tool can include a module configured to generate
`ment tool can include a module con?gured to generate
`program code to extract
`text from a markup language
`program code to extract text from a markup language
`document. The integrated development tool also can include
`document. The integrated development tool also can include
`a module configured to generate program code to packetize
`a module con?gured to generate program code to packetiZe
`data according to a type of wireless communications link
`data according to a type of Wireless communications link
`over which the data is to be sent. Other exemplary modules
`over Which the data is to be sent. Other exemplary modules
`that can be included within the integrated development tool
`that can be included Within the integrated development tool
`can include, but are not limited to, a module configure to
`can include, but are not limited to, a module con?gure to
`generate program code to convert
`images from a first
`generate program code to convert images from a ?rst
`graphics format to a second graphics format, wherein the
`graphics format to a second graphics format, Wherein the
`second graphics format is suitable for transmission over a
`second graphics format is suitable for transmission over a
`wireless communications link to a mobile device, a module
`Wireless communications link to a mobile device, a module
`configured to generate program code to receive a request
`con?gured to generate program code to receive a request
`originating from the mobile device and generate a hypertext
`originating from the mobile device and generate a hypertext
`transfer protocol request to an appropriate target, and a
`transfer protocol request to an appropriate target, and a
`module configured to generate program code to maintain
`module con?gured to generate program code to maintain
`user profiles within a data source accessible to the server-
`user pro?les Within a data source accessible to the server
`side proxy.
`side proxy.
`[0016] The integrated development tool also can include a
`[0016] The integrated development tool also can include a
`module configured to generate program code to manipulate
`module con?gured to generate program code to manipulate
`data strings for encoding and decoding data and a module
`data strings for encoding and decoding data and a module
`configured to generate program code to measure a quality of
`con?gured to generate program code to measure a quality of
`a communications link to the wireless, mobile device. Still,
`a communications link to the Wireless, mobile device. Still,
`the integrated development tool can include a module con-
`the integrated development tool can include a module con
`figured to search a Universal Description, Discovery, and
`?gured to search a Universal Description, Discovery, and
`Integration registry.
`Integration registry.
`[0017] The
`integrated development
`tool
`further can
`[0017] The integrated development tool further can
`include one or more standardized Web Services Description
`include one or more standardiZed Web Services Description
`Language documents, wherein each Web Services Descrip-
`Language documents, Wherein each Web Services Descrip
`tion Language Document corresponds
`to a particular
`tion Language Document corresponds to a particular
`domain.
`domain.
`[0018] Another aspect of the present invention can include
`[0018] Another aspect of the present invention can include
`a method of constructing a server-side proxy for interacting
`a method of constructing a server-side proxy for interacting
`with a wireless, mobile device. The method can include
`With a Wireless, mobile device. The method can include
`receiving user input specifying attributes of the server-side
`receiving user input specifying attributes of the server-side
`proxy and automatically generating program code specify-
`proxy and automatically generating program code specify
`ing an architecture for the server-side proxy according to the
`ing an architecture for the server-side proxy according to the
`user specified attributes. The program code can be generated
`user speci?ed attributes. The program code can be generated
`by a plurality of modules, each module configured to gen-
`by a plurality of modules, each module con?gured to gen
`erate code to perform a particular function of the server-side
`erate code to perform a particular function of the server-side
`proxy.
`proxy.
`[0019]
`In one embodiment of the present invention, the
`[0019] In one embodiment of the present invention, the
`automatic generating step can include generating program
`automatic generating step can include generating program
`code to extract text from a markup language document,
`code to extract text from a markup language document,
`generating program code to packetize data according to a
`generating program code to packetiZe data according to a
`type of wireless communications link over which the data is
`type of Wireless communications link over Which the data is
`to be sent, or generating program code to convert images
`to be sent, or generating program code to convert images
`from a first graphics format to a second graphics format,
`from a ?rst graphics format to a second graphics format,
`wherein the second graphics format is suitable for transmis-
`Wherein the second graphics format is suitable for transmis
`sion over a wireless communications link to a mobile device.
`sion over a Wireless communications link to a mobile device.
`[0020] Still,
`the automatic generating step can include
`[0020] Still, the automatic generating step can include
`generating program code to receive a request originating
`generating program code to receive a request originating
`
`from the mobile device and generate a hypertext transfer
`from the mobile device and generate a hypertext transfer
`protocol request to an appropriate target, generating pro-
`protocol request to an appropriate target, generating pro
`gram code to maintain user profiles within a data source
`gram code to maintain user pro?les Within a data source
`accessible to the server-side proxy, generating program code
`accessible to the server-side proxy, generating program code
`to manipulate data strings for encoding and decoding data,
`to manipulate data strings for encoding and decoding data,
`or generating program code to measure a quality of a
`or generating program code to measure a quality of a
`communications link to the wireless, mobile. device. The
`communications link to the Wireless, mobile. device. The
`integrated development tool also can include searching a
`integrated development tool also can include searching a
`Universal Description, Discovery, and Integration registry.
`Universal Description, Discovery, and Integration registry.
`[0021] Other embodiments of the present invention can
`[0021] Other embodiments of the present invention can
`include a system for constructing a server-side proxy for
`include a system for constructing a server-side proxy for
`interacting with a wireless, mobile device having means for
`interacting With a Wireless, mobile device having means for
`performing the various functions described herein as well as
`performing the various functions described herein as Well as
`a machine readable storage configured to cause a machine to
`a machine readable storage con?gured to cause a machine to
`perform the various steps disclosed herein.
`perform the various steps disclosed herein.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`[0022] There are shown in the drawings embodiments
`[0022] There are shoWn in the draWings embodiments
`which are presently preferred, it being understood, however,
`Which are presently preferred, it being understood, hoWever,
`that the invention is not limited to the precise arrangements
`that the invention is not limited to the precise arrangements
`and instrumentalities shown.
`and instrumentalities shoWn.
`[0023] FIG. 1 is a schematic diagram illustrating an
`[0023] FIG. 1 is a schematic diagram illustrating an
`exemplary communications system having a mobile client
`exemplary communications system having a mobile client
`and a proxy.
`and a proxy.
`[0024] FIG. 2 is a schematic diagram illustrating an
`[0024] FIG. 2 is a schematic diagram illustrating an
`exemplary mobile toolbar in accordance with the inventive
`exemplary mobile toolbar in accordance With the inventive
`arrangements disclosed herein.
`arrangements disclosed herein.
`[0025] FIG. 3 is a schematic diagram illustrating exem-
`[0025] FIG. 3 is a schematic diagram illustrating exem
`plary selection lists which can be presented upon activation
`plary selection lists Which can be presented upon activation
`of a button within the mobile toolbar of FIG. 2.
`of a button Within the mobile toolbar of FIG. 2.
`[0026] FIG. 4 is a schematic diagram illustrating an
`[0026] FIG. 4 is a schematic diagram illustrating an
`exemplary graphical user interface (GUI) which can be
`exemplary graphical user interface (GUI) Which can be
`presented upon activation of a button within the mobile
`presented upon activation of a button Within the mobile
`toolbar of FIG. 2.
`toolbar of FIG. 2.
`[0027] FIG. 5 is a schematic diagram illustrating another
`[0027] FIG. 5 is a schematic diagram illustrating another
`exemplary GUI which can be presented upon activation of
`exemplary GUI Which can be presented upon activation of
`a button within the mobile toolbar of FIG. 2.
`a button Within the mobile toolbar of FIG. 2.
`
`[0028] FIG. 6 is a schematic diagram illustrating an
`[0028] FIG. 6 is a schematic diagram illustrating an
`exemplary GUI for use with the mobile proxy component of
`exemplary GUI for use With the mobile proxy component of
`the present invention.
`the present invention.
`[0029] FIG. 7 is a schematic diagram illustrating another
`[0029] FIG. 7 is a schematic diagram illustrating another
`exemplary GUI for use with the mobile proxy component of
`exemplary GUI for use With the mobile proxy component of
`the present invention.
`the present invention.
`[0030] FIG. 8 is a schematic diagram illustrating another
`[0030] FIG. 8 is a schematic diagram illustrating another
`exemplary GUI for use with the mobile proxy component of
`exemplary GUI for use With the mobile proxy component of
`the present invention.
`the present invention.
`[0031] FIG. 9 is a schematic diagram illustrating yet
`[0031] FIG. 9 is a schematic diagram illustrating yet
`another exemplary GUI for use with the mobile proxy
`another exemplary GUI for use With the mobile proxy
`component of the present invention.
`component of the present invention.
`
`DETAILED DESCRIPTION OF THE
`DETAILED DESCRIPTION OF THE
`INVENTION
`INVENTION
`
`[0032] The present
`invention provides an interactive
`[0032] The present invention provides an interactive
`development environment and accompanying tools (hereaf
`development environment and accompanying tools (hereaf-
`ter collectively the “proxy IDE”) for developing a server-
`ter collectively the “proxy IDE”) for developing a server
`side proxy which can interact with a network aware, wire-
`side proxy Which can interact With a netWork aWare, Wire
`less, mobile client application. The proxy IDE can provide
`less, mobile client application. The proxy IDE can provide
`a variety of functions and code generation tools which
`a variety of functions and code generation tools Which
`
`

`
`US 2005/0076327 A1
`US 2005/0076327 A1
`
`Apr. 7, 2005
`Apr. 7, 2005
`
`expedite the development of a proxy for a wireless appli-
`expedite the development of a proxy for a Wireless appli
`cation. For example, the proxy IDE can provide a range of
`cation. For example, the proxy IDE can provide a range of
`functions including, but not limited to, text extraction from
`functions including, but not limited to, text extraction from
`Hypertext Markup Language (HTML) and Extensible
`Hypertext Markup Language (HTML) and Extensible
`Markup Language (XML) data, datagram packetiZation,
`Markup Language (XML) data, datagram packetization,
`image format conversion, Hypertext Transfer Protocol
`image format conversion, Hypertext Transfer Protocol
`(HTTP) request support, user profile management, as well as
`(HTTP) request support, user pro?le management, as Well as
`string manipulation.
`string manipulation.
`
`[0033] The functions disclosed herein can be provided
`[0033] The functions disclosed herein can be provided
`through an application programming interface
`Within
`through an application programming interface
`Within
`the development environment, a toolbar referred to as a
`the development environment, a toolbar referred to as a
`“

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