Identifying a webpage from which an E-mail address is obtained

Detecting an e-mail client generating a first e-mail identifying as a recipient e-mail address an e-mail address identified in the webpage. A screen shot of the webpage can be captured. An association can be automatically created between the screen shot of the webpage and the first e-mail, and the screen shot of the webpage is stored. The first e-mail is sent to the recipient e-mail address. Responsive to receiving or opening the first e-mail or a second e-mail related to the first e-mail, the screen shot of the webpage can be automatically retrieved and presented.

BACKGROUND

The embodiments disclosed within this specification relate to the use of electronic mail (e-mail).

The use of e-mail has become an important means of communication in recent decades. E-mail is used to digitally communicate a message from a sender to one or more recipients. Modern modes of e-mail communication operate across the Internet and/or other communication networks. Today's e-mail systems typically are based on a store-and-forward model. With this model, e-mail servers accept, forward, deliver and store e-mail messages. E-mail clients typically are used to generate and send outgoing emails, and to receive and view incoming e-mails. E-mail clients may be resident on a local processing system, such as a computer, smart phone, or the like, or resident on a server accessed by a processing system.

BRIEF SUMMARY

One or more embodiments disclosed within this specification relate to identifying a webpage from which an e-mail address is obtained.

An embodiment can include detecting an e-mail client generating a first e-mail identifying as a recipient e-mail address an e-mail address identified in the webpage. A screen shot of the webpage can be captured. An association can be automatically created between the screen shot of the webpage and the first e-mail, and the screen shot of the webpage is stored. The first e-mail is sent to the recipient e-mail address. Responsive to receiving or opening the first e-mail or a second e-mail related to the first e-mail, the screen shot of the webpage can be automatically retrieved and presented.

Another embodiment can include a system comprising a processor configured to initiate executable operations. The processor can be configured to detect an e-mail client generating a first e-mail identifying as a recipient e-mail address an e-mail address identified in a webpage. The processor can capture a screen shot of the webpage. The processor can automatically create an association between the screen shot of the webpage and the first e-mail, and can store the screen shot of the webpage. The processor can send the first e-mail to the recipient e-mail address. Responsive to receiving or opening the first e-mail or a second e-mail related to the first e-mail, the processor can automatically retrieve and present the screen shot of the webpage.

Another embodiment can include a computer program product for identifying a webpage from which an e-mail address is obtained. The computer program product can include a computer-readable storage medium having stored thereon program code that, when executed, configures a processor to perform operations including detecting an e-mail client generating a first e-mail identifying as a recipient e-mail address an e-mail address identified in the webpage. A screen shot of the webpage can be captured. An association can be automatically created between the screen shot of the webpage and the first e-mail, and the screen shot of the webpage is stored. The first e-mail is sent to the recipient e-mail address. Responsive to receiving or opening the first e-mail or a second e-mail related to the first e-mail, the screen shot of the webpage can be automatically retrieved and presented

DETAILED DESCRIPTION

Arrangements described herein relate to identifying a webpage from which an e-mail address is obtained. More particularly, when a user initiates creation of an e-mail addressed to a recipient e-mail address identified in the webpage, a screen shot of the webpage is automatically captured. An association between the screen shot and the e-mail is automatically created, and the e-mail is sent to the recipient. When another e-mail responding to the first e-mail is retrieved or opened, the screen shot is automatically retrieved and presented to the user. Thus, when the user retrieves or opens the subsequent e-mail, the user will be informed of the information contained on the webpage at the time the first e-mail was created. Accordingly, any uncertainty as to the content of the webpage, and hence the subject of the e-mail, can be mitigated.

As used within this specification and the claims that follow, the term “e-mail” means “electronic mail,” as is commonly used by those skilled in the art. In this regard, an e-mail is an electronic transmission of a letter, message or memo through a communication network. An e-mail also may include attachments or other information, such as metadata, uniform resource identifiers (URIs) (e.g., uniform resource locators (URLs)), or the like.

