Techniques for organizing and presenting deal content

Techniques for organizing and presenting deals/commercial offers received by users in emails are provided. Emails directed to a user that contain commercial offers for the user are determined. The determined emails are stored in a deal folder for the user. A deal newsletter is generated that at least summarizes commercial offers contained in at least a portion of the emails stored in the deal folder. The deal folder may be displayed to show the user the received deal emails. Furthermore, the deal newsletter may be displayed to the user to summarize the received deals for the user.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to online deals and incentives.

For many years, customers have been able to shop for products and services. Traditionally, a customer has been able to purchase a product or service from a merchant. The merchant may occasionally offer discounts on their products and/or services. Such discounts may benefit customers with lower prices, and may benefit merchants by enabling increased sales volumes, enabling excess inventory to be reduced, and providing further benefits.

In recent years, the Internet has provided a new medium for customers to purchase products and services from merchants. For example, thousands of electronic commerce websites such as amazon.com, provided by Amazon.com, Inc. of Seattle, Wash., and ebay.com, provided by eBay Inc. of San Jose, Calif., have been established that sell products and services over the Internet. The availability of products and services for sale over the Internet has made shopping more convenient for customers and enabled merchants to reach larger numbers of customers.

Some websites have recently been provided online that provide commercial offers for discounted products and services to groups of users. Examples of such websites, referred to as “deal sites,” include www.groupon.com provided by Groupon, Inc. of Chicago, Ill. and livingsocial.com provided by LivingSocial Inc. of Washington, D.C. These deal sites typically email commercial offers in the form of coupons. A deal site typically emails a coupon to members of the deal site, and the coupon is activated if a predetermined minimum number of persons sign up for the deal offered by the coupon.

Such deal sites have disadvantages. For example, users that are members of deal sites receive large numbers of emails continuously from these deal sites, which in some cases amounts to multiple emails received from a single deal site each day. The users spend time reviewing each of these received emails in the hopes that they may find a relevant deal. Furthermore, such deal sites currently target users with deals that are not relevant to the users, or are based on basic user characteristics such as demographics or city-level locations. As such, the inboxes of users become very full and cluttered with deal-related emails that the users may or may not be interested in.

BRIEF SUMMARY OF THE INVENTION

Various approaches are described herein for, among other things, organizing commercial offers for users. Emails directed to a user that contain commercial offers may be stored in a deal folder for the user. A deal newsletter is generated that summarizes the commercial offers contained in the deal folder. The deal folder may be displayed to show the user the received deal emails. Furthermore, the deal newsletter may be displayed to the user to summarize the received deals for the user.

In one method implementation, a second plurality of emails is determined from a first plurality of emails directed to a user. The determined emails contain commercial offers for the user. The determined emails are automatically stored in a deal folder for the user. A deal newsletter is generated that summarizes commercial offers contained in at least a portion of the determined emails stored in the deal folder.

Deal folder information may be transmitted to a computing device of the user to enable display of the deal folder to the user at the computing device. Furthermore, a user may interact with a user interface at the computing device to transmit a request to a server for the deal newsletter. The deal newsletter may be generated by the server in response to the request. The deal newsletter may be transmitted to the computing device for display to the user.

In another implementation, a commercial offer presentation system is provided. The system includes a deal manager and a deal newsletter generator. The deal manager manages a set of emails containing commercial offers directed a user. The deal newsletter generator generates a deal newsletter for the user that at least summarizes commercial offers contained in at least a portion of the emails.

The deal newsletter generator may include one or more of a deal summary page generator, a map page generator, a mail page generator, and a deal search interface page generator.

The deal summary page generator generates a deal summary page of the deal newsletter that includes a plurality of deal summary sections. Each deal summary section includes commercial offer information extracted from a corresponding email of the set of emails.

The map page generator generates a map page of the deal newsletter that indicates a location associated with a commercial offer contained in an email stored in the deal folder.

The mail page generator generates a mail page of the deal newsletter that includes a plurality of deal summary snapshots in a first portion of the mail page. Each deal summary snapshot includes commercial offer information extracted from a corresponding email of the set of emails, and each deal summary snapshot is selectable to enable display of the corresponding email in a second portion of the mail page.

The deal search interface page generator generates a deal search page of the deal newsletter that includes a search interface that enables a user to search commercial offers contained in emails stored in the deal folder.

The system may further include a deal source interface that receives commercial offers from at least one additional commercial deal source (e.g., a partner feed, a web crawler, etc.), and stores the received plurality of commercial offers in an additional deal database. The deal newsletter generator may generate the deal newsletter to include at least one commercial offer selected from the commercial offers stored in the additional deal database.

The system may further include a deal enhancer that modifies display of an email selected for display by overlaying additional deal-related information on the displayed selected email.

Still further, the system may include a deal ranker that ranks commercial offers contained in the emails.

Computer program products are also described herein that enable the organizing of commercial offers in a deal folder, the generating of a deal newsletter, as well as enabling further embodiments described herein.

DETAILED DESCRIPTION OF THE INVENTION

Numerous exemplary embodiments of the present invention are described as follows. It is noted that any section/subsection headings provided herein are not intended to be limiting. Embodiments are described throughout this document, and any type of embodiment may be included under any section/subsection. Furthermore, disclosed embodiments may be combined with each other in any manner.

A deal is an offer of a financial discount, rebate, coupon, or other incentive for purchasing a product and/or a service (or multiple products and/or services) that may be accepted by a customer. A commercial offer or commercial deal is an offer to one or more customers (users) from a merchant to purchase products and/or services through the merchant, and may include a commercial incentive (e.g., financial discounts, coupons, rebates, etc.) to encourage customers to purchase the products and/or services. A “deal site” is an example of such a merchant. A deal site is a website on the Internet that provides commercial offers for discounted products and services to groups of users. A deal site may provide commercial offers for discounted products and services provided/sold by other merchants as an intermediary.

Examples of such deal sites include www.groupon.com provided by Groupon, Inc. of Chicago, Ill. and livingsocial.com provided by LivingSocial Inc. of Washington, D.C. These deal sites typically mass email commercial offers to users. As a result, users receive large numbers of emails continuously from deal sites, which in some cases amounts to multiple emails received from a single deal site each day. The users spend time reviewing each of these received emails in the hopes that they may find a relevant deal, and their inboxes may become very full and cluttered with deal emails that the users may or may not be interested in.

Embodiments are described herein organizing commercial offer/deal emails sent by entities to users. In an embodiment, the deal emails received by a user are organized, such as being collected in an email deal folder. Furthermore, in an embodiment, the deal content of email deals received by a user may be extracted and structured to form a deal newsletter for the user. The deal newsletter may provide a “smart” summary of commercial offers received by the user, may provide additional information for those commercial offers, and may recommend similar or/or better deals for the user. Still further, by using recommendations and/or by ranking deals in the deal newsletter, offered deals may be better monetized by merchants and/or deal system managers (e.g., email providers, etc.) through greater acceptance of the offers by the users.

Embodiments may be implemented in a variety of environments. For instance,FIG. 1shows a block diagram of a communication system100in which commercial offer emails may be organized for users, according to an example embodiment. Environment100is shown for purposes of illustration, and embodiments may be implemented in other environments, as would be apparent to persons skilled in the relevant art(s) from the teachings herein. As shown inFIG. 1, system100includes one or more servers102, a user device104, a network106, and a user database116. Furthermore, as shown inFIG. 1, server(s)102includes a commercial offer presentation system108and a mail server110. System100is described as follows.

User device104may be any type of stationary or mobile computing device, including a desktop computer (e.g., a personal computer, etc.), a mobile computer or computing device (e.g., a Palm® device, a RIM Blackberry® device, a personal digital assistant (PDA), a laptop computer, a notebook computer, a tablet computer (e.g., an Apple iPad™), a netbook, etc.), a smart phone (e.g., an Apple iPhone, a Google Android™ phone, a Microsoft Windows® phone, etc.), or other type of computing device. Although a single user device is shown in shown inFIG. 1, any number of user devices may be present, including tens, hundreds, thousands, and even greater numbers of user devices.

Server(s)102may be implemented in one or more computer systems, including one or more servers, which may be any type of computing device described herein or otherwise known that is capable of enabling the corresponding functionality described herein.

