CROSS-REFERENCE TO RELATED APPLICATIONSThe present application is a continuation of U.S. patent application Ser. No. 13/070,459 filed on Mar. 23, 2011, which claims priority to: U.S. Provisional Patent Application Ser. No. 61/316,491 filed on Mar. 23, 2010; U.S. Provisional Patent Application Ser. No. 61/316,495 filed on Mar. 23, 2010; U.S. Provisional Patent Application Ser. No. 61/394,060 filed on Oct. 18, 2010; U.S. Provisional Patent Application Ser. No. 61/411,812 filed on Nov. 9, 2010; U.S. Provisional Patent Application Ser. No. 61/430,160 filed on Jan. 5, 2011; and U.S. Provisional Patent Application Ser. No. 61/430,167 filed on Jan. 5, 2011.
Furthermore, the entire contents of co-pending and commonly assigned U.S. patent application Ser. No. 13/070,444 filed on Mar. 23, 2011 and entitled “Communication System Including Telemetric Device for a Vehicle Connected to a Cloud Service” are hereby incorporated in their entirety by this reference.
BACKGROUND OF THE INVENTION1. Field of the Invention
The present invention relates to an analytical engine with a timely and context-sensitive delivery mechanism. More specifically, the present invention relates to an event-based intelligent targeting engine capable of delivering highly relevant content, including, but not limited to, advertisements, alerts, messages, notifications, warnings, signals, machine-to-machine (M2M) telemetry, entertainment/media, and any communications thereof, etc., based on real-time situations (i.e., observed events) of a user as well as, historical preferences both explicitly stated or observed in behavior including demographics, psychographics, and sociographics, etc. Demographics includes data concerning a user's age, gender, educational attainment, employment status, religiosity, location, etc.; psychographics includes data concerning a user's activities, interest, opinions, behaviors, attitudes, needs, etc.; and sociographics includes data concerning a user's personal profile, needs, wants, attitudes, passions, social graphs/relationships, behaviors, etc.
2. Description of the Related Art
The use of search engines is well known in the art. For example, Google, Yahoo, and Microsoft provide known search engines for finding information on the internet. However, these known search engines can only reach a desired audience by using limited demographics. For example, Google, Yahoo, and Microsoft do not use specific location information and can only use approximate location information determined by IP Address, cookies, browsing history, etc.). Further, Google, Yahoo, and Microsoft can only use limited, if any, sociographics information.
Also known are location based network services, such as Foursquare. Foursquare users can check in via their cell phone when they arrive at new locations. Users get points for checking in at certain areas. Users can follow their friends by monitoring their location through Foursquare. However, Foursquare uses limited location data. Foursquare does not use interests, trends, friendships, etc.
Other systems do not use combinations of location, time, and preferences of users delivering content or combine such data in real-time. Known systems also do not proactively send alerts or notifications without prompting by a user.
SUMMARY OF THE INVENTIONTo overcome the problems described above, preferred embodiments of the present invention include an event-based intelligent targeting system and apparatus including an engine capable of delivering highly relevant content, including, but not limited to, advertisements, alerts, messages, notifications, warnings, signals, machine-to-machine (M2M) telemetry, entertainment/media, and any communications thereof, etc. based on real-time situations (i.e., observed events) of a user as well as, historical preferences both explicitly stated or observed in behavior including demographics, psychographics, and sociographics, etc. Users include not only individual consumers and subscribers of preferred embodiments of the present invention but also machines and computing resources that use preferred embodiments of the present invention. Preferred embodiments of the present invention consider the user's current situation, including where he is, what he's doing, and what he needs; and consider the user's past, including what he's purchased or inquired about in the past (e.g., purchasing patterns or travel behavior); and consider the user's stated behaviors, including what he “says” he likes in social networking sites. The preferred embodiments of the present invention include an event-based intelligent targeting engine that can deliver highly relevant content (e.g. alerts, advertisements, messages, signals, etc.) to a targeted audience in a context-sensitive manner.
Highly relevant content can include, but is not limited to, alerts, advertisements, messages, signals, information, media, etc. that can be used by the user.
The targeted audience can be determined based on, at least in part, demographics, psychographics, and sociographics.
The preferred embodiments of the present invention consider the user's situation including, but not limited to, present location, time, inferred destination, and actions to deliver content in a timely and context sensitive manner by considering real-time inputs as well as stated and observed preferences.
The above and other features, elements, characteristics and advantages of the present invention will become more apparent from the following detailed description of preferred embodiments of the present invention with reference to the attached drawings.
DESCRIPTION OF THE DRAWINGSFIG. 1A is a schematic drawing showing an event-basedintelligent targeting engine12 according to a preferred embodiment of the present invention.
FIG. 1B is a schematic drawing showing an arrangement of an event-basedintelligent targeting engine12 according to a preferred embodiment of the present invention.
FIG. 2 is a schematic drawing showing additional details of the inputs of an event-basedintelligent targeting engine12 according to a preferred embodiment of the present invention.
FIG. 3 is a schematic drawing showing additional details of the arrangement of an event-basedintelligent targeting engine12 according to a preferred embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTIONFIG. 1A is a schematic drawing showing the basic arrangement of an event-basedintelligent targeting engine12 according to a preferred embodiment of the present invention. The event-basedintelligent targeting engine12 receivesinputs11 and providesoutputs13. The event-basedintelligent targeting engine12 receives a succession ofinputs11, where the inputs can be classified into three categories:events18,data19, and content andresources20, for example. Theintelligent targeting engine12 processes theseinputs11 intouseful outputs13.
The event-basedintelligent targeting engine12 can simultaneously receive and process incominginputs11 and generate the appropriate context-sensitive output (i.e., a targeted resource or content such as, but not limited to, a song or advertisement). The types of inputs are shown inFIG. 2. Theoutput13 of the event-basedintelligent targeting engine12 can include, for example, advertisements with high relevancy that are based on the location-based and time-based context of the user receiving the output.
Typical users of theoutputs13 are, but not limited to, mobile clients and devices, subscribers, and third party platforms (business-to-business (B2B), machine-to-machine (M2M), etc.
The event-basedintelligent targeting engine12 processes theinput events11 to intelligently create the targeted outputs that can influence the user. The event-basedintelligent targeting engine12 intelligently creates the targeted outputs based on one or more of audience, time of day, specific preference for the output being distributed, event, and any other suitable parameter (e.g., eye color, hair color, type of vehicle, etc.).
The event-basedintelligent targeting engine12 continuously processes event inputs. That is, the event-basedintelligent targeting engine12 is always on and listening for new events and does not require any user interaction to initiate or request a specific output.
FIG. 1B is a schematic diagram that shows an expanded view of the event-basedintelligent targeting engine12. As shown inFIG. 1B, the event-based intelligent targetingengine12 preferably includes four major systems, which include asystem interface14, adata aggregator15, anintelligence processor16, andresource services17. Thesystem interface14 handles theinputs11 and outputs13. Thedata aggregator15 collects data from various sources applying techniques including, but not limited to, mining, scraping, and harvesting of data provided by thesystem interface14. Theintelligence processor16 processes the data obtained by thedata aggregator15 and creates query strategies (e.g., quick lookups) and heuristics in the system to enhance targeting and content delivery. Quick lookups are tables with quick references to certain data. It is information that is deemed relevant or common that saves the processor time.
Users of theoutputs13 can be separated into two groups: registered users and registered clients. Registered users are consumers who have opted-in and agreed to receive communication from the event-based intelligent targetingengine12 via thesystem interface14. Registered users are typically individual persons; however, it is possible that an organization such as a corporation could be a registered user. Registered users can receive communication through, but not limited to, the use of web or mobile applications, cellular telephones via SMS/MMS, vehicle telemetric devices, laptops, computers, PDAs, etc.
Registered clients can be paying customers who wish to use the event-based intelligent targetingengine12 via the system interface14 (as an example, using an API) to provide a useful output, such as a collection and/or analysis of data and a targeted advertisement to be sent to the registered clients. Registered clients are typically third party entities or corporations. Registered clients can be a one-time user. For example, a registered client might be an organization that requests that a specific search be supplied of the registered users that are customers or potential customers of the organization. The request can be inputted into the event-based intelligent targetingengine12 manually or through electronic submission.
As shown inFIG. 2, the event-based intelligent targetingengine12 preferably receives three primary inputs:events18,data19, and content andresources20. It is possible to receive other inputs. Further,events18 include generally live or real-time triggers including, but not limited to, location, time, actions, or inquiries that are generated by users.
Users can choose to make available their own content and resources (such as advertisements or private demographic data) as part of content andresources20 to make theoutputs13 more relevant.
Events18 are changes in data, such as movement, change in location, time change, or other deliberate actions on the part of the connected device or user, that meet predetermined criteria that the event-based intelligent targetingengine12 considered significant.
Events18 can trigger a predetermined or reactive response toevents18. A reactive response is when the event-based intelligent targetingengine12 delivers content or notifications to the user without being prompting by the user. This could be, for example, (1) a diagnostic codes and a location where to get the cause of the diagnostic code fixed or (2) a traffic condition and a suggested or alternative route. Predetermined responses can be to run ads at a certain time or location. For example, a telemetric device can transmit location data in real-time as anevent18. The telemetric device can be the telemetric device disclosed in co-pending and commonly assigned U.S. patent application Ser. No. 13/070,444 filed on Mar. 23, 2011 and entitled “Communication System Including Telemetric Device for a Vehicle Connected to a Cloud Service.” However, it also possible that other telemetric devices could be used. The changes ininput data11 may not be considered significant enough to be considered anevent18 for thesystem interface14 to constitute a reaction from theintelligence processor16.
Events18 also include direct search inquiries. For example, a search inquiry will cause theintelligence processor16 to conduct a search. The results of such a search by theintelligence processor16 is provided as anoutput13 when completed. Typically,events18 will originate from registered users and/or registered clients.
Data19 can include information such as, but not limited to, databases, reports, and systems, that is used by thedata aggregator15 to assist theintelligence processor16 in targeting relevant content. Although the nature of thedata19 may not be different than content andresources20, the way in which the intelligentevent processing engine12 uses the input differs.Data19 is used to facilitate intelligent decision making, whereas content andresources20 is the delivered content.
Further,data19 can include systems, but is not limited to, social networks, blogs or micro-blogs, and location networks, etc. Althoughdata19 can be generated by users, a wide range of sources can providedata19. Thedata19 can also be automatically obtained if the data is in electronic format and of public record. The event-based intelligent targetingengine12 can use thedata19 to generate trending data, which could come from, but is not limited to, social networks, reports or stored municipalities/government databases, etc. Further, trending data is generated by analyzing multiple data inputs to determine a trend in users or groups. An example of identifying trends are hashtags used with Twitter, in which words with the most tweeted hashtags becomes trending topics. Thus, it is possible to use trending data generated by social networks (interest, friendship statuses, relationships statuses, etc.) and micro-blogs. Government database trending could be age and demographics of a certain neighborhood, median age of speeding tickets, criminal citations, etc.
Data19 can include a database of a user's preferences, including, for example, favorite music types and interests that can be electronically obtained from sources, including but not limited to, social networking websites, user profiles, etc.Data19 can also include traffic and construction reporting. The traffic and construction reports can be obtained, for example, through municipality reporting or can be generated by analyzing location-based and time-based based data received asevents18. With an accurate traffic or construction update, whether obtained or generated by the event-based intelligent targetingengine12, the event-based intelligent targetingengine12 can use a registered user's location and time to deliver a traffic report to the registered user as anoutput13.
Content/resources20 include, but are not limited to, advertisements, songs, services, etc. A registered client can generate advertisement content to be input into content/resources20 to be later delivered to a specific set registered user based on parameters, including, for example demographic parameters. The advertisement content generated by the registered client can be, for example, a coupon for a discount to a coffee shop.
The event-based intelligent targetingengine12 can useevents18, such as, but not limited to, location and time, anddata19, such as, stored user preferences, to generate a highly relevant advertisements directed to specific registered users. For example, if a registered user is within range of the registered client's business during operating hours and the event-based intelligent targetingengine12 determines that the registered user would likely respond to the advertisement based on the registered user's data stored within the event-based intelligent targetingengine12, the event-based intelligent targetingengine12 can deliver the advertisement to the registered user.
FIG. 3 is a schematic drawing showing expanded view of one example of an implementation of the intelligent targetingengine12. As shown inFIGS. 1B and 2,FIG. 3 shows the four systems,system interface14,data aggregator15,intelligence processor16, andresource services17, discussed above, and their individual components.
Thesystem interface14 preferably includes theevent listener22 and the notification services23. Thedata aggregator15 preferably includesdata mining component24,data warehouse26, andpreferences database25. Theintelligence processor16 preferably includeslookup engine27 andprocessor28. The resource services17 preferably includeexternal data aggregator29 and other cloud basedresources30.
AlthoughFIG. 3 shows a specific implementation of the intelligent targetingengine12, it is possible to use different implementations of the intelligent targetingengine12. The four systems and their components of the intelligent targetingengine12 can be restructured by adding new systems and/or components. For example, theevent listener22 could include a content listener or data gathering service that pushes information to thedata aggregator15. Additionally, theentire resource services17 system could be restructured and encompassed into thesystem interface14, eliminating the overall need forresource services17. It is also possible for individual components to be restructured, added, or removed to encompass.
In thesystem interface14, theevent listener22 handles most of theinputs11 to the intelligent targetingengine12. Other inputs may be from external data sources that are directed to the resource services17. Theevent listener22 transmits the inputs to the notification services23, where it is transmitted to theprocessor28 in theintelligence processor16. Thenotification service23 provides theoutputs13 of the intelligent targetingengine12. The number of outputs is not limited in type or number.Outputs13 can include, for example, advertisements, media content such as music or movies, requested data by registered clients and/or users, directions, search results, traffic reports, etc. or any other content available via the resource services17.
The notification services23 are linked to thepreferences database25, stored within thedata aggregator15, which stores the rules, guidelines, and preferential inputs received from theevent listener12. These stored inputs could include user/subscriber generated information or machine-generated information. For example, user/subscriber information could be the like or dislike of an advertisement. Machine generated information, could be reports generated by a telemetry device indicating which roads or highways are mostly used or preferred. Further, thepreference database25 shares data with theprocessor28 in theintelligence processor16.
After theinput11 is transmitted by thenotification services23 to theprocessor28, theprocessor28 processes the input to enhance the existing queries and heuristics that exist inlookup engine27.
Thedata aggregator15 then stores the data in thedata warehouse26. The data gathering &mining component24 accumulates the data in thedata warehouse26 in real-time, creates quick lookups or advanced heuristics and stores the quick lookups or advanced heuristics into thelookup engine27. The lookups or advanced heuristics can include, but is not limited to prepackaged or compiled queries, analytic results, decision trees, summarized demographics, parameterized algorithms, or other suitable heuristics.
The processing of the data stored in thedata warehouse26 into useful data by theprocessor28 is accomplished by using the data gathering &mining component24 to further enhance the search queries and heuristics in thelookup engine27.
The resource services17 are continually populating thedata warehouse26 via theexternal data aggregator29. Theexternal data aggregator29 can use external tools or systems, such as, but not limited to, crawlers, spiders and harvesters.
After receiving a request and obtaining sufficient data for processing, theprocessor28 can transmit a notification output through the notification services23. During this process, theprocessor28 can refer to theinput11 connected to theexternal data aggregator29 and deliver the resulting content via thenotification services23 asoutput13. For example, provided sufficient information, theprocessor28 can decide to output a unique advertisement to a registered user. During this process, theprocessor28 can receive an audio file or similar resource from theresource services17, which was referenced by thelookup engine27 in theintelligence processor16. Other cloud-basedresources30 can include, but are not limited to, APIs from third party sources.
The registered clients can deliver messages catered to specific registered users in the most direct and cost efficient way possible. Registered clients will be able to use the event-based intelligent-targetingengine12 to develop information specific to registered users or trending users in a predetermined region.
For example, a registered retailer client could use the event-based intelligent-targetingengine12 to deliver a coupon for 15% off of an oil change to registered users who are in need of an oil change within the next 15 to 30 days and whose vehicle is or will be within a specific radius of the retailer's store or stores. The registered retailer client could enter as aninput11 into the event-based intelligent-targeting engine12 a request for the specific parameters described above. The event-based intelligent-targetingengine12 can analyze the request and begin analyzing the data to determine which users were or will be within the set radius and in need of an oil change based on the reporting of a telemetric device or registered user's inputs. Once the registered users who would benefit from the advertisement are identified, the event-based intelligent-targetingengine12 could then determine at what time to distribute the advertisement in the most efficient manner to the registered user to ensure that the coupon was most likely to be used. For example, as a registered user is driving home from work, the event-based intelligent-targetingengine12 could realize that the registered user's workday is over. Based on the location of the registered user, the event-based intelligent-targetingengine12 can determine that the registered user is within three miles of the requesting retailer client's store. The event-based intelligent-targetingengine12 can deliver a notification alerting the registered user that an oil change is recommended and can deliver turn-by-turn directions to the closest oil change facility where the 15% off coupon for the oil change could be used.
The event-based intelligent-targetingengine12 could also notify the registered user that there is currently no line at the retailer's store so that the oil change could be completed within the next twenty minutes. This direct advertising to users eliminates excessive cost and waste. The registered users receiving the advertisements could actually view the advertisements as not advertisements but rather informational and cost saving notifications. Because of the extensive cost savings enjoyed by both registered users and registered clients, mutual benefit is received from the intelligence of the event-based intelligent-targetingengine12.
Registered users can enjoy the proactive notification method of the event-based intelligent-targetingengine12 because the proactive notification method will alert registered users at the most relevant time. For example, a registered user could have to-do list on their mobile phone. The to-do list could include, among others tasks, the task of getting milk from the grocery store after work. The event-based intelligent-targetingengine12 can receive data related the registered user's location, which can determined, for example, based on the registered user's mobile phone or telemetric device, registered user's to-do-list task of getting milk, and regional grocery store databases, etc. The event-based intelligent-targetingengine12 can process all of this data to generate a notification to the registered user that the registered user is approaching a grocery store where milk can be purchased. The notification could be as specific as giving the registered user a list of the cheapest retailers that carry the type of milk the registered user typically buys, where the cheapest milk is located, turn-by-turn directions loaded to the navigation device located in the registered user's vehicle, and even the aisle and shelf where the milk is located. It is possible this process could be automated so that upon acceptance, the event-based intelligent-targetingengine12 could ask the registered user if the registered user would like to purchase the milk on the registered user's to-do list, and if so, the event-based intelligent-targetingengine12 can notify the grocery store, who will then gather the specific items being purchased, charge the registered user's account or credit card, and have the items available for pick-up.
Another example of how registered users can benefit from the event-based intelligent-targetingengine12 is through a coupon-based example similar to that discussed above for registered clients. For example, the event-based intelligent-targetingengine12 can save information about registered users for quick reference or lookup at a future time. For example, registered user 1 enjoys a cup of gourmet coffee every morning at 7:30 AM. The event-based intelligent-targetingengine12 can determine which store that user 1 frequents to purchase coffee. The event-based intelligent-targetingengine12 also can determine that user 1, based on user 1's loyalty card information stored in the event-based intelligent-targetingengine12, typically purchases a latte with three shots of espresso. Based on these determinations, the event-based intelligent-targetingengine12 could deliver an advertisement to user 1 as user 1 approaches the store that they frequently use with a coupon to use in conjunction with user 1's loyalty card to ensure the best deal on a product that they were going to purchase. The event-based intelligent-targetingengine12 could automate the purchase process and have the product ready and waiting for user 1, based on previously stored scheduling information.
Additionally, the event-based intelligent-targetingengine12 could deliver a competitor's coupon to user 1 when user 1 comes within a certain radius of a competitor's coffee shop. This advertisement for a free offer by the competitor can convince user 1 to stop and get the free coffee. This exposes users to different types of products and services in their area, while allowing registered clients to reach out to their competitor's clients and increase their market share.
The event-based intelligent-targetingengine12 preferably uses a system of algorithms that can be pre-programmed and that perform the functions and methods of the event-based intelligent-targetingengine12. The algorithms used by the event-based intelligent-targetingengine12 can analyze a given set of data for a specific objective. The algorithms sort through the various databases located in thedata warehouse26 andpreferences database25 to process the data to analytically determine its usability for the requested specific objective.
The event-based intelligent-targetingengine12 uses a framework to analyze data and complete the specific objective requested by the requesting client. The event-based intelligent-targetingengine12 can use this framework to respond to objectives requested by a registered client. The event-based intelligent-targetingengine12 first determines ‘what is the specific requested objective?’ Then, the event-based intelligent-targetingengine12 can determine if the requested objective is being requested from a registered client or is a proactive action taken by the event-based intelligent-targetingengine12 on behalf of a registered user. This determination is easy if a registered client is inputting a single request. Recurring inputs by registered clients are saved inpreferences database25 and, thus, are easy to identify that the request is originating from the registered client. In the case of a proactive response to an event that has occurred or is about to occur, the event-based intelligent-targetingengine12 can classify the action as such and differentiate it from a requested objective from the registered client.
After determining the requested objective, either through pre-set parameters or through manually inputted request delivered by third parties, the event-based intelligent-targetingengine12 can then determine ‘what the information being sought or obtained can be and/or persons who needs to be notified of such information.’ The information being sought and/or the people who need to be notified can be included pre-set in parameters or could be included in parameters supplied by a third party entity in the requested objective.
For example, requested information could be the example discussed above with regard to a coupon for an oil change. A registered retailer client would like to deliver a coupon to registered users who are in need of an oil change within a certain radius of the registered retailer client's store. The information being requested includes the registered users and their current location or future location. The event-based intelligent-targetingengine12 can process this information to provide the output of delivering the coupon to registered users in need of an oil change.
Once the initial information is received, the event-based intelligent-targetingengine12 can begin processing the data and retrieving additional data from the various databases. The event-based intelligent-targetingengine12 needs to determine ‘where the information being requested can be obtained.’ The event-based intelligent-targetingengine12 can retrieve both static and active data. Static data can be retrieved from public, semi-public, and private databases made available, typically through an API, to the event-based intelligent-targetingengine12. Active data can be retrieved from connected registered users. Nearly any device or interface that is connected to the event-based intelligent-targetingengine12 can be used for collecting data that can later be crawled, harvested, and saved indata warehouse26. This information includes, but is not limited to, location (GPS or triangulation through cellular telephone), speed of travel (telemetric device), time, etc. The active data being transmitted is in real-time or in near real-time to the event-based intelligent-targetingengine12 for processing in real-time or near real-time for either proactive actions taken on behalf of event-based intelligent-targetingengine12 for use by the Registered User or for saving in a database to be pulled for request by registered clients.
The event-based intelligent-targetingengine12 can take the data received and processed by theprocessor28 and can analyze the data to obtain the requested output. The data can go through a series of crawlers, spiders, and harvesters to remove all of the data that is not relevant to theinput11 or theoutput13. The data can then be analyzed and an algorithm can be applied to determine the usefulness of the data and how it can most effectively be delivered as anoutput13. The data can be stored by thelookup engine27 inpreference databases25.
A wide range of devices can provideactive inputs11. These devices include, but are not limited to, GPS devices, cellular telephones, laptops, in dash media units, etc. The event-based intelligent-targetingengine12 can collect data from any of these devices in real-time, near real-time, or at a predetermined time. The data collected from these devices can include location (GPS coordinates), speed of travel (telemetric device), triangulation (cell phone), etc. This information is collected and analyzed by the event-based intelligent-targetingengine12.
Static data can be retrieved from a series of networks ranging from completely private to completely public. Data from a public network can be easily retrieved by the event-based intelligent-targetingengine12. The public network can include, but is not limited to, municipalities, court systems, criminal records, department of motor vehicles, property value assessments, etc.
Semi-private/semi-public networks are ‘social media and social network’ services. These networks are public in that generally all data provided by the users of these networks is made public through the social networking aspect of the service. However, there is some data that is not displayed either for privacy reasons, and there is some data that is not a part of the typical ‘social network’ that may not be visible to users of such a networking. This type of information is semi-private in that a user for the purpose of social networking provided it, but the data has been mined by the social networking service. This data is deemed private but could be used by event-based intelligent-targetingengine12. This data can include, but is not limited to, user page view counts, messaging, time spent on social networking services, preferences, modes of communication within the social networking services, etc.
Private networks can include company networks such as, but not limited to, insurance companies, credit card companies, grocery stores, automotive companies, financing companies, banking, etc. networks. The data from these private networks is not made available to the public but can be useful if used by the event-based intelligent-targetingengine12.
Data can be retrieved from content or resources supplied by registered clients. This data can be, but is not limited to advertisements, music/MP3s, services, and more.
The event-based intelligent-targetingengine12 and its systems and components, including thesystem interface14,data aggregator15,intelligence processor16, andresource services17 can be implemented using either hardware or software. The hardware can include known components such hard drives, DVD drives, CD drives, BlueRay drives, RAM, ROM, one or more processors, one or more electronic displays, and any other suitable hardware devices. The software can be stored on any suitable tangible or non-transitory computer-readable medium such that, when run on the hardware, the functions discussed above are performed.
Uses for Event-Based Intelligent-Targeting EngineThe event-based intelligent-targetingengine12 can be used for a wide variety of purposes. The event based intelligent-targetingengine12 can be integrated with, including but not limited to, third party services, devices, systems, and software through an API. The event-based intelligent-targetingengine12 is proactive and always monitoring content and data being inputted into the system. The event-based intelligent-targetingengine12 is constantly receiving data that is stored in adata warehouse26 for further analysis. The proactive nature of the event-based intelligent-targetingengine12 allows users to be notified before an action occurs, optimizing the delivery of the content and efficiency. A goal the event-based intelligent-targetingengine12 is to be proactive and intelligent to deliver content before it is requested by a user.
A. IMEI Security
The International Mobile Equipment Identity (IMEI) is a unique 15- or 17-digit code used to identify an individual mobile station in a GSM or UMTS network. The IMEI code provides the important function of uniquely identifying a specific mobile phone being used on a mobile network. The IMEI code is preferably used by the event-based intelligent-targetingengine12 to ensure that data being received and transmitted is only being received or transmitted by and from the intended user. This is a security measure that is used by the event-based intelligent-targetingengine12 for the sake of privacy, data safety, and responsibility.
The event-based intelligent-targetingengine12 can receive as an input11 a request or aproactive event18. Some requests and many proactive events can require additional security. For example, proactive events can include location of a vehicle through a telemetric device, location of a cellular phone, etc. If the proactive request originates from a mobile phone or telemetric device, it will have a specific IMEI code include with the communication of the proactive request. The event-based intelligent-targetingengine12 can analyze via theprocessor28 the request in conjunction with the IMEI code. Theprocessor28 can then query thelookup engine27 to verify that the stored IMEI code for the registered user's device matches the IMEI code being transmitted. If the IMEI code of the requesting device matches the user's stored IMEI code, then theprocessor28 can release the requested data or inquiry to the user after being processed.
B. Moveable Points of Interest
Moveable Points of Interest (MPOIs) are a server-side application service that simultaneously multicasts navigation instructions to one or more users. End-user software then provides real-time turn-by-turn guidance from a mobile source, e.g. a mobile phone or navigation unit, for one or more users.
Known real-time, turn-by-turn guidance is provided from either a fixed point or a moving vehicle to the desired destination which is always a fixed point. Directions route the user to the fixed destination point by using the fixed coordinates of the destination. The event-based intelligent-targetingengine12 can deliver real-time, turn-by-turn directions from one mobile user to another mobile user connected to the event-based intelligent-targetingengine12. The event-based intelligent-targetingengine12 provides guidance based on the desired preferences retrieved from theperformance database25 for both of the connected users. For example, if both users are a driver, if one driver prefers to use highways, and if one driver prefers not to use highways, then the event-based intelligent-targetingengine12 can route the driver who prefers to use highways through highways, while routing the other driver away from highways.
Real-time directions can be given from one user to another as both users are moving. For example, user 1 anduser 2 are planning to meet for dinner.User 2 is close to the restaurant but circling the restaurant looking for a parking space. User 1 is running behind and requesting real-time turn-by-turn directions touser 2. The event-based intelligent-targetingengine12 can provide user 1 with directions in real-time that will take user 1 touser 2. Asuser 2 continues to drive looking for a parking place, user 1's directions can automatically be updated to in response touser 2's change in location. That is, the event-based intelligent-targetingengine12 adjusts its guidance according to the new locations ofusers 1 and 2. The event-based intelligent-targetingengine12 uses real-time data inputs from bothusers 1 and 2 to adjust and determine it guidance.
The event-based intelligent-targetingengine12 receives aninput11 request from user 2 (a registered user) requesting directions to user 1 (another registered user). Theprocessor28 analyzes the request and queries thedata warehouse26 and/orlookup engine27 foruser 2's current GPS coordinates, which was previously received as aproactive input11. Theevent listener22 transmitted the GPS coordinates to the notification services23, after recognizing it as anevent18. The notification services23 transmit the GPS coordinates to theprocessor28 and indicate that the information is active, real-time location-based data specific to user 1. After receiving and processing the GPS coordinates, theprocessor28 stores the GPS coordinates in thedata warehouse26. After theprocessor28 receivesuser 2's request for directions to user 1 anduser 2's GPS coordinates, theprocessor28 transmits turn-by-turn directions to user 1 to the notification services23. The notification services23 transmit the turn-by-turn directions touser 2 as anoutput13.User 2 can use the turn-by-turn directions to user 1. The event-based intelligent-targetingengine12 can update the turn-by-turn directions in real-time or near real-time until user 1 anduser 2's GPS coordinates match oruser 2 terminates the request for user 1's GPS coordinates.
C. Dynamic Traffic Prediction
Dynamic traffic prediction is a real-time analysis of highway and street traffic flow for a given area, which is typically defined by a cellular network. Some registered users can have a telemetric device attached to their vehicle that can transmit GPS coordinates of the vehicle. The telemetric device could be the telemetric device disclosed in co-pending and commonly assigned U.S. patent application Ser. No. 13/070,444 filed on Mar. 23, 2011 and entitled “Communication System Including Telemetric Device for a Vehicle Connected to a Cloud Service.” However, it could also be another telemetric device that transmits GPS coordinate. Each telemetric device connected to the event-based intelligent-targetingengine12 provides additional GPS coordinates that can be used in the analysis of highway and street traffic flow. After enough telemetric devices in a given area are connected, the event-based intelligent-targetingengine12 can begin analyzing and predicting highway and street traffic flow to provide real-time or near real-time analysis.
Dynamic traffic prediction is a traffic-advisory and road-conditions notifications system. The event-based intelligent-targetingengine12 uses GPS coordinates from the connected telemetric devices to analyze the traffic flow in a given area. For example, the event-based intelligent-targetingengine12 can analyze roadmap databases, municipality roadmaps and traffic patterns databases, and data received from the connected telemetric devices to determine the number of cars and the traffic flow in a given area or road. Additionally, by using the GPS coordinates received from the connected telemetric devices, the event-based intelligent-targetingengine12 can determine if a user is sitting in traffic and, if so, for how long. The event-based intelligent-targetingengine12 can determine if the user is merely sitting at a traffic light (through traffic grid maps and GPS location) or actually stuck in traffic.
By predicting traffic flow, the event-based intelligent-targetingengine12 can provide notices to registered users even before known traffic and construction alert services receive reports from people stuck in traffic.
The event-based intelligent-targetingengine12 provides proactive notification to users without the user prompting the event-based intelligent-targetingengine12. Known traffic and construction alert services are based on information transmitted to the device or service from a person or device, without predicting traffic conditions. The event-based intelligent-targetingengine12 receives data constantly from the registered users and its databases, with no or small wait times. As long as there are telemetric devices connected to the event-based intelligent-targetingengine12 transmitting GPS location, then the event-based intelligent-targetingengine12 can predict traffic conditions.
Dynamic traffic prediction relies on the inputtedevents18 from registered user through devices capable of transmitting current GPS coordinates, including, but not limited to, cellular devices, telemetric devices, etc. The moreinputted events18 received relating to a specific users location, speed of travel, and time, the more accurate a predication the event-based intelligent-targetingengine12 can produce. The event-based intelligent-targetingengine12 can collect the inputtedevents18 with GPS coordinates and analyze the data to find common trends, which can be used for prediction. For example, if the event-based intelligent-targetingengine12 determines that fifteen registered users are on the same road and starting to travel at speeds lower than the speed limit, the event-based intelligent-targetingengine12 can predict that traffic flow will be much denser than usual traffic trends. The event-based intelligent-targetingengine12 can then proactively notify registered users via thenotification services23 of the predicted traffic flow as registered users approach the affected area. For example, as a user is driving down road A, the event-based intelligent-targetingengine12 can notify the user vianotification services23 to avoid road A because road A is likely to become highly congested.
The event-based intelligent-targetingengine12 can provide the predicted wait time or even suggest alternate routes. Dynamic traffic prediction can be entirely proactive. The event-based intelligent-targetingengine12 can mineinputs11 for analysis and can then deliver asoutputs13 traffic and constructions alerts to registered users without ever being prompted to do so.
D. Social Safety
Social safety integrates social networking with information gathering and information delivery as used by the event-based intelligent-targetingengine12. Social safety can alert “In Case of Emergency” (ICE) contacts identified by the registered user that the registered user has been, for example, involved in an accident. For example, user 1 identifies a list of ICE contacts to be contacted in the event of an emergency. The ICE list is saved by the event-based intelligent-targetingengine12 in a quick lookup table. The registered user can identify people who should be contacted and what method of contact is appropriate, e.g. SMS, phone call, Social Network message, or wall post, etc.
For example, user 1 requests that her brother be contacted via SMS and phone, requests that her mother be contacted via phone call, and requests that her Facebook wall or Twitter account be posted to in the event that user 1 is in a car accident. In the event that user 1 is involved in a car accident, the event-based intelligent-targetingengine12 can notify her ICE list in the order and method she requested through notification services23. Without prompting, the event-based intelligent-targetingengine12 will call and send and SMS to her brother, will call her mother, and will post to her social networking sites. The message can indicate that user 1 has been in an accident and may be requesting service. The event-based intelligent-targetingengine12 can then notify emergency services by contacting 911 and delivering the GPS coordinates of the accident. It is possible that the 911 dispatch center can be in direct communication with event-based intelligent-targetingengine12, which would eliminate the human element, and transmission of the accident would be automatic, allowing for the quickest notification of response possible.
Social safety can use multiple registered users' devices on the network. The event-based intelligent-targetingengine12 can analyze data from every connected device, e.g. cell phone, GPS, telemetric device, etc., at any given time. The event-based intelligent-targetingengine12 can analyze the accelerometer and movement speed of certain devices in a specific radius and notice trends that are unique to a few devices and infer that an event such as an accident has occurred.
For example, if there are three registered users in the same vehicle and their cell phones are all connected to the event-based intelligent-targetingengine12, then the event-based intelligent-targetingengine12 can determine that significant events have occurred based on the transmittedevents18. If all three accelerometers in the cell phones of the registered users indicate G-forces equivalent to a vehicle accident, then the event-based intelligent-targetingengine12 knows that the three devices are all in the same vehicle and have all been involved in the accident.
The event-based intelligent-targetingengine12 receives and processes all or nearly all of the inputtedevents18 in real-time or near real-time to find trends that are happening at or near a specific location at the same or nearly the same time. For example, the event-based intelligent-targetingengine12 could determine if two registered users were in a car accident with one another or if several users are stuck in traffic on a given street.
For example, a registered user is involved in an accident in a vehicle with a telemetric device. The telemetric device connected to the vehicle receives an air-bag-deployment accident code from the OBDII port and transmits that accident code to the event-based intelligent-targetingengine12 as aninput event18. Theevent listener22 recognizes theinput event18 as an accident code and transmits the accident code to the notification services23.Notification services23, recognizing that the accident code involves safety, requests from thepreferences database25 the ICE list for the registered user. The ICE list is transmitted to theprocessor28. The accident code is stored in thedata warehouse26. After processing the preference data, theprocessor28 requests that thenotification services23 create a notification. At which point, thenotification services23 then outputs the notification to the requested user's ICE list via.
E. Social Mechanics
The event-based intelligent-targetingengine12 uses social mechanics by integrating vehicle maintenance with social networking Social mechanics can be divided into two sections; registered user comments and mechanic comments.
I. Registered User Comments on Diagnostic Codes and Potential Fixes
The event-based intelligent-targetingengine12 can receive diagnostic codes from a registered user's vehicle indicating an issue with the vehicle has been detected. The event-based intelligent-targetingengine12 immediately begins analyzing the diagnostic code. The event-based intelligent-targetingengine12 stores the relevant data in a database and reviews the quick lookup tables to determine if another user with a similar make and model vehicle has experienced a similar vehicle diagnostic code. Because nearly all data communicated to and from the event-based intelligent-targetingengine12 is saved in a database, the chances of finding such a user with a similar diagnostic code is extremely high. The event-based intelligent-targetingengine12 can then analyze the data and determine what changes to the car were made after the diagnostic code was generated and determine if those fixes eliminated the diagnostic code. If a match is created then the event-based intelligent-targetingengine12 can notify the user of the diagnostic code and suggest how other users have fixed the problem.
The event-based intelligent-targetingengine12 can also suggest repair shops where a part can be purchased and for what price, giving the registered user the option to purchase the part at the cheapest price available in the registered user's area. The event-based intelligent-targetingengine12 can even purchase the part for the user and have it shipped and charged to the registered user's credit card or account.
The event-based intelligent-targetingengine12 can also use social mechanics to allow other users to communicate through a social network. Users can post their diagnostic code and get information related to that diagnostic code and to possible fixes. Additionally, other users can comment on or suggest fixes relevant to the diagnostic code. This allows users to capitalize on the knowledge of their network to determine a fix for a problem that has already been experienced by another user. Therefore, the user does not need to try to search thousands and thousands of web pages for a possible solution. Sometimes too much information makes the problem seem more daunting and a fix is more difficult to find. Whereas, when social mechanics uses the event-based intelligent-targetingengine12, the users only get the data that is relevant to their exact make and model vehicle with the same diagnostic code.
II. Mechanic Comments on Diagnostic Errors/Potential Service Fix
Social Mechanics also has a third party aspect that allows local mechanics to access diagnostic information of registered users. The mechanics can set job parameters that they are interested in and can set the area from which to pull data. For example, Joe's Brakes and Alignment can input into the event-based intelligent-targetingengine12 that it is interested in receiving data regarding diagnostic codes related to breaks and alignment within 50 miles of Joe's Brakes and Alignment. Every time the event-based intelligent-targetingengine12 receives inputted diagnostic codes from a user's vehicle that relate to the job parameters set by Joe's Brakes and Alignment, the event-based intelligent-targetingengine12 can store the diagnostic codes in a database and deliver a notification to Joe's Brakes and Alignment. The notification can include the diagnostic code, make and model of car, and other information specific to the car and the user. Joe's Brakes and Alignment can then determine if that is a job that should be bid on and at what cost. Every time a user's vehicle transmits a diagnostic code, the user can have several mechanics review the codes and place a bid to fix the car. The user can be notified by the event-based intelligent-targetingengine12 of the mechanics that have offered to fix the job for a set amount of money. If the user accepts the offer, the event-based intelligent-targetingengine12 can transmit turn-by-turn directions to route the user to the winning mechanic's repair shop. The transaction can be automated, and the event-based intelligent-targetingengine12 can take care of billing and payment.
Social mechanics is based on registered user interactions and proactive maintenance suggestions or tips from the event-based intelligent-targetingengine12. Registered users can receive a notification concerning diagnostic codes generated by their vehicles as anoutput13 from the event-based intelligent-targetingengine12. In addition, the notification concerning diagnostic codes can include descriptive information relating to the diagnostic code, such as parts to purchase to fix the problem, possible solutions to the error based on other registered users, mechanics that can fix the problem, etc.
For example, the registered user can input11 a request for assistance either by another registered mechanic for possible solutions, for cost of services or parts, etc. Thesystem interface14 sends the request to theprocessor28. The request is stored in thedata warehouse26 and mined by the data gathering &mining component24. Theprocessor28 can analyze the trends of other registered user's diagnostic codes with similar make and model vehicles and solutions to the problem. Theprocessor28 can notify thenotification services23 to send a request for assistance or proposed solution to the registered mechanics with potential solutions. After receiving theoutput13, the registered mechanics can reply to the request with the potential solutions as aninput11.Notifications services23 can notify the requesting registered client of the potential solutions either from the registered mechanic or generated based on stored or user/client generated data.
F. Price Bid for Parts or Services
Price bid for parts or services similar in some aspects to social mechanics aspect of the event-based intelligent-targetingengine12. Instead of the registered clients or mechanics bidding on a job after reviewing the relevant data and related diagnostic code, the registered user can set parameters and determine how much the registered user will pay to have a mechanic fix the problem as it relates to their vehicle. The registered user can also learn from the user comments under social mechanics that a certain part can fix problem that generated the diagnostic code. For the do-it-yourself users, they can also bid on the price they are willing to pay for the required part.
For example, user 1 receives a diagnostic code because his oxygen sensor has malfunctioned. User 1 learns from users with similar make and model vehicles that have had the same problem that he needs a new O2 sensor. User 1 can take this information, and if user 1 decides to fix the oxygen sensor himself, user 1 can place a bid on the part, which corresponds to the maximum value he is willing to pay to be delivered or picked up. Parts departments, local and non-local, can receive this bid and decide whether or not to sell the O2 sensor to user 1 for the bid price. If they agree to sell the O2 sensor for the specified price the event-based intelligent-targetingengine12 can complete the transaction and handle the billing, payment, and shipment.
If user 1 decides to hire a mechanic to fix the problem, then user 1 can set similar parameters for fixing the problem as above for purchasing the parts. User 1 can set a price maximum that he is willing to pay to have the problem fixe. The user can be presented with the average cost of similar jobs in their area to prevent unrealistic bids. Again, the registered mechanics in the area can receive a notification including the specifications for the job and the bid price. If a registered mechanic agrees to do the job at the bid price, the registered mechanic can accept and user 1 can receive a notification of the acceptance and turn-by-turn directions to the mechanics repair shop. Again, the event-based intelligent-targetingengine12 can handle billing and payment.
Price bid is based on registered user interactions. Registered users can receive a notification concerning diagnostic codes generated by their vehicles as anoutput13 from the event-based intelligent-targetingengine12. In addition, the notification can include descriptive information relating to the diagnostic code, such as parts to purchase to fix the problem, mechanics that can fix the problem etc. The registered user can provide a bid as aninput11 for the cost of services or parts. Thesystem interface14 sends the bid to theprocessor28. The bid data is stored in thedata warehouse26 and mined by the data gathering &mining component24. Theprocessor28, after associating the bid with a specific part or repair, can notify thenotification services23 that the bid data notification needs to be sent as anoutput13 to registered clients requesting bid data notifications, e.g. mechanics, parts distributors, etc. After receiving the outputted bid data notification, the registered client can send acceptance of the offer as aninput11.Notifications services23 can alert the registered client of the acceptance. The registered client and the registered user can then complete the transaction, or the event-based intelligent-targetingengine12 can take care of billing and payment and, if necessary, shipping.
G. Geo-Search Services
Geo-Search uses the event-based intelligent-targetingengine12 for a localized search result. Performed searches use geo-mapping information, localized datasets (e.g., grocery store price list and product location), and analyzed data related to the search query. With Geo-search, a search of “Coke” will not return a company website. Instead, the search query can return a result that provides the specific location of a can of Coke, e.g. Coke: 123 Feet: Wal-Mart Foods: Isle #6: Middle Shelf—Below Drink Mixers (Need Assistance?).
Known search engines are limited to passive or static content when searches are performed. Searches with the event-based intelligent-targetingengine12 add a third-dimension, allowing for location aware results. Geo-Search limits irrelevant data from the results and only supplies useful information. The event-based intelligent-targetingengine12 can use the registered user's specific preferences determined by analyzing the inputs transmitted data from the registered user's GPS, telemetric device, etc. to obtain an accurate description of the user's personality. The ability to capture the user's personality allows search results that are specifically catered for the registered user and that include results so specific that even the user would have not requested on his own. Geo-searching can take out the guesswork and decision making for the user, making the decision for the user.
For example, as in the example above, a registered user can send an inquiry about “Coke” as aninput11. Thesystem interface14 sends the inquiry to theprocessor28. Theprocessor28 can first query thedata warehouse26 to determine the location of the registered user and the time of the inquiry. After establishing the location and time of the registered user, theprocessor28 can begin analyzing the requested inquiry. Theprocessor28 can query thedata warehouse26 for additional data related to “Coke,” such as a list of stores that carry Coke products, the locations of listed stores, the price of coke products, availability of coupons, aisle location, and possible quick checkout options. Theprocessor28 can process all of this data and deliver a catered search response to the registered user as a highly relevant result that is based on location-based and time-based context. The registered user receives only strictly relevant search results based on their location.
H. Load Balancing and Data Caching
Load balancing and data caching balances the output deliveries as they are delivered to the registered users. For example, a registered user requests that an MP3 file be downloaded to the registered user's in-dash telemetric device unit. The MP3 file is a fairly large sized file (e.g., 1 GB), and the registered user is currently driving through a 4G area but will be entering into a 3G area in the next few minutes and will remain there for the remainder of the trip. The event-based intelligent-targetingengine12 can recognize this driving pattern and can determine the network speeds as the vehicle approaches the 3G area. To obtain a successful download, the event-based intelligent-targetingengine12 can balance the load of the download and disperse the file so that the download is completed and all of the files pieces are present. A facet of this load balancing is data caching of similar information in like areas. For example, if user 1 has downloaded an mp3 anduser 2 is requesting the same mp3, the event-based intelligent-targetingengine12 caches the first download of user 1 so that the file is cached locally on the network connected touser 2 making their download quicker and seamless. This is extremely unique from any technology currently available because of the integration of the event-based intelligent-targetingengine12. The event-based intelligent-targetingengine12 uses location and can group or bundle downloads. Whereas, current technology systems are not supplied with the capability to communicate between users and devices, so that the system would have to allow for two fresh downloads of the mp3. Intelligent caching does not make sense unless you have the event-based intelligent-targetingengine12 capability to determine and analyze location and download request.
Load balancing is an example of a proactive solution provided by the event-based intelligent-targetingengine12 as a cloud basedresource30. Load balancing does not require prompting by the registered user, but it is necessary that the registered user request a data download from the event-based intelligent-targetingengine12. After a download is requested, thelookup engine27 can query thedata warehouse26 to determine information such as, the coordinates, time, speed, and network area of the registered user. Theprocessor28 can then analyze the data and determine how to distribute the download. (e.g., all at once, in 1 MB packets, 1 GB packets, etc . . . ) Thisprocessor28 can analyze the network speed (e.g. 3G or 4G, etc . . . ) speed of registered users travel, time of day, and network traffic to determine download distribution rates. As an added layer of intelligence, theprocessor28 can also query thedata warehouse26 to determine if other registered users are in surrounding network areas that can be requesting. In the event that there are multiple registered users requesting the same download, the processor can cache the download file so that users can access and download the file quicker and more efficiently. Once the distribution parameters are set thenotification services23 can be alerted to disperse the download accordingly as anoutput13.
It should be understood that the foregoing description is only illustrative of the present invention. Various alternatives and modifications can be devised by those skilled in the art without departing from the present invention. Accordingly, the present invention is intended to embrace all such alternatives, modifications, and variances that fall within the scope of the appended claims.