As used herein, the term “screen shot” means a digital image or file containing all or part of what is seen on a display of a processing system. In illustration, a screen shot can contain information presented by a particular application on a display, or can contain all information presented on the display. The digital image or file may be formatted in accordance with any suitable digital image format. For example, the digital image or file may be formatted in portable document format (PDF), tagged image format (TIFF), joint photo experts group (JPEG) format, bitmap format, or any other format suitable for storing a digital image or file.

FIG. 1is a block diagram illustrating a system100for identifying a webpage from which an e-mail address is obtained in accordance with one embodiment disclosed within this specification. The system100can include at least one processor105coupled to memory elements110through a system bus115or other suitable circuitry. As such, the system100can store program code within the memory elements110. The processor105can execute the program code accessed from the memory elements110via the system bus115. In one aspect, for example, the system100can be implemented as a computer that is suitable for storing and/or executing program code. It should be appreciated, however, that the system100can be implemented in the form of any system including a processor and memory that is capable of performing the functions and/or operations described within this specification. For example, the system100can be implemented as a workstation, a server, a mobile computer, a laptop computer, a tablet computer, a smart phone, a personal digital assistant, or the like.

The memory elements110can include one or more physical memory devices such as, for example, local memory120and one or more bulk storage devices125. Local memory120refers to RAM or other non-persistent memory device(s) generally used during actual execution of the program code. The bulk storage device(s)125can be implemented as a hard disk drive (HDD), solid state drive (SSD), or other persistent data storage device. The system100also can include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from the bulk storage device125during execution.

Input/output (I/O) devices such as a keyboard130, a display135, and a pointing device140optionally can be coupled to the system100. The I/O devices can be coupled to the system100either directly or through intervening I/O controllers. One or more network adapters145also can be coupled to the system100to enable the system100to become coupled to other systems, computer systems, remote printers, and/or remote storage devices through intervening private or public networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapters145that can be used with the system100.

As pictured inFIG. 1, the memory elements110can store a web browser150, an e-mail client155, and an e-mail-webpage binding application (hereinafter “binding application”)160. Being implemented in the form of executable program code, the web browser150, e-mail client155and binding application160can be executed by the system100(e.g., via the processor105) and, as such, can be considered part of the system100.

In one aspect, the web browser150, e-mail client155, and/or binding application160, rather than being stored in the memory elements110, can be stored remote to the memory elements110, for example on a server or peripheral device, to which the system100is communicatively linked. In illustration, the e-mail client155can be provided to the system100via the web browser150. Nonetheless, in accordance with the arrangements described herein, even if executed by a processor of a different system, the web browser150, e-mail client155, and binding application160still may be considered to be a components of the system100when the system100accesses such components from another system. In this regard, one or more other systems communicatively linked to the processor105via the system bus115and/or the network adapter145can be considered to be components of the system100when such systems are accessed by the processor105executing suitable program code.

In one arrangement, the binding application160can be a stand-alone application that interfaces with the web browser150and the e-mail client155. In another arrangement, the binding application160can be a component of the e-mail client155(e.g., as a native function or plug-in) and configured to interface with the web browser150. In yet another arrangement, the binding application160can be a component of the web browser150(e.g., as a native function or plug-in) and configured to interface with the e-mail client155. Still, in another arrangement the binding application160can be a component a processing system or another application executed on the system100via the processor105.

In operation, a user of the system100can navigate the web browser150to a particular webpage in order to access the webpage.FIG. 2depicts an example of a webpage200accessed by a user in accordance with one embodiment disclosed within this specification. The webpage200can provide an e-mail address210to which e-mails may be directed concerning products, services, or any other information to which the webpage200pertains.

In one arrangement, the e-mail address210can be a hyperlink that, when selected, initiates creation of an e-mail addressed to the e-mail address210. For example, when a user selects the e-mail address210, the system100can automatically invoke the e-mail client155to generate an e-mail identifying as a recipient e-mail address the e-mail address210.FIG. 3depicts an example of an e-mail300generated in accordance with one embodiment disclosed within this specification. By way of example, when the e-mail is generated, the system100can automatically populate a “To” field310with the e-mail address210. The system100also can automatically populate a “Subject” field320with a subject, such as the subject of the webpage200. The binding application160can detect when the e-mail client155generates the e-mail300identifying as a recipient e-mail address the e-mail address210identified in the webpage.