Server(s)102and user device104are communicatively coupled with each other through network106. Network106may be a LAN (local area network), a WAN (wide area network), or any combination of networks, such as the Internet. Server(s)102and user device104are each coupled with network106through a respective communication link. The communication links may each include wired and/or wireless links. Examples of such communication links include IEEE 802.11 wireless LAN (WLAN) wireless links, Worldwide Interoperability for Microwave Access (Wi-MAX) links, cellular network links, wireless personal area network (PAN) links (e.g., Bluetooth™ links), Ethernet links, USB (universal serial bus) links, etc.

Network106may include one or more routers, hubs, switches, bridges, etc., used to connect devices/networks and/or to forward data (e.g., data packets). In embodiments, network106may include the Internet and/or an intranet. Network106may enable RF (radio frequency) or wireless type communication via one or more network access technologies, such as Global System for Mobile communication (GSM), Universal Mobile Telecommunications System (UMTS), General Packet Radio Services (GPRS), Enhanced Data GSM Environment (EDGE), 3GPP Long Term Evolution (LTE), LTE Advanced, Wideband Code Division Multiple Access (WCDMA), Bluetooth, 802.11b/g/n, or the like.

The Internet refers to a decentralized global network of networks. The Internet includes LANs, WANs, wireless networks, or long haul public networks that, for example, allow signal packets to be communicated between LANs. Signal packets may be communicated between nodes of a network, such as, for example, to one or more sites employing a local network address. A signal packet may, for example, be communicated over the Internet from a user site via an access node coupled to the Internet. Likewise, a signal packet may be forwarded via network nodes to a target site coupled to the network via a network access node, for example. A signal packet communicated via the Internet may, for example, be routed via a path of gateways, servers, etc. that may route the signal packet in accordance with a target address and availability of a network path to the target address.

When signals are transmitted in signal packets in network106, such signal packets may be compatible with or compliant with one or more protocols. Signaling formats or protocols employed may include, for example, TCP/IP, UDP, DECnet, NetBEUI, IPX, Appletalk, or the like. Example versions of the Internet Protocol (IP) may include IPv4 or IPv6.

Server(s)102includes one or more servers. At least one of the servers of server(s)102includes mail server110, which is configured to manage mail accounts for users. For instance, as shown inFIG. 1, mail server110may receive emails132, which may include any type of emails, including emails including commercial offers. Emails132may have any form, including Internet email message format (e.g., RFC 5322). Each email may include a header and a body, and may contain plain text, HTML (hypertext markup language), or other form of content. Mail server110may store emails132in accounts for users, and may enable the users to access the stored emails to read them. Mail server110may be operated by an email provider, such as Yahoo! Inc. of Sunnyvale, Calif., Google, Inc. of Mountain View, Calif., etc., or by other applicable entity. A user at a computing device, such as computing device104, may have their email stored and served by mail server110. The user may access a user interface at computing device104, such as user interface124, to access their email at mail server110. For instance, user interface124may be a user interface that is accessible in a web browser or other application at computing device104for an email application or tool hosted by mail server110such as Yahoo!® Mail, Google Gmail™, etc.

Commercial offer presentation system108organizes commercial offer emails for users, and generates deal newsletters for users. For instance, as shown inFIG. 1, commercial offer presentation system108includes a deal manager112and a deal newsletter generator114. In an embodiment, deal manager112may be configured to manage emails containing commercial offers directed one or more users. Deal manager112may determine which emails directed to a user contain commercial offers, and may organize those determined emails in any manner, such as by storing the determined emails in a deal folder for the user. Deal newsletter generator114may be configured to generate a deal newsletter for the user that at least summarizes the commercial offers contained in at least a portion of the emails stored in the deal folder for the user.

For instance,FIG. 2shows a flowchart200providing a process for organizing commercial offers for a user according to an example embodiment. In an embodiment, commercial offer presentation system108ofFIG. 1may operate according to flowchart200. Further structural and operational embodiments will be apparent to persons skilled in the relevant art(s) based on the following description of flowchart200.

Flowchart200begins with step202. In step202, a second plurality of emails is determined from a first plurality of emails directed to a user, the second plurality of emails containing commercial offers for the user. In an embodiment, deal manager112may be configured to determine emails that contain commercial offers for a user from emails that are received for the user from a variety of sources at mail server110. For instance, deal manager112may analyze each email directed to the user that is received at mail server110for commercial offer content to determine whether the email contains a commercial offer. Deal manager112may use any suitable criteria to determine whether a received email contains a commercial offer.

For example, in an embodiment, deal manager112may store a list of email sender addresses, domain names, and/or other criteria that correspond to email senders that are entities known for emailing commercial offers. If an email is received from an address, domain name, etc., in the list, this may indicate that the email is likely to contain a commercial offer. Examples of such sender email addresses/domain names includes groupon.com (for Groupon, Inc.), livingsocial.com (for LivingSocial Inc.), google.com (for Google Offers™), etc. Additionally and/or alternatively, deal manager112may parse the subject line and/or body of the email for predetermined terms/words/characters that indicate that the email is likely to contain a commercial offer, such as the words “deal”, “daily deal”, “offer”, “% off”, “Groupon,” “LivingSocial”, etc. The presence of each term, word, or set of characters in an email indicates a corresponding likelihood of whether the email contains a commercial offer. The likelihoods for various words, terms, etc., which may be stored as pre-determined values, may be summed or otherwise accumulated by deal manager112for a particular email to determine an overall likelihood of whether the email contains a commercial offer. The overall likelihood determined for the email may be compared to a predetermined threshold value, or otherwise used, to determine whether the email contains a commercial offer. In other embodiments, deal manager112may use other techniques to determine whether a received email contains a commercial offer.

In step204, the determined emails are stored in a deal folder for the user. In an embodiment, for each email determined to contain a commercial offer, deal manager112may store the determined mail in a deal folder corresponding to the user. For instance, as shown inFIG. 1, server(s)102may be communicatively coupled with user database116. User database116may be used to track emails containing commercial offers for users. As shown inFIG. 2, deal manager112may organize commercial offer emails in user database116in deal folders for users, including user deal folders118,120, and122, which correspond to first, second, and third users. Although three user deal folders are shown inFIG. 1, any number of user deal folders may be present, including, tens, hundreds, thousands, and even millions of user deal folders. Each user deal folder stores emails containing commercial offers for a corresponding user. For instance, user deal folder118stores deal emails138corresponding to a user of user device104, which may include any number of deal emails.

The user may view their respective deal folder to view the commercial offer emails that the user has received. The deal folder in user database116may be transmitted from commercial offer presentation system108to a user device of the user to view in a user interface. For instance, as shown inFIG. 1, a user at user device104may view a deal folder126in user interface124. Deal folder126includes deal emails130that were directed to the user.

In step206, a deal newsletter is generated that at least summarizes commercial offers contained in at least a portion of the determined emails stored in the deal folder. As described above, in an embodiment, deal newsletter generator114may generate a deal newsletter for the user that at least summarizes commercial offers contained in at least a portion of the emails stored in the deal folder for the user. For instance, a deal newsletter generated for the user corresponding to user deal folder118may summarize the commercial offers contained in one or more of deal emails138stored in user deal folder118.

For example, deal newsletter generator114may generate a deal newsletter128for the user to be displayed at user device104(e.g., in response to a request134). As shown inFIG. 1, deal newsletter128is displayed in user interface124. Deal newsletter128may be generated to at least summarize commercial offers contained in deal emails130directed to the user.

Deal newsletter128may contain one or more types of commercial offer-related content that summarizes commercial offers for the user. For instance, deal newsletter128may display portions of multiple commercial offers on a page, may indicate deal locations on a map, and may contain one or more filters that enable users to quickly explore the commercial offers. Deal newsletter128may display any number of commercial offers, such as commercial offers received in deal emails within a predetermined prior time period (e.g., the prior day, prior week, prior month, etc.). Deal newsletter generator114may generate deal newsletter128to show commercial offers from the received deal emails, as well as commercial offers received from one or more other sources (e.g., partner feeds, retrieved by a web crawler, etc.), in a common structure (e.g., using similarly arranged text, one or more similarly sized images, etc.). Deal newsletter114may enable the user to select and view an individual commercial offer email, with additional offer attributes and/or offer recommendations displayed on and/or alongside the commercial offer email. Still further, deal newsletter128may enable searching of deal emails in the user's deal folder, and the search results may be presented in the form of a deal.

