WO2000016211A1 - Method for interfacing scanned product information with a source for the product over a global network - Google Patents

Method for interfacing scanned product information with a source for the product over a global network Download PDF

Info

Publication number
WO2000016211A1
WO2000016211A1 PCT/US1999/020694 US9920694W WO0016211A1 WO 2000016211 A1 WO2000016211 A1 WO 2000016211A1 US 9920694 W US9920694 W US 9920694W WO 0016211 A1 WO0016211 A1 WO 0016211A1
Authority
WO
WIPO (PCT)
Prior art keywords
product
information
location
routing information
source
Prior art date
Application number
PCT/US1999/020694
Other languages
French (fr)
Inventor
Jeffry Jovan Philyaw
David Kent Mathews
Brad Maxwell Smith
Paul Scovell Adams
Original Assignee
Digitalconvergence.Com Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digitalconvergence.Com Inc. filed Critical Digitalconvergence.Com Inc.
Priority to JP55719999A priority Critical patent/JP2002512722A/en
Priority to AU58190/99A priority patent/AU5819099A/en
Priority to IL14194199A priority patent/IL141941A0/en
Priority to BR9913624-4A priority patent/BR9913624A/en
Priority to EP99945622A priority patent/EP1018080A4/en
Priority to TW088120270A priority patent/TW459183B/en
Publication of WO2000016211A1 publication Critical patent/WO2000016211A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/30Managing network names, e.g. use of aliases or nicknames
    • H04L61/301Name conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • This invention relates in general to a method for controlling a computer and, more particularly, to a method for modifying scanned bar code data associated with a manufacturer's product for input to a computer over a global communication network to a manufacturer's location to effect a link therebetween.
  • the type of information that is provided to a user from a given marketing location can be an interactive transaction which allows the user to select products, determine pricing, and even order products.
  • Some of these marketing locations provide access to many products.
  • other locations provide access to only a single company and all of its products.
  • the primary problem with marketing products over the Internet or providing information over the Internet is to somehow inform the user of the location and connect that user to that particular location via an associated URL or domain name.
  • the user is required to type the domain or URL into a browser window and then instruct the browser to find that location over the network. This presents several disadvantages.
  • the user somehow needs to have information about a particular company or one of its products such that there is a desire on the part of the user to seek more information.
  • the present invention disclosed and claimed herein comprises a method for associating a product with remote information for that product.
  • a product identifier is accessed at a source location on a network which is in close association with a product such that it identifies the associated product. Routing information is appended to the accessed product identifier, which routing information defines the location of a remote location on the network .
  • the product information is then transmitted from the source location to the remote location over the network in accordance with the appended routing information, which routing information defines the network connection between the source location and the remote location on the network, wherein information regarding the associated product can be returned to the source location from the remote location.
  • FIGURE 1 illustrates a block diagram of a computer system using the proprietary wedge interface
  • FIGURE 2 illustrates the general I/O of the microcontroller used in the proprietary wedge electronics
  • FIGURE 3 illustrates the retrieval system for obtaining product information over a global communication network
  • FIGURES 4a-4e illustrate the various message packets transmitted between the source PC and servers used in the preferred embodiment
  • FIGURE 5 illustrates a flowchart of the method for receiving and encoding the data prior to transmission to an Advertiser Reference Server ("ARS");
  • FIGURE 6 illustrates a flowchart of actions taken by the ARS server;
  • ARS Advertiser Reference Server
  • FIGURE 7 illustrates a flowchart of the interactive process between the source computer and ARS
  • FIGURE 8 illustrates a web browser page receiving the modified URL/bar code data according to the preferred embodiment
  • FIGURE 9 illustrates a simplified block diagram of the disclosed embodiment
  • FIGURE 10 illustrates a more detailed, simplified block diagram of the embodiment of FIGURE 9;
  • FIGURE 11 illustrates a diagrammatic view of a method for performing the routing operation
  • FIGURE 12 illustrates a block diagram of an alternate embodiment utilizing an audio input for generating the routing information
  • FIGURE 13 illustrates a block diagram illustrating the generation of a profile with the disclosed embodiment
  • FIGURE 14 illustrates a flowchart for generating the profile and storing it at the ARS
  • FIGURE 15 illustrates a flowchart for processing the profile information when information is routed to a user.
  • FIGURE 1 there is illustrated a Personal Computer (“PC") 108 connected to receive inputs from a bar code scanner wand 100 and a keyboard 106, and also connected through a network interface 112 to a network.
  • the PC 108 runs a browser program to facilitate the access of information on the network, for example, a global communication network known as the "Internet” or the World- Wide- Web (“Web").
  • the browser is a hypertext-linked application used for accessing information. Hypertext is a term used to describe a particular organization of information within a data processing system, and its presentation to a user. It exploits the computer's ability to link together information from a wide variety of sources to provide the user with the ability to explore a particular topic.
  • Hypertext systems use a large number of units of text or other types of data such as image information, graphical information, video information, or sound information, which can vary in size.
  • a collection of such units of information is termed a hypertext document, or where the hypertext documents employ information other than text, hypermedia documents.
  • Multimedia communications may use the Hypertext Transfer Protocol ("HTTP"), and files or formatted data may use the Hypertext Markup Language (“HTML”).
  • HTTP Hypertext Transfer Protocol
  • HTML Hypertext Markup Language
  • This formatting language provides for a mingling of text, graphics, sound, video, and hypertext links by "tagging" a text document using HTML.
  • Data encoded using HTML is often referred to as an "HTML document,” an "HTML page,” or a “home page.”
  • HTML Uniform Resource Locator
  • the Internet is one of the most utilized networks for interconnecting distributed computer systems and allows users of these computer systems to exchange data all over the world.
  • Many private networks for example, corporate or commercial networks.
  • Standard protocols such as the Transport Control Protocol (“TCP") and the Internet Protocol (“IP”) provide a convenient method for communicating across these diverse networks. These protocols dictate how data are formatted and communicated.
  • TCP Transport Control Protocol
  • IP Internet Protocol
  • the protocols are layered in an IP stack. At higher levels of the LP stack, such as the application layer (where HTTP is employed), the user information is more readily visible, while at lower levels, such as the network level (where TCP/IP are used), the data can merely be observed as packets or a stream of rapidly moving digital signals.
  • Web resources such as servers, files, Web pages, mail messages, and the like.
  • Web resources such as servers, files, Web pages, mail messages, and the like.
  • One way that Web resources can be accessed is by browsers made by Netscape® and Microsoft Internet Explorer®.
  • scanner 100 scans bar code data 102 into a "wedge" interface 104 for conversion into keyboard data, which keyboard data is passed therefrom into the keyboard input port of PC 108.
  • a wedge interface 104 is simply an interface box containing circuitry that accommodates inputs from both a scanner and a computer keyboard 106. Therefore output from the scanner 100 is passed into the wedge 104 for conversion into keyboard data. Since the wedge 104 emulates a keyboard, the PC 108 does not require a separate input for the scanner 100, but may pass scanner data through the wedge 104 directly into the keyboard port of the PC 108. When not receiving scanner data, the wedge 104 simply acts as a pass-through device for keyboard data. The information is ultimately presented to a viewer by display 110.
  • a code for a specific product is provided in the form of a bar code 102.
  • This bar code is the "link" to a product.
  • the disclosed embodiment is operable to provide a link between that product and the web page of the manufacturer of that product by utilizing the bar code as routing information over the net, while also providing for an accounting step, as will be described in more detail hereinbelow.
  • the bar code 102 by itself is not compatible with any kind of network for the purposes of communication therewith. It is primarily provided for a retail-type setting. Therefore, the information contained in the bar code 102, by itself, does not allow for anything other than identification of a product, assuming that one has a database containing information as to a correlation between the product and the bar code.
  • the information in the bar code 102 is first fed into the wedge interface 104, which wedge interface 104 is operable to decode the bar code 102, and then "append" to that bar code intermediate routing information.
  • This intermediate routing information is information that determines where the bar code information is to be sent on the network. This will be routed to the network through a network interface 112.
  • the information in the bar code must be converted from the optical image to the numerical values input to the keyboard and then converted into HTML language. The reason for this is that it must be converted into a browser compatible format for interface with the browser. Of course, if another type of program were utilized, then it would have to converted into language compatible with that program.
  • the wedge interface 104 once having decoded the bar code information 102 and appending the intermediate routing information thereto, then organizes the bar code/intermediate routing information into keystroke data which is then routed to the PC 108.
  • the reason for this is that the interface 104 merely makes the wand scanner 100, the information scanned, and the appended intermediate routing information appear as keystrokes to the PC 108, which essentially emulates a user on the keyboard 106 inputting the same information. Therefore, the combination of the interface 104 and the wand 100 allows a user to "key" data into the PC 108 through the use of the coded information in the bar code 102.
  • a user could actually key in the information on the bar code 102 and then append the appropriate intermediate routing information associated therewith.
  • the intermediate routing information appended thereto is the URL of the destination server on the network.
  • FIGURE 2 there is illustrated a microcontroller 200 which controls interfacing of the keyboard 106 and wand 100 with the PC 108.
  • the microcontroller 200 has contained therein a memory 202 or it can have external memory.
  • the wand 100 requires a serial data line, a ground line, and a power line.
  • the keyboard 106 requires a serial data line, a ground line, a clock line, and a power line.
  • the PC 108 provides a clock line, a power line, a serial data, and a ground line for input to the microcontroller 200.
  • the microcontroller 200 is operable to receive signals from the keyboard 106 and transfer the signals to the PC 108 as keyboard signals. Operation with the keyboard 106 is essentially a "pass-through" procedure. Data output from the keyboard is already in keyboard format, and therefore requires no conversion by the wedge interface 104. With respect to the wand 100, the serial data is not compatible with a keyboard 106 and, therefore, it must be translated into a keyboard format in order to allow input thereof to the keyboard input of the PC 108.
  • the microcontroller 200 performs this function after decoding this bar code information and conversion of this bar code information into an appropriate stream of data which is comprised of the bar code information and the appended URL.
  • This appended URL will be pre-stored in the memory 202 and is programmable at the time of manufacture.
  • the memory 202 is illustrated as being contained within the microcontroller 202 to provide a single chip solution. However, this could be external memory that is accessible by the microcontroller 202. Therefore, the microcontroller 200 provides an interface between a wand 100 and a keyboard 106 to a PC 108 which allows the wand 100 to receive coded information and convert it to keyboard strokes with appended intermediate routing information or, alternatively, to merely pass-through the keystrokes from the keyboard 106. Therefore, the user need not install any type of plug-in circuit board into the motherboard of the computer in order to provide an interface to the wand 100; rather, the user need only utilize the already available keyboard port in order to input the appropriate data into the system.
  • the microcontroller 200 comprises a PIC16C73 microcontroller by Microchip TechnologiesTM.
  • the PIC16C73 device is a low cost CMOS 8-bit microcontroller with an integrated analog-to-digital converter.
  • the PIC16C73 device as illustrated in the disclosed embodiment, has 192 bytes of RAM and 4k x 4 of EPROM memory.
  • the microcontroller 200 can accommodate asynchronous or synchronous inputs from input devices connected to it. In this disclosed embodiment, communication to the keyboard 106 is synchronous while it is asynchronous when communicating with wand 100.
  • bar code information 102 is input into the keyboard input of the PC 108, disclosed methods may also be advantageously utilized with high speed port architectures such as Universal Serial Bus (“USB”) and IEEE 1394.
  • USB Universal Serial Bus
  • IEEE 1394 IEEE 1394
  • Bar codes are structured to be read in either direction. Timing considerations need to be addressed because of the variety of individuals scanning the bar code introduce a wide variety of scan rates. Bar codes use bars of varying widths. The presence of a black bar generates a positive pulse, and the absence of a black bar generates no pulse. Each character of a conventional bar code has associated therewith seven pulses or bars. Depending on the width of the bars, the time between pulses varies. In this disclosed embodiment, the interface circuitry 104 performs a "running" calculation of the scan time based upon the rising edge of the pulses commencing with the leader or header information. The minimum and maximum scans times are calculated continuously in software with the interface 104 during the scanning process to ensure a successful scan by the user.
  • FIGURE 3 there is illustrated as a network source a PC 302, similar to PC 108, connected to a network interface 304, similar to network interface 112, which in turn connects to a global communication network 306.
  • data scanned by wand 100 is received by PC 302 with appended intermediate routing information as emulated keystrokes.
  • This information directs PC 302 to obtain information from an Advertiser Reference Server ("ARS") 308 over Path "A.”
  • ARS 308 is a network device disposed on the network that is defined as the location to which the scanned data from the bar code 102 is to be routed. This is defined by the routing information programmed into the interface 104. As such, scanned information will always be routed to the ARS 308, since a URL is unique on the system.
  • the database 310 Connected to the ARS 308 is a database 310 of product codes and associated manufacturers.
  • the database 310 undergoes a continual update process which is transparent to the user.
  • manufacturer and product information is added to the database 310 without interrupting operation of the source PC 302 with frequent updates.
  • the message packet 400 sent from source PC 302 to ARS 308 via Path "A" comprises several fields.
  • One field comprises the URL of the ARS 308.
  • Another field comprises the advertiser product code or other information derived from the bar code 102, and any additional overhead information required for a given transaction.
  • Yet another field comprises the network address of the source PC 302.
  • network transmissions are effected in packets of information, each packet providing a destination address, a source address, and data. These packets vary depending upon the network transmission protocol utilized for communication.
  • protocols utilized in the disclosed embodiment are of a conventional protocol suite commonly known as TCP/IP, it should be understood that any protocols providing the similar basic functions can be used, with the primary requirement that a browser can forward the bar code information to the desired URL in response to keystrokes being input to a PC.
  • messages packet shall refer to the combination of the destination URL, bar code information, and source address, even though more than a single packet must be transmitted to effect such a transmission.
  • ARS 308 Upon receipt of the message packet 400 from source PC 302, ARS 308 processes the information in accordance with instructions embedded in the overhead information. The ARS 308 specifically will extract the bar code information from the received packet 400 and, once extracted, will then decode this bar code information. Once decoded, this information is then compared with data contained within the ARS advertiser database 310 to determine if there is a "hit.” If there is no "hit” indicating a match, then information is returned to the browser indicating such. If there is a "hit,” a packet 402 is assembled which comprises the address of the source PC 302, and information instructing the source PC 302 as to how to access, directly in a "handoff ' operation, another location on the network, that of an advertiser server 312.
  • the source PC 302 can then access the advertiser server 312.
  • the ARS 308 transmits the packet 402 back to source PC 302 over Path "B."
  • the message packet 402 comprises the address of the source PC 302, the URL of the advertiser server 312 embedded within instructional code, and the URL of the ARS 308.
  • the message packet 402 Upon receipt of the message packet 402 by the source PC 302, the message packet 402 is disassembled to obtain pertinent routing information for assembly of a new message packet 404.
  • the web browser running on source PC 302 is now directed to obtain, over Path "C," the product information from the particular advertiser server 312 location information embedded in message packet 404.
  • the message packet 404 for this transaction comprises the URL of the advertiser server 312, the request- for-product- information data, and the address of the source PC 302.
  • advertiser server 312 Upon receipt of the message packet 404 from source PC 302, advertiser server 312 disassembles the message packet 404 to obtain the request-for-product-information data. The advertiser server 312 then retrieves the particular product information from its database, and transmits it over Path "D" back to the source PC 302. Referring now to FIGURE 4d, the message packet 406 for this particular transaction comprises the address of the source PC 302, the requested information, and the URL of the advertiser server 312.
  • the ARS 308 may make a direct request for product information over Path "E" to advertiser server 312.
  • the ARS 308 sends information to the advertiser server 312 instructing it to contact the source PC 302.
  • the message packet 408 for this transaction is illustrated in FIGURE 4e, which comprises the URL of the advertiser server 312, the request- for-product-information data, and the address of the source PC 302. Since product information is not being returned to the ARS 308, but directly to the source PC 302, the message packet 408 requires the return address to be that of the source PC 302. The product information is then passed directly to PC 302 over Path "D.”
  • FIGURE 5 there is illustrated a flowchart depicting the process for assembling the message packet 400 transmitted from the source PC 302 to the ARS 308.
  • the process begins in function block 500 wherein the UPC bar code 102 is scanned by the user.
  • the scanner wand 102 interprets the coded bars and transmits the signal over the serial connection to the wedge interface 104 where the bar code data is then decoded by software stored in firmware.
  • the decoded data is then stored in a word register in function block 504, for easy manipulation.
  • Program flow continues to function block 506 where the word register data is then converted into keystroke data and stored. At this point, the product information is stored in memory on the wedge interface 104.
  • function block 508 a Ctrl-O command is added to the keystroke data.
  • the hypertext protocol preamble http:// is added to the keystroke data in a function block 510.
  • function block 512 the URL of the ARS 308 is added to the keystroke data.
  • function block 514 characters /? are added to the keystroke data.
  • function block 516 the UPC code data is added to the keystroke data.
  • function block 518 a carriage return is added to the keystroke data to effect transmission of the data to the ARS 308 in function block 520, over Path "A.”
  • this embodiment is not limited to UPC bar code standards, but may also incorporate other bar code standards. For example, if a Code 128 standard were used, optional steps may be employed to deal with a system which uses this particular code, or multiple bar code standards.
  • Function block 522 may be used in a multi-code scenario to determine the particular bar code standard used.
  • Function block 524 enables the software to handle the particular standard being employed.
  • the ARS 308 may undergo when receiving the message packet 400 from the source PC 302.
  • decision block 600 the ARS 308 checks for the receipt of the message packet 400. If a message packet 400 is not received, program flow moves along the "N" path to continue waiting for the message. If the message packet 400 is received, program flow continues along path "Y" for message processing.
  • the ARS 308 extracts the characters /? and the following variable field comprising the UPC code. The UPC code is then extracted independently in function block 604 in preparation for matching the product code with the appropriate advertiser server address.
  • the UPC code is then used with a look-up table to retrieve the advertiser server 312 URL of the respective product information contained in the UPC code.
  • the ARS 308 then assembles message packet 402 for transmission back to the source PC 302.
  • Function block 610 indicates the process of sending the message packet 402 back to the source PC 302 over Path "B.”
  • the source PC 302 receives the message packet 402 back from the ARS 308 and begins to decode the packet 402.
  • the URL of the advertiser product information is extracted from the message packet 402 and saved for insertion into the message packet 404 to the advertiser server 312.
  • the message packet 404 is then assembled and sent by the source PC 302 over Path "C" to the advertiser server 312, in function block 704.
  • the advertiser server 312 receives the message packet 404 from the source PC 302, in function block 708, and disassembles it.
  • the product information location is then extracted from the message packet 404 in function block 710.
  • the particular product information is retrieved from the server database for transmission back to the source PC 302.
  • the product information is assembled into message packet 406 and then transmitted back to the source PC 302 over Path "D.”
  • the advertiser product information contained in the message packet 406 received from the advertiser server 312 is then extracted and processed in function block 716.
  • a user launches a web browser application on a source PC 302 and computer display 800 presents a browser page 802.
  • the user then scans the bar code 102 with a scanner wand 100.
  • the product information embedded in the keystroke data is transmitted into the wedge interface 104 where proprietary URL data is appended to the bar code data to create an appended word.
  • the appended word in the format of keystroke data, is transmitted from the wedge interface 104 into the keyboard input port of source PC 302.
  • a URL page 804 is opened.
  • URL page 804 is opened in response to a Ctrl-O command added by the proprietary wedge interface 104 as the first character string.
  • Opening URL page 804 automatically positions the cursor in a field 806 where additional keystroke data following the Ctrl-O command will be inserted.
  • the hypertext protocol preamble http:// is inserted into the field 806.
  • URL information associated with the location of the ARS 308 is inserted into field 806.
  • URL data are the characters /? to allow entry of variables immediately following the /? characters.
  • the variable following is a UPC product code which provides the cross-reference information for obtaining the advertiser URL from the ARS database 310.
  • a carriage return is added to send the URL/bar code data and close the window 804.
  • a product 902 which can be either a product, an advertisement ("ad"), or some tangible or visible device to which the user has access.
  • a region 904 which has contained therein the primary routing information.
  • this primary routing information is in the form of a bar code.
  • the primary routing information could be encoded in any type of medium.
  • there could be provided an optically encoded background which, when scanned, would allow information to be extracted therefrom which would constitute primary routing information.
  • One example of this is the digital encoding via optical means of a background on a driver's license. By scanning the entire driver's license, digital information embedded within the optical coding is extracted to provide primary routing information.
  • Many other examples are present wherein optical information is encoded onto some tangible medium.
  • the primary routing information is extracted from the region 904, it is then input to the PC which, as disclosed hereinabove, utilizes the scanning wand 100 and the interface 104.
  • the primary routing information after being extracted from the region 904, through either the decoding associated with the wand 100 or some other technique, is then input to a PC 906, similar to the PC 108 described hereinabove.
  • the PC 906 is interfaced with a user 908, which user 908 is operable to initiate the transfer of the routing information from the region 904 to the PC 906. This is an active system which requires some type of user intervention.
  • the PC 906 in response to receiving the primary routing information from the region 904, will then access a network 910 to provide an interconnection medium with a plurality of network nodes (not shown), one of these having associated therewith remote information on a network node 912.
  • This network node 912 has contained therein remote information that is associated with the primary routing information 904.
  • the PC 906, in conjunction with the network 910, is operable to access the remote information 912 via the primary routing information extracted from the optical field 904 such that there is connection made between the PC 906 and the remote information node 912 to allow information to then be extracted from the remote information node 912 and provided to the user 908.
  • the routing information in the region 904 is input to a PC 1002, the PC 1002 being similar to the PC 108 in FIGURE 1 and also to the PC 906.
  • the PC 1002 is operable to assemble a packet of information comprised of secondary routing information and the primary routing information in field 904 for transfer thereto.
  • the secondary routing information is routing information that the PC 1002 uses to transfer the primary routing information in field 904 to an intermediate PC 1004 over the network 910.
  • This intermediate PC 1004 is basically ARS 308 in FIGURE 3.
  • the database 1006 Associated with the PC 1004 is the database 1006, similar to the advertiser database 310. However, this database can contain other information.
  • the operation requires a user 908 to first access the routing information in field 904 by some user initiated operation.
  • the primary routing information in field 904 is assembled with secondary routing information which then forwards this primary routing information in field 904 to the PC 1004.
  • the PC 1004 looks up information in its database 1006 in the form of table to determine where the location of the remote information is on the network 910. This is then relayed back to the PC 1002 which then effects a connection to the remote information node 912. Therefore, it can be seen that with the use of PC 1004 and its associated database 1006, information in the optical field 904 can be related to network routing information to the remote node 912. Note that, in order for the PC 1002 to be interfaced with the remote information network node 912, it is necessary to transfer all of the information in the primary routing information field 904 in the form of the primary routing information to the PC 1004 in order effect a connection.
  • FIGURE 11 there is illustrated a diagrammatic view of how the network packet is formed for sending the primary routing information to the PC 1004.
  • the primary routing information occupies a single field which primary routing information is then assembled into a data packet with the secondary routing information for transfer to the network 910. This is described hereinabove in detail.
  • the information contained within the optical field 904 in the form of a bar code, an optically encoded region, etc. constitutes routing information.
  • the manufacturer knows that it only needs to place this routing information in an optical field in association with either a product or an advertisement or some other medium in order to allow the user access thereto.
  • this optical field It is the association of this optical field with the product that encourages the user to input the optical information to a network to view additional information about the product.
  • additional information is then viewed by the user or accessible by the user as defined by the manufacturer and not by the PC 1004.
  • the PC 1004 merely relays this information.
  • FIGURE 12 there is illustrated a block diagram of an alternate embodiment of the present invention utilizing an audio input source.
  • a program media 1202 which program media is operable to contain therein some type of routing information in the form of an audio signal.
  • This can be an encoded tone, or other such device which, when coupled with an audio output device 1204 will cause routing information in the form of an audio tone to be input to the PC 906.
  • the PC 906 has associated therewith a conventional sound card which is operable to receive the audio signal on a dedicated port therefor and digitize this tone for processing by the PC 906 internal thereto.
  • This decoding operation is a conventional operation.
  • the audio output device 1204 is a device that is activated by the user 908.
  • the program media 1202 and the audio output device 1204 could be any type of media and audio output device.
  • One type of media might be that associated with children's books which have the ability to access audio information about the picture.
  • FIGURE 13 there is illustrated a block diagram for an embodiment wherein a user's profile can be forwarded to the original subscriber or manufacturer.
  • the PC 906 has associated therewith a profile database 1302, which profile database 1302 is operable to store a profile of the user 908.
  • This profile is created when the program, after initial installation, requests profile information to be input in order to activate the program.
  • This ID 1304 is accessible by a remote location as a "cookie" which is information that is stored in the PC 906 in an accessible location, which accessible location is actually accessible by the remote program running on a remote node.
  • the ARS 308 which basically constitutes the PC 1004 of FIGURE 10, is operable to have associated therewith a profile database 1308, which profile database 1308 is operable to store profiles for all of the users.
  • the profile database 1308 is a combination of the profiles stored in profile database 1302 for all of the PCs 906 that are attachable to the system. This is to be distinguished from information stored in the database 310, the advertiser's database, which contains intermediate destination tables.
  • the profile database is then utilized for each transaction, wherein each transaction in the form of the routing information received from the field 904 is compared to the destination tables 310 to determine what manufacturer it is associated with, and the associated ID that is transmitted along with the routing information in field 904 is then compared with the profile database 1308 to determine if a profile associated therewith is available.
  • This information is stored in a transaction database 1310 such that, at a later time, for each routing code or bar code received in the form of the information in field 904, there will associated therewith the IDs of each of the PCs 906.
  • the associated profiles in database 1308, which are stored in association with IDs, can then be assembled and transmitted to a subscriber as referenced by a subscriber node 1312 on the network 910.
  • the ARS 308 can do this in two modes, a realtime mode or a non-realtime mode.
  • a realtime mode each time a PC 906 accesses the advertiser database 310, that user's profile information is uploaded to the subscriber node 1312.
  • billing information is generated for that subscriber 1312 which is stored in a billing database 1316. Therefore, the ARS 308 has the ability to inform the subscriber 1312 of each transaction, bill for those transactions, and also provide to the subscriber 1312 profile information regarding who is accessing the particular product advertisement having associated therewith the primary routing information field 904 for a particular routing code or bar code as described hereinabove. This information, once assembled, can then be transmitted to the subscriber 1312 and also be reflected in billing information and stored in the billing information database 1316.
  • FIGURE 14 there is illustrated a flowchart depicting the operation for storing the profile for the user.
  • the program is initiated in a block 1402 and then proceeds to a function block 1404, wherein the system will prompt for the profile upon initiation of the system.
  • This initiation is a function that is set to activate whenever the user initially loads the software that he or she is provided. The purpose for this is to create, in addition to the setup information, a user profile.
  • the program will flow to a decision block 1406 to determine whether the user provides basic or detailed information. This is selectable by the user. If selecting basic, the program will flow to a function block 1408 wherein the user will enter basic information such as name and serial number and possibly an address.
  • the original prompt in function block 1404 would have offers for such things as coupons, discounts, etc, if the user will enter additional information. If the user selects this option, the program from the decision block 1406 to a function block 1410. In the function block 1410, the user is prompted to enter specific information such as job, income level, general family history, demographic information and more. There can be any amount of information collected in this particular function block.
  • the program will then flow to a function block 1412 where this information is stored locally.
  • the program then flows to a decision block 1414 to then go on-line to the host or the ARS 308.
  • the user is prompted to determine whether he or she wants to send this information to the host at the present time or to send it later. If he or she selects the "later" option, the program will flow to a function block 1415 to prompt the user at a later time to send the information.
  • the user will not be able to utilize the software until the profile information is sent to the host. Therefore, the user may have to activate this at a later time in order to connect with the host.
  • the program will flow to the function block 1416 to initiate the connect process and then to a decision block 1418 to determine if the connection has been made. If not, the program will flow along a "N" path to a time to decision block 1420 which will time to an error block 1422 or back to the input of the connect decision block 1418. The program, once connected, will then flow along a "Y" path from decision block 1418 to a function block 1428 to send the profile information with the ID of the computer or user to the host.
  • the ID is basically, as described hereinabove, a "cookie" in the computer which is accessed by the program when transmitting to the host.
  • the program will then flow to a function block 1430 to activate the program such that it, at later time, can operate without requiring all of the set up information. In general, all of the operation of this flowchart is performed with a "wizard" which steps the user through the setup process. Once complete, the program will flow to a Done block 1432.
  • FIGURE 15 there is illustrated a flowchart depicting the operation of the host when receiving a transaction.
  • the program is initiated at a start block 1502 and then proceeds to decision block 1504, wherein it is determined whether the system has received a routing request, i.e., the routing information in the form of a bar code, etc., stored in the routing field 904 as described hereinabove with respect to FIGURE 9.
  • the program will loop back around to the input of decision block 1504 until the routing request has been received.
  • the program will flow along the "Y" path to a function block 1506 to receive the primary routing information and the user ID. Essentially, this primary routing information is extracted from the received field, in addition to the user ID.
  • the program then flows to a function block 1508 to look up the manufacturer URL that corresponds to the received primary routing information and then return the necessary command information to the originating PC 108 in order to allow that PC to connect to the destination associated with the primary routing information. Thereafter, the program will flow to a function block 1510 to update the transaction database 1310 for the current transaction.
  • the routing information will be stored as a single field with the associated IDs.
  • the profile database as described hereinabove, has associated therewith detailed profiles of each user on the system that has activated their software in association with their ID.
  • the routing code i.e., the barcode
  • the profile information can be transmitted back to the subscriber or manufacturer in the node 312 in realtime or non-realtime.
  • a decision block 1512 is provided for this, which determines if the delivery is realtime. If realtime, the program will flow along a "Y" path to a function block 1514 wherein the information will be immediately forwarded to the manufacturer or subscriber. The program will then flow to a function block 1516 wherein the billing for that particular manufacturer or subscriber will be updated in the billing database 1316. The program will then flow into an End block 1518. If it was non-realtime, the program moves along the "N" path to a function block 1520 wherein it is set for a later delivery and it is accrued in the transaction database.
  • the transaction database will accrue all information associated with a particular routing code.
  • a manufacturer With a realtime transaction, it is possible for a manufacturer to place an ad in a magazine or to place a product on a shelf at a particular time. The manufacturer can thereafter monitor the times when either the ads are or the products are purchased. Of course, they must be scanned into a computer which will provide some delay. However, the manufacturer can gain a very current view of how a product is moving.
  • a cola manufacturer were to provide a promotional advertisement on, for example, television, indicating that a new cola was going to be placed on the shelf and that the first 1000 purchasers, for example, scanning their code into the network would receive some benefit, such as a chance to win a trip to some famous resort in Florida or some other incentive, the manufacturer would have a very good idea as to how well the advertisement was received. Further, the advertiser would know where the receptive markets were. If this advertiser, for example, had placed the television advertisement in ten cities and received overwhelming response from one city, but very poor response from another city, he would then have some inclination to believe that either one poor response city was not a good market or that the advertising medium he had chosen was very poor. Since the advertiser can obtain a relatively instant response and also content with that response as to the demographics of the responder, very important information can be obtained in a relatively short time.
  • the disclosed embodiment is not limited to a single source PC 302, but may encompass a large number of source computers connected over a global communication network. Additionally, the embodiment is not limited to a single ARS 308 or a single advertiser server 312, but may include a large number of ARS and advertiser systems. It should also be noted that this embodiment is not limited only to global communication networks, but also may be used with LAN, WAN, and peer-to-peer configurations. It should also be noted that the disclosed embodiment is not limited to a personal computer, but is also applicable to, for example, a Network Computer (“NetPC”), a scaled- down version of the PC, or any system which accommodates user interaction and interfaces to information resources.
  • Network Computer Network Computer

Abstract

A method for interfacing scanned product information with the manufacturer of the product over a global communication network (306). Subsequent to scanning product bar code information (102), a proprietary wedge interface (104) adds additional information in the format of keystroke data. The wedge (104) comprises firmware which adds additional keystrokes to open a web browser window for insertion of the URL/bar code data string, and to send the data. The information is then transmitted to an advertiser reference server (308) which contains a database (310) of products and their associated advertiser URLs. The advertiser reference server (308) returns the URL of the product file located on an advertiser's information server (312) to the source computer (302). The source computer (302) then retrieves the product information from the advertiser's server (312) for processing.

Description

METHOD FOR INTERFACING SCANNED PRODUCT INFORMATION WITH A SOURCE FOR THE PRODUCT OVER A GLOBAL NETWORK
TECHNICAL FIELD OF THE INVENTION
This invention relates in general to a method for controlling a computer and, more particularly, to a method for modifying scanned bar code data associated with a manufacturer's product for input to a computer over a global communication network to a manufacturer's location to effect a link therebetween.
CROSS REFERENCE TO RELATED APPLICATION
This application is related to copending U.S. Patent Application Serial No. 09/151,530, entitled "METHOD FOR CONTROLLING A COMPUTER WITH AN AUDIO SIGNAL," (Atty Dkt No. PHLY-24,398) filed of even date herewith. BACKGROUND OF THE INVENTION
With the advent of the global information network, commonly referred to as the "Internet," there has been an increase in the number of marketing locations that have been disposed on the network to take advantage of the interconnectivity provided therewith to a user. These marketing locations allow users to access various products by accessing the
"website" of the particular marketing location which in effect creates a "virtual mall." In order to provide this access, the user is required to open up a "browser" application on their computer, which allows them access to locations on the web. Each location on the network is defined in terms of a Universal Resource Locator ("URL") such that the user need only input this URL into a web browser to effect a connection with that associated location. The user typically inputs a "domain" name which is sent to the network for conversion to the URL of the owner of that domain name. The use of the domain name has increased the ease of use on the network, as each location on the web can now have an easily decipherable address.
The type of information that is provided to a user from a given marketing location can be an interactive transaction which allows the user to select products, determine pricing, and even order products. Some of these marketing locations provide access to many products. However, other locations provide access to only a single company and all of its products. The primary problem with marketing products over the Internet or providing information over the Internet is to somehow inform the user of the location and connect that user to that particular location via an associated URL or domain name. At present, the user is required to type the domain or URL into a browser window and then instruct the browser to find that location over the network. This presents several disadvantages. First, the user somehow needs to have information about a particular company or one of its products such that there is a desire on the part of the user to seek more information. Second, there must be some type of link between the product and the "web page" of a particular company in order to allow the user to easily go from the product to the web page to retrieve more information about the product. At present, there is no easily accessible system that can link a product with the web page of the manufacturer of that product. SUMMARY OF THE INVENTION
The present invention disclosed and claimed herein comprises a method for associating a product with remote information for that product. A product identifier is accessed at a source location on a network which is in close association with a product such that it identifies the associated product. Routing information is appended to the accessed product identifier, which routing information defines the location of a remote location on the network . The product information is then transmitted from the source location to the remote location over the network in accordance with the appended routing information, which routing information defines the network connection between the source location and the remote location on the network, wherein information regarding the associated product can be returned to the source location from the remote location.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following description taken in conjunction with the accompanying Drawings in which: FIGURE 1 illustrates a block diagram of a computer system using the proprietary wedge interface;
FIGURE 2 illustrates the general I/O of the microcontroller used in the proprietary wedge electronics;
FIGURE 3 illustrates the retrieval system for obtaining product information over a global communication network;
FIGURES 4a-4e illustrate the various message packets transmitted between the source PC and servers used in the preferred embodiment;
FIGURE 5 illustrates a flowchart of the method for receiving and encoding the data prior to transmission to an Advertiser Reference Server ("ARS"); FIGURE 6 illustrates a flowchart of actions taken by the ARS server;
FIGURE 7 illustrates a flowchart of the interactive process between the source computer and ARS;
FIGURE 8 illustrates a web browser page receiving the modified URL/bar code data according to the preferred embodiment; FIGURE 9 illustrates a simplified block diagram of the disclosed embodiment;
FIGURE 10 illustrates a more detailed, simplified block diagram of the embodiment of FIGURE 9;
FIGURE 11 illustrates a diagrammatic view of a method for performing the routing operation; FIGURE 12 illustrates a block diagram of an alternate embodiment utilizing an audio input for generating the routing information;
FIGURE 13 illustrates a block diagram illustrating the generation of a profile with the disclosed embodiment;
FIGURE 14 illustrates a flowchart for generating the profile and storing it at the ARS; FIGURE 15 illustrates a flowchart for processing the profile information when information is routed to a user. DETAILED DESCRIPTION OF THE INVENTION
Referring now to FIGURE 1, there is illustrated a Personal Computer ("PC") 108 connected to receive inputs from a bar code scanner wand 100 and a keyboard 106, and also connected through a network interface 112 to a network. The PC 108 runs a browser program to facilitate the access of information on the network, for example, a global communication network known as the "Internet" or the World- Wide- Web ("Web"). The browser is a hypertext-linked application used for accessing information. Hypertext is a term used to describe a particular organization of information within a data processing system, and its presentation to a user. It exploits the computer's ability to link together information from a wide variety of sources to provide the user with the ability to explore a particular topic. The traditional style of presentation used in books employs an organization of the information which is imposed upon it by limitations of the medium, namely fixed sized, sequential paper pages. Hypertext systems, however, use a large number of units of text or other types of data such as image information, graphical information, video information, or sound information, which can vary in size. A collection of such units of information is termed a hypertext document, or where the hypertext documents employ information other than text, hypermedia documents.
Multimedia communications may use the Hypertext Transfer Protocol ("HTTP"), and files or formatted data may use the Hypertext Markup Language ("HTML"). This formatting language provides for a mingling of text, graphics, sound, video, and hypertext links by "tagging" a text document using HTML. Data encoded using HTML is often referred to as an "HTML document," an "HTML page," or a "home page." These documents and other Internet resources may be accessed across the network by means of a network addressing scheme which uses a locator referred to as a Uniform Resource Locator ("URL"), for example, "http://www.digital.com."
The Internet is one of the most utilized networks for interconnecting distributed computer systems and allows users of these computer systems to exchange data all over the world. Connected to the Internet are many private networks, for example, corporate or commercial networks. Standard protocols, such as the Transport Control Protocol ("TCP") and the Internet Protocol ("IP") provide a convenient method for communicating across these diverse networks. These protocols dictate how data are formatted and communicated. As a characteristic of the Internet, the protocols are layered in an IP stack. At higher levels of the LP stack, such as the application layer (where HTTP is employed), the user information is more readily visible, while at lower levels, such as the network level (where TCP/IP are used), the data can merely be observed as packets or a stream of rapidly moving digital signals.
Superimposed on the Internet is a standard protocol interface for accessing Web resources, such as servers, files, Web pages, mail messages, and the like. One way that Web resources can be accessed is by browsers made by Netscape® and Microsoft Internet Explorer®.
Referring again now to FIGURE 1, during a scanning mode, scanner 100 scans bar code data 102 into a "wedge" interface 104 for conversion into keyboard data, which keyboard data is passed therefrom into the keyboard input port of PC 108. A wedge interface 104 is simply an interface box containing circuitry that accommodates inputs from both a scanner and a computer keyboard 106. Therefore output from the scanner 100 is passed into the wedge 104 for conversion into keyboard data. Since the wedge 104 emulates a keyboard, the PC 108 does not require a separate input for the scanner 100, but may pass scanner data through the wedge 104 directly into the keyboard port of the PC 108. When not receiving scanner data, the wedge 104 simply acts as a pass-through device for keyboard data. The information is ultimately presented to a viewer by display 110.
In operation, a code for a specific product is provided in the form of a bar code 102. This bar code is the "link" to a product. The disclosed embodiment is operable to provide a link between that product and the web page of the manufacturer of that product by utilizing the bar code as routing information over the net, while also providing for an accounting step, as will be described in more detail hereinbelow. The bar code 102 by itself is not compatible with any kind of network for the purposes of communication therewith. It is primarily provided for a retail-type setting. Therefore, the information contained in the bar code 102, by itself, does not allow for anything other than identification of a product, assuming that one has a database containing information as to a correlation between the product and the bar code. The information in the bar code 102 is first fed into the wedge interface 104, which wedge interface 104 is operable to decode the bar code 102, and then "append" to that bar code intermediate routing information. This intermediate routing information is information that determines where the bar code information is to be sent on the network. This will be routed to the network through a network interface 112.
When assembling the intermediate routing information in the form of the bar code specifically, and the information defining the location of the ARS 308 on the network, it is important to note that the information in the bar code must be converted from the optical image to the numerical values input to the keyboard and then converted into HTML language. The reason for this is that it must be converted into a browser compatible format for interface with the browser. Of course, if another type of program were utilized, then it would have to converted into language compatible with that program.
The wedge interface 104, once having decoded the bar code information 102 and appending the intermediate routing information thereto, then organizes the bar code/intermediate routing information into keystroke data which is then routed to the PC 108. The reason for this is that the interface 104 merely makes the wand scanner 100, the information scanned, and the appended intermediate routing information appear as keystrokes to the PC 108, which essentially emulates a user on the keyboard 106 inputting the same information. Therefore, the combination of the interface 104 and the wand 100 allows a user to "key" data into the PC 108 through the use of the coded information in the bar code 102. Of course, a user could actually key in the information on the bar code 102 and then append the appropriate intermediate routing information associated therewith. As will be described hereinbelow, the intermediate routing information appended thereto is the URL of the destination server on the network.
Referring now to FIGURE 2, there is illustrated a microcontroller 200 which controls interfacing of the keyboard 106 and wand 100 with the PC 108. The microcontroller 200 has contained therein a memory 202 or it can have external memory. There are provided a plurality of interfaces 204 to the wand 100, a plurality of interfaces 206 to the PC 108, and plurality of interfaces 208 to the keyboard 106. In general, the wand 100 requires a serial data line, a ground line, and a power line. Similarly, the keyboard 106 requires a serial data line, a ground line, a clock line, and a power line. The PC 108 provides a clock line, a power line, a serial data, and a ground line for input to the microcontroller 200. The microcontroller 200 is operable to receive signals from the keyboard 106 and transfer the signals to the PC 108 as keyboard signals. Operation with the keyboard 106 is essentially a "pass-through" procedure. Data output from the keyboard is already in keyboard format, and therefore requires no conversion by the wedge interface 104. With respect to the wand 100, the serial data is not compatible with a keyboard 106 and, therefore, it must be translated into a keyboard format in order to allow input thereof to the keyboard input of the PC 108. The microcontroller 200 performs this function after decoding this bar code information and conversion of this bar code information into an appropriate stream of data which is comprised of the bar code information and the appended URL. This appended URL will be pre-stored in the memory 202 and is programmable at the time of manufacture. It is noted that the memory 202 is illustrated as being contained within the microcontroller 202 to provide a single chip solution. However, this could be external memory that is accessible by the microcontroller 202. Therefore, the microcontroller 200 provides an interface between a wand 100 and a keyboard 106 to a PC 108 which allows the wand 100 to receive coded information and convert it to keyboard strokes with appended intermediate routing information or, alternatively, to merely pass-through the keystrokes from the keyboard 106. Therefore, the user need not install any type of plug-in circuit board into the motherboard of the computer in order to provide an interface to the wand 100; rather, the user need only utilize the already available keyboard port in order to input the appropriate data into the system.
In this particular disclosed embodiment, the microcontroller 200 comprises a PIC16C73 microcontroller by Microchip Technologies™. The PIC16C73 device is a low cost CMOS 8-bit microcontroller with an integrated analog-to-digital converter. The PIC16C73 device, as illustrated in the disclosed embodiment, has 192 bytes of RAM and 4k x 4 of EPROM memory. The microcontroller 200 can accommodate asynchronous or synchronous inputs from input devices connected to it. In this disclosed embodiment, communication to the keyboard 106 is synchronous while it is asynchronous when communicating with wand 100.
It should be noted that, although in this particular embodiment bar code information 102 is input into the keyboard input of the PC 108, disclosed methods may also be advantageously utilized with high speed port architectures such as Universal Serial Bus ("USB") and IEEE 1394.
Bar codes are structured to be read in either direction. Timing considerations need to be addressed because of the variety of individuals scanning the bar code introduce a wide variety of scan rates. Bar codes use bars of varying widths. The presence of a black bar generates a positive pulse, and the absence of a black bar generates no pulse. Each character of a conventional bar code has associated therewith seven pulses or bars. Depending on the width of the bars, the time between pulses varies. In this disclosed embodiment, the interface circuitry 104 performs a "running" calculation of the scan time based upon the rising edge of the pulses commencing with the leader or header information. The minimum and maximum scans times are calculated continuously in software with the interface 104 during the scanning process to ensure a successful scan by the user.
Referring now to FIGURE 3, there is illustrated as a network source a PC 302, similar to PC 108, connected to a network interface 304, similar to network interface 112, which in turn connects to a global communication network 306. In this embodiment, data scanned by wand 100 is received by PC 302 with appended intermediate routing information as emulated keystrokes. This information directs PC 302 to obtain information from an Advertiser Reference Server ("ARS") 308 over Path "A." The ARS 308 is a network device disposed on the network that is defined as the location to which the scanned data from the bar code 102 is to be routed. This is defined by the routing information programmed into the interface 104. As such, scanned information will always be routed to the ARS 308, since a URL is unique on the system. Connected to the ARS 308 is a database 310 of product codes and associated manufacturers. The database 310 undergoes a continual update process which is transparent to the user. As companies sign-on to the system disclosed herein, i.e., subscribe thereto, manufacturer and product information is added to the database 310 without interrupting operation of the source PC 302 with frequent updates.
Referring now to FIGURE 4a, the message packet 400 sent from source PC 302 to ARS 308 via Path "A" comprises several fields. One field comprises the URL of the ARS 308. Another field comprises the advertiser product code or other information derived from the bar code 102, and any additional overhead information required for a given transaction. Yet another field comprises the network address of the source PC 302. In general, network transmissions are effected in packets of information, each packet providing a destination address, a source address, and data. These packets vary depending upon the network transmission protocol utilized for communication. Although the protocols utilized in the disclosed embodiment are of a conventional protocol suite commonly known as TCP/IP, it should be understood that any protocols providing the similar basic functions can be used, with the primary requirement that a browser can forward the bar code information to the desired URL in response to keystrokes being input to a PC. Hereinbelow, "message packet" shall refer to the combination of the destination URL, bar code information, and source address, even though more than a single packet must be transmitted to effect such a transmission.
Upon receipt of the message packet 400 from source PC 302, ARS 308 processes the information in accordance with instructions embedded in the overhead information. The ARS 308 specifically will extract the bar code information from the received packet 400 and, once extracted, will then decode this bar code information. Once decoded, this information is then compared with data contained within the ARS advertiser database 310 to determine if there is a "hit." If there is no "hit" indicating a match, then information is returned to the browser indicating such. If there is a "hit," a packet 402 is assembled which comprises the address of the source PC 302, and information instructing the source PC 302 as to how to access, directly in a "handoff ' operation, another location on the network, that of an advertiser server 312. This type of construction is relatively conventional with browsers such as Netscape® and Microsoft Internet Explorer® and, rather than displaying information from the ARS 308, the source PC 302 can then access the advertiser server 312. The ARS 308 transmits the packet 402 back to source PC 302 over Path "B." Referring now to FIGURE 4b, the message packet 402 comprises the address of the source PC 302, the URL of the advertiser server 312 embedded within instructional code, and the URL of the ARS 308.
Upon receipt of the message packet 402 by the source PC 302, the message packet 402 is disassembled to obtain pertinent routing information for assembly of a new message packet 404. The web browser running on source PC 302 is now directed to obtain, over Path "C," the product information from the particular advertiser server 312 location information embedded in message packet 404. Referring now to FIGURE 4c, the message packet 404 for this transaction comprises the URL of the advertiser server 312, the request- for-product- information data, and the address of the source PC 302.
Upon receipt of the message packet 404 from source PC 302, advertiser server 312 disassembles the message packet 404 to obtain the request-for-product-information data. The advertiser server 312 then retrieves the particular product information from its database, and transmits it over Path "D" back to the source PC 302. Referring now to FIGURE 4d, the message packet 406 for this particular transaction comprises the address of the source PC 302, the requested information, and the URL of the advertiser server 312.
Optionally, the ARS 308 may make a direct request for product information over Path "E" to advertiser server 312. In this mode, the ARS 308 sends information to the advertiser server 312 instructing it to contact the source PC 302. This, however, is unconventional and requires more complex software control. The message packet 408 for this transaction is illustrated in FIGURE 4e, which comprises the URL of the advertiser server 312, the request- for-product-information data, and the address of the source PC 302. Since product information is not being returned to the ARS 308, but directly to the source PC 302, the message packet 408 requires the return address to be that of the source PC 302. The product information is then passed directly to PC 302 over Path "D."
Referring now to FIGURE 5, there is illustrated a flowchart depicting the process for assembling the message packet 400 transmitted from the source PC 302 to the ARS 308. The process begins in function block 500 wherein the UPC bar code 102 is scanned by the user. In function block 502, the scanner wand 102 interprets the coded bars and transmits the signal over the serial connection to the wedge interface 104 where the bar code data is then decoded by software stored in firmware. The decoded data is then stored in a word register in function block 504, for easy manipulation. Program flow continues to function block 506 where the word register data is then converted into keystroke data and stored. At this point, the product information is stored in memory on the wedge interface 104. From this point, information is sent serially through the keyboard port to be inserted into the web browser. In function block 508, a Ctrl-O command is added to the keystroke data. The hypertext protocol preamble http:// is added to the keystroke data in a function block 510. From there the program flows to function block 512 where the URL of the ARS 308 is added to the keystroke data. In function block 514, characters /? are added to the keystroke data. In function block 516, the UPC code data is added to the keystroke data. In function block 518, a carriage return is added to the keystroke data to effect transmission of the data to the ARS 308 in function block 520, over Path "A."
It should be noted that this embodiment is not limited to UPC bar code standards, but may also incorporate other bar code standards. For example, if a Code 128 standard were used, optional steps may be employed to deal with a system which uses this particular code, or multiple bar code standards. Function block 522 may be used in a multi-code scenario to determine the particular bar code standard used. Function block 524 enables the software to handle the particular standard being employed.
Referring now to FIGURE 6, there is illustrated a flowchart of the process the ARS 308 may undergo when receiving the message packet 400 from the source PC 302. In decision block 600, the ARS 308 checks for the receipt of the message packet 400. If a message packet 400 is not received, program flow moves along the "N" path to continue waiting for the message. If the message packet 400 is received, program flow continues along path "Y" for message processing. Upon receipt of the message packet 400, in function block 602, the ARS 308 extracts the characters /? and the following variable field comprising the UPC code. The UPC code is then extracted independently in function block 604 in preparation for matching the product code with the appropriate advertiser server address. In function block 606, the UPC code is then used with a look-up table to retrieve the advertiser server 312 URL of the respective product information contained in the UPC code. In function block 608, the ARS 308 then assembles message packet 402 for transmission back to the source PC 302. Function block 610 indicates the process of sending the message packet 402 back to the source PC 302 over Path "B."
Referring now to FIGURE 7, there is illustrated a flowchart of the interactive processes between the source PC 302 and the advertiser server 312. In function block 700, the source PC 302 receives the message packet 402 back from the ARS 308 and begins to decode the packet 402. In function block 702, the URL of the advertiser product information is extracted from the message packet 402 and saved for insertion into the message packet 404 to the advertiser server 312. The message packet 404 is then assembled and sent by the source PC 302 over Path "C" to the advertiser server 312, in function block 704. While the source PC 302 waits, in function block 706, the advertiser server 312 receives the message packet 404 from the source PC 302, in function block 708, and disassembles it. The product information location is then extracted from the message packet 404 in function block 710. The particular product information is retrieved from the server database for transmission back to the source PC 302. In function block 712, the product information is assembled into message packet 406 and then transmitted back to the source PC 302 over Path "D." Returning to the source PC 302 in function block 714, the advertiser product information contained in the message packet 406 received from the advertiser server 312, is then extracted and processed in function block 716.
Referring now to FIGURE 8, a user launches a web browser application on a source PC 302 and computer display 800 presents a browser page 802. The user then scans the bar code 102 with a scanner wand 100. The product information embedded in the keystroke data is transmitted into the wedge interface 104 where proprietary URL data is appended to the bar code data to create an appended word. The appended word, in the format of keystroke data, is transmitted from the wedge interface 104 into the keyboard input port of source PC 302. Upon receipt of the URL/bar code keystroke data 808 from the wedge interface 104, a URL page 804 is opened. URL page 804 is opened in response to a Ctrl-O command added by the proprietary wedge interface 104 as the first character string. Opening URL page 804 automatically positions the cursor in a field 806 where additional keystroke data following the Ctrl-O command will be inserted. After URL page 804 is opened, the hypertext protocol preamble http:// is inserted into the field 806. Next, URL information associated with the location of the ARS 308 is inserted into field 806. Following the ARS 308 URL data are the characters /? to allow entry of variables immediately following the /? characters. In this embodiment, the variable following is a UPC product code which provides the cross-reference information for obtaining the advertiser URL from the ARS database 310. Next, a carriage return is added to send the URL/bar code data and close the window 804. After the message packet 400 is transmitted to the ARS 308 from the source PC 302, transactions from the ARS 308, to the source PC 302, to the advertiser server 312, and back to the source PC 302, occur quickly and are transparent to the viewer. At this point, the next information the viewer sees is the product information which was received from the advertiser server 312.
Referring now to FIGURE 9, there is illustrated a product 902 which can be either a product, an advertisement ("ad"), or some tangible or visible device to which the user has access. In association with this product or ad 902, there is provided in this disclosed embodiment a region 904 which has contained therein the primary routing information. In the embodiment described hereinabove, this primary routing information is in the form of a bar code. However, it should be understood that, from an optical standpoint, the primary routing information could be encoded in any type of medium. For example, there could be provided an optically encoded background which, when scanned, would allow information to be extracted therefrom which would constitute primary routing information. One example of this is the digital encoding via optical means of a background on a driver's license. By scanning the entire driver's license, digital information embedded within the optical coding is extracted to provide primary routing information. Many other examples are present wherein optical information is encoded onto some tangible medium.
Once the primary routing information is extracted from the region 904, it is then input to the PC which, as disclosed hereinabove, utilizes the scanning wand 100 and the interface 104. The primary routing information, after being extracted from the region 904, through either the decoding associated with the wand 100 or some other technique, is then input to a PC 906, similar to the PC 108 described hereinabove. The PC 906 is interfaced with a user 908, which user 908 is operable to initiate the transfer of the routing information from the region 904 to the PC 906. This is an active system which requires some type of user intervention. As described hereinabove, the PC 906, in response to receiving the primary routing information from the region 904, will then access a network 910 to provide an interconnection medium with a plurality of network nodes (not shown), one of these having associated therewith remote information on a network node 912. This network node 912 has contained therein remote information that is associated with the primary routing information 904. The PC 906, in conjunction with the network 910, is operable to access the remote information 912 via the primary routing information extracted from the optical field 904 such that there is connection made between the PC 906 and the remote information node 912 to allow information to then be extracted from the remote information node 912 and provided to the user 908. This is all accomplished by the user actively inputting the information in the optical field 904 to the PC 906 via some type of input device. In the disclosed embodiment, this does require the user to actually launch a web browser and then allow the input device, i.e., the wand 100, to input the information to the web browser. However, software within the PC 906 could be implemented to actually launch the browser in response to input of information from the optical field 904.
Referring now to FIGURE 10, there is illustrated a more detailed diagrammatic view of the embodiment of FIGURE 9. The routing information in the region 904 is input to a PC 1002, the PC 1002 being similar to the PC 108 in FIGURE 1 and also to the PC 906. However, in the detailed embodiment, the PC 1002 is operable to assemble a packet of information comprised of secondary routing information and the primary routing information in field 904 for transfer thereto. The secondary routing information is routing information that the PC 1002 uses to transfer the primary routing information in field 904 to an intermediate PC 1004 over the network 910. This intermediate PC 1004 is basically ARS 308 in FIGURE 3. Associated with the PC 1004 is the database 1006, similar to the advertiser database 310. However, this database can contain other information. The operation, as described hereinabove, requires a user 908 to first access the routing information in field 904 by some user initiated operation. Once input to the PC 1002, the primary routing information in field 904 is assembled with secondary routing information which then forwards this primary routing information in field 904 to the PC 1004. The PC 1004 looks up information in its database 1006 in the form of table to determine where the location of the remote information is on the network 910. This is then relayed back to the PC 1002 which then effects a connection to the remote information node 912. Therefore, it can be seen that with the use of PC 1004 and its associated database 1006, information in the optical field 904 can be related to network routing information to the remote node 912. Note that, in order for the PC 1002 to be interfaced with the remote information network node 912, it is necessary to transfer all of the information in the primary routing information field 904 in the form of the primary routing information to the PC 1004 in order effect a connection.
Referring now to FIGURE 11, there is illustrated a diagrammatic view of how the network packet is formed for sending the primary routing information to the PC 1004. In general, the primary routing information occupies a single field which primary routing information is then assembled into a data packet with the secondary routing information for transfer to the network 910. This is described hereinabove in detail. However, it is important to recognize that the information contained within the optical field 904 in the form of a bar code, an optically encoded region, etc., constitutes routing information. For example, once the database 1006 at the PC 1004 has been programmed with the manufacturer's location, the manufacturer knows that it only needs to place this routing information in an optical field in association with either a product or an advertisement or some other medium in order to allow the user access thereto. It is the association of this optical field with the product that encourages the user to input the optical information to a network to view additional information about the product. Of course, the additional information is then viewed by the user or accessible by the user as defined by the manufacturer and not by the PC 1004. The PC 1004 merely relays this information.
Referring now to FIGURE 12, there is illustrated a block diagram of an alternate embodiment of the present invention utilizing an audio input source. In the embodiment of FIGURE 12, there is provided a program media 1202, which program media is operable to contain therein some type of routing information in the form of an audio signal. This can be an encoded tone, or other such device which, when coupled with an audio output device 1204 will cause routing information in the form of an audio tone to be input to the PC 906. The PC 906 has associated therewith a conventional sound card which is operable to receive the audio signal on a dedicated port therefor and digitize this tone for processing by the PC 906 internal thereto. This decoding operation is a conventional operation. However, the audio output device 1204 is a device that is activated by the user 908. This operates similar to the embodiment of FIGURE 9 in that the user must activate it and, therefore, this is an active operation. Once received, in response thereto, the routing information from remote information node 912 is provided to the user. The program media 1202 and the audio output device 1204 could be any type of media and audio output device. One type of media might be that associated with children's books which have the ability to access audio information about the picture.
Referring now to FIGURE 13, there is illustrated a block diagram for an embodiment wherein a user's profile can be forwarded to the original subscriber or manufacturer. The PC 906 has associated therewith a profile database 1302, which profile database 1302 is operable to store a profile of the user 908. This profile is created when the program, after initial installation, requests profile information to be input in order to activate the program. In addition to the profile, there is also a unique ID that is provided to the user in association with the browser program that runs on the PC 906. This is stored in a storage location represented by a block 1304. This ID 1304 is accessible by a remote location as a "cookie" which is information that is stored in the PC 906 in an accessible location, which accessible location is actually accessible by the remote program running on a remote node.
The ARS 308, which basically constitutes the PC 1004 of FIGURE 10, is operable to have associated therewith a profile database 1308, which profile database 1308 is operable to store profiles for all of the users. The profile database 1308 is a combination of the profiles stored in profile database 1302 for all of the PCs 906 that are attachable to the system. This is to be distinguished from information stored in the database 310, the advertiser's database, which contains intermediate destination tables. When the routing information in the field 904 is forwarded to the ARS 308 and extracted from the original data packet, the look-up procedure described hereinabove can then be performed to determine where this information is to be routed. The profile database is then utilized for each transaction, wherein each transaction in the form of the routing information received from the field 904 is compared to the destination tables 310 to determine what manufacturer it is associated with, and the associated ID that is transmitted along with the routing information in field 904 is then compared with the profile database 1308 to determine if a profile associated therewith is available. This information is stored in a transaction database 1310 such that, at a later time, for each routing code or bar code received in the form of the information in field 904, there will associated therewith the IDs of each of the PCs 906. The associated profiles in database 1308, which are stored in association with IDs, can then be assembled and transmitted to a subscriber as referenced by a subscriber node 1312 on the network 910. The ARS 308 can do this in two modes, a realtime mode or a non-realtime mode. In a realtime mode, each time a PC 906 accesses the advertiser database 310, that user's profile information is uploaded to the subscriber node 1312. At the same time, billing information is generated for that subscriber 1312 which is stored in a billing database 1316. Therefore, the ARS 308 has the ability to inform the subscriber 1312 of each transaction, bill for those transactions, and also provide to the subscriber 1312 profile information regarding who is accessing the particular product advertisement having associated therewith the primary routing information field 904 for a particular routing code or bar code as described hereinabove. This information, once assembled, can then be transmitted to the subscriber 1312 and also be reflected in billing information and stored in the billing information database 1316.
Referring now to FIGURE 14, there is illustrated a flowchart depicting the operation for storing the profile for the user. The program is initiated in a block 1402 and then proceeds to a function block 1404, wherein the system will prompt for the profile upon initiation of the system. This initiation is a function that is set to activate whenever the user initially loads the software that he or she is provided. The purpose for this is to create, in addition to the setup information, a user profile. Once the user is prompted for this, then the program will flow to a decision block 1406 to determine whether the user provides basic or detailed information. This is selectable by the user. If selecting basic, the program will flow to a function block 1408 wherein the user will enter basic information such as name and serial number and possibly an address. However, to provide some incentive to the user to enter more information, the original prompt in function block 1404 would have offers for such things as coupons, discounts, etc, if the user will enter additional information. If the user selects this option, the program from the decision block 1406 to a function block 1410. In the function block 1410, the user is prompted to enter specific information such as job, income level, general family history, demographic information and more. There can be any amount of information collected in this particular function block.
Once all of the information is collected, in either the basic mode or the more specific mode, the program will then flow to a function block 1412 where this information is stored locally. The program then flows to a decision block 1414 to then go on-line to the host or the ARS 308. In general, the user is prompted to determine whether he or she wants to send this information to the host at the present time or to send it later. If he or she selects the "later" option, the program will flow to a function block 1415 to prompt the user at a later time to send the information. In the disclosed embodiment, the user will not be able to utilize the software until the profile information is sent to the host. Therefore, the user may have to activate this at a later time in order to connect with the host.
If the user has selected the option to upload the profile information to the host, the program will flow to the function block 1416 to initiate the connect process and then to a decision block 1418 to determine if the connection has been made. If not, the program will flow along a "N" path to a time to decision block 1420 which will time to an error block 1422 or back to the input of the connect decision block 1418. The program, once connected, will then flow along a "Y" path from decision block 1418 to a function block 1428 to send the profile information with the ID of the computer or user to the host. The ID is basically, as described hereinabove, a "cookie" in the computer which is accessed by the program when transmitting to the host. The program will then flow to a function block 1430 to activate the program such that it, at later time, can operate without requiring all of the set up information. In general, all of the operation of this flowchart is performed with a "wizard" which steps the user through the setup process. Once complete, the program will flow to a Done block 1432.
Referring now to FIGURE 15, there is illustrated a flowchart depicting the operation of the host when receiving a transaction. The program is initiated at a start block 1502 and then proceeds to decision block 1504, wherein it is determined whether the system has received a routing request, i.e., the routing information in the form of a bar code, etc., stored in the routing field 904 as described hereinabove with respect to FIGURE 9. The program will loop back around to the input of decision block 1504 until the routing request has been received. At this time, the program will flow along the "Y" path to a function block 1506 to receive the primary routing information and the user ID. Essentially, this primary routing information is extracted from the received field, in addition to the user ID. The program then flows to a function block 1508 to look up the manufacturer URL that corresponds to the received primary routing information and then return the necessary command information to the originating PC 108 in order to allow that PC to connect to the destination associated with the primary routing information. Thereafter, the program will flow to a function block 1510 to update the transaction database 1310 for the current transaction. In general, the routing information will be stored as a single field with the associated IDs. The profile database, as described hereinabove, has associated therewith detailed profiles of each user on the system that has activated their software in association with their ID. Since the ID was sent in association with the routing information, what is stored in the transaction database is the routing code, i.e., the barcode, in association with all of the IDs transmitted to the system in association with that particular routing code. Once this transaction database has been updated, as described hereinabove, the transactions can be transferred back to the subscriber at node 312 with the detailed profile information from the profile database 1308.
The profile information can be transmitted back to the subscriber or manufacturer in the node 312 in realtime or non-realtime. A decision block 1512 is provided for this, which determines if the delivery is realtime. If realtime, the program will flow along a "Y" path to a function block 1514 wherein the information will be immediately forwarded to the manufacturer or subscriber. The program will then flow to a function block 1516 wherein the billing for that particular manufacturer or subscriber will be updated in the billing database 1316. The program will then flow into an End block 1518. If it was non-realtime, the program moves along the "N" path to a function block 1520 wherein it is set for a later delivery and it is accrued in the transaction database. In any event, the transaction database will accrue all information associated with a particular routing code. With a realtime transaction, it is possible for a manufacturer to place an ad in a magazine or to place a product on a shelf at a particular time. The manufacturer can thereafter monitor the times when either the ads are or the products are purchased. Of course, they must be scanned into a computer which will provide some delay. However, the manufacturer can gain a very current view of how a product is moving. For example, if a cola manufacturer were to provide a promotional advertisement on, for example, television, indicating that a new cola was going to be placed on the shelf and that the first 1000 purchasers, for example, scanning their code into the network would receive some benefit, such as a chance to win a trip to some famous resort in Florida or some other incentive, the manufacturer would have a very good idea as to how well the advertisement was received. Further, the advertiser would know where the receptive markets were. If this advertiser, for example, had placed the television advertisement in ten cities and received overwhelming response from one city, but very poor response from another city, he would then have some inclination to believe that either one poor response city was not a good market or that the advertising medium he had chosen was very poor. Since the advertiser can obtain a relatively instant response and also content with that response as to the demographics of the responder, very important information can be obtained in a relatively short time.
It should be noted that the disclosed embodiment is not limited to a single source PC 302, but may encompass a large number of source computers connected over a global communication network. Additionally, the embodiment is not limited to a single ARS 308 or a single advertiser server 312, but may include a large number of ARS and advertiser systems. It should also be noted that this embodiment is not limited only to global communication networks, but also may be used with LAN, WAN, and peer-to-peer configurations. It should also be noted that the disclosed embodiment is not limited to a personal computer, but is also applicable to, for example, a Network Computer ("NetPC"), a scaled- down version of the PC, or any system which accommodates user interaction and interfaces to information resources.
Although the preferred embodiment has been described in detail, it should be understood that various changes, substitutions and alterations can be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A method for associating a product with remote information for that product, comprising the steps of: accessing a product identifier at a source location on a network which is in close association with a product such that it identifies the associated product; appending routing information to the accessed product identifier, which routing information defines the location of a remote location on the network; and transmitting the product information from the source location to the remote location over the network in accordance with the appended routing information, which routing information defines the network connection between the source location and the remote location on the network, wherein information regarding the associated product can be returned to the source location from the remote location.
2. The method of Claim 1, wherein the step of transmitting the product information is performed in response to the step of accessing.
3. The method of Claim 1 , wherein the step of appending the routing information occurs in response to the step of accessing.
4. The method of Claim 1, wherein the routing information is associated with a secondary location on the network such that the step of transmitting to the remote location transmits the product information to the remote location in association with routing information for returning to the source location, and further comprising: accessing a database of product routing information which provides an association between a predetermined product identifier and a remote product information location on the network, there being a plurality of such product routing information stored in the database; accessing the database in response to receiving at the secondary location a transmitted product identifier from the source location; comparing the received product identifier with the stored product routing information in the database; if there is a match between the received product identifier and any of the stored product routing information, transmitting the matching product routing information back to the source location; and at the source location, in response to receiving the matching product routing information, interconnecting the source location with the remote product information location over the network and receiving product information therefrom.
5. The method of Claim 4, and further comprising the step of displaying the received product information.
6. The method of Claim 1 , wherein the product identifier is attached to the product.
7. The method of Claim 6, wherein the product identifier is a bar code.
8. The method of Claim 7, wherein the step of accessing comprises scanning the bar code.
9. The method of Claim 1 , wherein the network is a global communication network that provides a universal resource locator (URL) for each location on the network and the routing information is comprised of the URL for the location.
10. The method of Claim 9, wherein a processing system is provided running a program that receives keystroke inputs for routing of information thereto and the step of appending routing information comprises the step of forming a keystroke string that emulates the combination of the routing information and the product identifier in keystrokes and transmits the emulated keystrokes to the program in the same manner that a user would key the strokes in, and the step of transmitting is performed in response to the appended routing information and product identifier transmitted to the program with an appended command associated therewith that instructs the program to perform a transmit operation in a manner similar to a user interacting with the program to transmit routing information.
11. The method of Claim 10, wherein the appended routing information includes instructional information as to how the remote location is to handle the transmitted product identifier.
12. A method for interfacing a scanned product code with the product source, over a communication network, comprising the steps of: inputting the scanned product code into an interface circuit at a source location; appending routing information to the scanned product code to comprise a message packet; in a first transaction, automatically routing the message packet through a computer operating a web browser at said source location, over said communication network to one or more remote locations; and restructuring said message packet during each subsequent transaction of said first transaction, to define the direction of network communication between said source location and respective ones of one or more of the remote locations, and to link said scanned product code at said source location with said product source at one of said remote locations.
13. A method for interfacing a scanned product code with the product source, over a communication network, comprising the steps of: inputting said scanned product code into an interface circuit at a source location; appending routing information to said scanned product code to comprise a first message packet; wherein said routing information defines network communication between said source location and a first remote location; in response to said first routing information, automatically routing said first message packet from said source location over said communication network to said first remote location; in response to said first message packet, automatically routing back to said source location, a second message packet comprising an address of a second remote location; in response to said second message packet, automatically routing to said second remote location, a third message packet comprising a request for product information; and in response to said third message packet, automatically routing to said source location, a fourth message packet comprising said product information.
14. A system for interfacing a scanned product code with the product source, over a communication network, comprising: an interface circuit for receiving a scanned product code, said interface circuit appending routing information to said scanned product code to comprise a message packet; a computer connected to said interface circuit and operating a web browser at a source location, said source location connected to one or more remote locations over a communication network; wherein in a first transaction, said message packet is automatically routed through said computer by said web browser to one or more of said remote locations; and wherein during each subsequent transaction, said message packet is restructured to define the direction of communication between said source location and respective ones of one or more of said remote locations, and to link said scanned product code at said source location with said product source at said remote location.
PCT/US1999/020694 1998-09-11 1999-09-09 Method for interfacing scanned product information with a source for the product over a global network WO2000016211A1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP55719999A JP2002512722A (en) 1998-09-11 1999-09-09 How to interface scanned product information with the source of the product via a global network
AU58190/99A AU5819099A (en) 1998-09-11 1999-09-09 Method for interfacing scanned product information with a source for the product over a global network
IL14194199A IL141941A0 (en) 1998-09-11 1999-09-09 Method for interfacing scanned product information with a source for the product over a global network
BR9913624-4A BR9913624A (en) 1998-09-11 1999-09-09 Method for interfacing scanned product information to a product source via a global network via interface
EP99945622A EP1018080A4 (en) 1998-09-11 1999-09-09 Method for interfacing scanned product information with a source for the product over a global network
TW088120270A TW459183B (en) 1998-09-11 1999-11-19 Method for interfacing scanned product information with a source for the product over a global network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15147198A 1998-09-11 1998-09-11
US09/151,471 1998-09-11

Publications (1)

Publication Number Publication Date
WO2000016211A1 true WO2000016211A1 (en) 2000-03-23

Family

ID=22538916

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/020694 WO2000016211A1 (en) 1998-09-11 1999-09-09 Method for interfacing scanned product information with a source for the product over a global network

Country Status (10)

Country Link
EP (1) EP1018080A4 (en)
JP (1) JP2002512722A (en)
KR (1) KR20010020456A (en)
CN (2) CN100476788C (en)
AU (1) AU5819099A (en)
BR (1) BR9913624A (en)
IL (1) IL141941A0 (en)
PL (1) PL347312A1 (en)
TW (1) TW459183B (en)
WO (1) WO2000016211A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001015034A1 (en) 1999-08-24 2001-03-01 Digitalconvergence.:Com Inc. Unique id for identifying a user and facilitating an e-commerce transaction
JP2002312270A (en) * 2001-04-18 2002-10-25 Nec Corp Use system, method and program for print information
EP1581885A2 (en) * 2002-12-18 2005-10-05 Iconlab, Inc. Contents and information providing service system for using a code, user terminal, communication agency platform, operating agency platform, on-line relation member module, and the method from the same
CN103177002A (en) * 2011-12-20 2013-06-26 深圳市金域文化传播有限公司 Object display method combined with advantage of virtual display
CN103401852A (en) * 2013-07-23 2013-11-20 徐华 Two-dimensional code smart business card system based on authentication and design method thereof
US8590776B2 (en) 2009-05-20 2013-11-26 Van Megchelen & Tilanus B.V. Physical product sample provided with at least one product sample code
US8856871B2 (en) 2010-05-20 2014-10-07 Van Megchelen & Tilanus B.V. Method and system for compiling a unique sample code for specific web content
US9996676B2 (en) 2011-10-17 2018-06-12 Carefusion 303, Inc. Associating an information reader and a medical device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10149480A1 (en) * 2001-10-08 2003-04-17 Siemens Ag Automated equipment with standardized interface e.g. production machinery access method extracts address held in data processor to identify equipment
JP2003146437A (en) 2001-11-07 2003-05-21 Hitachi Ltd Distribution management method and system
TW200805184A (en) * 2006-07-14 2008-01-16 qi-long Zhong Inspecting and verifying method of merchandise safety
CN101599076B (en) * 2009-06-29 2016-01-13 腾讯科技(深圳)有限公司 The method of display advertisement commodity and device in Search Results

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5047614A (en) * 1989-01-23 1991-09-10 Bianco James S Method and apparatus for computer-aided shopping
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
WO1997001137A1 (en) 1995-06-20 1997-01-09 Solar Communications, Inc. System for using article of commerce to access remote computer
US5604682A (en) * 1993-10-15 1997-02-18 Image Telecommunications Corp. Information service control point which retrieves information as blocks of data and outputs the retrieved data via a communications link
US5640193A (en) * 1994-08-15 1997-06-17 Lucent Technologies Inc. Multimedia service access by reading marks on an object

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3526688B2 (en) * 1996-03-29 2004-05-17 富士通株式会社 Metered system and method for connectionless communication
US5918013A (en) * 1996-06-03 1999-06-29 Webtv Networks, Inc. Method of transcoding documents in a network environment using a proxy server
JP4372848B2 (en) * 1996-07-08 2009-11-25 インターネットナンバー株式会社 Internet access method and system
WO1998003923A1 (en) * 1996-07-21 1998-01-29 Ernestine, Llc World wide web bar code access system
WO1998006055A1 (en) * 1996-08-08 1998-02-12 Rapaport Jeffrey Alan Apparatus and method for obtaining information from a computer network using a scanner and browser
JP3686189B2 (en) * 1996-10-31 2005-08-24 東芝テック株式会社 Information processing method and information processing apparatus for network system
JPH10171758A (en) * 1996-12-06 1998-06-26 Neolex:Kk Www file reading system using bar code
JP3392674B2 (en) * 1996-12-24 2003-03-31 東芝テック株式会社 Product sales registration data processing device
AU6534798A (en) * 1997-02-13 1998-09-18 Neomedia Technologies, Inc. Automatic server access in an internetworked computer system
US6148331A (en) * 1997-04-25 2000-11-14 Parry; Rhys Evan Destination website access and information gathering system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5047614A (en) * 1989-01-23 1991-09-10 Bianco James S Method and apparatus for computer-aided shopping
US5604682A (en) * 1993-10-15 1997-02-18 Image Telecommunications Corp. Information service control point which retrieves information as blocks of data and outputs the retrieved data via a communications link
US5640193A (en) * 1994-08-15 1997-06-17 Lucent Technologies Inc. Multimedia service access by reading marks on an object
WO1997001137A1 (en) 1995-06-20 1997-01-09 Solar Communications, Inc. System for using article of commerce to access remote computer
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1018080A4

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001015034A1 (en) 1999-08-24 2001-03-01 Digitalconvergence.:Com Inc. Unique id for identifying a user and facilitating an e-commerce transaction
JP2002312270A (en) * 2001-04-18 2002-10-25 Nec Corp Use system, method and program for print information
EP1581885A2 (en) * 2002-12-18 2005-10-05 Iconlab, Inc. Contents and information providing service system for using a code, user terminal, communication agency platform, operating agency platform, on-line relation member module, and the method from the same
EP1581885A4 (en) * 2002-12-18 2007-08-15 Iconlab Inc Contents and information providing service system for using a code, user terminal, communication agency platform, operating agency platform, on-line relation member module, and the method from the same
US8590776B2 (en) 2009-05-20 2013-11-26 Van Megchelen & Tilanus B.V. Physical product sample provided with at least one product sample code
US8856871B2 (en) 2010-05-20 2014-10-07 Van Megchelen & Tilanus B.V. Method and system for compiling a unique sample code for specific web content
US9996676B2 (en) 2011-10-17 2018-06-12 Carefusion 303, Inc. Associating an information reader and a medical device
US10418130B2 (en) 2011-10-17 2019-09-17 Carefusion 303, Inc. Associating an information reader and a medical device
US11289180B2 (en) 2011-10-17 2022-03-29 Carefusion 303, Inc. Medical device with information reader
US11581078B2 (en) 2011-10-17 2023-02-14 Carefusion 303, Inc. Associating an information reader and a medical device
US11901058B2 (en) 2011-10-17 2024-02-13 Carefusion 303, Inc. Associating an information reader and a medical device
CN103177002A (en) * 2011-12-20 2013-06-26 深圳市金域文化传播有限公司 Object display method combined with advantage of virtual display
CN103401852A (en) * 2013-07-23 2013-11-20 徐华 Two-dimensional code smart business card system based on authentication and design method thereof
CN103401852B (en) * 2013-07-23 2016-08-03 徐华 Quick Response Code intelligent business card system based on certification and method for designing

Also Published As

Publication number Publication date
CN1273653A (en) 2000-11-15
IL141941A0 (en) 2002-03-10
EP1018080A1 (en) 2000-07-12
PL347312A1 (en) 2002-03-25
KR20010020456A (en) 2001-03-15
EP1018080A4 (en) 2008-03-26
JP2002512722A (en) 2002-04-23
CN101409707B (en) 2011-07-20
TW459183B (en) 2001-10-11
AU5819099A (en) 2000-04-03
BR9913624A (en) 2002-01-15
CN100476788C (en) 2009-04-08
CN101409707A (en) 2009-04-15

Similar Documents

Publication Publication Date Title
US7912961B2 (en) Input device for allowing input of unique digital code to a user's computer to control access thereof to a web site
US6701369B1 (en) Method and apparatus for accessing a remote location by sensing a machine-resolvable code
US7979576B2 (en) Method and apparatus for connecting a user location to one of a plurality of destination locations on a network
US6708208B1 (en) Unique bar code for indicating a link between a product and a remote location on a web network
US7257614B2 (en) Digital ID for selecting web browser and use preferences of a user during use of a web application
US7596786B2 (en) Method and apparatus for utilizing an existing product code to issue a match to a predetermined location on a global network
US7739353B2 (en) Launching a web site using a personal device
WO2001015019A2 (en) Method and apparatus for accessing a remote location by scanning an optical code
WO2001057815A2 (en) Web site access by manual entry of a character string into a software interface
US20070244712A1 (en) Method and apparatus for directing an existing product code to a remote location
US7536478B2 (en) Method and apparatus for opening and launching a web browser in response to an audible signal
WO2001015021A2 (en) Method and apparatus for establishing connection to a remote location on a computer network
WO2000016211A1 (en) Method for interfacing scanned product information with a source for the product over a global network
US7694020B2 (en) Network routing utilizing a product code
US7975022B2 (en) Launching a web site using a passive transponder
WO2001075674A2 (en) Method and apparatus for delivering information from a remote site on a network based on statistical information
WO2001086559A2 (en) Method and apparatus for utilizing a unique transaction code to update a magazine subscription over the internet
WO2001015020A2 (en) A combined product code and insignia for signifying an internal interactive code

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 99800607.6

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 1999945622

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1019997010910

Country of ref document: KR

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWP Wipo information: published in national office

Ref document number: 1999945622

Country of ref document: EP

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: IN/PCT/2001/00204/DE

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: PA/A/2001/002643

Country of ref document: MX

WWP Wipo information: published in national office

Ref document number: 1019997010910

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 200102339

Country of ref document: ZA

WWE Wipo information: entry into national phase

Ref document number: IN/PCT/2001/00264/DE

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 58190/99

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 510982

Country of ref document: NZ

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWW Wipo information: withdrawn in national office

Ref document number: 1019997010910

Country of ref document: KR