throbber
(19) United States
`(12) Patent Application Publication (10) Pub. No.: US 2006/0143684 A1
`
`Morris
`(43) Pub. Date:
`Jun. 29, 2006
`
`US 20060143684A1
`
`(54) METHOD AND SYSTEM FOR ALLOWING A
`USER TO SPECIFY ACTIONS THAT ARE TO
`BE AUTOMATICALLY PERFORMED ON
`DATA OBJECTS UPLOADED TO A SERVER
`
`(76)
`
`Inventor: Robert P- MOI‘I‘iS, Raleigh, NC (US)
`
`Correspondence Address:
`IPAC
`
`111 Corning Road
`Suite 220
`Cary, NC 27511 (US)
`
`(21) Appl. No.:
`
`11/027,214
`
`(22)
`
`Filed:
`
`Dec. 293 2004
`
`Publication Class1fication
`
`(51)
`
`Int. C1.
`(2006.01)
`H04N 7/16
`(2006.01)
`H04N 7/1 73
`(52) us. Cl.
`......................... 725/138; 725/135; 725/105;
`72 5/ 109
`
`(57)
`
`ABSTRACT
`
`A method and system are provided for allowing a user to
`specify actions that are to be automatically performed on
`data objects uploaded to a server. Aspects of the invention
`include maintaining on the server at least one user config-
`urable action list that contains one or more action items
`
`representing actions that can be taken with respect to at least
`
`one data object uploaded to the server from a client device,
`wherein each of the action items is associated with an
`executable software object on the network that performs the
`action;
`in response to the user accessing the server and
`initiating a task on the server with respect to the at least one
`data object; displaying at
`least one of the action items
`contained in the action list associated with the task to the
`user for selection of the action items therein; receiving by
`the server an ID of each of the action items selected by the
`user; and invoking the executable software object associated
`with the received action item ID for automatically perform-
`ing the action selected by the user on the at
`least one
`uploaded data object.
`
`Remote Action Server 190
`
`
`Client Device
`
`1 52
`
`
`
`
`
`
`
`
`
`
`Application I
`
`159
`
`Application I i
`
`Handler
`194
`
`Client
`
`
`
`Communication
`
`
`Browser
`Module
`Action Router
`
`160
`Web Sewer
`158
`
`
`
`192
`
`
`
`
`
` Action Web Application 166
`
`Action Recorder
`1 78
` _"ser Account I
`
`
`
`182
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 1
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 1
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 1 of 7
`
`US 2006/0143684 A1
`
`158
`
`
`
`Remote Action Server 190
`
`Application
`Handler
`194
`
`Action Router
`Web Server
`192
`
`
`
`
`
`Client Device
`1 52
`Application I
`
`159
`
`
`Client
`
`Communication
`
`
`Browser
`Module
`160
`
`
`156
`
`164
`
`—I162
`
`168
`
`_.ll l.—
`
`Action Recorder ——=_I—| —.
`
`Action Web Application 166
`
`178 —I
`
`Action Handler
`170
`
`User Acc. DB
`172
`
`‘ C '0“
`Catalogs DB
`174
`
`Action Items
`175
`
`FIG.
`
`1
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 2
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 2
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 2 of 7
`
`US 2006/0143684 A1
`
`
`
`
`
`Maintaining on the server user configurable
`action lists containing one or more action
`items representing actions that are can be taken
`with respect to the files uploaded to the server
`
`
`
`In response to the user accessing the server and
`initiating a particular task on the server with respect
`
`
`to at least one file, displaying at least one of the
`
`
`action items contained in the action list that is
`associated with the task to the user for selection
`
`
`250
`
`252
`
`Client device transmits and server receives
`
`IDs of the action items selected by the user
`
`Invoke the action handler associated
`
`with the received action item lD
`
`254
`
`256
`
`FIG. 2
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 3
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 3
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 3 of 7
`
`US 2006/0143684 A1
`
`182
`
`
`
`ACTION LIST
`
`Print Images
`3x5 8X1 0
`
`
`
`4x6
`
`5X7
`
`
`
`
`
`
`
`Save in MyShoeBox
`Send to Mom
`
`FIG. 3
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 4
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 4
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 4 0f 7
`
`US 2006/0143684 A1
`
`Device
`
`Server
`
`Determine .
`
`
`
`Request Page
`400
`
`
`
`Display Page with
`Actions
`410
`
`Process form
`
`input including
`Action selections
`412
`
`Submit form and
`Action item IDs
`414
`
`
`
`
`requesting User
`and Task of page
`402
`
`Retrieve User’s
`Action List for
`Context
`404
`
`Add Actions to
`
`Requested Page
`406
`
`Return requested
`page
`408
`
`Item IDs and file
`names/IDs
`416
`
` Receive Action
`
`
`
`
`
`Lookup and Invoke
`Action Handlers
`418
`
`
`
`
`Display page
`422
`
`
`
`
`
`
`Complete form
`
`processing and
`return next page
`420
`
`
`
`
`
`IPR2017-02056, Petitioner Google Inc.
`
`EX. 1010, p. 5
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 5
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 5 of 7
`
`US 2006/0143684 A1
`
`300a
`
`306a
`302a/— 304a
`
`
`m Task ID
`
`Sm oorted Toes
`
`Reference to Hosted Executable
`
`308a
`
`FIG. 5A
`
`300b
`
`302b
`304b
`306b If 310
`
`
`
`
`IE Task ID
`
`Suuorted T es
`
`Action ID List
`
`312
`
`
`FIG. 5B
`
`3000
`
`304C /‘ 3060
`
`3026
`
`
`5 Task ID
`
`Su- orted Toes
`
`314
`
`
`
`URL to Remote Handler
`
`FIG. 5C
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex.1010,p.6
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 6
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 6 of 7
`
`US 2006/0143684 A1
`
`Receive name for
`Action Item
`
`
`
`(Optional)
`Receive
`
`description
`
`Receivle Context
`D (s)
`
`500
`
`502
`
`504
`
`506
`
`t
`'
`Receive ype(s)
`
`508
`
`510
`
`
`Receive & Store
`
`Executable
`
` If Hosted
`
`Action
`
`51 6
`
`
`
`Create Action
`If Remote
`Receive URL or
`
`
`
`Item record with
`Action
`WSDL Definition
`
`
`reference to
`executable
`
`
` Create Action
`
`Item record URL
`Determine if
`
`or
`Sequence 0r Bag
`W DL
`De 1n1tion
`
`Receive ID’s of
`
`Selected Action
`Items
`'
`Create Act1on
`
`
`Item record
`
`
`
`Sequengcr: or Bag
`IDs
`
`
`512
`
`
`
`Store in User's
`
`Catalog
`
`
`
`526
`
`FIGURE 6
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 7
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 7
`
`

