# Patent

## Title
Association of a portable scanner with input/output and storage devices

## Abstract

A device identifier is scanned with a portable scanner and communicated to a service provider. The service provider associates the device with the portable scanner. Information is scanned from a printed source and communicated to the service provider and subsequent information is received in response at a device identified by the device identifier. In some embodiments, a communication session identifier is scanned with a portable scanner and communicated to the service provider rather than (or in cooperation with) the device identifier.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a Continuation-In-Part of the following, each of which is hereby incorporated by reference in its entirety: U.S. patent application Ser. No. 11/004,637 filed on Dec. 3, 2004, U.S. patent application Ser. No. 11/097,961, filed Apr. 1, 2005, entitled METHODS AND SYSTEMS FOR INITIATING APPLICATION PROCESSES BY DATA CAPTURE FROM RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/097,093, filed Apr. 1, 2005, entitled DETERMINING ACTIONS INVOLVING CAPTURED INFORMATION AND ELECTRONIC CONTENT ASSOCIATED WITH RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/098,038, filed Apr. 1, 2005, entitled CONTENT ACCESS WITH HANDHELD DOCUMENT DATA CAPTURE DEVICES, U.S. patent application Ser. No. 11/098,014, filed Apr. 1, 2005, entitled SEARCH ENGINES AND SYSTEMS WITH HANDHELD DOCUMENT DATA CAPTURE DEVICES, U.S. patent application Ser. No. 11/097,103, filed Apr. 1, 2005, entitled TRIGGERING ACTIONS IN RESPONSE TO OPTICALLY OR ACOUSTICALLY CAPTURING KEYWORDS FROM A RENDERED DOCUMENT, U.S. patent application Ser. No. 11/098,043, filed Apr. 1, 2005, entitled SEARCHING AND ACCESSING DOCUMENTS ON PRIVATE NETWORKS FOR USE WITH CAPTURES FROM RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/097,981, filed Apr. 1, 2005, entitled INFORMATION GATHERING SYSTEM AND METHOD, U.S. patent application Ser. No. 11/097,089, filed Apr. 1, 2005, entitled DOCUMENT ENHANCEMENT SYSTEM AND METHOD, U.S. patent application Ser. No. 11/097,835, filed Apr. 1, 2005, entitled PUBLISHING TECHNIQUES FOR ADDING VALUE TO A RENDERED DOCUMENT, U.S. patent application Ser. No. 11/098,016, filed Apr. 1, 2005, entitled ARCHIVE OF TEXT CAPTURES FROM RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/097,828, filed Apr. 1, 2005, entitled ADDING INFORMATION OR FUNCTIONALITY TO A RENDERED DOCUMENT VIA ASSOCIATION WITH AN ELECTRONIC COUNTERPART, U.S. patent application Ser. No. 11/097,833, filed Apr. 1, 2005, entitled AGGREGATE ANALYSIS OF TEXT CAPTURES PERFORMED BY MULTIPLE USERS FROM RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/097,836, filed Apr. 1, 2005, entitled ESTABLISHING AN INTERACTIVE ENVIRONMENT FOR RENDERED DOCUMENTS, U.S. patent application Ser. No. 11/098,042, filed Apr. 1, 2005, entitled DATA CAPTURE FROM RENDERED DOCUMENTS USING HANDHELD DEVICE, U.S. patent application Ser. No. 11/096,704, filed Apr. 1, 2005, entitled CAPTURING TEXT FROM RENDERED DOCUMENTS USING SUPPLEMENTAL INFORMATION, U.S. patent application Ser. No. 11/110,353, filed Apr. 19, 2005, entitled PROCESSING TECHNIQUES FOR VISUAL CAPTURE DATA FROM A RENDERED DOCUMENT, U.S. patent application Ser. No. 11/131,945, filed May 17, 2005, entitled PROCESSING TECHNIQUES FOR TEXT CAPTURE FROM A RENDERED DOCUMENT, U.S. patent application Ser. No. 11/185,908, filed Jul. 19, 2005, entitled AUTOMATIC MODIFICATION OF WEB PAGES, U.S. patent application Ser. No. 11/208,408, filed Aug. 18, 2005, entitled SCANNER HAVING CONNECTED AND UNCONNECTED OPERATIONAL BEHAVIORS, U.S. patent application Ser. No. 11/208,457, filed Aug. 18, 2005, entitled LOCATING ELECTRONIC INSTANCES OF DOCUMENTS BASED ON RENDERED INSTANCES, DOCUMENT FRAGMENT DIGEST GENERATION, AND DIGEST BASED DOCUMENT FRAGMENT DETERMINATION, U.S. patent application Ser. No. 11/208,458, filed Aug. 18, 2005, entitled METHODS, SYSTEMS AND COMPUTER PROGRAM PRODUCTS FOR DATA GATHERING IN A DIGITAL AND HARD COPY DOCUMENT ENVIRONMENT, U.S. patent application Ser. No. 11/208,461, filed Aug. 18, 2005, entitled APPLYING SCANNED INFORMATION TO IDENTIFY CONTENT, U.S. patent application Ser. No. 11/209,333, filed Aug. 23, 2005, entitled A PORTABLE SCANNING DEVICE, U.S. patent application Ser. No. 11/210,260, filed Aug. 23, 2005, entitled A METHOD AND SYSTEM FOR CHARACTER RECOGNITION, U.S. patent application Ser. No. 11/236,440, filed Sep. 27, 2005, entitled SECURE DATA GATHERING FROM RENDERED DOCUMENTS, U.S. patent application Ser. No, 11/236,330, filed Sep. 27, 2005, entitled HANDHELD DEVICE FOR CAPTURING TEXT FROM BOTH A DOCUMENT PRINTED ON PAPER AND A DOCUMENT DISPLAYED ON A DYNAMIC DISPLAY DEVICE, International Patent Application No. PCT/US05/11533, filed Apr. 1, 2005, entitled A SYSTEM AND METHOD FOR CHARACTER RECOGNITION, International Patent Application No. PCT/US05/13586, filed Apr. 6, 2005, entitled SCANNING APPARATUS AND RELATED TECHNIQUES, International Patent Application No. PCT/US05/12510, filed Apr. 12, 2005, entitled ADDING VALUE TO A RENDERED DOCUMENT.
This application claims priority to, and incorporates by reference in its entirety, the following U.S. Provisional Patent Application: Application No. 60/657,309 filed on Feb. 28, 2005.
This application incorporates by reference in their entirety, the following U.S. Provisional Patent Applications, Application No. 60/604,103 filed on Aug. 23, 2004, Application No. 60/604,098 filed on Aug. 23, 2004, Application No. 60/604,100 filed on Aug. 23, 2004, Application No. 60/604,102 filed on Aug. 23, 2004, Application No. 60/605,229 filed on Aug. 27, 2004, Application No. 60/605,105 filed on Aug. 27, 2004; Application No. 60/563,520 filed on Apr. 19, 2004, Application No. 60/563,485 filed on Apr. 19, 2004, Application No. 60/564,688 filed on Apr. 23, 2004, Application No. 60/564,846 filed on Apr. 23, 2004, Application No. 60/566,667 filed on Apr. 30, 2004, Application No. 60/571,381 filed on May 14, 2004, Application No. 60/571,560 filed on May 14, 2004, Application No. 60/571,715 filed on May 17, 2004, Application No. 60/589,203 filed on Jul. 19, 2004, Application No. 60/589,201 filed on Jul. 19, 2004, Application No. 60/589,202 filed on Jul. 19, 2004, Application No. 60/598,821 filed on Aug. 2, 2004, Application No. 60/602,956 filed on Aug. 18, 2004, Application No. 60/602,925 filed on Aug. 18, 2004, Application No. 60/602,947 filed on Aug. 18, 2004, Application No. 60/602,897 filed on Aug. 18, 2004, Application No. 60/602,896 filed on Aug. 18, 2004, Application No. 60/602,930 filed on Aug. 18, 2004, Application No. 60/602,898 filed on Aug. 18, 2004, Application No. 60/603,466 filed on Aug. 19, 2004, Application No. 60/603,082 filed on Aug. 19, 2004, Application No. 60/603,081 filed on Aug. 19, 2004, Application No. 60/603,498 filed on Aug. 20, 2004, Application No. 60/603,358 filed on Aug. 20, 2004, Application No. 60/613,243 filed on Sep. 27, 2004, Application No. 60/613,628 filed on Sep. 27, 2004, Application No. 60/613,632 filed on Sep. 27, 2004, Application No. 60/613,589 filed on Sep. 27, 2004, Application No. 60/613,242 filed on Sep. 27, 2004, Application No. 60/613,602 filed on Sep. 27, 2004, Application No. 60/613,340 filed on Sep. 27, 2004, Application No. 60/613,634 filed on Sep. 27, 2004, Application No. 60/613,461 filed on Sep. 27, 2004, Application No. 60/613,455 filed on Sep. 27, 2004, Application No. 60/613,460 filed on Sep. 27, 2004, Application No. 60/613,400 filed on Sep. 27, 2004, Application No. 60/613,456 filed on Sep. 27, 2004, Application No. 60/613,341 filed on Sep. 27, 2004, Application No. 60/613,361 filed on Sep. 27, 2004, Application No. 60/613,454 filed on Sep. 27, 2004, Application No. 60/613,339 filed on Sep. 27, 2004, Application No. 60/613,633 filed on Sep. 27, 2004, Application No. 60/615,378 filed on Oct. 1, 2004, Application No. 60/615,112 filed on Oct. 1, 2004, Application No. 60/615,538 filed on Oct. 1, 2004, Application No. 60/617,122 filed on Oct. 7, 2004, Application No. 60/622,906 filed on Oct. 28, 2004, Application No. 60/633,452 filed on Dec. 6, 2004, Application No. 60/633,678 filed on Dec. 6, 2004, Application No. 60/633,486 filed on Dec. 6, 2004, Application No. 60/633,453 filed on Dec. 6, 2004, Application No. 60/634,627 filed on Dec. 9, 2004, Application No. 60/634,739 filed on Dec. 9, 2004, Application No. 60/647,684 filed on Jan. 26, 2005, Application No. 60/648,746 filed on Jan. 31, 2005, Application No. 60/653,372 filed on Feb. 15, 2005, Application No. 60/653,663 filed on Feb. 16, 2005, Application No. 60/653,669 filed on Feb. 16, 2005, Application No. 60/653,899 filed on Feb. 16, 2005, Application No. 60/653,679 filed on Feb. 16, 2005, Application No. 60/653,847 filed on Feb. 16, 2005, Application No. 60/654,379 filed on Feb. 17, 2005, Application No. 60/654,368 filed on Feb. 18, 2005, Application No. 60/654,326 filed on Feb. 18, 2005, Application No. 60/654,196 filed on Feb. 18, 2005, Application No. 60/655,279 filed on Feb. 22, 2005, Application No. 60/655,280 filed on Feb. 22, 2005, Application No. 60/655,987 filed on Feb. 22, 2005, Application No. 60/655,697 filed on Feb. 22, 2005, Application No. 60/655,281 filed on Feb. 22, 2005.


