Directory assistance services commonly provide telephone listing information to communication network users. A user desiring particular listing information dials a directory assistance access code, such as for example, “411,” and connects with a directory assistance service. The user provides parameters relevant to a directory assistance search (e.g., name, locality, etc.) and, if the provided parameters match a particular listing, a human operator or a recorded message (e.g., voice server) communicates details of the particular listing record to the user.
The following detailed description refers to the accompanying drawings. The same reference numbers in different drawings may identify the same or similar elements. The following detailed description does not limit the invention.
Exemplary embodiments described herein log user activity associated with business directory assistance searches initiated by users via multiple different user devices over multiple different network mediums. The business directory assistance searches may involve a user sending a business directory assistance request, along with associated search parameters, to a search server. The search server may execute a search engine that searches a corpus of data related to businesses, based on the search parameters, to obtain a list of businesses that are relevant to the search parameters. The user may interact with the subsequently provided list of businesses to, for example, view one or more businesses on a map (e.g., with turn-by-turn directions), select one or more advertisements to view, select one or more coupons related to a business in the list of businesses, share one or more businesses of the business listing with other users, or select a “click-to-dial” function that initiates a phone call to a selected business from the list of businesses.
Users may send business directory assistance searches from multiple different types of devices over multiple different types of network mediums. The types of devices may include, for example, set-top boxes, wireless user devices (e.g., smart phones), or computers. The network mediums may include various types of networks such as, for example, local area networks/wide area networks, wireless networks, and content delivery networks (e.g., cable networks). The search server may log and store the business directory assistance related user activity in a database, and may subsequently analyze the logged user activity to generate analysis results that can be provided to advertisers so that the advertisers may, for example, better target advertisements to users.
STB 105 may receive content, from content service provider(s) (not shown), over network(s) 130 for presentation to customer 120 via TV 110. STB 105 may, for example, receive the content via one or more channels (e.g., Quadrature Amplitude Module (QAM) channels, Internet Protocol (IP) streams, etc.) over CDN 115. The content may include, for example, TV video programs. CDN 115 may include one or more networks of various types including, for example, a cable network (e.g., an optical cable network), a satellite network, or an Advanced Television Systems Committee (ATSC) standards-based network (e.g., over the air (OTA) network). CDN 115 may, in some implementations, include one or more QAM channels (or other types of modulated or broadcast channels) for delivering content and Electronic Program Guide (EPG) data to STB 105. STB 105 may additionally execute an application (app) (not shown) that provides one or more user interfaces that enable user 140 to interact with server 150 for business directory assistance related user activity.
Wireless user device 120 may include a portable electronic device having wireless communication capabilities that may communicate via wireless network 125. Wireless device 120 may include, for example, a laptop, palmtop or tablet computer having wireless capability; a cellular telephone (e.g., a “smart” phone); or a personal digital assistant (PDA) having wireless capability. Wireless network 125 may include, for example, a cellular network (e.g., a Public Land Mobile Network (PLMN)), or a Wi-Fi network. Computer 130 may include, for example, a desktop or laptop computer that connects to LAN/WAN 135 via wired or wireless connections. LAN/WAN 135 further connects to network 145.
Business directory search server 150 may include a network device that receives business directory assistance requests from customer 140 via STB 105, user device 120 and computer 130, searches a database of business listings (not shown) using a search engine 155, and provides results that include a listing of business that are relevant to search parameters (e.g., keyword(s) and/or geographic location) contained in the business directory assistance requests. Search engine 155 may search the database of business listings using the search parameters contained in the business directory assistance requests received from customer 140 via STB 105, user device 120, and computer 130.
User activity DB 160 may include a network device that further includes memory for storing a data structure, such as user activity DB 160. User activity DB 160 may store various items of user activity data related to business directory searches performed by user 140 (and other users not depicted in
Advertiser(s) 165 may include one or network devices that are involved in generating, storing and/or providing advertisements via various network mediums. In some implementations, as described herein, search 150 may provide advertising recommendations, based on an analysis per user device and network medium, of user activity data stored in user activity DB 160 and may provide the advertising recommendations to advertiser(s) 165. Advertiser(s) 165 may, in some implementations, include multiple different advertisers.
Network(s) 145 may include one or more networks of various types including, for example, a satellite network, a telecommunications network (e.g., a Public Switched Telephone Network (PSTN) or Public Land Mobile Network (PLMN)), a local area network (LAN), a wide area network (WAN), a metropolitan area network (MAN), an intranet, and/or the Internet.
The configuration of network components of network environment 100 illustrated in
As shown in
Customer 140 may subsequently select, via interaction with STB 105, user device 120 or computer 130, a specific business from the business listing results and STB 105 (or user device 120 or computer 130) may present information associated with the selected business to customer 140. The information may include the business's address, phone number, email address, webpage(s), and one or more coupons associated with the selected business. The one or more coupons may include discounts, specials, or deals that the business is offering to customer 140 and which customer 140 may use to purchase products and/or services from the business. Over time, user 140 may, as shown in
In
Periodically, or on demand, server 150 may retrieve logged user activity, that is relevant to a particular advertiser, from user activity DB 160 and may provide the relevant logged user activity (shown by circled number 4) to the advertiser 165. Periodically, or on demand, server 150 may additionally retrieve analysis results, that are relevant to a particular advertiser, from user activity DB 160 and may provide the relevant analysis results (shown by circled number 5) to the advertiser 165.
In some implementations, as shown in
Demultiplexer 220 may select and decrypt compressed audio and video from the transport stream for the particular TV program that the customer 120 or device user wishes to watch. Decoder 230 may decode and decompress the decrypted audio and video information for the selected TV program. Processing unit 240 may include, for example, a microprocessor that controls the operations performed by tuner 200, demodulator 210, demultiplexer 220, decoder 230, modem 250 and DVR unit 260 based on user input (e.g., input received from customer 120 via a remote control device, not shown). Modem 250 may send and receive interactive data (e.g., EPG data) that may be processed by processing unit 240. DVR unit 260 may digitally record, and store, audio and video content associated with the particular TV program decoded by decoder 230.
The configuration of components of STB 110 in
Processing unit 320 may include one or more processors or microprocessors, or processing logic, which interprets and executes instructions. Main memory 330 may include a random access memory (RAM) or another type of dynamic storage device that stores information and instructions for execution by processing unit 320. ROM 340 may include a ROM device or another type of static storage device that stores static information and instructions for use by processing unit 320. Storage device 350 may include a magnetic and/or optical recording medium. Main memory 330, ROM 340, and storage device 350 may each be referred to herein as a “tangible non-transient computer-readable medium.”
Input device 360 may include one or more mechanisms that permit user/operator 120 to input information to network device 300, such as, for example, a keypad or a keyboard, a display with a touch sensitive panel, voice recognition and/or biometric mechanisms, etc. Output device 370 may include one or more mechanisms that output information to the user/operator, including a display, a speaker, etc. Communication interface 380 may include any type of transceiver that enables network device 300 to communicate with other devices and/or systems. For example, communication interface 380 may include wired or wireless transceivers for communicating via networks 125, 135 and/or 145.
The configuration of components of network device 300 in
User ID field 405 may uniquely identify a user 140 with whom the data items in fields 410 through 435 of an entry 400 are associated. Device ID field 410 may uniquely identify the device the user 140 that is identified in field 405 used to engage in the user activity logged in field 435 of entry 400. The data stored in device ID field 410 may additionally identify the type of network device used to engage in the user activity logged in field 435 of entry 400. Location field 415 may identify a geographic location of the user 140 (or STB 105, user device 120 or computer 130) that is identified in field 405 when the user 140 engaged in the user activity logged in field 435 of entry 400. Time field 420 may indicate a date and/or time at which the user 140 identified in field 405 engaged in the user activity logged in field 435 of entry 400.
Medium field 425 may identify a network medium over which the device identified in field 410 communicated to enable the user 140 to engage in the user activity logged in field 435 of entry 400. User demographics field 430 may indicate demographic information associated with the user identified in field 405. Logged user activity field 435 may store user activity for the user identified in field 405 using the device identified in field 410 at the location identified in field 415 and at the time identified in field 420. The user activity may include various types of user interaction with server 150 when engaged in a business directory assistance search, including, but not limited to, business directory assistance search requests, business coupon selection activity, advertisement selection activity (i.e., ad “click-through”), business listing selection activity, business listing “click-to-call” activity, and/or business listing sharing activity.
The number and content of the fields of the tabular data structure of user activity DB 160 illustrated in
The exemplary process may include server 150 receiving multiple business directory assistance requests, from user 140, via multiple different types of network communicating devices associated with the user and multiple different network mediums (block 500).
If a business search option 705 is selected, then the app at STB 105, user device 120 or computer 130 receives a name or keyword of a business and a location to search from user 140. Referring to the user interface screen 700 of
The app at STB 105, user device 120 or computer 130 sends the name or keyword of the business and the location to search engine 155 at server 150. Upon receipt of the business name/keyword and/or the location, user 140 may select the “find” button 725 in user interface screen 700 to cause the name/keyword of the business and the location to be sent to search engine 155 at search server 150. STB 105, user device 120 or computer 130 then receives business search results, and presents the search results as a set of business listings.
Server 150 may receive subsequent business directory assistance related user activity from the user via the multiple types of network communication devices associated with the user and the multiple different network mediums (block 505) and may log the business directory assistance requests and subsequent related user activity, by type of network communicating device and network medium, and store in user activity DB as user activity data for the user (block 510).
Returning to the example of
User 140 may further select (e.g., click on using a mouse, touch on a touch screen, etc.) the one or more ads 940 to see details of the ads. User 140 may additionally select button 920, as a click-to-call button, to initiate a telephone call to the business's telephone number. If user 140 selects button 920 from STB 105, the call may be connected via user 140's landline phone or via user device 120. If user 140 selects button 920 from user device 140, the call may, for example, be connected as a circuit-switched call via a telephone network (e.g., cellular network) or, for example, as a packet-switched call over a Voice over Internet Protocol (VoIP) network. If user 140 selects button 920 from computer 130, the call may, for example, be connected as a packet-switched call over a VoIP network. User 140 may additionally share business listing 810 with other users by selecting “share” button 950. When user 140 selects one of the coupons 930, the selected coupon 1100 may be provided to user 140, as depicted in
Server 150 may log the user activity and store the logged user activity in field 435 of an entry 400 of user activity DB 160, in conjunction with appropriate data stored in fields 405, 410, 415, 420, 425 and 430. For example, server 150 may store user 140's unique identifier in field 405, a device identifier associated with the device user 140 is using to engage in the business directory assistance activity (e.g., device ID associated with STB 105, user device 120 or computer 130), a location 415 of user 140 in location field 415, a time 420 of the user activity in field 420, an indication of the network medium (e.g., CDN 115, wireless network 125, LAN/WAN 135) which the device user 140 is using to engage in the business directory assistance activity in field 425. User demographics 430 associated with user 140, obtained from, for example, a user profile of user 140, may further be stored in field 430.
The exemplary process of
The exemplary process may include server 150 extracting, from user activity DB 160, selected items of logged user activity data, including user activity data associated with multiple different types of network communicating devices and multiple different network mediums (block 1200). Server 150 may selectively retrieve the data content of various fields of data from entries of user activity DB 160. For example, server 150 may identify entries 400 of DB 160 whose data content in medium field 425 indicates that the user activity was over wireless network 125 and/or whose data content in device ID field 410 indicates that the user 140 used user device 120. Search server 150 may then retrieve logged user activity 435, and other data, from the identified entries for analysis.
Search server 150 may analyze the extracted logged user activity data, by type of network communicating device and/or network medium, to generate analysis results (block 1205). Any number of different algorithms may be used to analyze the extracted logged user activity data by the type of network device and/or the network medium. For example, search server 150 may analyze the extracted logged user activity to determine, based on advertiser-supplied evaluation parameters, which network medium is the most effective advertising channel.
Search server 150 may provide advertiser-relevant logged user activity data to advertiser(s) (block 1210). The types of user activity in which advertiser 165 may be interested may be determined in advance, and search server 150 may retrieve selected contents of user activity DB 160 based on the determination. For example, if advertiser is interested in user activity only within a certain region (e.g., a specific town), then search server 150 may retrieve data only from entries having location data in field 415 that indicates that the location is in, or near, the certain region.
Search server 150 may provide advertiser-relevant analysis results to advertiser(s) block 1215). Advertiser 165 may be interested in only certain components of the analysis results from block 1215. For example, advertiser 165 may be interested in analysis results related to logged user activity that occurred during a specific month via STBs and CDNs. Advertiser 165 may specify, in advance, what results advertiser 165 considers relevant.
Search server 150 may generate targeted/behavioral advertising recommendations for advertiser(s) based on the advertiser-relevant analysis results and/or the advertiser-relevant logged user activity (block 1220).
The exemplary process of
The foregoing description of implementations provides illustration and description, but is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the invention. For example, while series of blocks have been described with regard to
To the extent the aforementioned embodiments collect, store or employ personal information provided by individuals, it should be understood that such information shall be used in accordance with all applicable laws concerning protection of personal information. Additionally, the collection, storage and use of such information may be subject to consent of the individual to such activity, for example, through well known “opt-in” or “opt-out” processes as may be appropriate for the situation and type of information. Storage and use of personal information may be in an appropriately secure manner reflective of the type of information, for example, through various encryption and anonymization techniques for particularly sensitive information.
Certain features described above may be implemented as “logic” or a “unit” that performs one or more functions. This logic or unit may include hardware, such as one or more processors, microprocessors, application specific integrated circuits, or field programmable gate arrays, software, or a combination of hardware and software.
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise.
In the preceding specification, various preferred embodiments have been described with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the invention as set forth in the claims that follow. The specification and drawings are accordingly to be regarded in an illustrative rather than restrictive sense.