`

`Patent Application Publication Jun. 29, 2006 Sheet 7 of 7
`
`US 2006/0143684 A1
`
`550
`
`552
`
`554
`
`(Optional) Select
`Objects to be
`
`operated on
`
`Activate Action
`Recorder for
`
`Session
`
`Name Action Item
`
`(Optional)
`Receive
`
`description
`
`(Optional)
`Determine other
`
`compatible
`Contexts and
`
`Types
`
`Create Action
`Item record
`
`Sequence of
`Action IDs
`
`Detect Context
`
`556
`
`and Types 558
`
`
`Process User Input
`
`560
`
`Deactivate
`
`
`
`Recorder for
`
`Session
`
`
`If Stop
`Recording
`
`
`
`
`
`
`
`Track & stored
`resulting Actions
`
`performed
`
`570
`
`572
`
`562
`
`FIGURE 7
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 8
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 8
`
`

`

`US 2006/0143684 A1
`
`Jun. 29, 2006
`
`METHOD AND SYSTEM FOR ALLOWING A USER
`TO SPECIFY ACTIONS THAT ARE TO BE
`AUTOMATICALLY PERFORMED ON DATA
`OBJECTS UPLOADED TO A SERVER
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`[0001] The present invention is related to co-pending US.
`patent application Ser. No. 09/626,418 entitled “Method and
`System for Allowing a User to Select Actions to be Taken by
`a Server When Uploading the Images,” filed on Jul. 26,
`2000, and incorporated herein by reference; and co-pending
`US. patent application Ser. No. entitled “Method and Sys-
`tem for Allowing a User to Create Actions to be Taken by a
`Server,” filed on Dec. 29, 2004, and incorporated herein by
`reference.
`
`FIELD OF THE INVENTION
`
`[0002] The present invention relates to automatic process-
`ing of uploaded files, and more particularly to method and
`system for allowing a user to specify actions that are to be
`automatically performed on files uploaded from a client
`device to a server.
`
`BACKGROUND OF THE INVENTION
`
`[0003] As the popularity of digital cameras grows, the
`desire of digital camera users to share their images with
`others will also continue to grow. New digital camera
`owners typically try to share their images based on the
`paradigm of film cameras, in which images are printed on
`paper and then placed into a photo album. The most straight-
`forward approach to do this with a digital camera is to
`connect the digital camera directly to a printer to create the
`prints, and then manually insert the images into a photo
`album. Users often find this process somewhat complicated
`and restrictive because standard printers require particular
`types of paper and there is the need to constantly replace the
`ink cartridges. And even after the photo album has been
`assembled, the printed images are not easily shared with
`many people.
`
`[0004] The best approaches to photo-sharing take advan-
`tage of the Internet. One such approach is for users to store
`the digital images on a PC and then send the images to others
`using email. Several Internet companies now offer an even
`more convenient approach by providing photo-sharing web-
`sites that allow users to store their images for free and to
`arrange the images into web-based photo albums. Once
`posted on a photo-sharing website, others may view the
`images over the Internet.
`
`[0005] While it is convenient for storing digital images,
`getting the images to the photo-sharing websites and then
`manipulating the images can be challenging for users. Most
`commonly, users must upload their images from the digital
`camera to a PC or by inserting the camera’s flash card into
`the PC. From the PC, the user accesses the Internet, logs into
`a photo-sharing website and uploads the images. After
`uploading the images,
`the user works on the website to
`manually arrange the images into web albums, and add any
`textual information, and to send out invitations for others to
`view the web albums.
`
`Some attempts have been made to somewhat auto-
`[0006]
`mate this process. For example, US. patent application Ser.
`
`No. US 2002/0054224 issued to Wasula discloses a system
`that enables the customization of image organization and
`transfer of digital images from the digital camera to the host
`computer. The system includes a digital camera, a host
`computer (PC), and a network service provider. The digital
`camera includes a database having a plurality of customized
`profile tables. Each profile may indicate where the images
`are to be stored. Prior to capturing an image, a user selects
`one of the customized profiles in the database, and each
`image subsequently captured by the digital camera is then
`associated with the selected profile. In order to transfer
`images from the digital camera to the PC, a digital image
`transfer application program supplied with the digital cam-
`era must be installed on the PC. When the digital camera is
`then connected to the PC and the images are transferred to
`the PC,
`the profile table selected for the images is also
`transferred. The transfer application, which is used to com-
`municate and transfer the images, also performs the func-
`tions specified in the profile on the images, such as trans-
`ferring the images to the network server.
`
`[0007] Although the PC to camera approaches for storing
`images from a digital camera onto a web photo-sharing
`website works reasonably well, several problems exist. One
`problem is that this approach requires the use of a PC or
`notebook computer. While many digital camera users today
`have PC’s, there are many other consumers who would
`purchase a digital camera, but are reluctant to do so because
`they do not yet own a PC. In addition, PC-based systems,
`such as described in Wasula, have other disadvantages
`relating to how the user customizes what is to be done with
`the images, including:
`
`[0008] Being restricted to batch processing and thus are
`difficult
`to integrate with photo-sharing/organizing
`software.
`
`[0009] Functions in the profiles are static and do not
`provide a user with the ability to change the action or
`to select a different action.
`
`[0010] Different profiles for each external host makes
`action selection confusing for the user.
`[0011] The process of providing action selections to the
`user of the camera is done on the PC, rather than the
`camera.
`
`[0012] Recent camera communications advances have
`improved on the PC-based approach by providing digital
`cameras with the ability to communicate directly to a server.
`For example, US. Pat. No. 6,167,469 issued to Safai pro-
`vides client-server architecture where the digital camera
`executes client software, called a transport application, that
`enables a user to send pictures from the camera to external
`addresses
`(email). When the transport application is
`launched, a top-level view of the functions available in the
`transport application is displayed to the user. The functions
`include selecting address, choosing a photo, recording a
`voice message, and sending a photo. Safai requires execut-
`able client code on the camera that is specific to each action
`to fulfill each function. For example, when a mail function
`is selected, code on the camera sends selected photos and
`email addresses of the recipients to the server, and the server
`then forwards an email to the recipients.
`
`[0013] Although the client-server architecture of Safai
`may provide benefits over PC-based systems, such client-
`server approaches also have drawbacks including:
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 9
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 9
`
`