TECHNICAL FIELD
The present disclosure relates to scanners, and more particularly to content retrieval that results from scanning.
BACKGROUND
A proliferation of portable scanning devices enables many new applications involving the interaction of the printed and digital world. However, the portability of such devices necessarily involves compromises on the capabilities inherent therein.
SUMMARY
The following summary is intended to highlight and introduce some aspects of the disclosed embodiments, but not to limit the scope of the invention. Thereafter, a detailed description of illustrated embodiments is presented, which will permit one skilled in the relevant art to make and use aspects of the invention. One skilled in the relevant art may obtain a full appreciation of aspects of the invention from the subsequent detailed description, read together with the figures, and from the claims (which follow the detailed description).
In some embodiments, a device identifier is scanned from a device and the device is identified as an associated device of the scanner. A service provider receives a request including scanned information, to associate the portable scanner with the device and identifies the device as an associated device of the portable scanner.
In some embodiments, a service provider receives a device identifier scanned using a portable scanner, and receives additional information scanned using the portable scanner. The service provider identifies a network address of a device identified by the device identifier, and sends content to the network address in response to receiving the additional information scanned using the portable scanner.
In some embodiments, the system associates nearby devices with the user's scanner such that the nearby devices may be used for user input/output (I/O) in response to scans of a printed document. The nearby I/O devices thus become part of the user interface (UI) for the portable scanner. An embodiment of the disclosed innovations may serve as an adaptive distributed user interface for a portable scanning device. Nearby displays, computers, cellphones, printers, public terminals, audio devices (speakers, microphones), etc, may be associated with the user's scanner to provide a flexible user interface that utilizes the I/O devices in its vicinity. Some embodiments of the disclosed innovations may apply nearby I/O devices to enable the delivery of many types of multimedia content (music, video, etc.) that would not normally be suitable for rendering by a small portable device.
In some embodiments, a web browser (or other session-oriented application capable of exchanging information via a network with a server application) is associated with a session ID code displayed on the screen of the device session-oriented application providing the application. The session-oriented application communicates a request for a session ID to the server. The session ID request is correlated with the network address of the device providing the application. The server communicates a unique session ID back to the device providing the application, and records the network address to which the session ID is sent (and with which, therefore, it is associated). The session ID code is scanned from the display of the device using a portable scanner and communicated by the scanner (via its currently active communication channel) to the server, requesting the server to communicate content related to subsequent scans of information to the network address associated with the session ID. Subsequent actions of the portable scanner result in the server retrieving the network address of the session-oriented application previously associated with the session ID and communicating content related to these subsequent actions to the associated network address, where the content is displayed, played, or otherwise rendered (e.g., on a display of the device providing the application).
In some embodiments, information is received about a physical location of a portable scanner. A device near the portable scanner is identified, and the device is identified as an output device for information resulting from actions of the portable scanner. For example, a device is identified from a database of devices previously registered with the server and known to be associated with the owner of the scanner.
In some embodiments, a nearby display is associated with a portable scanner for purposes of delivering information to the user of the portable scanner. To create the association, the user scans a code on the display with the portable scanner. The code may be shown on the display screen or a physical tag, such as a sticker with a barcode. This code and a user identifier are sent to a service provider where the association is recorded in address translation tables or databases. Subsequent information intended for the user is sent to the display until the association is terminated.



