BACKGROUND1. Technical Field
The present technology relates generally to systems and methods for carrying out secure transactions. More specifically, the present technology relates to systems and methods for performing secure transactions using optical codes and optical code readers.
2. Introduction
This section is intended to introduce the reader to various aspects of art that may be related to various aspects of the present techniques, which are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
Many payment instruments currently exist and may be used to carry out a financial transaction between two or more parties. For example, payments may be made using cash, credit cards, debit cards, checks, electronic checks, and so forth. In recent years, the growth of electronic commerce may be at least partially attributed to the popularity of credit cards, debit cards, and other hard non-currency based payment instruments. Thus, while merchants generally continue to accept cash and other hard currency as a method of payment for goods and/or services, most merchants now also accept payments made using credit cards, debit cards, stored-value (e.g., pre-paid) cards, checks, and electronic checks. In particular, online merchants (e.g., those operating “virtual stores” on the Internet or World Wide Web) may rely heavily on the use of credit and debit cards.
Mobile devices, such as personal digital assistants and Smartphones, have become increasingly ubiquitous in our society. Indeed, attempts have been made to extend the functionality of these devices to carry out financial transactions. However, these attempts often require either a wired connection with a merchant (e.g., online wallets) or an electro-magnetic coupling with a designated reader (e.g., Bluetooth, Near Field Communication). Unfortunately, these types of mobile payment systems are vulnerable to privacy breaches and cannot interact with traditional paper bills and invoices. Accordingly, it is desirable to extend the benefits of a mobile payment system to situations involving traditional paper bills, invoices, prescriptions, etc. and also to ensure the privacy of the users of these novel systems.
SUMMARYAdditional features and advantages of the disclosure will be set forth in the description which follows, and in part will be obvious from the description, or can be learned by practice of the herein disclosed principles. The features and advantages of the disclosure can be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the disclosure will become more fully apparent from the following description and appended claims, or can be learned by practice of the principles set forth herein.
In view of the concerns now recognized and stated above, some embodiments of the present technology preserve the anonymous aspects of cash transactions while performing electronic transactions by utilizing optical codes that link a client device with a clearinghouse that anonymizes the transaction. Some embodiments involve a clearinghouse establishing an account with a merchant, receiving merchant invoices along with a claim number, associating the invoice with the claim number, storing the invoice on a server, and encoding the claim number as an optical code. When the optical code is presented to a customer, the customer's device decodes the optical code, retrieves the invoice from the server using the claim number as a reference, and is presented with an interface for authorizing payment for the invoice in the clearinghouse. The clearinghouse then sends the merchant a confirmation that the invoice was paid; however, the clearinghouse does not give the merchant any information about the customer.
In some embodiments of the present technology, one or more parties to a transaction utilize mobile devices equipped with digital camera and software for decoding optical codes. For example, some embodiments of the present technology involve generating invoices containing Quick Response codes (“QR codes”) and decoding the QR codes using a camera and QR recognition software.
Some embodiments of the present technology, involve an infrastructure of network-based clearinghouses for maintaining the anonymity of a plurality of customers and protecting their private and financial data. According to some embodiments, both merchants and customers maintain verified accounts with one or more clearinghouses. Similarly, some embodiments of the present technology involve methods for maintaining the anonymity of a plurality of customers and protecting their private and financial data. In some embodiments, transaction data is separated into core data and auxiliary data to further protect sensitive information.
Some embodiments of the present technology are particularly useful in scenarios involving multiple customers dividing a single invoice. According to these embodiments, the clearinghouse records individual contribution, provides updated invoices to customers as parts of an invoice are reconciled, and presenting a record of a fully reconciled invoice to the merchant.
Some embodiments of the present technology involve using optical codes in a variety of scenarios involving the transfer of sensitive information. For example, some embodiments of the present technology extend optical coupling to the medical field where prescription drug transcription errors are extremely dangerous and can be made very easily. Some embodiments involve clearinghouses being used to associate a claim number with a prescription, receive prescriptions generated by a medical professional, store the prescriptions using the claim number as a reference, and encode the claim number in an optical code. The optical code is transferred to a pharmacist whose device decodes the claim number, retrieves the prescription using the claim number, and is presented with the prescription information. Some embodiments can also involve notifying the prescribing doctor that the prescription was filled. Some embodiments can also involve the clearinghouse managing prescription refills.
This brief summary has been provided so that the nature of the technology may be understood quickly. A more complete understanding of the technology can be obtained by reference to the following descriptions of the preferred embodiments thereof in connection with the drawings, which together form a complete specification.
BRIEF DESCRIPTION OF THE DRAWINGSIn order to describe the manner in which the above-recited and other advantages and features of the disclosure can be obtained, a more particular description of the principles briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only exemplary embodiments of the disclosure and are not therefore to be considered to be limiting of its scope, the principles herein are described and explained with additional specificity and detail through the use of the accompanying drawings in which:
FIG. 1 is a front view of an electronic device in accordance with some embodiments of present technology;
FIG. 2 is a simplified block diagram of the device ofFIG. 1 in accordance with some embodiments of the present technology;
FIG. 3 illustrates a system configured for enabling merchants and customers to conduct secure, cashless financial transactions according to some embodiments of the present technology;
FIG. 4 illustrates a system configured for enabling a plurality of merchants and a plurality of customers to conduct secure, cashless financial transactions according to some embodiments of the present technology;
FIG. 5 illustrates a method of performing an invoicing and confidential payment transaction between parties using optical coupling according to some embodiments of the present technology;
FIG. 6 illustrates a graphical representation of a group of diners splitting a bill using a payment system of optical coupling according to some embodiments of the present technology;
FIG. 7 illustrates a system for performing secure, optical-based financial transactions online according to some embodiments of the present technology;
FIG. 8 illustrates a system for performing secure, optical-based financial transactions and serving highly relevant promotional content according to some embodiments of the present technology;
FIG. 9 illustrates an exemplary system for a prescription medicine lifecycle management using optical coupling according to some embodiments of the present technology; and
FIG. 10 illustrates an exemplary computer system according to some embodiments of the present technology.
DETAILED DESCRIPTIONVarious embodiments of the disclosure are discussed in detail below. While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the disclosure.
The present disclosure addresses the need in the art for mobile payment systems that are not vulnerable to privacy breaches and that can interact with traditional paper bills or invoices. Some embodiments of the present technology involve merchants generating optical codes in a clearinghouse which, when decoded by a customer device, provides the customer with a portal for reconciling an invoice through the clearinghouse. According to these embodiments, the customer maintains anonymity from the merchant because the customer never reveals personal or financial information to the merchant. Also, the merchant can be notified that the invoice has been fully satisfied. In some embodiments of the present technology, the parties to a transaction utilize mobile devices equipped with digital camera and software for decoding optical codes.FIG. 1 illustrates a mobile device equipped with a camera according to some embodiments of the present technology.
According toFIG. 1, a handheld processor-based electronic device that may comprise a camera for issuing invoices and/or processing payments in accordance with the techniques briefly described above is illustrated and generally referred to byreference numeral10. While the techniques will be described below in reference to the illustrated handheld electronic device10 (which may be a cellular telephone, a media player for playing music and/or video, a personal data organizer, or any combination thereof), it should be understood that the techniques described herein may be implemented using any type of suitable electronic device, including non-portable electronic devices, such as a desktop computer or a workstation.
As illustrated inFIG. 1, theelectronic device10 may be a handheld device incorporating the functionality of one or more portable devices, such as a media player, a cellular phone, a personal data organizer, and so forth. Thus, depending on the functionalities provided by theelectronic device10, a user may listen to music, play games, record video, take pictures, and place telephone calls, while moving freely with thedevice10. In addition, theelectronic device10 may allow a user to connect to and communicate through the Internet or through other networks, such as local or wide area networks. For example, theelectronic device10 may allow a user to communicate using e-mail, text messaging, instant messaging, or other forms of electronic communication. Theelectronic device10 also may communicate with other devices using short-range connection protocols, such as Bluetooth and near field communication (NFC). By way of example only, theelectronic device10 may be a model of a MacBook®, iPod®, iPad®, or an iPhone®, available from Apple Inc. of Cupertino, Calif.
In the depicted embodiment, thedevice10 includes anenclosure12 that protects the interior components from physical damage and shields them from electromagnetic interference. Theenclosure12 may be formed from any suitable material such as plastic, metal or a composite material and may allow certain frequencies of electromagnetic radiation to pass through to wireless communication circuitry within thedevice10 to facilitate wireless communication.
Theenclosure12 may further provide for access to various user input structures, depicted inFIG. 1 byreference numerals14,16,18,20, and22. By way of these user input structures, a user may interface with thedevice10, wherein eachuser input structure14,16,18,20, and22 may be configured to control one or more device functions when pressed or actuated. By way of example, theinput structure14 may include a button that when pressed or actuated causes a home screen or menu to be displayed on the device. Theinput structure16 may include a button for toggling thedevice10 between one or more modes of operation, such as a sleep mode, a wake mode, or a powered on/off mode, for example. Theinput structure18 may include a dual-position sliding structure that may mute or silence a ringer in embodiments where thedevice10 includes a cell phone application. Further, theinput structures20 and22 may include buttons for increasing and decreasing the volume output of thedevice10. It should be understood that the illustratedinput structures14,16,18,20, and22 are merely exemplary, and that theelectronic device10 may include any number of user input structures existing in various forms including buttons, switches, control pads, keys, knobs, scroll wheels, and so forth, depending on specific implementation requirements.
Theelectronic device10 may further include adisplay24 configured to display various images generated by thedevice10. By way of example, thedisplay24 may be configured to display photos, movies, album art, and/or data, such as text documents, spreadsheets, text messages, and e-mail, among other things. Thedisplay24 may also displayvarious system indicators26 that provide feedback to a user, such as power status, signal strength, call status, external device connections, or the like. Thedisplay24 may be any type of display such as a liquid crystal display (LCD), a light emitting diode (LED) display, an organic light emitting diode (OLED) display, or other suitable display. In certain embodiments, thedevice10 may include a touch sensitive element, such as a touch screen interface (not shown inFIG. 1) disposed adjacent to thedisplay24 that may function as an additional user input structure (e.g., in addition tostructures14,16,18,20, and22). By way of this touch screen interface, a user may select elements displayed on thedisplay24 such as, for example, by touching certain elements using the user's finger or a stylus.
As further shown in the present embodiment, thedisplay24 may be configured to display a graphical user interface (“GUI”)28 that allows a user to interact with thedevice10. TheGUI28 may include various graphical layers, windows, screens, templates, elements, or other components that may be displayed on all or a portion of thedisplay24. For instance, theGUI28 may display a plurality of graphical elements, depicted here generally asicons30. By default, such as when thedevice10 is first powered on, theGUI28 may be configured to display the illustratedicons30 as a “home screen,” represented herein by thereference numeral29. In certain embodiments, theuser input structures14,16,18,20, and22, may be used to navigate through theGUI28 and, accordingly, away from thehome screen29. For example, one or more of the user input structures may include a wheel structure that may allow a user to selectvarious icons30 displayed by theGUI28. Additionally, theicons30 may also be selected via the touch screen interface.
Theicons30 may represent various layers, windows, screens, templates, elements, or other graphical components that may be displayed in some or all of the areas of thedisplay24 upon selection by the user. Furthermore, the selection of anicon30 may lead to or initiate a hierarchical screen navigation process. For instance, the selection of anicon30 may cause thedisplay24 to display another screen that includes one or moreadditional icons30 or other GUI elements. Also, as shown in the present embodiment, eachgraphical element30 may have one or moretextual indicators32 associated therewith, which may be displayed on or near its respectivegraphical element30 to facilitate user interpretation of eachgraphical element30. For example, theicon34 may represent a Quick Response Code (hereinafter referred to as a “QR code”) reader application and be associated with the textual indicator “QR Reader.” It should be appreciated that theGUI28 may include various components arranged in hierarchical and/or non-hierarchical structures.
When anicon30 is selected, thedevice10 may be configured to initiate, open, or run an application associated with the selectedicon30 and to display a corresponding screen. For example, when theicon34 is selected, thedevice10 may open the QR reader application. It should be understood that for each application provided on thedevice10, one or more respective screen or screens may be displayed on thedisplay24 that may include various user interface elements corresponding to a respective application.
Theelectronic device10 may also include various input/output (I/O) ports, such as the illustrated I/O ports36,38, and40. These I/O ports may allow a user to connect thedevice10 to or interface thedevice10 with one or more external devices. For example, the input/output port36 may include a proprietary connection port for transmitting and receiving data files, such as media files. The input/output port38 may include a connection slot for receiving a subscriber identify module (SIM) card, for instance, where thedevice10 includes cell phone functionality. The input/output port40 may be an audio jack that provides for connection of audio headphones or speakers. As will appreciated, thedevice10 may include any number of input/output ports configured to connect to a variety of external devices, such as to a power source, a printer, and a computer, or an external storage device, just to name a few. As will appreciated, the I/O ports may include any suitable interface type such as a universal serial bus (USB) port, serial connection port, FireWire port (IEEE-1394), or AC/DC power connection port.
Certain I/O ports may be configured to provide for more than one function. For instance, in one embodiment, the I/O port36 may be configured to not only transmit and receive data files, as described above, but may be further configured to couple the device to a power charging interface, such as an power adaptor designed to provide power from a electrical wall outlet, or an interface cable configured to draw power from another electrical device, such as a desktop computer. Thus, the I/O port36 may be configured to function dually as both a data transfer port and an AC/DC power connection port depending, for example, on the external component being coupled to thedevice10 through the I/O port36.
Theelectronic device10 may also include various audio input and output elements. For example, the audio input/output elements, depicted generally byreference numeral42, may include an input receiver, which may be provided as one or more microphones. For instance, where theelectronic device10 includes cell phone functionality, the input receivers may be configured to receive user audio input such as a user's voice. Additionally, the audio input/output elements42 may include one or more output transmitters. Thus, where thedevice10 includes a media player application, the output transmitters of the audio input/output elements42 may include one or more speakers for transmitting audio signals to a user, such as playing back music files, for example. Further, where theelectronic device10 includes a cell phone application, an additionalaudio output transmitter44 may be provided, as shown inFIG. 1. Like the output transmitter of the audio input/output elements42, theoutput transmitter44 may also include one or more speakers configured to transmit audio signals to a user, such as voice data received during a telephone call. Thus, the input receivers and the output transmitters of the audio input/output elements42 and theoutput transmitter44 may operate in conjunction to function as the audio receiving and transmitting elements of a telephone.
In some embodiments of the technology, an electronic device may include one or more front-, side-, and/or rear-facing cameras. In the illustrated embodiment, theelectronic device10 further includes a front-facingcamera46.
Additional details of theillustrative device10 may be better understood through reference toFIG. 2, which is a block diagram illustrating various components and features of thedevice10 in accordance with one embodiment of the present technology. As shown inFIG. 2, thedevice10 may include the above discusseddisplay24, as well as aCPU50,control circuitry52, astorage device54, one or more communication interfaces60, avideo controller62, atouch screen interface64, an I/O controller66, and apower source68.
The operation of thedevice10 may be generally controlled by the central processing unit (CPU)50 and thecontrol circuit52. In cooperation, these elements may provide the processing capability required to execute an operating system, application programs, theGUI28, and any other functions provided on thedevice10. TheCPU50 may include a single processor or, in other embodiments, it may include a plurality of processors. By way of example, theCPU50 may include “general purpose” microprocessors, a combination of general and application-specific microprocessors, instruction set processors, graphics processors, video processors, as well as related chips sets and/or special purpose microprocessors. Thecontrol circuit52 may include one or more data buses for transferring data and instructions between components of thedevice10. Thecontrol circuit52 also may further include on board memory (RAM) for caching purposes. Additionally, although not illustrated inFIG. 2, thedevice10 may include a standalone random access memory (RAM) in communication with theCPU50 by way of one or more memory controllers, which may be integrated within thecontrol circuit52.
Information used by theCPU50 may be stored within a long-term storage device, represented byreference numeral54. Thestorage device54 of theelectronic device10 may be utilized for storing data required for the operation of theCPU50, data to be processed or executed by theCPU50, as well as other data required by thedevice10, such as application and program data. For, example, thestorage device54 may be configured to store the firmware for theelectronic device10 that is used by theCPU50. The firmware may include an operating system, as well as other programs or drivers that enable various functions of theelectronic device10, GUI functions, and/or processor functions. Thestorage device54 may also store components for theGUI28, such as graphical elements, screens, and templates. Additionally, thestorage device54 may store data files such as media (e.g., music and video files), image data, application software, preference information (e.g., media playback preferences, general user preferences), financial account information, network connection information (e.g., information that may enable thedevice10 to establish a wireless connection, such as a telephone or Internet connection), subscription information (e.g., information that maintains a record of podcasts, television shows or other media to which a user subscribes), telephone information (e.g., telephone numbers), and any other suitable data required by thedevice10. Thelong term storage54 may be non-volatile memory such as read only memory, flash or solid state memory, a hard disk drive, or any other suitable optical, magnetic, or solid-state computer readable media, as well as a combination thereof.
Thedevice10 may include one or morenetwork communication devices60 for providing additional connectivity channels for receiving and transmitting information. For example, thecommunication device60 may represent one or more network interface cards (NIC) and/or a network controller as well as various associated communication protocols. Thecommunication device60 may provide for various long-range communication interfaces, such as a wireless local area network (WLAN) interface (e.g., an IEEE 802.11x wireless network), a local area network (LAN) interface, or a wide area network (WAN) interface. By way of example, a WAN interface may permit a private and/or secure connection to a cellular data network, such as the Enhanced Data rates for GSM Evolution (EDGE) network or the 3G network (e.g., based on the IMT-2000 standard). Thenetwork communication device60 may further provide a short message service (SMS) interface.
In certain embodiments, theelectronic device10 may include a service discovery networking protocol to establish a connection with an external device through a network interface. For example, both thedevice10 and the external device may broadcast identification information using internet protocol standards (IP). In some embodiments, the external device may additionally broadcast information relating to the available services the external device is capable of providing (e.g., printing services for a networked printer). The devices may then use the identification information to establish a network connection, such as a PAN connection or a WLAN connection, between the devices. By way of example, a device identification protocol may be provided by Bonjour®, developed by Apple Inc.
User preference settings58, which may be stored in thestorage device54, may further determine properties of the above-mentioned communication interfaces provided by thenetwork communication device60. For instance, thepreferences58 may include a list of networks that thedevice10 may connect to and may further govern the order or priority between the communication interfaces. Further, the communication preferences associated with thepreferences58 may be further dependent upon security features56 available for each respective communication interface. The security features56 may be stored in thestorage device54 and may include one or more cryptographic protocols, such as a secure sockets layer (SSL) protocol or a transport layer security (TLS) protocol, for establishing secure communications between thedevice10 and an external device.
The security features56 may also include a secure access-restricted storage area (e.g., within the storage device54) to limit access to the sensitive data, such as encryption keys, passcodes and passwords, digital certificates, or the like. Additionally, in some embodiments, thesecure storage area56, in addition to storing the above-mentioned sensitive data, may be further protected by its own respective password or authorization “personal identification number” (PIN), for example, in order to prevent unauthorized access to the information stored therein.
Thedevice10 may also include thevideo controller62, which may be operatively coupled to thedisplay24 and configured to receive image data and to send voltage signals corresponding to the pixel values of the image data to thedisplay24. The displayed image data may be representative of information received through the communication interface, as well as information contained in thestorage device54. As will be understood by those skilled in the art, pixel values may be numerical assignments corresponding to respective pixel intensities. Thus, thedisplay24 may receive the voltage signals from thevideo controller62 as an input and produce an image corresponding to the voltage signals. For instance, an image produced by the signals provided by thevideo controller62 may represent a screen of theGUI28 described above with reference toFIG. 1.
As discussed above, a user operating thedevice10 may select various graphical elements which may represent applications or information that may be displayed through theGUI28. Atouch screen interface64 may be positioned in front of or behind thedisplay24 and may provide a user the ability to select graphical elements, such as theicons30 displayed by theGUI28 described above inFIG. 1. Thetouch screen interface64 may be configured to receive inputs based on a physical contact (e.g., touching the display24) either by the user or an object (e.g., stylus) being controlled or manipulated by the user, and to send “touch event” information to theCPU50. TheCPU50 may then process the detected touch event information and perform a corresponding action. For instance, referring briefly back toFIG. 1, the “touching” of theicon34 may be processed by theCPU50 as an instruction to execute or initiate the corresponding electronic wallet application. Thetouch screen interface64 may employ any suitable type of touch screen technology such as resistive, capacitive, infrared, surface acoustic wave, electromagnetic, or near field imaging. Thetouch screen interface64 may also employ single point or multipoint sensing.
The I/O controller66 depicted inFIG. 2 may provide an infrastructure for allowing a user to communicate with theCPU50 through various input structures provided on thedevice10, such as the input structures represented by thereference numerals14,16,18,20, and22 inFIG. 1. Theuser input structures14,16,18,20, and22 may be used in conjunction with, or independently of, thetouch screen interface64 to provide input information to thedevice10. The I/O controller66 is also coupled with acamera46.
Thepower source68 of thedevice10 may include the capability to power thedevice10 in both non-portable and portable settings. For example, in a portable setting, in order to facilitate transport and ease of motion, thedevice10 may include an integratedpower source68 for powering thedevice10. Thepower source68 may include one or more batteries, such as a Li-Ion battery, which may be user-removable or secured to theenclosure12. In certain embodiments, the proprietary connection I/O port36 may be used to connect thedevice10 to a power source for recharging the battery. In other embodiments, the one or more batteries may be non-integrated and may include one or more rechargeable or replaceable batteries. Further, in a non-portable setting, thepower source68 may include AC power, such as provided by an electrical outlet.
As discussed above, thedevice10 includes acamera46. Accordingly, the present technology solves the problems identified above by making it possible to transfer sensitive information, transfer money, pay for goods and services, etc. using mobile devices equipped with a camera.
FIG. 3 illustrates asystem300 configured for enabling merchants and customers to conduct cash-less financial transactions using a paper bill, a mobile device equipped with a camera, an optical code, and one or more cloud-based clearinghouse according to some embodiments of the present technology. While specific mobile devices are described throughout this description, it will be apparent to those having ordinary skill in the art and the benefit of the disclosure that any device with the capability of capturing optical data and interfacing with a network can be used to achieve the same beneficial results.
As shown, thesystem300 ofFIG. 3 includes amerchant301 operating amobile device302 and performing a transaction with acustomer307 also running amobile device306. Before initiating a camera-based optical transaction, themerchant301 must first create a verified account with atransaction clearinghouse303 or similar institution and configure an application on hermobile device302 to perform an optical-based transaction. In some embodiments of the technology, a necessary application resides on network-basedapplication distribution platform309, such as iTunes® or the AppStoreSM, available from Apple Inc. of Cupertino, Calif. Similarly, for acustomer307 to benefit from the merchant's ability to conduct optical payments, the customer also must have a verified account with an optical-basedtransaction clearinghouse308 or similar institution and an appropriate application installed on hismobile device306.
As shown, theclearinghouse303 and theclearinghouse308 comprise separate institutions; however, those having ordinary skill in the art will appreciate that the clearinghouses can be the same institution or a subsidiary, partner, division, etc. of the same institution. Also shown arenetworks310,311, and312coupling merchants301 andcustomers307 to theclearinghouses303,308 and to the network basedapplication distribution platform309. Those having ordinary skill in the art will also readily understand thenetworks310,311, and312 can be the same network or different networks.
Once themerchant301 has configured herdevice302 with the necessary application and has created a verified account, she can begin recording transactions, (i.e. bills, invoices, prescriptions, etc.) on hermobile device302. In some embodiments of the present technology, invoice creation comprises an individual simply listing an invoice amount and a note regarding what goods are being sold or leased or what services are being performed. In some embodiments, a more detailed invoice is created that includes auxiliary data such as type and quantity of items purchased. Although specific examples of invoices are described herein, it will be readily apparent to those with ordinary skill in the art having benefit of this disclosure that any type of agreement or contract can be memorialized using the present technology.
In some embodiments of the present technology, the application for performing an optical-based transaction obtained from the network-basedapplication platform309 comprises a graphical user interface for facilitating the process of invoice creation.
Once an invoice is created, themerchant301 can upload the transaction data to theclearinghouse303 along with a claim number that is recognizable by theclearinghouse303. Themerchant301 then presents a transaction receipt304 (i.e. a bill) to thecustomer307—either in printed form or on a display device. Thereceipt304 includes anoptical code305 that encodes the claim number and an identification of theclearinghouse303 at which the transaction has been stored.
Thecustomer307 can then capture theoptical code305 on thereceipt304 and pull the data fromclearinghouse308 orclearinghouse309. If themerchant301 and thecustomer307 have different clearinghouses, theclearinghouse308 and theclearinghouse309 communicate with one another directly or via anetwork312. Thecustomer307 can then satisfy thereceipt304 through theclearinghouse308.
Some embodiments of the present technology involve thecustomer307 satisfying the transaction via a one-time payment to theclearinghouse308. According to these embodiments, themerchant301 is told when thecustomer307 satisfies thereceipt304, but the customer's payment information is kept anonymous from themerchant301. Some embodiments of the present technology involve thecustomer307 creating an account with theclearinghouse308 for performing one or more banking and/or e-commerce services.
Some embodiments of the present technology involve many merchants and service providers and many customers performing transactions using optical coupling and one or more clearinghouses.FIG. 4 illustrates a system400 configured for enabling a plurality of merchants and a plurality of customers to conduct financial transactions using devices equipped with a camera, an optical code, and one or more cloud-based clearinghouses according to some embodiments of the present technology. According toFIG. 4, a plurality of merchants orservice providers401,402, . . . , q communicate with one ormore clearinghouses403,404,405, . . . , r via anetwork406 and amobile device401′,402′, . . . , q′. Likewise, a plurality ofcustomers407,408, . . . , s communicate with the one ormore clearinghouse403,404,405, . . . , r via thenetwork406 and amobile device407′,408′, . . . , s′. According to the arrangement ofFIG. 4, an invoicing and confidential payment transaction system using optical coupling can be extended and scaled to a large group of users.
A method of performing a transaction using optical coupling is described in more detail in connection withFIG. 5.FIG. 5 illustrates amethod500 of performing an invoicing and confidential payment transaction between parties using optical coupling according to some embodiments of the present technology. Themethod500 begins with a payee creating an account with an on-linefinancial transaction clearinghouse501. In some embodiments of the present technology, creating an account involves registering the payee's identification information (i.e. business name, address, contact information, etc.), information regarding how to tender payment (i.e. bank account numbers, PayPal routing information, etc.), and account settings and preferences. Account creation can also involve the exchange of public and private encryption keys or similar cryptography methods. Similarly, the process of a payee creating an account can also involve one or more security measures to ensure that the payee is the owner of a financial account. For example, a clearinghouse might require that the payee confirm a nominal amount of money being withdrawn and subsequently deposited into his account before the account is verified.
After the payee creates an account, themethod500 continues with the payee memorializing aninvoice502 on a device. The case of merchants, this can include auxiliary data, such as type and quantity of items purchased. In the case of person to person to transactions, this may be as simple as a financial amount and a note concerning the transaction. For example, in a restaurant setting, a waitress can take a table's order and input the items into a wired terminal to memorialize the invoice. In another example, a service provider can memorialize an invoice as he provides services by inputting time entries into a mobile device. Those with ordinary skill in the art having the benefit of the disclosure will readily appreciate that a wide variety of input types and devices, now known or later developed, can be used to memorialize invoices.
Next, the payee finalizes the invoice and transfers the transaction data to aclearinghouse503 along with a unique claim number that identifies the transaction. In some embodiments, the uniqueness of the claim number is ensured by electronically requesting a unique number from the clearinghouse. In some embodiments, the claim number is generated by a previously-agreed upon protocol between the clearinghouse and the payee. In some embodiments of the technology, the clearinghouse inspects a payee's encryption key to determine the authenticity of the transaction.
Optionally, the clearinghouse separates504 the payee-submitted invoice into core data (such as the amount to be paid) and auxiliary data (such as the type and quantity of items) and posts them to separate servers. By doing so, the clearinghouse avoids having or re-submitting visibility into the actual goods that are being bought or sold. For example, suppose a couple shares a clearinghouse account and one partner wants to surprise the other with a gift. The merchant selling the gift can invoice the clearinghouse with the price and description, but the clearinghouse can strip the auxiliary description from the invoice so that when code is sent to the couple's shared account, it will merely reflect an amount to be paid without ruining the surprise. Such optional splitting can be used to enhance customer privacy. The clearing house (or optionally when there are multiple clearing houses, all clearing houses except trusted ones such as the one that the customer has an account with) do not have access to the auxiliary data and are unable to data-mine the customer's transactions or develop profiles of the actual products the customer purchases. Consequently, the server hosting the auxiliary data does not know the individual with whom the data is associated. So it may be able to suggest promotional material directly related to the transaction, but is unable to track and profile the customer since the server is unable to form connections between a multitude of unique claim numbers and the individual customers that are responsible for each transaction.
Once the clearinghouse has invoice information and a unique identifier, it generates anoptical code505 that, upon recognition, links a client device to the transaction details. Some embodiments of the present technology involve generating a Quick Response Code (hereinafter referred to as a “QR code”) that is readable by a QR code reader application. However, those with ordinary skill in the art having the benefit of this disclosure will understand that any easily identifiable imaging scheme may be used instead of a QR code. For example, a code can simply be manually keyed in by a user. Additionally, a barcode could be used. Alternatively, an easily identifiable border may be displayed and the claim number may be simply presented in a standard font as human and computer readable characters and recovered from the image using optical character recognition. Alternately, a small but easily processed image may be presented as the claim token within a border that makes it easy to scan for imaging software. The key idea is that the claim number associated with the transaction is presented optically and recognized using a camera and imaging software.
Themethod500 continues with the payee presenting the payer with a representation of theoptical code506 that encodes the unique claim number and designates the clearinghouse at which the claim has been filed. In some embodiments, the representation of the optical code comprises a paper receipt with the optical code. In some embodiments, the optical code is transmitted to a payer via an electronic medium and comprises an electronic representation of the optical code. In some embodiments, the electronic representation of the optical code is transmitted to the payer by presenting the payer with an electronic device that displays the optical code. In some embodiments, the electronic representation of the optical code is transmitted from a payee device to a payer device via email, SMS, MMS, etc. In some embodiments, the optical code is transmitted to a payer's device via electromagnetic coupling, such as a wireless network connection, Bluetooth connection, or near field communications coupling. The optical code may be accompanied with any or all auxiliary data.
Optionally, the payer creates anaccount507 in advance of receiving a QR-embedded invoice. Themethod500 continues with the payer capturing animage508 of the optical code and converts it back to the transaction details. The payer uses secure communication with the clearinghouse to pull the core data and auxiliary data associated with the transaction. If the payer and payee have different clearinghouses, the different clearinghouses communicate with each other to supply the payer with the relevant data. The payer's clearinghouse then verifies the identity of who originated that unique claim number, i.e., they look up the owner of the account that the payment will be credited to ensure that the payment will go to the payee or someone authorized to take payments on the payee's behalf.
Next, the payer's device displays509 the invoice data, the auxiliary data (i.e. the amount, type of goods, etc.) if any, and who the payment will go to. Accordingly, the user can visually verify the invoice to check that the quoted price is the price being charged. Additionally, the user can verify the identity of the party that they are making payment to, thereby avoiding paying a party impersonating the true seller. When the user is satisfied, he authorizespayment510 using his device.
Some embodiments of the present technology involve an interface for allowing the payer to authorize partial payment. For example, the case of a restaurant bill for a group, each guest may individually scan the receipt using their own device and then just authorize the payment for the items they ordered, along with their share of taxes, gratuity etc.
Next, the payer's device signals authorization back to the clearinghouse. In the case of more than one clearinghouse, themethod500 facilitates communication and reconciliation between themultiple clearinghouses511 and the one or more clearinghouses signal back to the payee that full or partial payment has been received in the payee'saccount512. Optionally, all devices involved in the transaction update their displays of the payment as it progresses513. Finally, the clearinghouse or clearinghouses record the fully-satisfied transaction514. In some embodiments, wither the payer's or the payee's device optionally saves the receipts for later use and records/returns etc. In some embodiments, only the core data is saved.
According to the present technology, it is not necessary for the payee to know the identity of the payer; rather, it is only necessary for the payee to be assured by the clearinghouse that the bill has been paid. In this way the technology preserves the anonymous nature of cash payment as far as the payer's privacy is concerned and at the same time records the payee's side of the transaction for record keeping such as for taxes. Additionally, no sensitive information is exchanged between the parties. There are no credit card numbers or personal information that can be stolen. The payee cannot store the payer's financial information. Indeed, once the transaction has been completed, the printed receipt may be discarded without the risk of theft or leaked personal information.
As explained above, the present technology preserves the anonymous nature of a cash payment and offers the convenience of mobile payment. An especially illustrative example of the utility and convenience of the present technology can be seen in the case of a group of people splitting a bill at a restaurant.
FIG. 6 illustrates a graphical representation of a group ofdiners601,602,603 splitting abill604 using a payment system of optical coupling according to some embodiments of the present technology. According toFIG. 6, apaper bill604 is presented to the group ofdiners601,602,603. Thepaper bill604 itemizes the diners' order, describes the items served, lists the price of the individual items, lists the sales tax associated with the bill, lists the total price, and provides the diners the opportunity to tip their server. Additionally, thepaper bill604 includes anoptical code605 printed thereon. According to the present technology, the diners can scan the optical code with a camera in their respectivemobile devices606,607,608 to access the billing information via a clearinghouse server (not shown) available via one ormore networks611 that the merchant has an account with.
According to the present technology, a diner's601mobile device606 recognizes theoptical code605 and displays anelectronic representation609 of thebill604 via an interface on the diner's601mobile device606. In some embodiments of the present technology, the electronic representation of thebill604 is displayed to users via a browser-based interface. In some embodiments, the user pre-installs a dedicated optical code reader application configured for presenting electronic bills in an elegant and user-friendly interface. In some embodiments, the dedicated application is available for download from a network-based application platform, such as the AppStoreSM, available from Apple Inc. of Cupertino, Calif.
Like thepaper bill604, the electronic representation of thepaper bill604 itemizes the diners' order, describes the items served, lists the price of the individual items, lists the sales tax associated with the items, lists the total price, and provides the diners the opportunity to tip their server. Additionally, according to some embodiments of the present technology, theelectronic representation609 of thepaper bill604 includes executable links that allow users to select items that they would like to pay for, indicate their share of the total gratuity that they would like to pay, or indicate that they want to pay for the entire bill.
In some embodiments of the present technology, theelectronic representation609 of thepaper bill604 dynamically adjusts as individual diners pay for items. For example, suppose thatfirst diner601 accepts thepaper bill604 and is the first to scan theoptical code605. Using the executable links, thefirst diner601 pays for his share of the bill and passes thepaper bill604 to anotherdiner602. When thesecond diner602 scans theoptical code605, theelectronic representation609 will have dynamically adjusted to reflect the total amounts due minus the amounts from the items that thefirst user601 paid for. Likewise, thesecond diner602 pays her share and when theelectronic representation609 is displayed on the third diner'sdevice608, the remaining portion of the unsettled bill is displayed.
In some embodiments of the present technology, the payee is notified when any payment on thebill604 is made—either partial or full payment. In some embodiments, the payee is simply informed that the bill has been completely settled.
The exemplary scenario describes how the present technology benefits users in a commercial setting, i.e. a restaurant. However, the present technology also benefits consumers performing financial transactions on-line in a browser-based interface.FIG. 7 illustrates asystem700 for performing secure, optical-based financial transactions online according to some embodiments of the present technology. As shown, thesystem700 includes auser computer701 connected to the internet. Also shown, auser702 finds items online that she would like to purchase. Upon checking out of anonline store703, the user is typically presented with creditcard payment options704,705. However, it is oftentimes the case that a user is skeptical of providing credit card information to anonline store703, especially if theonline store703 does not have a well-known, positive reputation. Consequently, the present technology provides theuser702 with a more secure payment option in the form of anoptical code706. According to these embodiments, theonline store703 never gains access to the user's702 payment information, but merely receives verification that the user has indeed paid using theoptical code706.
According to thesystem700 ofFIG. 7, theonline store703 has a verified account with aclearinghouse708 such that when auser702 scans theoptical code706 using a camera on a network-connecteddevice707, theclearinghouse708 sends the user payment information via one ormore network709 to the network-connecteddevice707. In some embodiments, the user already has a verified account with aclearinghouse710 in which theclearinghouse710 stores the user's payment information.Clearinghouses707 and710 can be the same or different entities. Next, theuser702 reconciles the payment using the network-connecteddevice707 by authorizing theclearinghouse710 to make the payment without ever providing theonline store703 with sensitive financial information.
Also, in some embodiments of the present technology, theclearinghouse710 contains a user profile for its users. For example, theclearinghouse710 can store a user's702 shipping address. Accordingly, when theuser702 authorizes payment to theonline store703, the online store is automatically supplied with the user's shipping information. Once a payment is successfully completed using the network-connecteddevice707, theonline store703 receivesconfirmation711 that an item has been paid for and the user receives confirmation712 that the items have been shipped and receives atracking number713.
As explained herein, the present technology benefits users by protecting sensitive financial information in various point-of-sale transactions. However, due to the fact that these transactions oftentimes require a network-connected device, the present technology also allows for various new mechanisms for serving promotional content to users that is highly relevant and interactive.
FIG. 8 illustrates asystem800 for performing secure, optical-based financial transactions and serving highly relevant promotional content according to some embodiments of the present technology. As shown, thesystem800 includes auser computer801 connected to the internet. Also shown, auser802 finds items online that he would like to purchase. Upon checking out of anonline store803, the user is presented with creditcard payment options804,805 as well as a more secure payment option in the form of anoptical code806.
Theonline store803 has a verified account with aclearinghouse808 such that when auser802 scans theoptical code806 using a camera on a network-connecteddevice807, theclearinghouse808 sends the user payment information via one ormore network809 to the network-connecteddevice807. In some embodiments, the user already has a verified account with aclearinghouse810 in which theclearinghouse810 stores the user's payment information.Clearinghouses807 and810 can be the same or different entities. Next, theuser802 reconciles the payment using the network-connecteddevice807 by authorizing theclearinghouse810 to make the payment without ever providing theonline store803 with sensitive financial information.
Also, in some embodiments of the present technology, theclearinghouse810 contains auser profile899 with user information such as shipping address and user purchase data relating to the user's purchases. For example, in the illustrated example, the user profile stores information relating to the fact that theuser802 purchased a child's ticket to Pixar movie.
As explained above, some embodiments of the present technology involve serving highly relevant promotional content. Indeed, in some embodiments of the present technology, theclearinghouse810 is connected to a promotionalcontent delivery server850 via anetwork851.Networks809 and851 can comprise the same or different networks. The promotionalcontent delivery server850 is configured to access user data from theclearinghouse810 and is configured to select promotional content to deliver to the user by analyzing the user profile and past purchase data. For example, according toFIG. 8, theclearinghouse810 shares the fact that the user bought a child's ticket to a Pixar movie with the promotionalcontent delivery server850. Using this information, the promotionalcontent delivery server850 is able to serve the user with asales promotion860 that is highly relevant to parents having children that enjoy Pixar movies. Indeed, such a highly relevant promotion could demand a very high cost per impression.
As described herein, one aspect of the present technology is the gathering and use of data available from various sources to improve the delivery of invitational content including, promotions, advertisements, or any other content that may be of interest to users. The present disclosure contemplates that, in some instances, this gathered data may include personal information data that uniquely identifies or can be used to contact or locate a specific person. Such personal information data can include demographic data, location-based data, telephone numbers, email addresses, twitter ID's, home addresses, or any other identifying information.
The present disclosure recognizes that the use of such personal information data in the present technology can be used to the benefit of users. For example, the personal information data can be used to better understand user behavior, facilitate and measure the effectiveness of advertisements, applications, and delivered content. Accordingly, use of such personal information data enables calculated control of the delivered content. For example, the system can reduce the number of times a user receives a given ad or other content and can thereby select and deliver content that is more meaningful to users. Such changes in system behavior improve the user experience. Further, other uses for personal information data that benefit the user are also contemplated by the present disclosure.
The present disclosure further contemplates that the entities responsible for the collection, analysis, disclosure, transfer, storage, or other use of such personal information data should implement and consistently use privacy policies and practices that are generally recognized as meeting or exceeding industry or governmental requirements for maintaining personal information data private and secure. For example, personal information from users should be collected for legitimate and reasonable uses of the entity and not shared or sold outside of those legitimate uses. Further, such collection should occur only after the informed consent of the users. Additionally, such entities would take any needed steps for safeguarding and securing access to such personal information data and ensuring that others with access to the personal information data adhere to their privacy and security policies and procedures. Further, such entities can subject themselves to evaluation by third parties to certify their adherence to widely accepted privacy policies and practices.
Despite the foregoing, the present disclosure also contemplates embodiments in which users selectively block the use of, or access to, personal information data. That is, the present disclosure contemplates that hardware and/or software elements can be provided to prevent or block access to such personal information data. For example, in the case of advertisement delivery services, the present technology can be configured to allow users to select to “opt in” or “opt out” of participation in the collection of personal information data during registration for services. In another example, users can select not to provide location information for advertisement delivery services. In yet another example, users can configure their devices or user terminals to prevent storage or use of cookies and other mechanisms from which personal information data can be discerned.
The present disclosure also contemplates that other methods or technologies may exist for blocking access to their personal information data.
Therefore, although the present disclosure broadly covers use of personal information data to implement one or more various disclosed embodiments, the present disclosure also contemplates that the various embodiments can also be implemented without the need for accessing such personal information data. That is, the various embodiments of the present technology are not rendered inoperable due to the lack of all or a portion of such personal information data. For example, content can be selected and delivered to users by inferring preferences based on non-personal information data or a bare minimum amount of personal information, such as the content being requested by the device associated with a user, other non-personal information available to the content delivery services, or publically available information.
Besides point-of-sale transactions, the utility of the present technology can be extended to many scenarios involving the transfer of sensitive information. For example, in some embodiments of the present technology, a driver's license, social security card, birth certificate, immunization record, visa, etc. can be stored in connection with a claim number that is encoded as an optical code and retrieved from the cloud on demand.
In another example, the present technology can be extended to the medical field. Prescription transcription errors are extremely dangerous and can be made very easily. Also, patients may be embarrassed or be subject to discrimination if another person happens to see the contents of a paper prescription that the patient possesses. Consequently, the present technology provides solutions for doctors writing prescriptions, patients delivering them, and pharmacists dispensing medicine.
FIG. 9 illustrates anexemplary system900 for a prescription medicine lifecycle management system that benefits from optical coupling according to some embodiments of the present technology.
Thesystem900 ofFIG. 9 is configured for enablingdoctors901,patients902, andpharmacists903 to complete a prescription fulfillment lifecycle using an optical code, a plurality ofdevices909,911 equipped with a camera and a code reading application, and one ormore clearinghouses904 available via one ormore networks999. According to thesystem900 ifFIG. 9, adoctor901 diagnoses apatient902 and prescribes medicine. A traditional prescription, that is prone to transcription error, can be avoided by the doctor using acomputer device909 coupled with a clearinghouse and software for encoding a claim number as an optical code and associating the optical code with the prescription. In some embodiments of the present technology, the doctor must first create a verified account with aclearinghouse904. In some embodiments of the present technology, the doctor interacts with theclearinghouse904 via a browser-based interface. However, in some other embodiments, the doctor interfaces with theclearinghouse904 via a stand-alone, dedicated application. In some embodiments of the technology, such an application resides on, and is available for download from a network-basedapplication platform907, such as AppStoreSM, available from Apple Inc. of Cupertino, Calif.
Once thedoctor901 has a verified account, thedoctor901 can upload prescription data to one or more cloud-based server along with a claim number that is recognizable by theclearinghouse904. Theclearinghouse904 associates the prescription with a claim number and encodes the claim number as an optical code, thereby concealing the contents thereof and theclearinghouse904 sends the optical code back to thedoctor901.
Next, thedoctor901 presents theprescription998 embodied within anoptical code997, to thepatient902—either in printed form or on a display device. Thepatient902 can now bring the encoded claim number to hispharmacist903 to be decoded and the prescription filled. Thepharmacist903 also has adevice911 equipped with a camera and an optical code reader. Accordingly, thepharmacist903 can use her device to decode theoptical code997, access the prescription from the cloud, and read the prescription from the printed form912 or on the patient's device913. When thepharmacist903 scans and decodes theoptical code997, the clearinghouse delivers the information to the pharmacist, and she is shown the contents of the prescription and any accompanying doctor notes associated therewith. Patient privacy can be enhanced because the doctor does not necessarily need to know which pharmacy was used to fill the prescription—whether it is a neighborhood pharmacy or a licensed pharmacy in another state or country Likewise, the pharmacy does not necessarily need to know which doctor has been making the prescriptions. Both the doctor and the pharmacist can trust the assurance of the cloud that the other professional has been verified to have the appropriate credentials and legal requirements. The patient can get the prescription from any legitimate source after considerations such as convenience and price.
In some embodiments, the clearinghouse is connected with a user profile database or an insurance database. In these embodiments, the encoded claim number is associated with prescription information that can include a user data, such as insurance data, a co-pay amount, etc.
In some embodiments, a prescription linked with an encoded claim number indicates a number of refills available for a particular medicine. In these embodiments, thepharmacist903 can communicate back to theclearinghouse904 that a prescription has been fulfilled and the clearinghouse deducts one refill from the total remaining refills. In some embodiments of the present technology, theclearinghouse904 comprises or is part of a central prescription-tracking network that tracks all filled prescriptions. Consequently, a patient cannot visit a second doctor in attempt to get a second prescription for the same medication, thereby inhibiting prescription drug abuse.
Also in the medical field, it is oftentimes desirable to have medical information on hand. For example, many individuals carry a card that conveys emergency contact information, blood type, medical allergies, organ donation information, etc. Additionally, many individuals live with medical conditions that require them to carry explicit instructions for conveying life-saving information to first responders in the event of a foreseeable medical emergency. However, as society moves toward paperless records and electronic wallets, hard copies of medical information may become less common. Therefore, solutions are required for carrying medical information in a secure, private fashion. Accordingly, some embodiments of the present technology involve associating medical information with a claim number encoded as an optical code.
Some embodiments of the present technology involve associating medical information with a claim number encoded as an optical code and providing a way for medical professionals and first responders to access the information easily. More specifically, some embodiments of the present technology involve displaying an encoded claim number that is associated with the individual's medical information in a user interface on a mobile device. In the event of an emergency or other medical situation, a medical professional can decode the optical code using a code reader and access the necessary patient records.
However, mobile devices frequently have password locks that would prevent emergency responders from accessing the emergency contact information and other relevant medical information that may be present on a device. Therefore, in some embodiments of the invention, a mobile device is configured such that a locked device still displays an optical code directly on the locked screen or via a screen reachable even when locked. In some other embodiments, an optical code may be painted or etched at manufacturing time to the body of a mobile device. In some embodiments, the code is associated with a secure access controlled document that resides on a cloud. According to these embodiments, an emergency responder may use their own camera phone to scan the code from the locked device screen or body of someone who is incapacitated and the software on the responder's phone would send a claim for the document linked with the optical code number to the cloud. In some embodiments, the cloud then verifies the credentials of the emergency responder, who already has a pre-verified account on the cloud, and securely sends back the corresponding document which may include emergency contact information, medical history, current medication, drug allergies etc.
The systems and methods disclosed broadly herein are configured to be implemented on one or more computer systems.FIG. 10 illustrates anexemplary computer system1099 for implemented the present technology according to some embodiments of the present technology. According toFIG. 10, thecomputer system1099 includes a general-purpose computing device1000, including a processing unit (CPU or processor)1020 and asystem bus1010 that couples various system components including thesystem memory1030 such as read only memory (ROM)1040 and random access memory (RAM)1050 to theprocessor1020. Thesystem1000 can include acache1022 of high speed memory connected directly with, in close proximity to, or integrated as part of theprocessor1020. Thesystem1000 copies data from thememory1030 and/or thestorage device1060 to thecache1022 for quick access by theprocessor1020. In this way, the cache provides a performance boost that avoidsprocessor1020 delays while waiting for data. These and other modules can control or be configured to control theprocessor1020 to perform various actions.Other system memory1030 may be available for use as well. Thememory1030 can include multiple different types of memory with different performance characteristics. It can be appreciated that the disclosure may operate on acomputing device1000 with more than oneprocessor1020 or on a group or cluster of computing devices networked together to provide greater processing capability. Theprocessor1020 can include any general purpose processor and a hardware module or software module, such asmodule11062,module21064, andmodule31066 stored instorage device1060, configured to control theprocessor1020 as well as a special-purpose processor where software instructions are incorporated into the actual processor design. Theprocessor1020 may essentially be a completely self-contained computing system, containing multiple cores or processors, a bus, memory controller, cache, etc. A multi-core processor may be symmetric or asymmetric.
Thesystem bus1010 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. A basic input/output (BIOS) stored inROM1040 or the like, may provide the basic routine that helps to transfer information between elements within thecomputing device1000, such as during start-up. Thecomputing device1000 further includesstorage devices1060 such as a hard disk drive, a magnetic disk drive, an optical disk drive, tape drive or the like. Thestorage device1060 can includesoftware modules1062,1064,1066 for controlling theprocessor1020. Other hardware or software modules are contemplated. Thestorage device1060 is connected to thesystem bus1010 by a drive interface. The drives and the associated computer readable storage media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for thecomputing device1000. In one aspect, a hardware module that performs a particular function includes the software component stored in a non-transitory computer-readable medium in connection with the necessary hardware components, such as theprocessor1020,bus1010,display1070, and so forth, to carry out the function. The basic components are known to those of skill in the art and appropriate variations are contemplated depending on the type of device, such as whether thedevice1000 is a small, handheld computing device, a desktop computer, or a computer server.
Although the exemplary embodiment described herein employs thehard disk1060, it should be appreciated by those skilled in the art that other types of computer readable media which can store data that are accessible by a computer, such as magnetic cassettes, flash memory cards, digital versatile disks, cartridges, random access memories (RAMs)1050, read only memory (ROM)1040, a cable or wireless signal containing a bit stream and the like, may also be used in the exemplary operating environment. Non-transitory computer-readable storage media expressly exclude media such as energy, carrier signals, electromagnetic waves, and signals per se.
To enable user interaction with thecomputing device1000, aninput device1090 represents any number of input mechanisms, such as a microphone for speech, a touch-sensitive screen for gesture or graphical input, keyboard, mouse, motion input, speech and so forth. Anoutput device1070 can also be one or more of a number of output mechanisms known to those of skill in the art. In some instances, multimodal systems enable a user to provide multiple types of input to communicate with thecomputing device1000. Thecommunications interface1080 generally governs and manages the user input and system output. There is no restriction on operating on any particular hardware arrangement and therefore the basic features here may easily be substituted for improved hardware or firmware arrangements as they are developed.
For clarity of explanation, the illustrative system embodiment is presented as including individual functional blocks including functional blocks labeled as a “processor” orprocessor1020. The functions these blocks represent may be provided through the use of either shared or dedicated hardware, including, but not limited to, hardware capable of executing software and hardware, such as aprocessor1020, that is purpose-built to operate as an equivalent to software executing on a general purpose processor. For example, the functions of one or more processors presented inFIG. 10 may be provided by a single shared processor or multiple processors. (Use of the term “processor” should not be construed to refer exclusively to hardware capable of executing software.) Illustrative embodiments may include microprocessor and/or digital signal processor (DSP) hardware, read-only memory (ROM)1040 for storing software performing the operations discussed below, and random access memory (RAM)1050 for storing results. Very large scale integration (VLSI) hardware embodiments, as well as custom VLSI circuitry in combination with a general purpose DSP circuit, may also be provided.
The logical operations of the various embodiments are implemented as: (1) a sequence of computer implemented steps, operations, or procedures running on a programmable circuit within a general use computer, (2) a sequence of computer implemented steps, operations, or procedures running on a specific-use programmable circuit; and/or (3) interconnected machine modules or program engines within the programmable circuits. Thesystem1000 shown inFIG. 10 can practice all or part of the recited methods, can be a part of the recited systems, and/or can operate according to instructions in the recited non-transitory computer-readable storage media. Such logical operations can be implemented as modules configured to control theprocessor1020 to perform particular functions according to the programming of the module. For example,FIG. 10 illustrates threemodules Mod11062,Mod21064 andMod31066 which are modules configured to control theprocessor1020. These modules may be stored on thestorage device1060 and loaded intoRAM1050 ormemory1030 at runtime or may be stored as would be known in the art in other computer-readable memory locations.