The present disclosure relates generally to a system for delivery of random novel content.
Content delivery is commonly used with electronic displays and with printers. Previous systems exist for delivering content on a subscription basis. Other systems recommend selections to be chosen by a user. Yet other systems allow a user to navigate through collections and sub-collections of possible selections in order to choose a desired item.
Features and advantages of examples of the present disclosure will become apparent by reference to the following detailed description and drawings, in which like reference numerals correspond to similar, though perhaps not identical, components. For the sake of brevity, reference numerals or features having a previously described function may or may not be described in connection with other drawings in which they appear.
The present disclosure includes examples of a system and method that simplify a selection and publication process and delivers random novel content.
Examples of the system and method for delivery of random novel content disclosed herein allow users to receive random novel content in a simple manner, introducing elements of novelty, surprise, and fun. Generally, the system receives a request for random novel content from a web-enabled device. Thereafter, the system executes a process resulting in publication of random novel content to an output device. The system reduces the previously required user interaction of finding and selecting content in a large collection. A single step for selection replaces a complex process of navigation and selection. This may be more convenient to the user because fewer steps are involved. The system also may keep track of previously presented content to minimize occurrence of repeated delivered content. The system may produce an immediate response, delivering the desired subject matter with unpredictable but compelling results. Additionally, the simple interface of the system may, in some instances, minimize screen real estate on devices with small screens.
Examples of various delivery options allow for differing types of results. With truly random selection, the same content may in theory be delivered multiple times. In addition to random selection, examples of the system as disclosed herein allow other selection algorithms that appear random while eliminating or minimizing duplicate selections.
Referring now to
The publishing module 20 may perform an algorithmic process that generates a list of the random novel content that may be random, sequential, or preprogramed. For example, the novel selection process may be adapted to facilitate a contest or to deliver rewards such as coupons. The random novel content may be selected from a content menu hierarchy operatively connected to the output device 22. The content menu hierarchy may have multiple levels, and random novel content may be selected from any one of these levels of the content menu. Alternatively, the selection may be done from a predefined portion of a hierarchy. The selection may retrieve a random piece/portion from the source content, or the selection may uniquely identify a particular piece/portion from the source content as the user navigates a content hierarchy.
The publishing module 20 may also, after the random novel content is identified, deliver the identified random novel content to the output device 22 via the web-enabled device 12 on a recurring schedule, at a predetermined time, or by a combination of both of the preceding options. In an example, this allows a user to receive content on demand, or have a subscription service where content is received periodically according to a schedule. The random novel content may include unique content in response to selection criteria. The delivery of the identified random novel content to the output device 22 via the web-enabled device 12 may also be in a sequential manner. In examples, the selection of random novel content may be individually randomized, such that there could be repeat presentations/delivery of content, or the order may be determined by a randomly generated sequence, such that duplicates are eliminated unless the sequence is repeated. Additionally, selection criteria may influence the selection or order. Such selection criteria may include consumer preferences or demographics, for example. Also, the selection or order may be specified by an editor, in a planned selection.
Referring now to
“Content”, as used herein, refers to information that can be received by and stored at a computer system for possible later presentation/delivery to a user. Examples of visual content include text, graphics and other images capable of being visually displayed and/or printed at a printing device. Examples of visual content may also include video/movie content capable of being displayed on output device 22. Examples of audio content may include music or speech to be processed and delivered to the output device 22. Content may also include instructions designed to be processed by a computing device. Example content formats may include PDF and other page description formats, HTML, RSS feeds and other XML formats, JPEG, TIFF and other image formats, and document formats such as Microsoft® Word, Microsoft Excel®, and Adobe InDesign®.
Further, as used herein, “source content” refers to a library, repository, or store of content that can be electronically stored in a memory. In an example, source content is obtained from a computing device that is part of a computing system of a content provider, an example of which may be a web site. One or several content providers may be involved, as shown by the example of content provider 18 and content provider 18′ in
Referring now to
Publishing module 20 is additionally capable of receiving requests for random novel content from, and causing random novel content to be obtained by web-enabled device 12. Publishing module 20 may include a memory 46, a processor 48, and a network interface 50. In a given implementation, processor 48 may represent multiple processors, and the memory 46 may represent multiple memories. In an example, the publishing module 20 may include a number of software components that are stored in a computer-readable medium (e.g., memory 46) and are executable by processor 48. In this respect, the term “executable” includes a program file that is in a form that can be directly (e.g., machine code) or indirectly (e.g., source code that is to be compiled) performed by the processor 48. An executable program may be stored in any portion or component of memory 46.
Memory 46 may include an operating system 52, a raster image processing (RIP) component 54, a content managing service 56, source content import component 57, and data 58. Operating system 52 represents generally any software platform on top of which other programs or applications such as the raster image processing component 52 and the content managing service 56 run. Examples include Linux® and Microsoft Windows®. Raster image processing component 54 represents generally any combination of hardware and software capable of converting digital information about fonts and graphics that describes the intended appearance of the content, and translating that information into an image composed of individual dots that a printer can output. In examples, raster image processing component 54 may be additionally configured to compose page layouts and scaling operations.
Content managing service 56 represents generally any programming, that, when executed, is responsible for obtaining source content from a content provider 18. In an example, obtaining source content from a content provider 18 may include causing the source content to be sent directly or indirectly by a content provider 18 to publishing module 20. In an example, obtaining source content from a content provider 18 may include causing the source content to be retrieved from a holding destination, e.g., an FTP site or RSS feed (where the source content has been sent by content provider 18) and made available for direct or indirect retrieval by the publishing module 20. In an example, obtaining source content from content provider 18 may include obtaining the content via a request, e.g., Application Programming Interface (API) request via Hypertext Transfer Protocol (HTTP), from publishing module 20 to a content provider 18. The content may be obtained from a content provider 18 and stored in memory 46. Content managing service 56 is additionally responsible for receiving a request for delivery, without user intervention, of random novel content to output device 22 via the web-enabled device 12. The random novel content includes at least a portion of the source content that is obtained from the content provider 18. The received request may be a request that is initiated via user interaction with a user interface 26 at the web-enabled device 12.
Content managing service 56 is additionally responsible for establishing a protocol for delivery of the random novel content to output device 22 via the web-enabled device 12. The protocol may be established at least in part on information from the request for delivery and data 58 stored in a memory 46 within the publishing module 20. Content managing service 56 is further responsible for causing formatting of the random novel content, in accordance with the protocol. The formatting of the random novel content may occur via a raster image processing component 54 at publishing module 20. Content managing service 56 is also responsible for causing the random novel content to be obtained by the output device 22 via the web-enabled device 12. In an example, causing content to be obtained by an output device 22 via the web-enabled device 12 may include causing the random novel content to be sent directly or indirectly from publishing module 20 to the output device 22 via the web-enabled device 12.
In an example, causing content to be obtained by output device 22 may include causing the random novel content to be sent by publishing module 20 to a holding destination, e.g., an FTP site or RSS feed, where the content is made available for direct or indirect retrieval by output device 22 via the web-enabled device 12. Indirect retrieval may include retrieval by a host computing device that is web-enabled and connected to the output device 22, which host device in turn sends the content to the output device 22 or allows the output device 22 to retrieve the content from the host device. In an example, causing random novel content to be obtained by output device 22 may include obtaining the content via a request, e.g., API request via HTTP, sent to publishing module 20 by web-enabled device 12. In the example of
Data 58 represents generally a collection of information stored in memory 46. Data 58 may include source content data. Further, data 58 may include information used by content managing service 56 to establish a protocol for delivery of the random novel content. In an example, data 58 may include information as to the model or type of output device 22. In another example, data 58 may include time zone information relevant to the physical location of output device 22.
Network interface 50 represents generally any combination of hardware and programming configured for electronically connecting publishing module 20 to link 44′. In an example, the network interface may include a network interface card, a network adapter, a network interface controller, and or a Local Area Network (LAN) adapter.
Web-enabled device 12 and/or output device 22 may include a computing device capable of obtaining random novel content from publishing module 20, producing visual and/or audio output from the random novel content, and communicating information relating to the obtained random novel content and/or the visual/audio output back to the publishing module 20. In the example of the web-enabled device 12 shown in
Network interface 64 may include any combination of hardware, firmware and software to electronically connect web-enabled device 12 to link 44′. Controller 66 may include any combination of elements capable of acting as an embedded computing device to coordinate the operation of print engine 60, user interface 26 and network interface 64. In a given implementation, the controller 66 includes a processor 68 and a memory 70, and the memory 70 may include an operating system 71. Operating system 71 represents generally any software platform on top of which other programs or applications run. The processor 68 may represent multiple processors, and the memory 70 may represent multiple memories.
Now referring to
It is to be understood that memory 46, 70, 76 may be a computer-readable storage medium including various types of memory modules, including volatile and nonvolatile memory. As an example, the computer-readable storage medium may include Random Access Memory (RAM), Read Only Memory (ROM), and Hard Disk Drive (HDD) memory. It is believed that other types of memory may also be used. In some instances, different types of memory in the computer-readable storage medium may be used for different data storage needs. For example, the processor may boot from ROM, maintain nonvolatile storage in the HDD memory, and execute program code stored in RAM.
It is to be understood that the computer-readable storage medium may be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More specific examples of the computer-readable storage medium may include, for example, the following: a portable computer diskette, a hard disk, a RAM, a ROM, an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
Referring now to
Examples of method 100 may further include identifying any received source content that had been previously presented to the output device 22 via the web-enabled device 12, and selecting the random novel content from the received source content that is identified as having not been previously presented to the output device 22 via the web-enabled device 12.
In another example, method 100 may also select a portion of content from the received source content and determine whether the selected portion of content is being presented for a first time to the output device 22 via the web-enabled device 12. The selected portion of content may be presented/delivered as the identified random novel content to the output device 22 via the web-enabled device 12 when it is determined that the selected portion of content is being presented for the first time. Alternately, another portion of content may be selected from the received source content when it is determined that the selected portion of content is not being presented for the first time.
Examples of method 100 may further include performing an algorithmic process that generates a list of the random novel content that is any of random, sequential, or preprogrammed, as mentioned above.
It is to be understood that the terms “connect/connected/connection” and/or the like are broadly defined herein to encompass a variety of divergent connected arrangements and assembly techniques. These arrangements and techniques include, but are not limited to (1) the direct communication between one component and another component with no intervening components therebetween; and (2) the communication of one component and another component with one or more components therebetween, provided that the one component being “connected to” the other component is somehow in operative communication with the other component (notwithstanding the presence of one or more additional components therebetween).
It is to be understood use of the words “a” and “an” and other singular referents include plural as well, both in the specification and claims.
While several examples have been described in detail, it will be apparent to those skilled in the art that the disclosed examples may be modified. Therefore, the foregoing description is to be considered non-limiting.