BRIEF DESCRIPTION OF THE DRAWINGS
The headings provided herein are for convenience only and do not necessarily affect the scope or meaning of the claimed invention.
In the drawings, the same reference numbers and acronyms identify elements or acts with the same or similar functionality for ease of understanding and convenience. To easily identify the discussion of any particular element or act, the most significant digit or digits in a reference number refer to the figure number in which that element is first introduced.
FIG. 1 is a block diagram of an embodiment of a system to associate a scanning device with one or more other devices.
FIG. 2 is a block diagram of an embodiment of a system to associate a browsing session with a scanning device.
FIG. 3 is an action flow diagram of an embodiment of a process of providing content to a scanner-associated device.



DETAILED DESCRIPTION
The invention will now be described with respect to various embodiments. The following description provides specific details for a thorough understanding of, and enabling description for, these embodiments of the invention. However, one skilled in the art will understand that the invention may be practiced without these details. In other instances, well known structures and functions have not been shown or described in detail to avoid unnecessarily obscuring the description of the embodiments of the invention. References to “one embodiment” or “an embodiment” do not necessarily refer to the same embodiment, although they may.
FIG. 1 is a block diagram of an embodiment of a system to associate a scanning device with one or more other devices.
A mobile device 118 may incorporate or interact with a portable scanner function 110. The portable scanner 110, which is a scanner designed for convenient transport by a person, may be a pen-style device, a mouse, a remote control, or a portable phone, to name just a few of the possibilities. The portable scanner 110 may comprise short-range communication capability (e.g., short range RF such as BluetoothTM, short range wire-line such as USB, etc.) which it may use to communicate with the mobile device 118. The scanner includes a user ID code 122 that uniquely identifies the scanner among other such scanners known to the system.
Examples of mobile devices 118 include laptop, notebook, or sub-notebook computers; a hand-held computer such as a personal digital assistant (PDA); or a cellular or other wireless telephone.
Information captured by the portable scanner 110 in one or more scans, possibly along with other information, is communicated to the network 102, from which it is communicated to the content location and retrieval service 106. In some embodiments, this information may initiate a content request/location/retrieval action. The information from at least one of the scans may come from a printed source, for example, a newspaper, magazine, flyer, book, manual, brochure, label, or advertisement. The information from one or more of the scans may also come from electronically or digitally displayed information, for example, text, barcodes, icons, glyphs, or other information from an electronic display.
The mobile device 118 provides longer-range communication capability to the network 102. Examples of such communication comprise the standard public switched telephone network (using a dial-up modem, for example), digital subscriber line, asynchronous digital subscriber line, cable modem, Ethernet, wide-area LAN technology, wireless LAN technology such as IEEE 802.11, and wireless cell phone technology.
The network 102 comprises communication switching, routing, and data storage capabilities. The network 102, inter alia, routes and propagates information between components of the system. The network 102 may comprise the Internet, an intranet or intranets, wire-line and/or wireless network portions.
The device database 104 comprises information about devices that may be associated with the portable scanner 110, and, in some embodiments and/or under some conditions, the mobile device 118. In some embodiments, the device database 104 provides an association of device identifiers with device addresses. The device database 104 may also provide an association of device identifiers with supported content types. Some embodiments of the device database 104 comprise one or more of a relational database, an index, a mapping table, and an enhanced domain name service.
The device association 108 comprises associations between portable scanners and input/output (I/O), storage, or processing devices. In some embodiments the device database 104 and the device association 108 are distinct functions which may be separately accessed by other functions, for example, by content retrieval 106. In some embodiments the device association 108 and the device database 104 may be incorporated into a common functional component.
The content retrieval 106 communicates with the device database 104 and the device association 108 to obtain, inter alia, device information and device association information. In some embodiments the device database 104 and/or the device association 108 may communicate with the content retrieval 106 using a network such as network 102.
The device database 104, the device association 108, and the content retrieval 106 may comprise a “service provider.” A service provider is a network-accessible provider of information and/or services in fulfillment of client requests. Service providers may provide subscription-based, advertising supported, pay-per-use, and/or pay-per-transaction access to content and/or communication services.
The content retrieval 106 comprises content location and retrieval functionality. Content is at least one of text, digital sound or music, or one or more digital images or video. The content retrieval 106 locates content corresponding to, related to, and/or identified by information scanned by the portable scanner 110.
The content retrieval 106 communicates with the network 102 and provides the located content to an I/O, storage, or processing device associated with the portable scanner 110.
The associated device may be, inter alia, an image/video rendering system 112 or audio rendering system 114. Some devices (e.g., a combined device 116) may include both audio and imaging/video systems 112 114. Examples of such combination devices 116 include a laptop computer, a desktop computer, televisions, multi-user computer systems, or a kiosk.
Other devices that may be associated with the portable scanner 110 include a data storage device 120 or a printer. Examples of a data storage device 120 comprise a computer hard drive, portable flash storage device, portable music and/or video and/or e-book player (e.g., portable content player), and optical storage media. Computing resources, such as a laptop, desktop, or network-based computer or computers, may also be associated with the portable scanner 110 in order to enhance the processing capabilities associated with the scanner 110.
Identifying a device to which content will be delivered may involve receiving a device identifier for the associated device. The device identifier may be provided by the scanner 110 or mobile device 118 associated with the scanner. Examples of a device identifier are a barcode, unique device serial number, a network address such as an Internet Protocol (IP) address, an alphanumeric code, or a unique device name.
In some embodiments, the network address of the associated device is necessary but an identifier for the associated device is not. The system may function without full knowledge of the capabilities of the associated device in some cases. In other cases, the capabilities may be inferred. For example, if the device requests a communication session identifier via a web browser, and a scanner subsequently submits the communication session identifier to the system, it is likely that the device has a display from which the session identifier was scanned.
In some embodiments, one or more devices are “registered” by the user of a scanner so that they are associated with the unique user (or device) ID that identifies the scanner. For example, a laptop computer that is owned by a user of a scanner may be registered as “Device #1” associated with the scanner's unique user and/or device ID (thus the associated device identifier may be quite simple given the limited number of devices registered by a single user). The associated device may comprise logic that automatically registers its current network address with the service provider (since that network address may frequently change when, for example, a laptop is moved to a new location and establishes a new connection with the Internet). This simplifies the user's task when initiating a new session with the service provider, because the user need only scan the associated device's identifier and automatically communicate a command to the service provider to look up the associated device, retrieve its current network address, and communicate subsequent system responses to the indicated device. Furthermore, the management of the service provider's system is simplified because there is no need to create and maintain a set of identifiers that are unique among all devices known to the service provider. Each user of the service may simply register any devices that are to be used without having to apply for (and subsequently apply) a more-complex device identifier, such as a lengthy serial number.
Furthermore, selecting a device from the small domain of devices associated with a given scanner (and/or user) makes it possible to use alternative methods to identify the desired device. For example, a device may be identified by scanning a selected icon or by performing a distinct gesture with the scanner.
A device identifier may be provided by scanning it and then communicating it to the content location and retrieval 106 (service provider) system. In some embodiments, a device identifier may be made to appear on a visual display of the device so that it may be scanned by the portable scanner 110. The device identifier may be scanned from a serial number affixed to the device, scanned from a barcode affixed to the device, and so on. The identifier of the associated device may be provided with or prior to a content request/location/retrieval action by the scanner 110.
In some embodiments, one or more of the devices that will be associated with a portable scanner 110 will be selected, at least in part, because they are nearby the location of the portable scanner 110. Identifying the location of the portable scanner 110 may occur, at least in part, using GPS satellite location information, information triangulated using multiple RF transceivers, and/or location of Wi-Fi or other wireless access points used by or nearby to the portable scanner 110.
In some embodiments, one or more associated devices may be selected or not selected at least in part by examining characteristics of the located content type (for example, is it text, video, or audio) and determining whether a candidate nearby device supports rendering of that content type.
In some embodiments, the device identifier for the associated device is used, at least in part, to identify the network address of the associated device. The device identifier may be a unique ID that distinguishes the device from all other devices known to the system, or it may be an identifier that, in combination with the unique user and/or device ID 122 associated with the scanner 110, serves to uniquely identify the device to the system. The network address may comprise, among other possibilities, an IP address, a MAC address, a Uniform Resource Locator, or a device name or identifier which is recognized by the network 102 as being a particular device to which information may be sent.
Delivering the located content to the associated device may comprise configuring the associated device for exclusive use by a person using the portable scanner 110 for as long as the portable scanner 110 is associated with the device. Configuring the associated device for exclusive access by the person using the scanner 110 may be particularly important in public or semi-public environments.
The portable scanner 110 and/or associated mobile device 118 may be provided with access to information for which access is controlled by the associated I/O or storage device. Examples of such information are information to enable and/or facilitate functionality of the scanner 110, possibly including keyword definitions, document indexes, tables and parameters to facilitate OCR and/or voice recognition.
FIG. 2 is a block diagram of an embodiment of a system to associate a query session between a scanning device and a service provider. In this example, the session-oriented application comprises a web browser.
A portable scanner 110 interacts with and captures information from a computer system comprising a display 202. Examples of the computer system include a desktop, laptop, or handheld computer, a PDA, or a cellular or other wireless phone. The computer system comprises web browser 204 logic. The web browser 204 typically communicates via a network with a server. The server may comprise, inter alia, a web server, CGI script server, a private network (intranet) server, or a server of a wire-line or wireless telephone support network.
A web browsing session may be characterized by a session identifier (session ID 206). The session ID 206 is a code that uniquely identifies a browser communication session. Examples of session ids 206 are HTTP session IDs as well as other protocol session IDs. In some embodiments, when the web browser 204 is directed to load a web page from a URL designating a web site belonging to service provider 208, the service provider 208 records the network address associated with the request from the web browser 204, and returns a web page on which is displayed a unique session ID code 206. The service provider 208 records (for example, in device association database 108) the association between the unique session ID code 206 and the network address of the device providing the web browser 204 application.
The session identifier 206 may be displayed to a user of the browser 204. Specific functionality may be provided to the web browser 204 so that the session identifier 206 may be displayed. The portable scanner 110 may scan the displayed session ID 206 code. The scanner 110 communicates the scanned unique session ID code 206 to the service provider 208, together with the unique scanner and/or user ID 122, using any of the one or more network communication channels by which the scanner 110 communicates with the service provider 208. This may comprise a request to the service provider 208 to initiate a query session. Responses to subsequent scans (e.g., subsequent queries) are communicated to the web browser 204 at the network address previously associated with session ID 206. In some embodiments, the system may respond with a query session initiation request acknowledgement that may be displayed on web browser 204 confirming to the user that the system has correctly identified the user and his intention to initiate a query session via associated the device 202. When the user finishes a query session, for example, an “end session” icon or command may be scanned from the display of the associated device 202 and communicated to the service provider 208 to terminate the current session. The service provider 208 may then communicate a command to the web browser 204 to clear the display (removing any potentially sensitive information previously displayed in the session) and display a new unique session ID code 206 that may be scanned to initiate a new query session. Similarly, after a pre-determined time interval during which no communication is received by the service provider 208 from the scanner 110, the session may automatically time-out and be similarly terminated.
Subsequent to communicating a query session initiation request, the portable scanner 110 may scan information from a printed source. The scanned information may include text, a barcode, glyph, and/or other identifier of a printed source. The scanned information may include a product name, barcode, company name, logo, trademark, or other identifier of a product. The scanned information may include song name, artist name, anthology name, and/or other identifier of musical content. The scanned information may include an image name, caption, heading, and/or other identifier of image content, or a movie name, actor name, producer name, director name, studio name, product name, or other identifier of video content.
Information captured by the at least one scans (including the scanned session ID 206), with possibly additional information, may be incorporated in a content request. The scanned information may be communicated to a service provider 208 in one or more communications. The service provider 208 may apply the session ID code 206 to, at least in part, direct content back to the web browser 204. This may result in the web browser 204 receiving content communicated as a result of actions of the portable scanner 110.
Content communicated may include an electronic version of a printed document from which information was scanned, digital music associated with information of a scan, a digital voice recording, audio news or commentary, audio product information, or other recorded or synthesized sound, at least one of digital image, digital photo, product image or video, video of news reports or commentary, or other digital images or video.
FIG. 3 is an action flow diagram of an embodiment of a process of providing content to a scanner-associated device.
At 302 a display device comprising web browser logic communicates a request to the service provider (e.g., a system comprising the device association and/or device database) to generate a unique session ID code, which is recorded in the device association database along with a network address associated with the browser. At 304, a unique session ID is generated and communicated back to the browser at its associated network address. At 306, the unique session ID is scanned from its displayed location, and at 308 a query session initiation request is communicated to the service provider that includes both the unique user and/or scanner ID and the unique session ID code. The service provider applies the unique session ID code contained in the request 308 to identify the network address recorded in the device association database, and a query session acknowledgement is communicated at 310 to the device at the identified network address. The browser displays the query session request acknowledgement to the user of the scanner. The service provider also records, in the device association database, that the unique session ID is now “owned” by the user of the scanner, e.g., that other portable scanning devices may not become associated with this session ID. The service provider associates the unique user and/or scanner ID with the currently active session ID code and the associated network address.
At 312 the scanner communicates scanned information (REQ) to the content retrieval function. Content retrieval determines content to provide in response to the scanned information.
In some embodiments, the type of the content is communicated to the device database at 314. Content type may be used, at least in part, in determining which associated device or devices is most suited to render the content when more than one device is currently actively associated with scanner. When content is identified for which no currently available device is suitable, a link to such content or the content itself may be stored in a database, emailed to a predetermined address for the user, or otherwise retained, so that such content may be accessed at a later time when an appropriate rendering device is available.
At 316 the device database communicates an associated device address or addresses, or a network address or addresses, to content retrieval. At 318 content retrieval provides the content to the associated device.
In some embodiments, the system may associate storage devices with the user's scanner for the purpose of storing electronic content (audio, video, digital documents, etc.) delivered by the system in response to a scan of a printed document. For instance, by scanning an identifier that uniquely identifies a device having storage capability (such as a computer with a hard drive, writable DVD, CD-ROM, etc.), the system may modify its databases so that future deliveries of content in response to scans of printed documents (originating from the portable scanner) will be delivered to the corresponding storage device and archived for later retrieval.
In some embodiments, the system determines the user's location and which nearby devices may be associated with the user's portable electronic device. The system may determine the user's location by way of on-board GPS in portable device, by triangulation of wireless signals, by determining the location of the communication network transceiver serving the device, by querying the user, or any other suitable method.
In some embodiments, the system maintains a device database that has location information for I/O devices that may be used in conjunction with a portable scanning device. When the system receives a request from a portable scanner for association with an I/O device, the system determines the location of the portable scanner and then identifies appropriate candidates by referring to the device database.
In some embodiments, the user may preset the associations of devices with the portable scanner. As one example, the user may want to have his home computer designated as the recipient for content requests that originate from his scanner. To accomplish this, the user may access the service provider's website and manually enter identifiers of the devices and data repositories (e.g., the home computer) that are to receive responses to his scanned queries. Alternatively, the recipient devices may be automatically identified by the various scanning methods discussed throughout this document.
In some embodiments, a public kiosk displays a dynamic session ID. The kiosk is connected to a communication network such as the Internet or a corporate intranet. The connection may be via cable modem, telephone system (PSTN, ADSL, DSL, etc), wireless local area network (WLAN, IEEE802.11, etc.) or any other suitable access method. The session ID changes periodically but at least every time that the kiosk is used so that a new session ID is displayed to every new user. To use the kiosk, the user scans in the session ID displayed by the kiosk; by scanning the session ID, the user informs the system that he wishes to temporarily associate the kiosk with his scanner for the delivery of content resulting from scans of printed documents. The scanner may communicate the session ID and other information authenticating the scanner (such as a serial number, account number, or other identifying information) directly to the system (perhaps via a wireless communication such as a cellular Short Message Service (SMS) message) or by using the kiosk's links to the communication network. For example, the scanner may apply the kiosk's communication link by transferring the session initiation information to the kiosk (perhaps via short range RF such as BlueToothTM, etc.). The kiosk communicate then communicates the session initiation information to the service provider's system via its Internet connection. The scanner may communicate directly (where “directly” means without passing the message through the kiosk) with the service provider's system by communicating the session initiation message through the user's cellphone (which may be paired with the user's scanner via Bluetooth) or other wireless communication device.
In some embodiments, the system may prevent others from using a device associated with a scanner during the period (session) in which the device is associated with the scanner. This feature is especially useful to prevent others from using a public kiosk before a previous session has ended. As an example of this concept related to use of a computer at an internet café, the user may initiate the session by scanning the session ID from the kiosk display (or entering it via a keypad or touchscreen on the portable scanner); and the system associates in its databases the session ID with the serial number (or other identifier that uniquely identifies the user and/or the user's scanner) of his scanner so another scanner cannot scan the session ID and use the kiosk during his session. The scanner may be in communication (through wireless link such as BluetoothTM, a hardwired link such as a docking station, etc.) with a computer associated with the display or may be in direct (i.e., without going through the computer) communication with the service provider's system via another means such as cellular, etc.
In some embodiments, a portable scanner's functions may vary depending upon the associated devices. For example, if a portable scanner is associated with a nearby computer that has optical character recognition (OCR) capability, the scanner may communicate scanned image data to the computer, whereas if the associated computer did not have OCR capability, the portable scanner may apply an on-board OCR function to convert the scanned images to text before communicating the text to the service provider.
In some embodiments, the scanner may obtain the communication session identifier from the computer by wireless communications (e.g., a BluetoothTM link) rather than scanning. For example, after a portable scanner makes a BluetoothTM connection with a computer, the computer may use the Bluetooth connection to communicate the communication session identifier to the scanner, rather than displaying it on the computer display for the user to scan with the portable scanner.
In some embodiments, the system enhances the user interface for portable electronic devices by associating other devices that have better video or audio capability than the portable electronic device. For example, a subscriber waiting for a flight in an airport may browse a television guide and notice a show that he wishes to watch. Using the web browser on his computer to browse to the service provider's website, the subscriber may get a communication session identifier communicated to his laptop computer. Scanning the communication session identifier and information identifying the show from the television guide, the subscriber identifies the laptop computer as the location where he wishes to have the video content (the television show) delivered. The system may check whether the subscriber has the proper permissions to access the content (e.g., does he have a ‘cable television’ service contract; if broadband Internet access is necessary to deliver the video, does he have a broadband service contract with an Internet Service Provider, etc.) prior to sending it to the laptop computer.
Those having skill in the art will appreciate that there are various vehicles by which processes and/or systems described herein can be effected (e.g., hardware, software, and/or firmware, collectively, logic), and that the preferred vehicle will vary with the context in which the processes are deployed. For example, if an implementer determines that speed and accuracy are paramount, the implementer may opt for a hardware and/or firmware vehicle; alternatively, if flexibility is paramount, the implementer may opt for a solely software implementation; or, yet again alternatively, the implementer may opt for some combination of hardware, software, and/or firmware. Hence, there are several possible vehicles by which the processes described herein may be effected, none of which is inherently superior to the other in that any vehicle to be utilized is a choice dependent upon the context in which the vehicle will be deployed and the specific concerns (e.g., speed, flexibility, or predictability) of the implementer, any of which may vary. Those skilled in the art will recognize that optical aspects of implementations will require optically-oriented hardware, software, and or firmware.
The foregoing detailed description has set forth various embodiments of the devices and/or processes via the use of block diagrams, flowcharts, and/or examples. Insofar as such block diagrams, flowcharts, and/or examples contain one or more functions and/or operations, it will be understood as notorious by those within the art that each function and/or operation within such block diagrams, flowcharts, or examples can be implemented, individually and/or collectively, by a wide range of hardware, software, firmware, or virtually any combination thereof. Several portions of the subject matter subject matter described herein, may be implemented via forms of logic including Application Specific Integrated Circuits (ASICs), Field Programmable Gate Arrays (FPGAs), digital signal processors (DSPs), or other integrated formats. However, those skilled in the art will recognize that some aspects of the embodiments disclosed herein, in whole or in part, can be equivalently implemented using forms of logic including integrated circuits, as one or more computer programs running on one or more computers (e.g., as one or more programs running on one or more computer systems), as one or more programs running on one or more processors (e.g., as one or more programs running on one or more microprocessors), as firmware, or as virtually any combination thereof, and that designing the circuitry and/or writing the code for the software and/or firmware would be well within the skill of one of skill in the art in light of this disclosure. In addition, those skilled in the art will appreciate that the mechanisms of the subject matter described herein are capable of being distributed as a program product in a variety of forms, and that an illustrative embodiment of the subject matter described herein applies equally regardless of the particular type of signal bearing media used to actually carry out the distribution. Examples of a signal bearing media include, but are not limited to, the following: recordable type media such as floppy disks, hard disk drives, CD ROMs, digital tape, and computer memory; and transmission type media such as digital and analog communication links using TDM or IP based communication links (e.g., packet links).
In a general sense, those skilled in the art will recognize that the various aspects described herein which can be implemented, individually and/or collectively, by logic including a wide range of hardware, software, firmware, or any combination thereof which can be viewed as being composed of various types of “electrical circuitry.” Consequently, as used herein “electrical circuitry” includes, but is not limited to, electrical circuitry having at least one discrete electrical circuit, electrical circuitry having at least one integrated circuit, electrical circuitry having at least one application specific integrated circuit, electrical circuitry forming a general purpose computing device configured by a computer program (e.g., a general purpose computer configured by a computer program which at least partially carries out processes and/or devices described herein, or a microprocessor configured by a computer program which at least partially carries out processes and/or devices described herein), electrical circuitry forming a memory device (e.g., forms of random access memory), and/or electrical circuitry forming a communications device (e.g., a modem, communications switch, or optical-electrical equipment).
Those skilled in the art will recognize that it is common within the art to describe devices and/or processes in the fashion set forth herein, and thereafter use standard engineering practices to integrate such described devices and/or processes into larger systems. That is, at least a portion of the devices and/or processes described herein can be integrated into a network processing system via a reasonable amount of experimentation.
The foregoing described aspects depict different components contained within, or connected with, different other components. It is to be understood that such depicted architectures are merely exemplary, and that in fact many other architectures can be implemented which achieve the same functionality. In a conceptual sense, any arrangement of components to achieve the same functionality is effectively “associated” such that the desired functionality is achieved. Hence, any two components herein combined to achieve a particular functionality can be seen as “associated with” each other such that the desired functionality is achieved, irrespective of architectures or intermedial components. Likewise, any two components so associated can also be viewed as being “operably connected,” or “operably coupled,” to each other to achieve the desired functionality.
Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense as opposed to an exclusive or exhaustive sense; that is to say, in the sense of “including, but not limited to.” Words using the singular or plural number also include the plural or singular number respectively. Additionally, the words “herein,” “above,” “below” and words of similar import, when used in this application, shall refer to this application as a whole and not to any particular portions of this application. When the claims use the word “or” in reference to a list of two or more items, that word covers all of the following interpretations of the word: any of the items in the list, all of the items in the list and any combination of the items in the list. Although many of the embodiments have been described in the context of a portable scanner, one of ordinary skill in the art understands that any portable electronic device having imaging capability may be suitable to implement the disclosed innovations.

## Claims

1. A method comprising:
receiving, by a content retriever, scanned information comprising: (i) an identifier of a scanner device and (ii) additional information for locating content;
locating, by the content retriever, the content based at least on the additional information;
making a determination, by the content retriever, that a candidate device can perform the content by at least:
determining locations of the scanner device and a second device; and
selecting the candidate device from among the scanner device and the second device based at least on the locations of the scanner device and the second device; and

providing, by the content retriever, the content to the candidate device.

2. The method of claim 1, wherein the scanned information comprises information scanned by the scanner device.

3. The method of claim 1, wherein making the determination, by the content retriever, that the candidate device can perform the content further comprises:
maintaining a device database comprising location information for the scanner device and a plurality of devices, wherein the plurality of devices includes the second device.

4. The method of claim 1, wherein providing, by the content retriever device, the content to the candidate device further comprises providing the content from a network to the candidate device.

5. The method of claim 1, wherein making the determination, by the content retriever, that the candidate device can perform the content further comprises examining characteristics of the content and determining that the candidate device can perform the content.

6. The method of claim 1, wherein the content comprises at least one of: text, digital sound, music, one or more digital images, a video, an electronic document of the scanned information, digital music associated with the scanned information, a digital voice recording, audio news, and audio product information.

7. A method comprising:
receiving, by a content retriever, scanned information comprising: (i) an identifier of a scanner device and (ii) additional information for locating content;
locating, by the content retriever, the content based at least on the additional information;
making a determination, by the content retriever, that the scanner device cannot perform the content;
selecting, by the content retriever, an associated device based at least on the scanned information by at least;
determining locations of the scanner device and a second device, and
selecting the associated device based at least on the locations of the scanner device and the second device; and

providing, by the content retriever, the content to the associated device.

8. The method of claim 7, wherein the scanned information comprises information scanned by the scanner device.

9. The method of claim 7, wherein selecting, by the content retriever, the associated device based at least on the scanned information further comprises:
maintaining a device database comprising location information for the scanner device and a plurality of devices, wherein the plurality of devices includes the second device.

10. The method of claim 7, wherein providing, by the content retriever device, the content to the associated device further comprises providing the content from a network to the associated device.

11. The method of claim 7, wherein selecting the associated device based at least on the scanned information comprises examining characteristics of the content and determining that the associated device can perform the content.

12. The method of claim 7, wherein the content comprises at least one of: text, digital sound, music, one or more digital images, a video, an electronic document of the scanned information, digital music associated with the scanned information, a digital voice recording, audio news, and audio product information.

13. A computing system comprising:
a processor; and
a data storage device comprising program instructions that, if executed by the processor, cause the processor to:
receive scanned information comprising: (i) an identifier of a scanner device and (ii) additional information for locating content;
locate the content based at least on the additional information;
make a determination that a candidate device can perform the content by at least:
determining locations of the scanner device and a second device and
selecting the candidate device from among the scanner device and the second device based at least on the locations of the scanner device and the second device; and

provide the content to the candidate device.

14. The computing system of claim 13, wherein the scanned information comprises information scanned by the scanner device.

15. The computing system of claim 13, wherein to make the determination that the candidate device can perform the content, the program instructions further cause the processor to:
maintain a device database comprising location information for the scanner device and a plurality of devices, wherein the plurality of devices includes the device.

16. The computing system of claim 13, wherein to provide the content to the candidate device, the program instructions further cause the processor to provide the content from a network to the candidate device.

17. The computing system of claim 13, wherein to make the determination that the candidate device can perform the content, the program instructions further cause the processor to examine characteristics of the content and determine that the candidate device can perform the content.

18. The computing system of claim 13, wherein the content comprises at least one of: text, digital sound, music, one or more digital images, a video, an electronic document of the scanned information, digital music associated with the scanned information, a digital voice recording, audio news, and audio product information.