Example embodiments for commercial offer presentation system108, for generating deal folders, and for generating deal newsletters, as well as further embodiments are described in the following subsections.

A. Example Embodiments for Managing Deal Folders

As described above, in embodiments, commercial offer presentation system108may manage deal folders that contain commercial offers directed to users, and may generate deal newsletters that summarize the commercial offers. In this manner, users can view and evaluate the commercial offers that are emailed to them in a more unified, convenient, and time efficient manner, as opposed to having to separately open and review numerous separate emails.

Commercial offer presentation system108may be configured in various ways, in embodiments. For instance,FIG. 3shows a block diagram of mail server110, user database116, and a commercial offer presentation system300(shown below the dash-dot-dash line), according to an example embodiment. Commercial offer presentation system300is an example of commercial offer presentation system108ofFIG. 1. As shown inFIG. 3, commercial offer presentation system300includes deal manager112, deal newsletter generator114, a deal source interface302, an additional deal database304, a deal aligner306, a web crawler308, a deal categorizer310, an editorial tool312, one or more front end servers314, one or more back end servers316, a logger318, a deal ranker320, a deal enhancer322, and an image retargeter324. Deal newsletter generator114, logger318, deal ranker320, deal enhancer322, and image retargeter324are shown included in back end server(s)316for purposes of illustrations, but in other embodiments may be distributed across one or more servers in other ways. These features ofFIG. 3are described as follows in this subsection and subsequent subsections.

As described above, mail server110manages mail accounts for users. For instance, as shown inFIG. 3, mail server110may receive emails132directed to one or more users. Mail server110may organize emails132in an email database stored in any form of storage described herein or otherwise known.

As shown inFIG. 3, deal manager112may receive emails132from mail server110. As described above, deal manager112manages emails containing commercial offers directed one or more users. For instance, deal manager112may determine which emails of emails132contain commercial offers for users. In an embodiment, deal manager112may organize the determined emails in deal folders for users, such as user deal folders118,120, and122shown inFIG. 1and maintained in user database116. As shown inFIG. 3, deal manager112outputs deal emails328, which indicates the emails of emails132that contain commercial offers for users. For instance, deal emails328may indicate each deal email by an identifier (e.g., an email identifier), may indicate the user to which each deal email is directed, may indicate a deal folder in which each deal email is to be stored, may contain each deal email, and/or may indicate further information. Deal emails328may be received by deal aligner306prior to being received by user database116, as shown inFIG. 3, and/or deal emails328may be directly received in user database116.

As described above, a user may display their deal folder to view the commercial offer emails that the user has received. For instance,FIG. 4shows a step402for providing a deal folder to a user that organizes commercial offers, according to an example embodiment. In step402, deal folder information is transmitted to a computing device of the user to enable display of the deal folder to the user at the computing device. For example, as shown inFIG. 3, mail server110may transmit information representative of deal folder126from commercial offer presentation system300to a user device104. This deal folder information (e.g., copies of the emails stored therein, etc.) is transmitted to enable the deal folder to be displayed to the user at user device104. Referring toFIG. 1, deal folder126may be transmitted in one or more communication signals from server(s)102through network106to be received by user device104. At user device104, deal folder126may be displayed in user interface124based on the transmitted deal folder information. Deal folder126includes deal emails130that were directed to the user.

User interface124may be configured in various ways to display deal folder126, in embodiments. For instance,FIG. 5shows a block diagram of a user interface502for managing and accessing commercial offer emails, according to an example embodiment. As shown inFIG. 5, user interface502is a window that displays a plurality of deal emails508in a list. For instance, in an embodiment, user interface502may be a graphical user interface (GUI) of a mail tool that displays a user's “Inbox”, enables the user to draft emails, enables the user to view sent emails, enables the user to view spam email, and enables the user to view deleted emails in “Trash”. Furthermore, user interface502may enable the user to compose emails, delete emails, reply to received emails, and forward emails.

Still further, user interface502may enable the user to view the user's deal emails by enabling the user to select a “deal folder” icon (deal folder504) shown in user interface502(e.g., by mouse click, etc.), or by interacting with another user interface element in another manner. Referring toFIG. 1, when deal folder504is selected by the user, a request is transmitted from user device104through network106to server(s)102for the deal folder of the user. In response, mail server110may transmit deal folder126, including the deal emails stored in the deal folder of the user, to user device104through network106. As shown inFIG. 5, deal emails508stored in the deal folder of the user are displayed to the user in user interface508. The user may interact with deal emails508in user interface502in any suitable manner to view particular deal emails, to delete deal emails, etc. For instance, each deal email may be displayed by displaying a source (“From”), a subject, a date, and/or other information for each deal email. Examples of user interface elements for user interface502include graphical buttons, text entry boxes, check boxes, pull down menus, etc. Any number and combination of user interface elements may be present.

Note that in embodiments, user interface502may be displayed in any form. For instance, in the example ofFIG. 4, user interface502may be provided in a web page displayed by a browser. Example browsers include Internet Explorer®, developed by Microsoft Corp. of Redmond, Wash., Mozilla Firefox®, developed by Mozilla Corp. of Mountain View, Calif., Safari®, developed by Apple Inc. of Cupertino, Calif., and Google® Chrome of Mountain View, Calif., etc. In other embodiments, user interface502may be provided by another type of application (e.g., a desktop application, a mobile “app”, etc.), or may be provided in another manner.

B. Example Embodiments for Aligning Alternative Commercial Offers

As described above, commercial offers and/or related information may be received/obtained from one or more alternative sources than the deal emails directed to users. For instance, additional commercial offer information may be received from entities that have a business relationship with the provider of commercial offer presentation system300(“partner feeds”) that desire to provide new commercial offers to the users and/or to enhance the commercial offers that the users have received in deal emails. Furthermore, additional commercial offer information may be proactively retrieved from one or more network sources, such as by a web crawler. In this manner, the commercial offers provided to users (e.g., in a deal newsletter) may be enhanced by providing additional commercial offers and/or by providing additional offer information with the commercial offers that were received in the deal emails.

As used herein, commercial offer information includes information that may be included in a commercial offer, such as an offer title, an offer category (e.g., a product or service category, such as “automotive,” “insurance,” etc.), an expire date for the offer, a deal source (e.g., an identification of a merchant making the commercial offer), a discount amount (e.g., a percentage discount, a price reduction amount, etc.), a price (e.g., a price a user may pay to participate in the commercial offer), one or more images (e.g., image files) associated with the commercial offer, etc. Commercial offer information may include a complete commercial offer, or may include less information than a complete commercial offer (e.g., may not include a price, etc.). As such, in some cases, commercial offer information may include information used to enhance or complete another commercial offer.

Referring back toFIG. 3, deal source interface302is configured to receive commercial offer information from one or more sources. For instance, as shown inFIG. 3, deal source interface302may receive a partner feed330from one or more entities. Partner feed330is a feed (e.g., a communication signal) that is generated by an entity to provide additional commercial offers and/or to provide enhancing information for existing commercial offers (received in deal emails). Partner feed330may be received from a remote server of the entity (e.g., a merchant) in any form, such as a web feed (e.g., an XML-based document), a RSS (really simple syndication) feed, or other type of feed. In an embodiment, partner feed330may have a pre-agreed upon data format so that commercial offers/commercial offer information may be present in partner feed330in a common structure and easy-to-process manner.

Furthermore, as shown inFIG. 3, deal source interface302may receive crawl results332from a web crawler308. Web crawler308is a system (e.g., computer program) that browses the World Wide Web in a methodical manner (“crawling” or “spidering”) to download/copy pages from the World Wide Web. In an embodiment, web crawler308may be configured to crawl one or more merchant websites to find and download commercial offers. For instance, web crawler308may be programmed to search one or more predetermined merchant websites (e.g., groupon.com, livingsocial.com, etc.). Web crawler308may additionally or alternatively be programmed to randomly search websites for deal information. Web crawler308may be programmed to recognize commercial offers in a similar manner as described above, such as by domain name, by finding terms in web pages such as “deal”, “daily deal”, % off”, etc. The downloaded commercial offers are output in crawl results332by web crawler308.

