This disclosure relates generally to content receivers, and more specifically to simplified ordering utilizing matrix codes dynamically generated by a content receiver.
The present disclosure discloses systems and methods for ordering utilizing dynamic matrix code generation. A content receiver may receive an identifier (which may identify ordering information for an instance of content that a user may order to be transmitted to the content receiver or products) from a content provider. The content receiver may also derive information specific to the content receiver and dynamically generate a matrix code, such a QR code, that includes the ordering information and the information specific to the content receiver. The content receiver may then transmit the matrix code to a display device and when the matrix code displayed on the display device is detected and decoded by a reader device, the reader device may initiate an order for the instance of content to be transmitted to the content receiver or for the products. As such, the user may be able to more conveniently and less burdensomely order and receive the desired content or products.
In some implementations, the instance of content may be ordered from the content provider, which may then transmit the ordered content to the content receiver. However, in other implementations the instance of content may be ordered from a third party content provider. As such, the third party content provider may transmit the ordered content to the content provider, which may then in turn transmit the received ordered content to the content receiver.
In various implementations, the reader device may present a confirmation message after detecting and decoding the one or more matrix codes. The confirmation screen may detail the order for the at least one instance of content to be initiated and may request user input to confirm the order. The confirmation screen may or may not also request additional information for completing the order. In some of these implementations, the reader device may present the confirmation message prior to initiating the order for the at least one instance of content and may initiate the order when user input corresponding to a confirmation is received. In other of these implementations, the provider of the instance of content may transmit the confirmation message to the reader device after receiving the initiated order and may transmit the ordered instance of content after receiving the user input corresponding to a confirmation.
It is to be understood that both the foregoing general description and the following detailed description are for purposes of example and explanation and do not necessarily limit the present disclosure. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate subject matter of the disclosure. Together, the descriptions and the drawings serve to explain the principles of the disclosure.
The description that follows includes sample systems, methods, and computer program products that embody various elements of the present disclosure. However, it should be understood that the described disclosure may be practiced in a variety of forms in addition to those described herein.
Content receivers (such as television receivers, set top boxes, television tuners, digital video recorders, and so on) typically receive content (such as television programming content, movie content, music content, video on-demand, pay-per-view content, and so on) from a content provider (such as a cable television programming provider, a satellite television programming provider, a satellite radio provider, an Internet service provider, a video on-demand movie provider, a pay-per-view movie provider, and so on) via a communication connection (such as a coaxial cable connection, a satellite connection, a wired Internet connection, a wireless Internet connection, a cellular connection, and so on). Such a content receiver may then transmit received content to a presentation device such as a television, a speaker, and so on.
Some content received by content receivers from content providers may be broadcast by the content provider to a number of content receivers. As such, the broadcast content may be available via a content receiver regardless whether or nota user of the content receiver orders the broadcast content. Additionally, a user of the content receiver may be able to transmit an order for additional content (whether for free, purchase, rental, and so on) which may then be sent to the content receiver or products which may then be sent to a user location. Additional content which may be ordered for a content receiver may include on-demand programming that is orderable from the content provider or a third party provider, pay-per-view programming that is orderable from the content provider or a third party provider, and so on.
However, in order for a user to order additional content or products the user generally must communicate with the content provider or third party provider regarding the additional content or products which the user desires to order. Some content receivers may be able to send communications to an associated content provider in order for a user to order additional content, but may still be unable to send communications to separate third party providers in order for the user to be able to order additional content or products from such a source. Other content receivers may not be able to send communications at all being limited to receiving content, and may not enable users to order content or products at all. In either case, users may have to order content or products by placing an order via a telephone call, a web site, and so on.
In order to order content or products in such a manner, a user may be required to locate the appropriate information for contacting the provider of the content or products, actually contact the provider of the content or products utilizing the appropriate method, provide account information and other identifiers for the content receiver, and/or provider various financial information such as a credit card or other billing account number. Regardless of the exact procedures a user must follow and/or the exact information a user must provide, user's may find ordering content or products in this manner to be inconvenient and burdensome.
The present disclosure discloses systems and methods for ordering utilizing dynamic matrix code generation. A content receiver may receive one or more identifiers from a content provider. The identifiers may identify ordering information for one or more instances of content that a user may order to be transmitted to the content receiver or products. The content receiver may also derive information specific to the content receiver (such as content receiver identifiers, customer identifiers, subscriber account identifiers, user financial information, and so on). Then, the content receiver may dynamically generate one or more matrix codes (such as one or more QR codes) that include the ordering information and the information specific to the content receiver and transmit the matrix codes to a display device. When the matrix codes displayed on the display device are detected and decoded by a reader device (such as a matrix code reader application executing on a smart phone), the reader device may initiate an order for the one or more instances of content to be transmitted to the content receiver or products to be sent to a user location. As such, the user may be able to more conveniently and less burdensomely order and receive the desired content or products.
The content receiver 101 may include one or more processing units 109, one or more one or more non-transitory storage media 110 (which may take the form of, but is not limited to, a magnetic storage medium; optical storage medium; magneto-optical storage medium; read only memory; random access memory; erasable programmable memory; flash memory; and so on), one or more input components 111, and one or more output components 112. Additionally, although the display device 102 is illustrated as separate from the content receiver, it is understood that in various implementations the display device may be incorporated into the content receiver. The processing unit of the content receiver may execute instructions stored in the non-transitory storage medium to receive content from the content provider 106 and then transmit the received content to the display device.
Moreover, the processing unit 109 may execute instructions stored in the non-transitory storage medium 110 to receive one or more content identifiers from the content provider 106 utilizing the input component 111, derive information specific to the content receiver 101, dynamically generate one or more matrix codes that include the ordering information and the information specific to the content receiver, and transmit the matrix codes to the display device 102 utilizing the output component 112. The one or more matrix codes may be one or more QR codes. The content identifiers may identify ordering information for one or more instances of content. Additionally, the content identifiers may be received along with the content received from the content provider, such as advertisements for one or more instances of content corresponding to the ordering information. The information specific to the content receiver may include information such as one or more content receiver identifiers, one or more content receiver network addresses, one or more customer identifiers associated with the content receiver, one or more subscriber account identifiers associated with the content receiver, account information for a content account associated with the content provider, user financial information or other financial information associated with the content receiver, and so on. The ordering information may include information for transmitting the information specific to the content receiver to a provider of the at least one instance of content to initiate order of the at least one instance of content (such as the address of a web site to which to transmit the information specific to the content receiver). In some implementations, the provider of the at least one instance of content may be the content provider.
Subsequently, the reader device 103 may optically detect the matrix code displayed by the display device 102 utilizing one or more optical input components 115 (such as a camera, a barcode reader, and so on), decode the information specific to the content receiver 101 and the content identifier, and initiate at least one order for the at least one instance of content to be transmitted to the content receiver 101 based on the decoded information. As part of initiating the order for the at least one instance of content, the reader device may transmit the information specific to the content receiver to the provider of the at least one instance of content (such as the content provider 106) utilizing one or more communication components 116 as specified by the content identifier. The reader device may include one or more processing units 113 which execute instructions stored in one or more non-transitory storage media 114 in order to perform the above described functions.
After the provider of the at least one instance of content (such as the content provider 106) receives the initiated order for the at least one instance of content from the reader device 103, the provider of the at least one instance of content may transmit the at least one content to the content receiver 101, which the content receiver may receive utilizing the input component 111. Subsequently, the content receiver may transmit the received at least one instance of content to the display device 102 for display.
In various implementations, the reader device 103 may present a confirmation message after detecting and decoding the one or more matrix codes via one or more display devices (not shown). The confirmation screen may detail the order for the at least one instance of content to be initiated and may request user input to confirm the order utilizing one or more input devices (not shown). The confirmation screen may or may not also request additional information for completing the order, such as credit card information, parental control passwords, and so on. In some of these implementations, the reader device may present the confirmation message prior to initiating the order for the at least one instance of content and may initiate the order when user input corresponding to a confirmation is received.
In other of these implementations, the reader device 103 may initiate the order without presenting a confirmation message by transmitting the information specific to the content receiver 101 to the provider of the at least one instance of content (such as the content provider 106). The provider of the at least one instance of content may then transmit a confirmation message to the reader device prior to transmitting the at least one instance of content to the content receiver. The reader device may then present the confirmation screen and transmit any user input corresponding to a confirmation to the provider of the at least one instance of content. When the provider of the at least one instance of content receives the user input corresponding to the confirmation, the provider of the at least one instance of content may then transmit the at least one instance of content to the content receiver.
Although the provider of the at least one instance of content has been described above as the content provider 106, in various implementations the provider of the at least one instance of content may be a third party provider of content other than the content provider (such as an on-demand or pay-per-view movie provider such as Netflix®, Amazon dot com®, and so on). In such implementations, the system 100 may include the third party provider 107 which may be communicably connected to the reader device 103 via the transmission medium 104 and the content provider via a transmission medium 108 (as with the transmission medium 104 and the transmission medium 105, although the various transmission media are illustrated as separate, in various implementations they may constitute a single transmission medium). Hence, the reader device 103 may initiate the order for the at least one instance of content by transmitting the information specific to the content receiver to third party 107 via the communication component 116 as specified by the content identifier. The third party provider may then transmit the ordered at least one instance of content to the content provider which may then retransmit the ordered at least one instance of content to the content receiver 101. Additionally, prior to the third party transmitting the ordered at least one instance of content to the content provider, the third party provider and the content provider may exchange information regarding the order, the user, the content receiver, and so on (such as for the purpose of billing for the order of the at least one instance of content).
In various implementations, the content receiver 101 may transmit the one or more matrix codes by themselves to the display device 102 via the output component 112 for the display device to display only the one or more matrix codes at a particular time. However, in various other implementations (such as implementations where the electronic device is a television receiver, digital video recorder, or other such device that provides images to a display), the electronic device may transmit one or more images (such as a video stream) to the display device via the output component. In such implementations, the electronic device may combine the one or more matrix codes with the one or more images and transmit the combination to the display device via the output component.
At block 206, the display device 102 displays the matrix code that was transmitted by the processing unit 109 of the content receiver 101 via the output component 112. The flow then proceeds to block 207.
At block 207, the reader device 103 detects the matrix code displayed on the display device 102. The flow then proceeds to block 208 where the reader device decodes the detected matrix code. Decoding the detected matrix code may include decoding the information specific to the content receiver and the content identifier that is included in the matrix code. The flow then proceeds to block 209 where the reader device initiates an order for at least one instance of content as specified by the decoded content identifier. The flow then proceeds to block 210.
At block 210, the reader device 103 determines from the information included in the decoded content identifier whether to transmit the order for the at least one instance of content to the content provider 106 or the third party provider 107. If the content identifier specifies to transmit the order to the content provider, the flow proceeds to 211. Otherwise, the flow proceeds to block 221.
At block 211, after the reader device 103 determines that the content identifier specifies to transmit the order to the content provider 106, the reader device transmits the order to the content provider. The flow then proceeds to block 212 where the content provider receives the order before the flow proceeds to block 213. At block 213, the content provider determines whether or not to confirm the transmitted order (which may be based on whether the content identifier specified to confirm the order before transmittal of the at least one instance of content). If the content provider determines not to confirm the order, the flow proceeds to block 214. Otherwise, the flow proceeds to block 217.
At block 214, after the content provider 106 determines not to confirm the order, the content provider transmits the ordered content to the content receiver 101 and the flow proceeds to block 215. At block 215, the content receiver receives the ordered at least one instance of content. The flow then proceeds to block 216 and ends.
At block 217, after the content provider 106 determines to confirm the order, the content provider transmits a confirmation message to the reader device 103 and the flow proceeds to block 218. At block 218, the content provider waits for a response to the transmitted confirmation message and the flow proceeds to block 219. At block 219, the content provider determines whether or not a response to the confirmation message has been received from the reader device. If not, the flow returns to block 218 where the content provider continues to wait to receive a response to the confirmation message. Otherwise, the flow proceeds to block 220 where the content provider determines whether or not the response to the confirmation message confirms the order. If so, the flow proceeds to block 214 where the content provider transmits the ordered content to the content receiver 101. Otherwise, the flow proceeds to block 216 and ends.
At block 221, after the reader device 103 determines that the content identifier specifies to transmit the order to the third party provider 107, the reader device transmits the order to the third party provider. The flow then proceeds to block 222 where the third party provider receives the order before the flow proceeds to block 223. At block 223, the third party provider determines whether or not to confirm the transmitted order (which may be based on whether the content identifier specified to confirm the order before transmittal of the at least one instance of content). If the third party provider determines not to confirm the order, the flow proceeds to block 224. Otherwise, the flow proceeds to block 225.
At block 224, after the third party provider 107 determines not to confirm the order, the third party provider transmits the ordered content to the content provider 106 and the flow proceeds to block 214.
At block 225, after the third party provider determines to confirm the order, the third party provider transmits a confirmation message to the reader device 103 and the flow proceeds to block 226. At block 226, the third party provider waits for a response to the transmitted confirmation message and the flow proceeds to block 227. At block 227, the third party provider determines whether or not a response to the confirmation message has been received from the reader device. If not, the flow returns to block 226 where the third party provider continues to wait to receive a response to the confirmation message. Otherwise, the flow proceeds to block 228 where the third party provider determines whether or not the response to the confirmation message confirms the order. If so, the flow proceeds to block 224 where the third party provider transmits the ordered content to the content provider. Otherwise, the flow proceeds to block 216 and ends.
It should be understood that the specific steps as well as the specific order or hierarchy of steps described in method 200 is an example of a sample approach. In other implementations, some of the specific steps as well as the specific order or hierarchy of steps in the method may be rearranged while remaining within the disclosed subject matter.
As illustrated in
Although the system 100 illustrated in
In the present disclosure, the methods disclosed may be implemented as sets of instructions or software readable by a device. Further, it is understood that the specific order or hierarchy of steps in the methods disclosed are examples of sample approaches. In other embodiments, the specific order or hierarchy of steps in the method can be rearranged while remaining within the disclosed subject matter. The accompanying method claims present elements of the various steps in a sample order, and are not necessarily meant to be limited to the specific order or hierarchy presented.
The described disclosure may be provided as a computer program product, or software, that may include a non-transitory machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A non-transitory machine-readable medium includes any mechanism for storing information in a form (e.g., software, processing application) readable by a machine (e.g., a computer). The non-transitory machine-readable medium may take the form of, but is not limited to, a magnetic storage medium (e.g., floppy diskette, video cassette, and so on); optical storage medium (e.g., CD-ROM); magneto-optical storage medium; read only memory (ROM); random access memory (RAM); erasable programmable memory (e.g., EPROM and EEPROM); flash memory; and so on.
It is believed that the present disclosure and many of its attendant advantages will be understood by the foregoing description, and it will be apparent that various changes may be made in the form, construction and arrangement of the components without departing from the disclosed subject matter or without sacrificing all of its material advantages. The form described is merely explanatory, and it is the intention of the following claims to encompass and include such changes.
While the present disclosure has been described with reference to various embodiments, it will be understood that these embodiments are illustrative and that the scope of the disclosure is not limited to them. Many variations, modifications, additions, and improvements are possible. More generally, embodiments in accordance with the present disclosure have been described in the context or particular embodiments. Functionality may be separated or combined in blocks differently in various embodiments of the disclosure or described with different terminology. These and other variations, modifications, additions, and improvements may fall within the scope of the disclosure as defined in the claims that follow.