`

`US 2006/0143684 A1
`
`Jun. 29, 2006
`
`[0014] Requires function specific software to execute
`on both the client and the server.
`
`performed on files uploaded from a client device to a server
`in accordance with a preferred embodiment.
`
`[0015] The functions provided by the client application
`are hard-coded in the relationship between the client-
`side code and the server-side code, and are therefore
`fixed and implicit.
`
`[0016] Difficult to maintain and support due to issues of
`versioning, distribution, device compatibility, etc.
`
`[0017] Requires significant client device resources for
`storage and execution of the client software, even when
`not in use.
`
`[0018] The client software is not likely to be down-
`loaded on demand due to the size of client executable.
`
`is needed is an improved
`[0019] Accordingly, what
`method and system for allowing a user to specify actions that
`are to be performed on data objects, such as files uploaded
`to a server. The present invention addresses such a need.
`
`BRIEF SUMMARY OF THE INVENTION
`
`[0020] The present invention provides a method and sys-
`tem for allowing a user to specify actions that are to be
`automatically performed on data objects uploaded to a
`server. Aspects of the invention include maintaining on the
`server at least one user configurable action list that contains
`one or more action items representing actions that can be
`taken with respect to at least one data object uploaded to the
`server from a client device, wherein each of the action items
`is associated with an executable software object on the
`network that performs the action; in response to the user
`accessing the server and initiating a task on the server with
`respect to at least one data object, displaying at least one of
`the action items contained in the action list associated with
`the task to the user for selection of the action items therein;
`receiving by the server an ID of each of the action items
`selected by the user; and invoking the executable software
`object associated with the received action item ID for
`automatically performing the action selected by the user on
`the at least one data object.
`
`[0021] According to the method and system disclosed
`herein, the present invention reduces the amount of naviga-
`tion and key presses required on the client device to con-
`figure and invokes the actions, and minimizes the use of
`client resources for storage and processing the actions
`because all processing takes place on the server (or a remote
`server). In addition, the present invention allows the set of
`action items to be customized by the user based on the task
`being performed. Thus,
`the user may create customized
`action lists not only for the task uploading files, but also for
`tasks such as viewing, editing, organizing, and sharing files
`after the files have been uploaded to the server by the user
`invoking the task or another user.
`
`BRIEF DESCRIPTION OF SEVERAL VIEWS OF
`THE DRAWINGS
`
`[0022] FIG. 1 is a diagram illustrating a system for
`allowing a user to specify actions that are to be automatically
`performed on files uploaded from a client device to the
`server.
`
`[0023] FIG. 2 is a flow diagram illustrating the process for
`allowing a user to specify actions that are to be automatically
`
`[0024] FIG. 3 is a diagram illustrating an example action
`list 182 displayed on the screen of a camera phone.
`
`[0025] FIG. 4 is a flow diagram illustrating the processing
`of action list by the client and server in response to a user
`initiated task on the client device.
`
`[0026] FIGS. 5A-5C are diagrams illustrating formats for
`a predefined hosted action item, a recorded action item, and
`remote action item, respectively.
`
`[0027] FIG. 6 is a flow diagram illustrating the process for
`allowing a user to create one or more action items in a
`preferred embodiment of the present invention.
`
`[0028] FIG. 7 is a flow diagram of the process for allow-
`ing the user to create a recorded action in further detail in
`accordance with a preferred embodiment of the present
`invention.
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`invention relates to a method and
`[0029] The present
`system for allowing a user to specify actions to be performed
`on uploaded images by server. The following description is
`presented to enable one of ordinary skill in the art to make
`and use the invention and is provided in the context of a
`patent application and its requirements. Various modifica-
`tions to the preferred embodiments and the generic prin-
`ciples and features described herein will be readily apparent
`to those skilled in the art. Thus, the present invention is not
`intended to be limited to the embodiments shown, but is to
`be accorded the widest scope consistent with the principles
`and features described herein.
`
`[0030] A first aspect of the present invention provides a
`server-side architecture for allowing a user to specify actions
`that are to be automatically performed by a server on data
`objects, such as images, that have been uploaded from the
`user’ s client device. A second aspect of the present invention
`provides a method and system for allowing the user to create
`individual action items that may be automatically performed
`by the server on data objects accessible by the server,
`regardless of the objects’ origins.
`
`[0031] FIG. 1 is a diagram illustrating a system for
`allowing a user to specify actions that are to be automatically
`performed on data objects uploaded from a client device to
`the server. In accordance with a preferred embodiment, the
`system 150 is implemented as a server-side architecture that
`includes a client device 152 and server 154 that communi-
`cates over a network 156, such as the Internet. The server
`154 is preferably maintained by a service provider, such as
`an online photosharing site. Although the client device 152
`may be implemented as any computing device capable of a
`network connection (wired or wireless), such as a PC, in a
`preferred embodiment, the client device 152 is a wireless
`image capture device, such as a camera phone and the like.
`The client device 152 is equipped with a standard web
`browser 158 and a client communication module 160 that
`enables the client device 152 to communicate with the server
`
`154. Although the present invention will be described in
`terms of a preferred embodiment where the client device 152
`stores files that are uploaded to the server 154, the client
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex. 1010, p. 10
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 10
`
`

`

`US 2006/0143684 A1
`
`Jun. 29, 2006
`
`device 152 may store and upload to the server 154 any type
`of data or data objects, including files and database objects,
`for instance. The types of files that may be stored on the
`client device 152 are preferably image files, but may also
`include audio, text, and Video file types.
`
`[0032] The server 154 includes a standard web server 162
`for hosting and providing access to content and for respond-
`ing to requests received from web browsers 158. According
`to the preferred embodiment, the server 154 further includes
`means for maintaining and processing user configurable
`action lists (collectively 164), which includes an action Web
`application 166 for controlling processing of action items,
`one or more executable software objects called action han-
`dlers 170, an action router 168 for invoking the action
`handlers 170, and several databases. The databases may
`include a user account database 172 for storing user account
`information, a user file database 173 for storing files
`uploaded by the user, an action catalog database 174 for
`maintaining action item lists that are available for use and
`action item lists that are activated, and an action item
`database 176 for storing individual action items that are
`made available to users for inclusion in action lists created
`
`by users. The web application includes an action recorder
`module 178 for recording interactions with the user to create
`a custom action item, user accounts 180 that store the action
`preferences and settings of each user, the action lists 182 of
`each user, and catalogs 184 of the action lists of each user,
`as explained further below. In a preferred embodiment, the
`server 154 is maintained by an online photo sharing/hosting
`service that offers configurable actions to registered users as
`a service.
`
`[0033] FIG. 2 is a flow diagram illustrating the process for
`allowing a user to specify actions that are to be automatically
`performed on files uploaded from a client device to a server
`in accordance with a preferred embodiment. The process
`begins in step 250 by maintaining on the server 154 user
`configurable action lists 182 containing one or more action
`items representing actions that can be taken with respect to
`the files uploaded to the server 154. In a preferred embodi-
`ment, the action lists created by each user are task specific
`and are stored in the action catalog database 174. Each of the
`action items comprising the action lists are stored in the
`action item database 176 and are associated with an action
`handler 170. The action handlers 170 are executable soft-
`
`ware objects located on the network in the server 154 or a
`remote sever 190 that performs the specified action on the
`file. In an alternative embodiment a single action handler
`170 may be implemented to perform several actions on files,
`such that different action items map to that one action
`handler 170.
`
`[0034] Examples of actions and corresponding action
`items include sending the files to a specified recipient(s) as
`an email or to a specified location for storage, printing the
`files, and processing the files in some manner, for instance.
`[0035] FIG. 3 is a diagram illustrating an example action
`list 182 displayed on the screen of a camera phone. The
`action list 182 is specific to the task of uploading images and
`is
`shown displaying three major options; printing the
`uploaded images, saving the uploaded images in the user’s
`shoebox, and sending the images to Mom. Under the print-
`ing option, the user may select from various size prints.
`[0036] According to a further aspect of the preferred
`embodiment, each of the action lists 182 may be associated
`
`with a different task the user can perform on the files that are
`uploaded to the server 154. The most common tasks per-
`formed by the user may be to UPLOAD files, such as
`images, from the client device 152 to the server 154, and to
`VIEW the files once on the server. In a preferred embodi-
`ment, the files are uploaded from the client device 152 to the
`server 154 via the web browser 158. In an alternative
`
`embodiment, the files are uploaded via other applications
`159 (e.g., an image editing application).
`
`the user
`[0037] Besides UPLOADING and VIEWING,
`may perform other tasks on the files after they are uploaded
`to the server 154, such as EDITING, ORGANIZING, and
`SHARING files. In a further aspect of the present invention,
`the user may specify action lists 182 to be made available in
`each of these task contexts. For example, a user may indicate
`the actions “Rotate”, “Copy to Family Album”, “Copy to
`Friends Album”, “Send Prints to Mom”, etc be associated
`with the user’s UPLOAD task. When the user is uploading
`images either via a browser 158 or by an application 159,
`these actions are available to the user. Thus, the user may
`associate for each user task one or more action lists 182, and
`of the each action lists 182 may include one or more action
`items. The process of creating/configuring action lists is
`explained below.
`
`In step 252, in response to the user accessing the
`[0038]
`server 154, preferably via a web browser, and initiating a
`particular task on the server 154 with respect to at least one
`file that has been or is currently being uploaded to the server
`154, at least one of the action items contained in the action
`list associated with the task are displayed to the user for
`selection. The files that were previously uploaded may be
`the files provided by the user initiating the task, or files
`provided by a user other than the user initiating the task.
`
`In a preferred embodiment, the server 154 only
`[0039]
`downloads an identification (ID) of each of the action items
`in an action list to the client device 152 and optionally a text
`description or name of the action. The action items can be
`presented as a pop-up/down menu items to be selected on a
`page of a browser, and so forth. The action lists 182 may also
`be nested. For example, if the user selects the print option
`from one action list 182, another action list 182 may be
`displayed that allows the user to select from various size
`prints, with each action listed as a separate item, e.g., “Send
`4x8 prints”, “Send 5x7”.
`
`In step 254, after the user selects the action items,
`[0040]
`the server 154 receives the ID of the action items selected by
`the user, which were transmitted by the client device 152.
`For example, if the task being performed is a file upload,
`then both the selected files and the selected action IDs are
`transmitted from the client device 152 to the server 154. If
`the action is to EDIT files, then the names/IDs of the files to
`be edited along with the IDs of the selected action would be
`uploaded to the server 154.
`
`[0041] Each action ID is preferably transmitted as a single
`series of characters or numbers, such as name, number, or
`command, for instance,
`that
`is sufficient
`to identify the
`corresponding action handler 170 to the action router 168. In
`one embodiment, the ID of the action and the name of the
`action may be one in the same.
`
`[0042] According to one aspect of the present invention,
`because of the server-side architecture, neither the browser
`
`IPR2017-02056, Petitioner Google Inc.
`
`Ex.1010, p.11
`
`IPR2017-02056, Petitioner Google Inc.
`Ex. 1010, p. 11
`
`

`

`US 2006/0143684 A1
`
`Jun. 29, 2006
`
`184 or other applications 159 in the client device 152
`perform any preprocessing of the files in order to transmit
`the action item ID’s to the server 154. In addition, because
`only the IDs of the action items are required for transmis-
`sion, transmission bandwidth may be reduced.
`
`In step 418, the action router 168 looks up and invokes the
`action handlers 170 corresponding to the action IDs, which
`then perform the request actions on the identified files. In
`step 420, form processing is completed and the next page is
`returned to client device 152 for display in step 422.
`
`In step 256, the web server 162 receives the trans-
`[0043]
`mission from the client device 152 and passes it to the action
`router 168, which then uses the received action item ID to
`invoke the action handler 170 associated with the action
`
`item ID and the selected action is automatically performed
`on the uploaded files.
`
`[0044] An action item can be associated with a task such
`that the action item is executed either just before or after the
`completion of the task. Or an action item can be processed
`when it
`is selected independent of the task the user is
`engaged in. For example, Upload actions typically occur
`immediately after the image upload, although album cre-
`ation may be an exception. Tasks available while viewing
`are more typically immediate, such as “Send to Mom”. Note
`that all actions are associated with one or more types of files
`that they take as input. Actions are only made available to
`the user if the user is working with a file of a compatible
`type.
`
`[0045] FIG. 4 is a flow diagram illustrating the processing
`of action list 182 by the client device 152 and the server 154
`in response to a user initiated task on the client device 152.
`This process is independent of the type of data object the
`action is being performed on, e.g., images or text. In the
`preferred embodiment, where the user interacts with the
`service from the client device 152 via the browser 158, the
`process begins in step 400 when the user navigates to a
`particular page hosted by the server 154 and the browser 158
`submits a page request. In step 402, the request is received
`by the web server 162 and passed to the action Web
`application 166, which then determines the requesting user
`and the task being performed of the requested page. In step
`404, the action Web application 166 retrieves the user’s
`action list 182 associated with the task being performed. In
`step 406, the action Web application 166 inserts the IDs/
`names of the action items from the action list 182 to the
`
`requested page. In a preferred embodiment, this is accom-
`plished by inserting the IDs/names as links or form controls
`such as buttons, check boxes, etc., for allowing the user to
`select the actions desired. In step 408, the requested page
`with the action items is downloaded to client device 152. In
`
`the alternative embodiment where the user is accessing the
`server 154 through an application 159,
`the action item
`IDs/names would be returned to the requesting application
`159.
`
`[0046] After the requested page is received, in step 410,
`the browser 158 displays the page with the listed action
`items to the user. In step 412, the browser 158 processes the
`form inputs, including action item selections. In step 414,
`the form along with the IDs of the selected action items are
`submitted to the server 154. In addition, the names/ID of the
`files on which the action is to performed that are already on
`the server or are currently being uploaded are also submit-
`ted.
`
`the action Web application 166
`In step 416,
`[0047]
`receives the action IDs and file name/ID in the response sent
`from the client device 152 and passes the action IDs and data
`object identifiers (e.g., file names) to the action router 160.
`
`[0048] Action List and Action Item Creation
`
`[0049] Action lists are created by the user accessing a web
`page hosted on the server 154 that provides an option to
`“create an action list.” When this option is chosen, a web
`page of action items retrieved from catalogs 184 associated
`with the user’s account and generic action items from the
`action item database 176 may be displayed for user selec-
`tion. The user may also specify which task the action list is
`to be associated with. Action lists 182 created by a particular
`user may be stored in the user’s catalog 184 under the user’s
`account 180.
`
`In a preferred embodiment, the service provider
`[0050]
`provides a set of predefined hosted action items that are
`displayed from a menu, directory, etc.
`to the user when
`creating an action list. However, in a further aspect of the
`present invention, not only does the server 154 allow users
`to configure their own action lists 182, but also allows the
`users to create action items. Thus, the action items displayed
`from a menu, directory, etc. to the user when creating an
`action list may include predefined hosted action items that
`are provided by the service provider, and user created action
`items that are created by the user. In a preferred embodi-
`ment, the following type of action items may be created/
`provided: hosted action items (which include predefined and
`user-defined), recorded actions, and remote actions.
`[0051] FIG. 5A illustrates the format of a predefined or
`user defined hosted action item 300a. Predefined action
`
`items 300a are provided by the service provider, rather than
`created by the user. The predefined hosted action item 300a
`includes an ID/name field 302a for storing the action item
`ID, a task ID 304a or IDs for storing the ID of the task(s) the
`action item is associated with, a supported types field 306c
`for storing the file type(s) the action supports, and an action
`handler field 308 for storing a reference to the corresponding
`action handler 170. To allow users to create an action list, the
`service provides a set of web pages that allow users to find
`and navigate through the set of actions items 300a-c pro-
`vided by the service or other users. On

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