A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings that form a part of this document: Copyright eBay, Inc. 2013, All Rights Reserved.
The present application relates generally to data processing systems and, in one specific example, to techniques for facilitating commerce and retail transactions.
Traditional retail stores typically include large amounts of space for stocking various inventory and items for sale. Generally, a customer will enter the store, browse through a possibly voluminous amount items available for sale, select one of the items that they are interested in, try that item on in a fitting room (e.g., in the case of clothing), and then proceed to a checkout aisle in order to pay for the item.
Some embodiments are illustrated by way of example and not limitation in the figures of the accompanying drawings in which:
Example methods and systems for facilitating commerce and retail transactions are described. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of example embodiments. It will be evident, however, to one skilled in the art that the present invention may be practiced without these specific details.
According to various exemplary embodiments, interactive display screen surfaces (e.g., touchscreens) may be incorporated in various positions and locations within and around retail stores, in order to enhance shopping experiences for consumers. For example, display surfaces (e.g., touchscreens) may be provided on interior walls of a retail store, on the ceiling of a retail store, on the floor of a retail store, in fitting rooms of a retail store, on exterior walls or storefronts of a retail store, and so on. In some embodiments, the aforementioned display surfaces displayed on exterior walls and storefronts may be referred to as shoppable windows, shoppable storefronts, digital walls, magic mirrors, and kiosks throughout. Hence, in some embodiments, the terms shoppable window and kiosk may be utilized interchangeably. Display surfaces such as the aforementioned shoppable windows may even be provided on walls or storefronts remote from active retail stores, such as unused storefronts of abandoned stores. The shoppable windows may be projected on to or displayed on exterior surfaces using any techniques or methods understood by those skilled in the art. In some embodiments, the shoppable windows may correspond to touchscreens that display various types of content. Since shoppable windows may be displayed on exterior walls or storefronts of a retail store 24 hours a day, users may shop from a store (via kiosk or shoppable windows) at any time.
Thus, according to various exemplary embodiments, a seamless multiscreen, multi-device, in-store (or out-of-store) commerce experience may be provided. For example, as described above, multiple display surfaces may be provided throughout a store, retail establishment, business, or other location, as well as on the user's smartphone. Each of these multiple surfaces may be interactive (e.g., touchscreens), and each surface may be interconnected in conjunction with the user's smartphone to provide an integrated interactive shopping experience to a user. In other words, the entire store and the user's smartphone may be viewed as a single interaction surface with different windows, where a single session continues as a user moves from screen to screen.
An Application Program Interface (API) server 114 and a web server 116 are coupled to, and provide programmatic and web interfaces respectively to, one or more application servers 118. The application servers 118 host one or more applications 120. The application servers 118 are, in turn, shown to be coupled to one or more databases servers 124 that facilitate access to one or more databases 126. According to various exemplary embodiments, the applications 120 may be implemented on or executed by one or more of the modules of the shoppable window commerce system 200 illustrated in
Further, while the system 100 shown in
The web client 106 accesses the various applications 120 via the web interface supported by the web server 116. Similarly, the programmatic client 108 accesses the various services and functions provided by the applications 120 via the programmatic interface provided by the API server 114.
Turning now to
According to various exemplary embodiments, the kiosk display system 200 may be associated with a kiosk located in a retail store, and may be configured to detect a number of “impressions” or “views” of the kiosk by people who are in close proximity to the kiosk or are visiting the retail store (e.g., shoppers, consumers, customers, etc.). For example, the number of impressions may represent a number of people considered to have viewed content displayed on a display screen of the kiosk.
In some embodiments, the kiosk display system 200 may determine a number of impressions by detecting the number of users that enter a predetermined zone around the kiosk, such as by detecting users that are located within a predetermined distance of the kiosk. Different predetermined distances may be established for different directions with respect to the front of the kiosk (e.g., a greater distance with respect to the front of the kiosk, a smaller distance with respect to the side of the kiosk, etc.). The kiosk may include a camera or other sensor (e.g., audio sensor, light sensor, infrared sensor, motion detection sensor, depth sensor, field sensor etc.) that detects when a user is located near the kiosk.
In some embodiments, the amount of time that the user spends in the aforementioned zone may be taken into account when recording impressions. For example, in some embodiments, the kiosk display system 200 may record an impression each time the user enters the aforementioned zone for any period of time. This may enable the kiosk display system 200 to count the number of people that walk past the kiosk as impressions. In other embodiments, the kiosk display system 200 will record an impression each time the user enters and remains within the zone for a predetermined time period (e.g., 5 seconds, 30 seconds, 1 min., etc.). This may enable the kiosk display system 200 to count the number of people that linger near the kiosk as impressions. In some embodiments, the kiosk display system 200 may take into account movement of users (e.g. by tracking speed or acceleration of users), in order for the kiosk display system 200 to differentiate between people that walk past the kiosk and people that stop and linger near the kiosk, for the purposes of recording impressions.
In some embodiments, the kiosk display system 200 may be able to detect when a user approaches the kiosk or faces the kiosk at a particular angle, orientation, or direction, for the purposes of recording impressions. For example, the kiosk may include a camera configured to detect facial features and body features of users near the kiosk. If the camera is able to detect all or most of the facial features of the user (e.g., from both sides of the face of the user), this may indicate that the user is facing the display screen of the kiosk, as opposed to if the camera can only detect the right side of the face of the user, for example. As another example, if the camera is able to detect both shoulders of the user, this may indicate that the user has “squared up” near the kiosk and that the user is facing the kiosk head-on, which may be recorded as an impression. The kiosk display system 200 may store impression information describing the number of impressions or an impression count (e.g., over various time periods such as one day, one week, one month, etc.) in a database (e.g., the database 212 illustrated in
According to various exemplary embodiments, an emotion library may be utilized to determine reaction to kiosk content. For example, in some embodiments, the kiosk display system 200 may detect and analyze facial features of the user in order to record impressions. The kiosk display system 200 may access an “emotion library” (e.g., stored in the database 212 illustrated in
According to various exemplary embodiments, the kiosk may include a height-based display. For example, the kiosk may include a camera or other sensor (e.g., audio sensor, light sensor, infrared sensor, motion detection sensor, etc.) that detects when a user is located near the kiosk and the height of the user. In some embodiments, when a kiosk display system 200 detects that a user of a given height is currently viewing the kiosk, the kiosk display system 200 may adjust the content being displayed so that it is re-centered on a different portion of the display screen of the kiosk. For example, if the kiosk display system 200 detects that a tall user is currently viewing the kiosk, the kiosk display system 200 may re-center the content so that it is displayed higher in the display screen of the kiosk. On the other hand, if the kiosk display system 200 detects that a short user is currently viewing the kiosk, the kiosk display system 200 may re-center the content so that it is displayed lower in the display screen of the kiosk.
In some embodiments, the kiosk display system 200 may infer the age of the user, based on the height of the user. For example, if the kiosk display system 200 detects that a tall user is currently viewing the kiosk, the kiosk display system 200 may infer that the user is an adult, and the kiosk display system 200 may adjust the content being displayed accordingly. On the other hand, if the kiosk display system 200 detects that a short user is currently viewing the kiosk, the kiosk display system 200 may infer that the user is a teenager, young adult, or child (depending on the height of the user), and the kiosk display system 200 may adjust content being displayed accordingly (e.g., by displaying games, stories, children's books, toys, etc.).
According to various exemplary embodiments, a kiosk display system 200 is configured to simultaneously display different types of content directed at different target audiences in different portions of a display screen of the kiosk. For example, the kiosk display system 200 may display height-specific content for users having different heights, by splitting the display screen of the kiosk into two areas, including an upper/higher area for taller users and a lower area for shorter users. In some embodiments, the upper area may include content catered to adults, whereas the lower area may include content catered to young adults or children. In some embodiments, if the kiosk display system 200 detects that an adult and a child are currently using the kiosk (e.g., by detecting both a tall user and a short user standing in front of the kiosk, using various techniques described above), then the kiosk display system 200 may begin simultaneously displaying adult content in the upper area and child content in the lower area, as described above. In some embodiments, the kiosk display system 200 may allow interaction between content in the lower area and the upper area of the display screen. For example, if the lower area is catered to child content such as games, then the lower area may display a ball, and if the child user touches the ball and flicks it upward, the ball may appear to move upward into the upper content area that displays content for adults. The adults can then select the ball and flick it back down to the child area. Similarly, children can select other items, such as product items (e.g., toys or games) for sale, and flick them up to the upper areas of the display screen for viewing by parents. Thus, various interactive features may be displayed by the kiosk that may improve the user experience for kiosk users of different ages.
According to various exemplary embodiments, a mobile application for store assistants is provided, which may be implemented on or executed by the store assistant module 210 in the display system 200. Store assistants may include any staff or employees of a retail store that may assist customers, consumers, and shoppers of the retail store with their shopping needs. For example, store assistants often have various duties that include helping shoppers find product items, providing shoppers with advice about product items, explaining to shoppers the difference between product items, and so on. In some embodiments, the store assistant mobile application enables a store assistant to scan and collect information about a product item of interest to a customer. For example, when a customer indicates to a store assistant that they're interested in a product item (e.g., when the customer asks questions about the product item), the store assistant can take a photograph of the product item or scan a barcode attached to the product item using their smartphone. This scanned information may be passed to the store assistant's mobile application. The store assistant's application can then identify the product item (e.g., based on decoding information in the scanned barcode, or by performing an image recognition process on the photograph of the product item), and the resulting product identification information may be stored in association with the user profile of the customer.
In some embodiments, the product identification information may be used to select online content to be displayed to a user at a later time, and/or to augment the user preference profile or a user taste profile or user interest profile associated with the customer. For example, frequent customers to a particular retail store (which may include customers that have store credit cards, rewards cards, or preferred customer cards associated with the retail store) often have an account with the store that includes an associated user profile including various information about the user (such as purchase history information, financial account information, and so on). Accordingly, the aforementioned product identification information describing the product items of interest to the user may be uploaded into the user profile. Thereafter, when the user visits a home webpage of the retail store, information regarding the scanned product items (e.g., products for sale online, recommendations, advertisements, coupons, reviews, etc.) may be displayed on the webpage. Information regarding similar items (e.g., similar brands, similar sizes, similar styles, etc.) may also be displayed on the homepage. In some embodiments, the aforementioned types of information may also be displayed on other webpages associated with the retail store, including reviews pages, help pages, discussion forums, user profile pages, and so on.
In some embodiments, a store assistant may take a photograph of a customer, and the store assistant mobile application is configured to analyze the photograph to approximate measurements and sizes of clothing that may fit the customer, and display this information on the smartphone of the store assistant. The store assistant mobile application may also superimpose images of various product items (e.g., clothing) over the photograph of the customer.
In some embodiments, the store assistant mobile application includes maps of the retail store and information regarding various product items stored in different parts of the retail store. Accordingly, when the store assistant specifies a particular product item (e.g., entering the product item into a search query bar, or by selecting the product item from a number of product items included in a menu), the store assistant mobile application displays a map of the retail store and directions for traveling from the current location of the mobile device to the section of the retail store where the desired items are located. For example, the store assistant mobile application may superimpose a proposed path or trail onto a map of the retail store. Thus, whenever a customer asks a retail store assistant for directions, the retail store assistant can easily find where the desired item is, and provide the customer with directions to the item. The aspects of the store assistant mobile application described above can also be included in a mobile application for customers.
In some embodiments, a shoppable window or a shoppable window user interface thereof may display various content associated with a retail store, online store, or marketplace. For example, the shoppable window may display content related to various product items for sale by the retail store, including item descriptions, pictures, videos, catalogs, product comparison information/tables, advertisements, coupons, promotions, offers, deals, menus, and so on (e.g., see shoppable window user interface 500 in
It is possible that users may not wish to complete the checkout process on the public kiosk or shoppable window, since they will have to enter personalized information into the public kiosk or shoppable window. Accordingly, in some embodiments, users are able to shop on a display surface (e.g., one of the aforementioned shoppable windows) or a public kiosk, build up their shopping cart, and then transfer very smoothly to a mobile phone to complete the checkout. In other words, a public screen may be utilized for the front end of the purchase process, whereas a private screen (e.g., a screen of the user's smartphone) may be utilized for the backend of the purchase process (e.g., checkout).
For example, in some embodiments, after the user adds various items to their shopping cart or bag on the shoppable window or kiosk, the user may select a “purchase” button, “get it” button, “check out” button, etc., displayed on the surface of the shoppable window (e.g., see
In some embodiments, the shoppable window user interface may prompt the user for their e-mail address, screen name, social media handle, etc., instead of (or in addition to) the user's telephone number, and e-mails, social media messages, instant messages, chat messages, etc., may be transmitted to the user, instead of (or in addition to) text messages. In some embodiments, instead of entering a phone number, the shoppable window may display a QR code including a link to a purchase page (e.g., see shoppable window user interface 700 illustrated in
Accordingly, a traditional physical store may be extended to include various spaces and surfaces that are interesting for consumers to use. The shoppable windows may be utilized to launch new brands or products without opening new physical stores. The shoppable windows may also be used by small retail outlets to let customers buy products that they can't stock on the premises. For instance, shoppable windows may be placed on existing stores to sell things like linens and home furnishings that consume a great deal of space and might not fit in the physical store. Accordingly, shoppable windows may extend the boundaries of traditional physical stores.
According to various exemplary embodiments, phone-to-digital wall interaction may be initiated by changing phone orientation from portrait to landscape. For example, according to various embodiments, a user may turn or rotate their mobile device in order to initiate or trigger an interactive session between the mobile device and another device. For example, in some embodiments, when a user points a camera of their mobile device at a kiosk, billboard, or shoppable window, and if the user rotates or turns their mobile device (e.g., 90° clockwise), the turning motion may be detected by the mobile device (e.g., using accelerometers or gyroscopes included in the mobile device). The mobile device and/or the shoppable window display system 200 may then initiate or establish a communication session between the mobile device and the shoppable window display system 200 (e.g. by launching a mobile application or a webpage in a web browser of the mobile device, based on information scanned by the camera of the mobile device from the kiosk or shoppable window). Thereafter, content may be pushed from the kiosk or remote server to the mobile device, including content related to a shopping experience. This feature may be referred to as a “turn to play” feature in various embodiments throughout.
According to various exemplary embodiments, a wireless access point may be setup inside the storefront window or shoppable window. The aforementioned wireless access point may be similar to other wireless access points that enable various devices (e.g., mobile devices such as tablets and smartphones) to connect to a network such as the Internet, although in this case the wireless access point is specifically tied to a particular shoppable window. For example, when the user approaches the shoppable window with their smartphone, the smartphone may automatically attempt to connect to the wireless access point associated with the shoppable window. In some embodiments, this may cause an authentication prompt to be displayed in a webpage of a web browser of the smartphone, or via push notification (e.g., text message) displayed on the smartphone, requesting the user to authenticate themselves by clicking on an “agree” button, for example. Accordingly, this authentication method may be utilized to leverage a shopping experience, so that no further interaction between the user and the shoppable window is necessary. In other words, by connecting to the wireless access point and launching the authentication screen, a session may immediately be initiated between the user smartphone and the shoppable window (or remote server associated with the shoppable window). Thereafter, WebSocket technology may be utilized to transfer data back and forth between the kiosk/shoppable window and the smartphone. Accordingly, the user may initiate a communication session between a smartphone and a shoppable window through a relatively frictionless experience.
As described herein, a session or connection may be established between a smartphone and a shoppable window or kiosk, using various techniques described above, including the aforementioned “turn to play” feature, or by connecting to a wireless access point associated with a shoppable window, or by entering a phone number via keypad displayed on the shoppable window, or by scanning a QR code displayed on the shoppable window, or by texting a passcode displayed on the shoppable window, and so on. After a session or connection is established between the smartphone and the shoppable window, content may be pushed to the smartphone via text messages, or content may be displayed in webpages on the web browser of the smartphone. Accordingly, the user may be presented with personalized content such as coupons, brochures, catalogs, advertisements, deals, promotions, etc. For example, if the user utilizes the shoppable window or kiosk to browse for select product items, log data describing this browsing activity may be stored (e.g., in the database 212), and then information related to these items may be passed to the mobile device by the display system 200. In another embodiment, a map of a retail store associated with the kiosk or shoppable window with directions from the current location of the kiosk to the location of the product items of interest may be pushed to the smartphone (e.g., see the user interface 1700 in
In some embodiments, when a user identifies or demonstrates an interest in particular items, these items may be preloaded for a fitting room. The user may indicate an interest in an item by selecting the item on the webpage or retail store, or selecting/touching the item on one of the aforementioned shoppable windows or a kiosk, or by scanning or taking a photograph of an item displayed on a shoppable window or a kiosk, and so on. In some embodiments, RFID tags or similar devices may be included in the product items (e.g., clothes) or attached equipment (e.g., coat hangers), and when movement is detected in the RFID tag by an RFID scanner (e.g., in the mobile device of a user or store assistant), this may be registered as interest by the nearby user. After the display system 200 determines that the user has expressed an interest in product items associated with a retail store, the application may transmit information to store assistant at the retail store, so that store assistants may collect the appropriate product items and place them in a fitting room. Thus, when the user enters the store and/or approaches the fitting room, the items they are interested are already present in the fitting room.
According to various exemplary embodiments, other devices such as lights, speakers, robotics, mechanize clothes racks, etc. may be connected to a kiosk or shoppable window, and as the user interacts with the kiosk (or smartphone engaged in a communication session with the kiosk), the user may control the attached devices. For example, the kiosk (or smartphone) may display menus and controls for controlling the aforementioned devices.
Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied (1) on a non-transitory machine-readable medium or (2) in a transmission signal) or hardware-implemented modules. A hardware-implemented module is a tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client or server computer system) or one or more processors may be configured by software (e.g., an application or application portion) as a hardware-implemented module that operates to perform certain operations as described herein.
In various embodiments, a hardware-implemented module may be implemented mechanically or electronically. For example, a hardware-implemented module may comprise dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC)) to perform certain operations. A hardware-implemented module may also comprise programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware-implemented module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations.
Accordingly, the term “hardware-implemented module” should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily or transitorily configured (e.g., programmed) to operate in a certain manner and/or to perform certain operations described herein. Considering embodiments in which hardware-implemented modules are temporarily configured (e.g., programmed), each of the hardware-implemented modules need not be configured or instantiated at any one instance in time. For example, where the hardware-implemented modules comprise a general-purpose processor configured using software, the general-purpose processor may be configured as respective different hardware-implemented modules at different times. Software may accordingly configure a processor, for example, to constitute a particular hardware-implemented module at one instance of time and to constitute a different hardware-implemented module at a different instance of time.
Hardware-implemented modules can provide information to, and receive information from, other hardware-implemented modules. Accordingly, the described hardware-implemented modules may be regarded as being communicatively coupled. Where multiple of such hardware-implemented modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) that connect the hardware-implemented modules. In embodiments in which multiple hardware-implemented modules are configured or instantiated at different times, communications between such hardware-implemented modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware-implemented modules have access. For example, one hardware-implemented module may perform an operation, and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware-implemented module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware-implemented modules may also initiate communications with input or output devices, and can operate on a resource (e.g., a collection of information).
The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules.
Similarly, the methods described herein may be at least partially processor-implemented. For example, at least some of the operations of a method may be performed by one or processors or processor-implemented modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment or as a server farm), while in other embodiments the processors may be distributed across a number of locations.
The one or more processors may also operate to support performance of the relevant operations in a “cloud computing” environment or as a “software as a service” (S10S). For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., Application Program Interfaces (APIs).)
Example embodiments may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Example embodiments may be implemented using a computer program product, e.g., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable medium for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers.
A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network.
In example embodiments, operations may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Method operations can also be performed by, and apparatus of example embodiments may be implemented as, special purpose logic circuitry, e.g., a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC).
The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In embodiments deploying a programmable computing system, it will be appreciated that that both hardware and software architectures require consideration. Specifically, it will be appreciated that the choice of whether to implement certain functionality in permanently configured hardware (e.g., an ASIC), in temporarily configured hardware (e.g., a combination of software and a programmable processor), or a combination of permanently and temporarily configured hardware may be a design choice. Below are set out hardware (e.g., machine) and software architectures that may be deployed, in various example embodiments.
The example computer system 2000 includes a processor 2002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU) or both), a main memory 2004 and a static memory 2006, which communicate with each other via a bus 2008. The computer system 2000 may further include a video display unit 2010 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). The computer system 2000 also includes an alphanumeric input device 2012 (e.g., a keyboard or a touch-sensitive display screen), a user interface (UI) navigation device 2014 (e.g., a mouse), a disk drive unit 2016, a signal generation device 2018 (e.g., a speaker) and a network interface device 2020.
The disk drive unit 2016 includes a machine-readable medium 2022 on which is stored one or more sets of instructions and data structures (e.g., software) 2024 embodying or utilized by any one or more of the methodologies or functions described herein. The instructions 2024 may also reside, completely or at least partially, within the main memory 2004 and/or within the processor 2002 during execution thereof by the computer system 2000, the main memory 2004 and the processor 2002 also constituting machine-readable media.
While the machine-readable medium 2022 is shown in an example embodiment to be a single medium, the term “machine-readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more instructions or data structures. The term “machine-readable medium” shall also be taken to include any tangible medium that is capable of storing, encoding or carrying instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present invention, or that is capable of storing, encoding or carrying data structures utilized by or associated with such instructions. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, solid-state memories, and optical and magnetic media. Specific examples of machine-readable media include non-volatile memory, including by way of example semiconductor memory devices, e.g., Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (16PROM), and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
The instructions 2024 may further be transmitted or received over a communications network 2026 using a transmission medium. The instructions 2024 may be transmitted using the network interface device 2020 and any one of a number of well-known transfer protocols (e.g., HTTP). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), the Internet, mobile telephone networks, Plain Old Telephone (POTS) networks, and wireless data networks (e.g., WiFi, LTE, and WiMAX networks). The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine, and includes digital or analog communications signals or other intangible media to facilitate communication of such software.
Although an embodiment has been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the invention. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings that form a part hereof, show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled.
Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term “invention” merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description.
This application claims the priority benefit of U.S. Provisional Application No. 61/831,607, filed Jun. 5, 2013, which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61831607 | Jun 2013 | US |