In another arrangement, the system100can invoke the e-mail client155to generate the e-mail300in response to user inputs received via the e-mail client155. For example, the user can select an icon, button or menu item in the e-mail client155to instruct the system100to create the e-mail300. In this arrangement, the user can populate the “To” field310and “Subject” field320using the keyboard130, display135(e.g., when the display135is a touchscreen) and/or the pointing device140, for example by typing, selecting or copying/pasting alphanumeric text. When the user enters the e-mail address210into the “To” field310, the binding application160can detect whether the entered e-mail address matches the e-mail address210presented by the webpage200. For example the binding application160can determine whether the entered e-mail address matches the e-mail address210while the webpage200is presented on the display135via the web browser150, while the web browser150presenting the webpage200is minimized (and thus not currently shown on the display135), or the entered e-mail address matches the e-mail address210of the webpage200if the webpage200recently was presented via the display135, but is no longer open in the web browser150. In this regard, the binding application160can maintain a history of webpages currently open, and previously accessed, by the web browser150, including content of such web pages.

Regardless of whether the e-mail address210is automatically populated into the “To” field310or populated by the user, when the system100detects that the e-mail300generated by the e-mail client155is addressed to the e-mail address210identified in the webpage200, the system100can automatically capture a screen shot of the webpage200. In illustration, the binding application160can interface with an operating system and/or another application executed on the system100to perform the screen capture.

In a further arrangement, rather than invoking the e-mail client155, the e-mail can be created using a form presented by the webpage200. In this regard, the system100can automatically capture a screen shot of the webpage200which depicts the e-mail created using the form, for example when the e-mail is sent. The binding application160can associate the screen shot with an indicator identifying the webpage200in a history of webpages currently open, and previously accessed, by the web browser150. One or more identifiers or data corresponding to form options and/or form content also can be associated with the screen shot. Further, the user can be prompted to enter comments relating to the e-mail and/or webpage200, and such comments can be associated with the screen shot. At any time the user can access the history of webpages to view sent e-mails originating from the webpage200, comments relating to the sent e-mails and/or the webpage200, form options and/or form content.

FIG. 4depicts an example of a screen shot400of the webpage200captured in accordance with one embodiment disclosed within this specification. In one non-limiting arrangement, the system100(e.g., via the binding application160) can append the screen shot400with additional information410, for example to indicate when the screen shot was created (e.g., captured), to indicate the URI (e.g., URL) of the webpage200, and so on. The screen shot400can be output to, and stored within, the memory elements110, or to memory elements (not shown) in another system to which the system100is communicatively linked, for example via the network adapter145, or any other suitable input/output device or port. The storage location can be determined by the binding application160. For example, the system100can store the screen shot400to a directory associated with the e-mail client155. The directory can be contained in the memory elements110, or on another system with which the system100is communicatively linked. In one arrangement, the directory can be contained in one or more storage devices in a cloud computing environment to which the system100is communicatively linked.

Further, the binding application160can automatically create an association between the screen shot400of the webpage200and the e-mail300. For example, the binding application160can associate metadata with the screen shot400that identifies the e-mail300, the binding application160can add metadata to the e-mail300that identifies the screen shot400, the binding application160can associate metadata with a retained copy of the e-mail300that identifies the screen shot400, the binding application160can store the screen shot400in a file or directory associated with the e-mail300, the binding application160can attach the screen shot400to a retained copy of the e-mail300, the binding application160can store information associating the screen shot400with the e-mail300into a data table, or the like.

In the case that the binding application160adds metadata to the e-mail300, or to a retained copy of the e-mail300, that identifies the screen shot400, the metadata can be added to a header of the e-mail300, a body of the e-mail300, a footer of the e-mail300, or to any other suitable portion of the e-mail300. The metadata need not be viewable to a user when the e-mail is presented in a conventional e-mail view, but nonetheless can be configured so as to be identifiable by the system100. Moreover, the metadata can be placed into the e-mail300in a suitable manner so that any reply to the e-mail300, or forwarding of the e-mail300, also will include the metadata. In another arrangement, to create the association between the screen shot400of the webpage200and the e-mail300, the binding application160can add to the e-mail300a URI (e.g. URL) corresponding to the webpage200. For example, in an arrangement in which the screen shot400is stored on another system or in a cloud computing environment, the metadata can include a URI that identifies the storage location and screen shot400.