Deal source interface302receives the commercial offers and/or commercial offer information from partner feed(s)330and/or commercial offers from crawl results332, and stores the commercial offers/commercial offer information in additional deal database304in any suitable manner. For instance, each commercial offer/commercial offer information may be stored in additional deal database304in a commonly structured manner, such as including an offer title, category, expire date, deal source, discount amount, price, associated image(s), etc., when present.

In an embodiment, commercial offer presentation system300is configured to “align” commercial offers and commercial offer information received from the alternative sources with one or more commercial offers provided in deal emails for a user. The aligning refers to finding matches between commercial offers/commercial offer information received from the alternative sources with commercial offers provided in received deal emails. Matches may be found when comparisons are performed between offer categories, between portions of the offers/information, and exact and/or partial matches of textual description, image(s), or any other identifiable associated information for the deals are found, and/or when substantial similarities in content are found. When matches are found between commercial information received from the alternative sources and commercial offers provided in received deal emails, the commercial information received through the alternative sources may be provided to the user as annotations, or enhancements, to the commercial offers provided in received deal emails.

For instance, as shown inFIG. 3, deal aligner306receives deal emails328. Deal emails328may be received from deal manager112, as shown inFIG. 3, or may be accessed by deal aligner306in user database116. Furthermore, as shown inFIG. 3, deal aligner306receives alternative offer information336from additional deal database304. Alternative offer information336includes commercial offer information and/or commercial offers received from alternative sources, as described above. Deal aligner306may access alternative offer information336in additional deal database304when the above described aligning process is performed by deal aligner306.

For example, partner feed330may provide commercial offer information from one or more entities (e.g., partners) that is related to commercial offers received in deal emails. The commercial offer information may include additional deal information for commercial offers received in deal emails (e.g., additional/different discounts for same or different products/services, etc.). Deal aligner306may receive the commercial offer information in alternative offer information336. Alternative offer information336may include the commercial offer information in a predetermined, structured manner (e.g., identifying one or more fields/attributes of a title, source, product/service, price, discount, etc.). Deal aligner306may align the received commercial offer information of alternative offer information336with deal emails of deal emails328to determine which received deal emails the alternative offer information relates to. Deal aligner306may annotate a deal email of deal emails328with commercial offer information of alternative offer information336when a match is found (e.g., to fill an empty attribute/field, to add new information, etc.). Such annotation may be provided in any form, including plain text, HTML, etc.

For instance, a deal email of deal emails328may contain a commercial offer for a first cruise provided by a cruise line at a first discount amount. Deal aligner306may determine a match between the deal email and the commercial offer information, such as by matching titles, the source (e.g., same cruise line, same source domain name/email address), an identifier for the cruise, any associated images, etc. As a result, deal aligner306may annotate the deal email with the commercial offer information in any manner, such as by adding the commercial offer information to the deal email in its entirety, replacing an original commercial offer in the deal email with the commercial offer information, modifying the original commercial offer with the commercial offer information, and/or adding a pointer to matched commercial offer information, which can be used to update the deal information (e.g., bought number, etc.) constantly. For instance, in one example, deal aligner306may annotate the deal email with the commercial offer information so that when the deal email is displayed, the original commercial offer of the deal email is displayed. Deal aligner306may annotate the deal email with the commercial offer information so that when the deal email is displayed, the second discount amount, an updated expiration date, and/or other alternative deal information for the cruise is displayed in place of the first discount amount (alternatively, deal enhancer322, as described further below, may perform this function). Furthermore, deal aligner306may annotate the deal email in further ways using the commercial offer information of alternative offer information336.

In another example, partner feed330and/or crawl results332may include one or more commercial offers that is/are similar to commercial offers received in deal emails. Deal aligner306may receive the commercial offers in alternative offer information336. Alternative offer information336may include the commercial offer(s) in a predetermined, structured manner (e.g., identifying one or more fields/attributes of a title, category, source, product/service, price, discount, etc., for each commercial offer). Deal aligner306may align the received commercial offer(s) of alternative offer information336with deal emails of deal emails328to determine a match (e.g., a same category, a similarity in offer content, etc.). Where a match between a commercial offer received in alternative offer information336and a deal email of deal emails328is found, it may be desirable to present the commercial offer received in alternative offer information336when the commercial offer of the deal email is displayed to the user. As such, deal aligner306may annotate a deal email of deal emails328with a commercial offer of alternative offer information336when a match is found.

Note that deal aligner306may be configured to align commercial offers/commercial offer information in any suitable manner, including by performing text matching (e.g., by matching similar titles, and/or other fields/attributes), image matching (e.g., by matching image features such as a substantially same color histogram, a color spatial distribution, etc.), statistical matching, etc. When commercial offers/commercial offer information is aligned that conforms to a predetermined structure (e.g., a deal taxonomy), the corresponding fields/attributes of the commercial offers/commercial offer information may be compared to determine matches. In some case, commercial offers/commercial offer information may be received that does not conform to the predetermined structure, and/or may be missing one or more fields/attributes of the predetermined structure. As shown inFIG. 3, deal categorizer310may be present (optionally). When present, deal categorizer310may be used to determine fields/attributes for commercial offers/commercial offer information that are missing and/or that do not match the predetermined structure (are improper).

For instance, in an embodiment, deal categorizer310may implement a support vector machine (SVM) or some other supervised learning techniques to recognize patterns, which may be used to determine missing/improper fields/attributes for commercial offers/commercial offer information. For instance, deal categorizer310may use tf-idf (term frequency-inverse document frequency) techniques to reflect how important a word is for a particular commercial offer or commercial offer information in a collection of commercial offers/commercial offer information. The more important words may be used to determine the values for missing/improper fields/attributes for commercial offers/commercial offer information. Once values for the fields/attributes are determined, deal aligner306may perform the aligning process for the commercial offers/commercial offer information.

Note that editorial tool312may optionally be present to enable a user to manually configure deal categorizer310, as desired. For instance, the user may configure deal categorizer310to define fields/attributes, etc.

As shown inFIG. 3, deal aligner338outputs deal emails338, which may include deal emails that are annotated with commercial offers and/or commercial offer information from additional deal database304, and/or un-annotated deal emails.

C. Example Embodiments for Generating Deal Newsletters

As described above, a deal newsletter may be generated for a user that summarizes the deal emails that the user has received. In embodiments, the deal newsletter may indicate deal locations on a map, may contain filters that enable users to filter the display of commercial offers, may include commercial offers received from alternative sources, may include enhancements to commercial offers, may include offer recommendations, may include deal search capability, and/or may include further features. As such, the deal newsletter provides a convenient way for a user to view the commercial offers that the user has been receiving in email, as well as providing additional information.

As shown inFIG. 3, deal newsletter generator114of back end server(s)316generates a deal newsletter128for a user. In an embodiment, deal newsletter generator114generates deal newsletter128“on demand” by the user, although in other embodiments, deal newsletter generator114may generate deal newsletter128in an automatic fashion, such as on a periodic basis, or other basis, as desired for a particular situation.

For instance,FIG. 6shows a flowchart600providing a process for generating a deal newsletter, according to an example embodiment, according to an example embodiment. In an embodiment, deal newsletter generator114may operate according to flowchart600. Further structural and operational embodiments will be apparent to persons skilled in the relevant art(s) based on the following description of flowchart600.

Flowchart600begins with step602. In step602, a request is received from the user for the deal newsletter by the user interacting with a user interface of a computing device. For example, referring toFIG. 1, a user at user device104may interact with user interface124to request a deal newsletter for the user. Referring to the example ofFIG. 5, user interface502may enable the user to request a deal newsletter by enabling the user to select a “deal newsletter” icon (deal newsletter506) shown in user interface502(e.g., by mouse click, etc.), or by interacting with another user interface element. When deal newsletter506is selected by the user, a request134is transmitted from user device104through network106to server(s)102for the deal newsletter. As shown inFIG. 3, deal newsletter506may be optionally received by deal newsletter generator114(in back end server(s)316) through front end server(s)314. Note that in an embodiment, deal folder504and deal newsletter506inFIG. 5may be integrated so that it is not necessary for the user to switch back and forth between them. For instance, in an embodiment, one of deal folder504or deal newsletter506may be present in user interface502(the other one not present), and this single feature may be interacted with to enable deal emails508to be displayed and to cause a deal newsletter to be generated (e.g., deal newsletter128) and displayed.