Via the e-mail client155, the system100can send the e-mail300(hereinafter referred to as the “first e-mail”), to the recipient e-mail address210identified in the “To” field310.

At some time, the e-mail client155can receive a second e-mail related to the first e-mail300. For example, such e-mail can be a response to an initial copy of the first e-mail300, or a response to a copy of the first e-mail300that has been forwarded. Responsive to the e-mail client155receiving or opening the second e-mail, the system100can automatically retrieve and present to the user the screen shot400of the webpage200. Further, the system100also can automatically retrieve and present to the user the screen shot400of the webpage200in response to the e-mail client155receiving or opening the first e-mail. Thus, when the user later views the first e-mail or a second related e-mail, the screen shot400of the webpage200can be presented to the user. The screen shot400can be presented as a popup window, as a sidebar window presented in the e-mail client155, as a popup balloon, or presented in any other suitable manner. Thus, a user receiving the second e-mail will be informed of the information contained in the webpage200at the time the first e-mail300was created.

The system100can determine whether the second e-mail is related to the first e-mail300in any of a number of ways. For example, when the second e-mail is received or opened, the binding application160can determine whether the e-mail address of the sender of the second e-mail corresponds to the e-mail address of the recipient of the first e-mail300. If so, the binding application160can determine that the second e-mail is related to the first e-mail300.

In another example, when the second e-mail is received or opened, the binding application160can compare information contained in a subject field of the second e-mail to information contained in the “Subject” field320of the first e-mail300. Responsive to determining that the information contained in the subject field of the second e-mail corresponds to the information contained in the “Subject” field320of the first e-mail300, the binding application160can determine that the second e-mail is related to the first e-mail300.

In another example, when the second e-mail is received or opened, the binding application160can compare information contained in a body of the second e-mail to information contained in the body330of the first e-mail300. Responsive to determining that the information contained in the body of the second e-mail corresponds to the information contained in the body330of the first e-mail300, the binding application160can determine that the second e-mail is related to the first e-mail300.

In a further example, when the second e-mail is received or opened, the binding application160can identify a URI (e.g., URL) and/or metadata contained in the second e-mail and determine whether the URI and/or metadata corresponds to the URI and/or metadata contained in the first e-mail300. Responsive to determining that the URI and/or metadata contained in the second e-mail corresponds to the URI and/or metadata contained in the first e-mail300, the binding application160can determine that the second e-mail is related to the first e-mail300.

In another example, the recipient e-mail address210can be a first e-mail address corresponding to a particular entity, and the second e-mail can identify as a sender e-mail address for the second e-mail a second e-mail address corresponding to the particular entity. In illustration, the e-mail address of the sender of the second e-mail may not precisely match the e-mail address210, but may share a common domain (e.g., the first e-mail is sent to sales@wehavefunstuff.com and second e-mail is received from Susan@ wehavefunstuff.com). The binding application160can identify the e-mail address210, and determine that the second e-mail is received from an e-mail address having the same domain to which the first e-mail300was sent. Based on this association, the binding application160can determine that the second e-mail is related to the first e-mail300.

FIG. 5is a flow chart illustrating a method500of identifying a webpage from which an e-mail address is obtained in accordance with another embodiment disclosed within this specification. At step502, a web page comprising an e-mail address can be presented to a user. At step504, the process of an e-mail client generating a first e-mail can be detected, the first e-mail identifying as a recipient e-mail address the e-mail address obtained from the webpage. At step506, a screen shot of the webpage can be captured. At step508, an association between the screen shot of the webpage and the first e-mail can be automatically created. The screen shot of the webpage can be stored. At step510, the first e-mail can be sent to the recipient e-mail address.

At step512, responsive to receiving or opening the first e-mail or a second e-mail related to the first e-mail, the screen shot of the webpage can be automatically retrieved and the screen shot can be presented. In illustration, the screen shot can be presented to the user receiving or opening the second e-mail.