In step604, the deal newsletter is generated in response to the received request. In response to receiving request134, deal newsletter generator114generates deal newsletter128for the user. As described above, deal newsletter128may include one or more pages that summarize commercial offers received in deal emails by the user. Furthermore, in an embodiment, deal newsletter128may include further commercial offers. For instance, in an embodiment, step604may include a step702shown inFIG. 7. In step702, the deal newsletter is generated to include at least one commercial offer selected from commercial offers received from at least one additional commercial deal source. For example, deal newsletter128may be generated to include commercial offers received at deal source interface302(e.g., in partner feed330, crawl results332, etc.), and/or may be generated to include enhancements to commercial offers received in commercial offer information (e.g., in partner feed330). Deal newsletter128may be generated in any form (e.g., one or more files or objects), and described in any suitable form, such as text, XML (extensible markup language), HTML (hypertext markup language, a programming language, a scripting language (e.g., JavaScript, VBScript, AppleScript, etc.), etc.

In step606, the deal newsletter is transmitted to the computing device for display to the user. As shown inFIG. 1, server(s)102may transmit deal newsletter128to user device104through network106. As shown inFIG. 3, deal newsletter128may be optionally transmitted by deal newsletter generator114(in back end server(s)316) through front end server(s)314. Deal newsletter128may be displayed to the user in user interface124(FIG. 1) in any manner. For instance, deal newsletter128may be displayed by a web browser or another type of application. User interface124may enable the user to page and/or scroll through deal newsletter128to view and/or interact with the commercial offers and other information displayed therein in any suitable manner.

Note that logger318may optionally be present to track transactions, including tracking which commercial offers are presented to users, which commercial offers users view, interact with, and participate in, etc. As shown inFIG. 3, logger318may output logged information342, which may be stored in storage and/or used in any manner.

Deal newsletter generator114may be configured in various ways to generate deal newsletter128. For instance,FIG. 8shows a block diagram of a deal newsletter generator800, according to an example embodiment. Deal newsletter generator800is an example of deal newsletter generator114. As shown inFIG. 8, deal newsletter generator800includes a deal summary page generator802, a map page generator804, a mail page generator806, and a deal search interface page generator808. Deal newsletter generator800may include any one or more of page generators802,804,806, and808, in embodiments. These features of deal newsletter generator800are described as follows.

For instance,FIG. 9shows a flowchart900providing a process for generating example pages of a deal newsletter, according to an example embodiment. In an embodiment, deal newsletter generator800may operate according to flowchart900. Note that not all steps of flowchart900need to be performed in all embodiments, and the steps of flowchart900may be performed in any order. Further structural and operational embodiments will be apparent to persons skilled in the relevant art(s) based on the following description of flowchart900in the following subsections.

1. Example Embodiments for a Deal Summary Page

Flowchart900begins with step902. In step902, a deal summary page of the deal newsletter is generated that includes a plurality of deal summary sections, each deal summary section including commercial offer information extracted from a corresponding email of the set of emails. For instance, in an embodiment, deal summary page generator802ofFIG. 8may generate a deal summary page810of deal newsletter128. Deal summary page810may summarize the deal emails stored in the deal folder of the user (e.g., deal folder126shown inFIG. 1), such as by displaying a portion of each deal email in a section of deal summary page810.

Deal summary page810may be configured in various ways, in embodiments. For instance,FIG. 10shows a block diagram view of a deal summary page1000of a deal newsletter, according to an example embodiment. Deal summary page1000is an example of deal summary page810. Deal summary page generator802may generate deal summary page1000to summarize deal emails in the deal folder of the user.

For instance, in an embodiment, deal summary page1000may include a deal newsletter navigator section1002. When present, deal newsletter navigator section1002may include one or more user interface elements that enable a user to navigate between pages of a deal newsletter. For example, as shown inFIG. 10, navigator section1002may include one or more page links, displayed as text, such as a “Summary” page link, a “Map” page link, a “Mail” page link, and a “Search” page link. By selecting one of the page links, a user may be navigated within the deal newsletter to the corresponding page. The page link for the page that is currently being displayed is shown in bold text inFIG. 10. In other embodiments, one or more alternative user interface elements may be present in deal newsletter navigator section1002to enable a user to navigate between pages of a deal newsletter, including one or more graphical buttons, a pull down menu, a pop up menu, etc.

Furthermore, as shown inFIG. 10, a plurality of deal summary sections1008,1010,1012, and1014are displayed in deal summary page1000. Each deal summary section displays a portion of a corresponding deal email in the user's deal folder. In the example ofFIG. 10, four deal summary sections are displayed, but in other embodiments, any number of deal summary sections may be displayed. Such deal summary sections may be displayed in a two-by-two array, as shown inFIG. 10, or may be displayed in any other sized arrays, including in one or more columns and one or more rows. In an embodiment, a user may scroll up and down and/or left and right through deal summary page1000to be able view all deal summary sections.

As shown in the embodiment ofFIG. 10, deal summary sections1008,1010,1012, and1014may have a common format or structure, displaying the same fields/attributes in the same locations. Alternatively, one or more deal summary sections may be displayed in a different format or structure from other deal summary sections. Deal summary page generator802may extract values for each of the fields/attributes from the deal email containing the corresponding commercial offer. For instance, deal aligner306, described above, may determine the values for the fields/attributes for each of deal emails328, and may indicate the values in a structured manner in each deal email.

As indicated in deal summary section1008, each deal summary section includes the display of the following fields/attributes: a title1016, a location1020, an expire date1022, a from1024, a discount1026, and a price1028, which are extracted by deal summary page generator802(FIG. 8) from the corresponding deal email or additional deal database304. Furthermore, each deal summary section displays an image1018. Example values for each field/attribute are shown in deal summary section1010for a commercial offer of yoga classes. Title1016indicates a title to be displayed for the deal summary section that is representative of the corresponding commercial offer (e.g., “20 Hot Yoga Classes”). Image1018is a representative image that is displayed for the commercial offer (e.g., a yoga image). Location1020indicates a location in which the commercial offer may be used (e.g., “San Francisco”). Expire date1022indicates an expiration date for the commercial offer (e.g., “2011-10-04”). From1024indicates a merchant that is providing the commercial offer (e.g., “Zozi”). Discount1026indicates an amount of the discount that is being provided by the commercial offer (e.g., “90%”). Price1028indicates the price of the offered product and/or service (e.g., “25 USD”).

It is noted that not all of the fields/attributes shown inFIG. 10need to be displayed in all embodiments, and in some embodiments, additional and/or alternative fields/attributes may be displayed.

In an embodiment, the image used as image1018may be extracted by deal summary page generator802from the deal email corresponding to the commercial offer. In an embodiment, image retargeter324ofFIG. 3may be accessed by deal newsletter generator114to resize an extracted image into a common/standard image size for images displayed in deal summary sections of deal summary page1000. For instance, in an embodiment, image retargeter324may crop and/or scale/resize the image extracted from the deal email into the standard image size. When cropping an image, image retargeter324may use context-aware (maximizing remaining saliency) image cropping to convert the image into a uniform aspect ratio image to enable uniform presentation of images. Such techniques may be used to determine an important portion of an image (e.g., focusing on a person's head, an important object, etc.), which is retained, while other less portions of the image may be cropped and discarded, as would be known to persons skilled in the relevant art(s).

Note that editorial tool312may optionally be present to enable a user to configure image retargeter324, as desired, and/or to manually resize an image for use in a deal summary section or deal summary snapshot. For instance, the user may user editorial tool312to interact with image retargeter324to crop an image, scale an image, etc.

Furthermore, in an embodiment, deal summary page generator802may access deal ranker320to rank commercial offers displayed in deal summary sections in deal summary page1000. Such ranking may be used to determine commercial offers that are more relevant (higher ranked) to the user to display more prominently in deal summary page1000(e.g., displayed at the top of deal summary page1000, etc.), while less relevant (lower ranked) commercial offers may be displayed less prominently (e.g., displayed at the bottom of deal summary page1000, etc.). Commercial offers may be ranked on various factors, including an inferred deal quality, business logic, predefined user preferences, user location, etc., using various techniques to balance user experience and monetization capability, as would be known to persons skilled in the relevant art(s). Furthermore, deal ranker320may be configured to find and rank additional commercial offers received at deal source interface320, such as partner feed330, as recommendations for the user. These recommendations may be generated at a user level or category level, and may be positioned before or in deal newsletter128. Alternatively, these recommendations maybe be generated according the deal received by the user, and placed or showed along with an original deal offer. The matching and/or ranking may be performed according to a similarity to the original deal, such as by matching one or more of location, title, or category. In another embodiment, the matching and/or ranking can be performed according to user's profile, matching profile attributes such as location, past history of interacting with deals (e.g., such as clicking on deals, buying services/items of deals, etc.).

Still further, as shown inFIG. 10, deal summary page1000may include a filter interface1004and/or a sorter interface1006. A user may interact with filter interface1004to cause deal summary page generator802to filter the deal summary sections that are displayed in deal summary page1000. For instance, filter interface1004may include one or more user interface elements (e.g., buttons, menus, links, etc.) that may be interacted with to filter displayed deal summary sections by fields/attributes, such as by category, by price, by discount, etc. Deal summary sections that do not fit the filter criteria set by filter interface1004may be filtered out (e.g., not displayed in deal summary page1000). Furthermore, the user may interact with sorter interface1006to cause deal summary page generator802to sort the deal summary sections that are displayed in deal summary page1000. For instance, sorter interface1006may include one or more user interface elements (e.g., buttons, menus, links, etc.) that may be interacted with to sort displayed deal summary sections by fields/attributes, such as by category, by price, by discount, etc. The deal summary sections may be sorted in ascending order, descending order, and/or in other ways, according to the particular field/attribute sort criteria set in sorter interface1006.

As described above, deal summary page generator802may display commercial offers received in deal emails by the user in deal summary page1000. Furthermore, deal summary page generator802may generate deal summary page1000to display commercial offers received from alternative sources as recommended offers. For instance, deal summary page generator802may access user database116for commercial offers received from alternative sources that deal aligner306indicated as matches for commercial offers received in deal emails by the user.

Deal summary page generator802may display the recommended offers in deal summary page1000in any manner. For instance, inFIG. 10, deal summary sections1008and1010may display recommended offers, while deal summary sections1012and1014may display commercial offers received in deal emails by the user. Any number and arrangement of deal summary sections in deal summary page1000may display recommended offers. Furthermore, as shown inFIG. 10, recommended offers that were determined to match commercial offers received in deal emails may be displayed within a deal summary section of the matching commercial offer. For instance, as shown inFIG. 10, recommended offers1032,1034, and1036are shown displayed in a recommendations section1030of display summary section1012. Recommended offers1032,1034, and1036were determined by deal aligner306to be closely related enough to the commercial offer of the deal email corresponding to deal summary section1008to be displayed therein as recommended offers.

Recommended offers1032,1034, and1036may each be displayed in any manner in a deal summary section, such as being shown as a “snapshot” that includes an image (cropped/resized) from the corresponding commercial offer, and/or text from the corresponding commercial offer that summarizes the corresponding commercial offer. Furthermore, any number of one or more recommended offers may be displayed in a deal summary section in this manner. Such deal summary snapshots are generally smaller in size than deal summary sections, containing the snapshot image, but generally containing less text than a deal summary section (e.g., just a title, or portion thereof, etc.). In an embodiment, such deal summary snapshots resemble “thumbnail” images.

As such, in an embodiment, a user that views deal summary page1000can view each deal summary section to receive a summary of the corresponding commercial offer email, and may interact with a deal summary section (e.g., may click on it, etc.) to be displayed further information regarding the commercial offer. For instance, in embodiments, by interacting with a deal summary section, the deal email may be displayed, the corresponding merchant's website may be navigated to so that the user can accept the commercial offer, and/or other events may be triggered. Still further, offer recommendations may be displayed.

2. Example Embodiments for a Map Page

Referring back toFIG. 9, in step904, a map page of the deal newsletter is generated that indicates a location associated with a commercial offer contained in an email stored in the deal folder. For instance, in an embodiment, map page generator804ofFIG. 8may generate a map page812of deal newsletter128. Map page812may display a map that indicates locations associated one or more commercial offers contained in deal emails stored in the deal folder of the user (e.g., deal folder126shown inFIG. 1).

Map page812may be configured in various ways, in embodiments. For instance,FIG. 11shows a block diagram view of a map page1100of a deal newsletter, according to an example embodiment. Map page1100is an example of map page812. Map page generator804may generate map page1100to display locations associated with deal emails in the deal folder of the user.

For instance, in an embodiment, map page1100may include deal newsletter navigator section1002, and may include one or both of filter interface1004and sorter interface1006to perform their respective functions with respect to deals represented in map page1100.

Furthermore, as shown inFIG. 11, map page1100includes a first deal summary section1102, a second deal summary section1104, a third deal summary section1106, and a map1108. Deal summary sections1102,1104, and1106are generally similar to the deal summary sections described above, each summarizing a respective commercial offer of a deal email in a user's deal folder, or may summarize a recommended offer. For instance, deal summary section1102includes the following fields/attributes (described above): a title1110, an expire date1114, a from1116, a discount1118, and a price1120. Furthermore, an image1112is displayed in deal summary section1102. Any number of deal summary sections may be displayed in map page1100.

Map1108includes a map of a region containing locations associated with the displayed deal summary sections. For instance, as shown inFIG. 11, map1108includes a first location1122, a second location1124, and a third location1126(indicated by respective pins or indicators in the map) that correspond to deal summary sections1102,1104, and1106. Locations1122,1124, and1126are locations of the businesses associated with the commercial offers of deal summary sections1102,1104, and1106, such as a store location where a commercial offer (e.g., a discount, a coupon, etc.) may be redeemed (e.g., a location where a service may be performed, such as a location of a yoga studio, or where a product may be purchased/retrieved).

As shown inFIG. 11, a user may interact with one of locations1122,1124, and1126to be displayed additional information regarding the corresponding commercial offer. For instance, in an embodiment, if a user clicks on or hovers a mouse pointer over a location, such as location1122, a pop-up caption1128may be displayed that displays fields/attributes/images for the corresponding commercial offer.

A user that views map page1100can view each deal summary section to receive a summary of the corresponding commercial offer email, and may interact with a deal summary section (e.g., may click on it, etc.) to be displayed further information regarding the commercial offer. Furthermore, the user may interact with a caption displayed for a location in map1108to be displayed further information regarding the commercial offer. For instance, in embodiments, by interacting with a deal summary section or caption, the deal email may be displayed, the corresponding merchant's website may be navigated to so that the user can accept the commercial offer, and/or other events may be triggered.

Map page generator804may generate map1108using a proprietary or commercially available mapping tool, including a network-based web service or application such as Yahoo!® Maps, MapQuest, and Google™ Maps.

3. Example Embodiments for a Mail Page

Referring back toFIG. 9, in step906, a mail page of the deal newsletter is generated that includes a plurality of deal summary snapshots in a first portion of the mail page, each deal summary snapshot including commercial offer information extracted from a corresponding email of the set of emails, and each deal summary snapshot selectable to enable display of the corresponding email in a second portion of the mail page. For instance, in an embodiment, mail page generator806ofFIG. 8may generate a mail page814of deal newsletter128for a user. Mail page814may display a selected deal email from a deal folder of the user. Furthermore, mail page814may display a deal folder navigator to enable the user to concisely view deal emails in the deal folder, and to select a deal email in the deal folder for display in mail page814.

Mail page814may be configured in various ways, in embodiments. For instance,FIG. 12shows a block diagram view of a mail page1200of a deal newsletter, according to an example embodiment. Mail page1200is an example of mail page814. Mail page generator806may generate mail page1200to display deal emails in the deal folder of the user.

For instance, in an embodiment, mail page1200may include deal newsletter navigator section1002. Furthermore, as shown inFIG. 12, mail page1200may include a deal folder navigator1202in a first portion of mail page1200and an email display region1204in a second portion of mail page1200.

Deal folder navigator1202is configured to enable a user to concisely view the deal emails contained in the user's deal folder. For instance, as shown inFIG. 12, deal folder navigator1202may include a plurality of deal summary snapshots1212,1214, and1216(and further deal summary snapshots), which correspond to three deal emails in a deal folder. Each deal summary snapshot includes an image (cropped/resized) from the corresponding commercial offer, and/or text from the corresponding commercial offer that summarizes the corresponding commercial offer. Any number of deal summary snapshots may be displayed in deal folder navigator1202at any time. Deal folder navigator1202may optionally include a slider/scroll bar or other user interface element to enable the user to display further deal summary snapshots of the deal folder that are not currently displayed on the screen due to screen space constraints.

In the example ofFIG. 12, the deal summary snapshots are displayed in a horizontal row, but in other embodiments, may be displayed in further horizontal and/or vertical rows, or may be displayed in other ways.

In an embodiment, a user may interact with (e.g., click on, etc.) a deal summary snapshot in deal folder navigator1202to cause the corresponding deal email (the deal email on which the deal summary snapshot is based) to be displayed in email display region1204. For example, as shown inFIG. 12, a user may have selected deal summary snapshot1212in deal folder navigator1202to cause a deal email1206corresponding to deal summary snapshot1212to be displayed in email display region1204. In the example ofFIG. 12, email display region1204is displayed below deal folder navigator1202in page1200, but in other embodiments, may displayed elsewhere in page1200relative to deal folder navigator1202(e.g., above, to the right, to the left, etc.).

In an embodiment, enhancement information may be retrieved and displayed on deal email1206in page1200. For instance, as shown inFIG. 12, enhancement information1208may be displayed on deal email1206. Enhancement information1208includes enhancement information for the commercial offer corresponding to deal email1206that is determined by deal enhancer322(FIG. 3). Such enhancing may be used to add and/or modify commercial offer information contained in deal email1206. The enhancement information may have been received at deal source interface302from an alternative source, such as partner feed330, and may have been annotated on deal email1206by deal aligner306as described above, or may have been stored in user database116. In an embodiment, deal enhancer322may retrieve and provide the enhancement information to be displayed in page1200over deal email1206.

For instance, deal email1206may provide a commercial offer for a cruise line. Enhancement information1208may be displayed on deal email1206to provide additional and/or alternative information for the cruise line commercial offer. For example, enhancement information1208may include an offer title, a location, an expiration date, an indication of a merchant providing the commercial offer (“from”), a discount, a price, and/or other offer-related information.

Furthermore, in an embodiment, one or more deal recommendations may be retrieved and displayed on deal email1206in page1200. For instance, as shown inFIG. 12, a recommendations section that includes a plurality of recommended deals may be displayed on1206. The recommended deals may have been determined by deal ranker320(FIG. 3) for deal email1206, and/or may be retrieved from user database116by deal enhancer322to be displayed in page1200over deal email1206.

It is noted that any amount of enhancement information and/or number of recommended deals may be displayed on deal email1206in any location. Alternatively, the enhancement information and/or one or more recommended deals may be displayed in page1200alongside deal email1206.

4. Example Embodiments for a Deal Summary Page

Referring back toFIG. 9, in step908, a deal search page of the deal newsletter is generated that includes a search interface that enables a user to search commercial offers contained in emails stored in the deal folder. For instance, in an embodiment, deal search interface page generator808ofFIG. 8may generate a deal search page816of deal newsletter128for a user. Deal search page816may display a search interface that enables a user to search a deal folder of the user. Furthermore, deal search page816may display further features, including deal summary sections and/or snapshots, links to other deals, a map indicating locations of deal search results, etc.

Deal search page816may be configured in various ways, in embodiments. For instance,FIG. 13shows a block diagram view of a deal search page1300of a deal newsletter, according to an example embodiment. Deal search page1300is an example of deal search page816. Deal search interface page generator808may generate deal search page1300to display a deal search interface1302. Deal search interface1302is a user interface that may be interacted with by a user to search the deal emails in the deal folder of the user. Deal search interface1302may include one or more user interface elements suitable for performing a search, such as a search entry box1308and a search execute button1310shown inFIG. 13. A user may enter (e.g., by typing, by voice transcription, etc.) one or more search keywords/terms into search entry box1308to define a search, and may interact with (e.g., click on) button1310to execute the search. The search keywords may be provided to a search engine included in deal search interface page generator808ofFIG. 8, or external to deal search interface page generator808, to perform a search of the deal folder of the user on the search keywords. The search may be performed in any manner, including using a simple text search (e.g., determining words in one or more deal emails that match the search keywords) or by a more complex type of searches. One or more deal emails in the deal folder that contain the search keywords, or that match search criteria in any other way, may be returned as search results.

For instance, in an embodiment, deal search page1300may include deal newsletter navigator section1002. Furthermore, deal search page1300may include a search results section1304. Search results section1304includes one or more deal summary sections, such as deal summary sections1312and1314. Deal summary sections1312and1314are each generally similar to the deal summary sections described above, summarizing a respective commercial offer in a deal email of the user's deal folder that appeared in the search results. For instance, as shown inFIG. 13, deal summary sections1312and1314each include the following fields/attributes (described above): title, expire date, from, discount, and price. Furthermore, an image is displayed in each of deal summary sections1312and1314. Any number of deal summary sections may be displayed in search results section1304.

As described above, a deal search page may include further features. For instance, as shown inFIG. 13, deal search page1300may include a map1306. Map1306is generally similar to map1108(FIG. 11) described above, and includes a map of a region containing locations associated with the displayed deal search results. For instance, as shown inFIG. 13, map1306includes a first location1316corresponding to deal summary section1312, and a second location1318corresponding to deal summary section1314(indicated by respective indicators in the map). Locations1316and1318are locations of the businesses associated with the commercial offers of deal summary sections1312and1314.

As shown inFIG. 13, a user may interact with one of locations1316and1318to be displayed additional information regarding the corresponding commercial offer. For instance, in an embodiment, if a user clicks on or hovers a mouse pointer over a location, such as location1316, a caption1320may be displayed that displays fields/attributes/images for the corresponding commercial offer.

A user that views deal search page1300can view each deal summary section to receive a summary of the corresponding commercial offer email, and may interact with a deal summary section (e.g., may click on it, etc.) to be displayed further information regarding the commercial offer. Furthermore, the user may interact with a caption displayed for a location in map1306to be displayed further information regarding the commercial offer. Still further, the user may enter different search keywords in search entry box1308to perform further searches on the deal emails in the user's deal folder.

D. Further Example Embodiments and Advantages

Accordingly, in embodiments, organizing deal emails in a deal folder for a user, and generating a custom deal newsletter for the user based on the deal emails, provides advantages. Among other things, commercial intent traffic in an email service is enabled to be monetized, and the experience of users is improved by generating customized commercial deal newsletters.

From the user perspective, a deal folder is generated as a type of smart folder. When deal email is received by the user, the deal email is routed into the special deal folder. When the folder is selected by the user, the user is provided with a list of deals over a given time period, along one or more optional recommendations for similar deals. The deal folder and deal newsletter may be configured to just include unread deal emails (e.g., filtering out deal emails previously displayed to the user or expired). The deal newsletter may be generated to contain additional and/or updated attributes for deals, such as deal locations, a map-based presentation of deals, etc., and may contain one or more types of filters to help users to quickly explore the deals. When the user views a deal email in the deal newsletter, additional deal attributes and/or deal recommendations can be displayed overlaid on the deal email. Furthermore, search results within the deal folder may be presented in form of deal.

From the deal server perspective, emails incoming to the user are scanned, and email attributes such as the email sender address may be used to identify deal emails. Structured information may be extracted from the deal emails in any manner, such as using the xpath (XML path language) rule to extract structured deal information from HTML formatted emails or regular expression for plain-text emails.

The extracted deal information may be aligned using rules such as title match and image retrieval to identify corresponding deals from partner feeds and/or other remote deal sources. The deal mail may be aligned with structured web crawling results, such as by the landing URL (uniform resource locator). For missing attributes, such as the category attribute, techniques such as SVM with tf-idf may be used to determine the missing attributes.

When a user requests the deal newsletter, structured information from the deals in the deal emails of the user may be retrieved (for a predetermined prior time period), and a rule-based aggregation technique may be used to unify the structured information from the deal emails, partner feeds, web crawling results, and/or other deal sources. The deals may optionally be ranked based on inferred deal quality, business logic, user preferences and/or other techniques to ensure a balance between user experience and monetization capability.

Compared to other email traffic monetization techniques, such as graphic advertisements or keyword based text advertisements, embodiments provide advantages in that traffic can be captured with real commercial intent. The correct product may be promoted under the proper context, because when a user visits a deal summary page, he/she has the intention to explore deals. With observed behaviors of the user, detailed intention or preferences may be inferred and served as important signals for more accurate targeting.

Furthermore, by automatically organizing commercial mails, the user experience is improved by reducing unnecessary interference from the deal emails. An email service provider may find a better way to monetize the traffic using embodiments, and users may also be benefited. The deal provider may obtain a larger audience if it becomes a partner of the email service provider. This provides a win-win-win solution for the deal email consumer, the email service provider, and also the deal provider.

Conventional email managing tools can aid users in organizing deal newsletter into folders, or adding labels. However, such tools lack the structural understanding of email content, and therefore cannot summarize and provide additional information for the content of mail.

By extracting deal content from email, and aligning the deal content with other data sources, deals can be recognized in email. As such, the deals may be summarized in a structural way, allowing deals to be filtered by fields/attributes such as price, discount, etc. Additional information not included in an original deal email may be added to the deal email, and/or the information in the original deal email may be updated with enhancement information. Deals may be ranked by user preferences (e.g., the user's location, other user demographics, etc.), and the user may be provided with recommendations for similar deals.

III. Example Computer Implementations

Commercial offer presentation system108, deal manager112, deal newsletter generator114, user database116, commercial offer presentation system300, deal source interface302, additional deal database304, deal aligner306, web crawler308, deal categorizer310, editorial tool312, logger318, deal ranker320, deal enhancer322, image retargeter324, deal newsletter generator800, deal summary page generator802, map page generator804, mail page generator806, deal search interface page generator808, flowchart200, step402, flowchart600, step702, flowchart900, and/or any further systems, sub-systems, and/or components disclosed herein may be implemented in hardware, in any combination of hardware with software and/or firmware, and in software/firmware stored in a computer readable storage medium. For example, commercial offer presentation system108, deal manager112, deal newsletter generator114, user database116, commercial offer presentation system300, deal source interface302, additional deal database304, deal aligner306, web crawler308, deal categorizer310, editorial tool312, logger318, deal ranker320, deal enhancer322, image retargeter324, deal newsletter generator800, deal summary page generator802, map page generator804, mail page generator806, deal search interface page generator808, flowchart200, step402, flowchart600, step702, and/or flowchart900may be implemented as computer program code configured to be executed in one or more processors. Alternatively, commercial offer presentation system108, deal manager112, deal newsletter generator114, user database116, commercial offer presentation system300, deal source interface302, additional deal database304, deal aligner306, web crawler308, deal categorizer310, editorial tool312, logger318, deal ranker320, deal enhancer322, image retargeter324, deal newsletter generator800, deal summary page generator802, map page generator804, mail page generator806, deal search interface page generator808, flowchart200, step402, flowchart600, step702, and/or flowchart900may be implemented as hardware logic/electrical circuitry.

As described above, commercial offer presentation system108, deal manager112, mail server110, commercial offer presentation system300, editorial tool312, deal newsletter generator114, deal newsletter generator800, deal summary page generator802, map page generator804, mail page generator806, and deal search interface page generator808may generate one or more user interfaces. Such user interfaces may enable user input to be provided from one or more of any type of user interface elements provided by a computing device, including a keyboard, a thumb wheel, a pointing device, a roller ball, a stick pointer, a touch sensitive display, any number of virtual interface elements, a voice recognition system, etc. Graphical user interfaces (GUI) may be displayed in a display of the computing device, such as in a browser window generated by a web browser, an application window, or in other window type mentioned elsewhere herein or otherwise known.

The embodiments described herein, including systems, methods/processes, and/or apparatuses, may be implemented using well known servers/computers, such as a computer1400shown inFIG. 14. For example, server(s)102, user device104, mail server110, front end server(s)314, back end server(s)316, and any of the sub-systems or components contained therein may be implemented using one or more computers1400.

Computer1400can be any commercially available and well known computer capable of performing the functions described herein, such as computers available from International Business Machines, Apple, Sun, HP, Dell, Cray, etc. Computer1400may be any type of computer, including a desktop computer, a server, etc.

Computer1400includes one or more processors (also called central processing units, or CPUs), such as a processor1404. Processor1404is connected to a communication infrastructure1402, such as a communication bus. In some embodiments, processor1404can simultaneously operate multiple computing threads.

Computer1400also includes a primary or main memory1406, such as random access memory (RAM). Main memory1406has stored therein control logic1428A (computer code or instructions), and data.

Computer1400also includes one or more secondary storage devices1410. Secondary storage devices1410include, for example, a hard disk drive1412and/or a removable storage device or drive1414, as well as other types of storage devices, such as memory cards and memory sticks. For instance, computer1400may include an industry standard interface, such a universal serial bus (USB) interface for interfacing with devices such as a memory stick. Removable storage drive1414represents a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup, etc.

Removable storage drive1414interacts with a removable storage unit1416. Removable storage unit1416includes a computer useable or readable storage medium1424having stored therein computer logic1428B (computer instructions or code) and/or data. Removable storage unit1416represents a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, or any other computer data storage device. Removable storage drive1414reads from and/or writes to removable storage unit1416in a well-known manner.

Computer1400further includes a communication or network interface1418. Communication interface1418enables computer1400to communicate with remote devices. For example, communication interface1418allows computer1400to communicate over communication networks or mediums1442(representing a form of a computer useable or readable medium), such as LANs, WANs, the Internet, etc. Network interface1418may interface with remote sites or networks via wired or wireless connections.

Control logic1428C may be transmitted to and from computer1400via the communication medium1442.

Any apparatus or manufacture comprising a computer useable or readable medium (e.g., a computer-readable storage or recording medium) having control logic (computer instructions or code) stored therein is referred to herein as a computer program product or program storage device. This includes, but is not limited to, computer1400, main memory1406, secondary storage devices1410, and removable storage unit1416. Such computer program products, having control logic stored therein that, when executed by one or more data processing devices, cause such data processing devices to operate as described herein, represent embodiments of the invention.

Devices in which embodiments may be implemented may include storage, such as storage drives, memory devices, and further types of computer-readable media. Examples of such computer-readable storage media (computer-readable recording media) include a hard disk, a removable magnetic disk, a removable optical disk, flash memory cards, digital video disks, random access memories (RAMs), read only memories (ROM), and the like. As used herein, the terms “computer program medium” and “computer-readable medium” are used to generally refer to the hard disk associated with a hard disk drive, a removable magnetic disk, a removable optical disk (e.g., CDROMs, DVDs, etc.), zip disks, tapes, magnetic storage devices, MEMS (micro-electromechanical systems) storage, nanotechnology-based storage devices, as well as other media such as flash memory cards, digital video discs, RAM devices, ROM devices, and the like. Such computer-readable storage media may store program modules that include computer program logic for implementing commercial offer presentation system108, deal manager112, deal newsletter generator114, user database116, commercial offer presentation system300, deal source interface302, additional deal database304, deal aligner306, web crawler308, deal categorizer310, editorial tool312, logger318, deal ranker320, deal enhancer322, image retargeter324, deal newsletter generator800, deal summary page generator802, map page generator804, mail page generator806, deal search interface page generator808, flowchart200, step402, flowchart600, step702, and/or flowchart900(including any step of flowcharts200,600, and900), and/or further embodiments described herein. Embodiments of the invention are directed to computer program products comprising such logic (e.g., in the form of program code or instructions) stored on any computer useable medium. Such program code, when executed in one or more processors, causes a device to operate as described herein.

Note that such computer-readable storage media are distinguished from and non-overlapping with communication media (do not include communication media). Communication media typically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wireless media such as acoustic, RF, infrared and other wireless media. Embodiments are also directed to such communication media.

The invention can work with hardware, combinations of hardware with software/firmware, and/or operating system implementations other than those described herein. Any such implementations suitable for performing the functions described herein can be used.