US20050165717A1 - Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server - Google Patents
Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server Download PDFInfo
- Publication number
- US20050165717A1 US20050165717A1 US10/763,081 US76308104A US2005165717A1 US 20050165717 A1 US20050165717 A1 US 20050165717A1 US 76308104 A US76308104 A US 76308104A US 2005165717 A1 US2005165717 A1 US 2005165717A1
- Authority
- US
- United States
- Prior art keywords
- file
- receipt
- length
- communication program
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
Definitions
- the present invention relates in general to data processing and in particular to improving efficiency of file receipts in a communication program. Still more particularly, the present invention relates to a system, method and computer program product for improving efficiency of a file receipt in a communication program by redirecting a file received as the result of a file request to a mail server.
- the user of information can perform complex queries through remote search engines, while sitting thousands of miles from a place where records are physically stored. After the results of these queries are completed, digital copies can then be sent to the user of information almost instantaneously. The user of information can then select which records need to be reproduced, and the entire process can be undertaken without ever having to leave the user's desk to visit a dusty file room.
- the present invention recognizes that, to conserve user time and/or to reduce a user's annoyance, a method, system and computer program product for improving efficiency of a file receipt in a communications program is needed.
- a method, system and computer program product for improving efficiency of a file receipt in a communication program by redirecting a file received as the result of a file request to a mail server is disclosed.
- a communication program sends a request for a first file to a file server.
- the communication program then waits a length of time to receive that first file. If the set length of time for waiting for the first file expires before the first file is received, the user interface of the communications program is released to request additional files while a background process waits for the first file. Then, once the background process receives the first file, the background process encapsulates the first file in a message and transmits the message to a target address.
- a preferred embodiment includes detecting whether a user prefers to continue waiting for receipt of the file or to redirect the file received as the result of the request. Additionally, the length of time on which the communications program will wait can be configurably fixed. Further, one or more designated email addresses can be designated as the target address for the message transmission.
- the present invention can be embodied on a variety of communication program platforms including a hypertext browser, and the first file that is received can be a file of any of the several available markup languages, or a plain text file.
- FIG. 1 illustrates a data processing system in a network environment, in which a preferred embodiment of the method, system and computer program product for improving efficiency of file receipt are implemented;
- FIG. 2A depicts a graphical user interface for ascertaining user preferences in accordance with a preferred embodiment of the present invention
- FIG. 2B depicts a graphical user interface for communicating information to a user in accordance with a preferred embodiment of the present invention.
- FIG. 3 is a high-level logical flowchart of a process for improving efficiency of file receipt in a communication program by redirecting a hypertext transfer protocol (HTTP) query to a simple mail transfer protocol (SMTP) server.
- HTTP hypertext transfer protocol
- SMTP simple mail transfer protocol
- the illustrated network environment includes a local or wide area network 100 , such as the Internet or another packetized digital network.
- a client data processing system 102 e.g., a simple mail transfer protocol (SMTP) and Post Office Protocol 3 (POP3) or Internet Message Access Protocol (IMAP) server
- a file server 106 e.g., a hypertext transfer protocol (HTTP) server
- HTTP hypertext transfer protocol
- Mail server 104 performs functions related to the sending and receiving of electronic mail messages.
- File server 106 retrieves and delivers files across network 100 .
- Mail server 104 and file server 106 may both be implemented with conventional or later developed hardware or software.
- Client data processing system 102 includes a processing resource 108 for performing data processing functions and a storage unit 110 for storing items of data or instructions for use by processing resource 108 .
- Storage unit 110 may be implemented as a Random Access Memory (RAM) or as another form of storage, such as a dynamic access storage device.
- storage unit 110 stores operating system (OS) 116 , application program interface (API) 118 , browser 120 , mail client 122 , and optionally other applications 124 .
- Storage unit 110 also stores browser settings 112 and mail settings 114 .
- Client data processing system 102 also includes a display device 126 and an input device 128 , such as a keyboard or mouse.
- OS operating system
- API application program interface
- Client data processing system 102 also includes a display device 126 and an input device 128 , such as a keyboard or mouse.
- the present invention improves efficiency of file receipt in a communication program, such as browser 120 , by redirecting to a mail server a file received as the result of a file request. This is accomplished through the use of several messages, which are sent and received by client data processing system 102 .
- client data processing system 102 transmits a file request 130 , which originates from browser 120 and is delivered to file server 106 via network 100 by application program interface 118 and operating system 116 on client data processing system 102 .
- File request 130 will typically be an HTTP get request, such as a query to a web server's search engine.
- file server 106 transmits a response 132 to client data processing system 102 via network 100 .
- Response 132 will typically contain one or more files responsive to the get request of file request 130 , and these files can include a web page, a hit list, an image, an install file, an applet, or some other file fitting the request.
- Response 132 is received by browser 120 from application program interface 118 and operating system 116 .
- Client data processing system 102 transmits an outgoing mail message 134 , which contains files received by browser 120 in response 132 to mail server 104 .
- Outgoing mail message 134 originates from browser 120 and is delivered to network 100 by application program interface 118 and operating system 116 on client data processing system 102 .
- the files of interest are thus buffered at mail server 104 until mail client 122 requests the files of interest through a mail request 136 .
- browser 120 could contain a unit of data processing instructions for sending response 132 to mail client 122 , which could then send an outgoing mail message to mail server 104 .
- browser 120 could contain a unit of data processing instructions for sending response 132 to mail client 122 , which could result in mail client 122 creating a simulated incoming message in the inbox of mail client 122 .
- client data processing system 102 transmits a mail request 136 , which originates from mail client 122 and is delivered to network 100 by application program interface 118 and operating system 116 on client data processing system 102 , to mail server 104 .
- Mail server 104 responds to mail request 136 by transmitting an inbound mail message 138 from mail server 104 to mail client 122 on data processing system 102 by way of application program interface 118 and operating system 116 on client data processing system 102 .
- Inbound mail message 138 contains files received by browser 120 as part of response 132 and sent by browser 120 as part of outgoing mail message 134 .
- the preferred embodiment of the present invention provides a method, system, and computer program product for freeing browser 120 resources by redirecting response 132 , which was originally sent to browser 120 in response to file request 130 , to mail server 104 as part of outgoing mail message 134 .
- Client data processing system 102 can then retrieve response 132 from mail server 104 by sending mail request 136 to mail server 104 and receiving inbound mail message 138 .
- After browser 120 sends outgoing mail message 134 to mail server 104 resources belonging to browser 120 can be freed for additional file requests and receipts.
- GUI 200 graphical user interface
- Information on user preferences, received through the use of user preferences GUI 200 is stored in browser settings 112 of storage unit 110 on data processing system 102 .
- user preferences GUI 200 contains an activation query box 204 .
- Activation query box 204 prompts the user to indicate whether the user wishes to configure browser 120 to redirect high-latency responses, sent in response to file requests by browser 120 , to mail server 104 .
- the user is asked whether the user desires to “Use reroute function from HTTP to SMTP?”
- HTTP hypertext transfer protocol
- SMTP simple mail transfer protocol
- Other embodiments may implement this rerouting by using other servers and protocols.
- timeout query box 210 allows the user to indicate the timeout length, which specifies how long browser 120 will wait to receive response 132 before presenting user prompt GUI 202 of FIG. 2B .
- Timeout query box 210 provides a numerical input field 212 and a unit input field 214 .
- Numerical input field 212 is utilized to set the number of units of time that browser 120 will wait to receive response 132 before presenting user prompt GUI 202 .
- Units field 214 gives the unit of time to be associated with numerical input field 212 .
- browser 120 may vary the timeout length specified in timeout query box 210 in response to a task priority of browser 120 . That is, where a browser window is not selected as the foreground task running on data processing system 102 , browser 120 may lengthen or shorten a timeout length.
- Input email query box 216 permits the user to input an email address, to which browser 120 may selectably redirect response 132 .
- Input email query box 216 provides an email field 218 and an add button 220 .
- the email address listed in email field 218 is presented within current addresses list box 222 .
- Current addresses list box 222 contains a listing of email addresses to which a response may be sent, as well as means for deleting addresses from current addresses list box 222 .
- current addresses list box 222 contains a first address 224 accompanied by a delete button 226 .
- Current addresses list box 222 also contains a second address 228 accompanied by a second delete button 230 .
- first delete button 226 or second delete button 230 deletes the associated one of first address 224 and second address 228 from current addresses list box 222 .
- Current addresses list box 222 will expand or contract according to the number of targeted email addresses added to current email addresses list box 222 through the use of input email query box 216 .
- FIG. 2B depicts an exemplary user prompt GUI 202 displayed by browser 120 to a user to indicate whether the user desires to re-route a response to a particular file request to a mail server.
- User prompt GUI 202 contains a prompt/query message 232 that is displayed to inform the user that the timeout period specified in timeout query blank 210 has expired and to query whether the user desires to forward response 132 to one of the email addresses listed in current addresses list box 222 .
- user prompt GUI 202 contains a first radio button 234 for selecting first email address 236 and a second radio button 238 for selecting second email address 240 as a target of a forwarded response. Additionally, permission to proceed with forwarding is indicated by actuation of ‘yes’ button 244 . A lack of permission is indicated by actuation of ‘no’ button 246 , and a desired additional delay is indicated by actuation of ‘ask again’ button 248 .
- FIG. 3 there is depicted a high-level logical flowchart of a process for improving the efficiency of file receipt in a communication program by redirecting a response to a HTTP query to a SMTP server.
- the process begins at step 300 , which depicts activation of browser 120 of client data processing system 102 .
- the process then proceeds to step 302 , which illustrates browser 120 transmitting file request 130 to file server 106 across network 100 .
- File request 130 will typically be an HTTP get request, such as a query to a web server's search engine or a request for a particular web page associated with a specified URL.
- the process next moves to step 304 , which depicts browser 120 on client data processing system 102 detecting whether an option to forward response 132 to mail server 104 has been activated through user preferences GUI 200 .
- step 306 depicts client data processing system 102 waiting for and receiving response 132 .
- step 308 depicts data processing system 102 displaying response 132 or a portion thereof on display device 126 .
- Displaying response 132 on display device 126 will typically mean that browser 120 translates an HTML file for presentation on display device 126 , though displaying response 132 on display device 126 could easily include other operations, including, for example, the execution of a program executable delivered over the web.
- step 324 depicts data processing system 102 waiting for the user or another stimulus to initiate a next operation.
- step 310 depicts data processing system 102 waiting during a period, called a user increment, for receipt of response 132 .
- the user increment is a length of time, separate from and generally shorter than, but potentially identical to the amount of time provided in response to timeout query 210 .
- Browser 120 may temporarily and dynamically adjust the user increment in response to a task priority of browser 120 . That is, where a browser window is not selected as the foreground task running on data processing system 102 , browser 120 may lengthen or shorten a user increment.
- step 312 depicts browser 120 detecting whether browser 120 has received response 132 from file server 106 over network 100 .
- step 312 browser 120 detects that response 132 has been delivered to data processing system 102 , then the process next proceeds to step 308 , and the process proceeds as previously described with respect to step 308 and step 324 .
- step 312 browser 120 detects that response 132 has not been received, then the process next proceeds to step 314 , which depicts browser 120 determining whether the interval specified in response to timeout query 210 has expired. If the interval specified in response to timeout query 210 has not expired, then the process next proceeds to step 310 , which depicts data processing system 102 waiting during a period, called a user increment, for receipt of response 132 as previously detailed.
- step 314 browser 120 determines that the interval specified in response to timeout query 210 has expired, then the process next proceeds to step 316 , which depicts browser 120 prompting the user to select a preconfigured email account for delivery through presentation of a prompt, such as user prompt GUI 202 , on display device 126 .
- a prompt such as user prompt GUI 202
- display device 126 presents user prompt GUI 202
- the user is presented with three options, as described with respect to FIG. 2B .
- the process then proceeds to step 306 , which depicts client data processing system 102 waiting for and receiving response 132 .
- step 308 depicts data processing system 102 displaying response 132 on display device 126 , as described above. If the user indicates a desire to defer a decision to redirect a response by actuation of ‘ask again’ button 248 , the process next moves to step 310 , which depicts data processing system 102 waiting during a period, called a user increment, for receipt of response 132 , as described above.
- the process depicted in FIG. 3 bifurcates, representing the execution of two separate threads.
- the first thread begins at step 318 , which depicts browser 120 freeing the graphical user interface on display device 126 for continued file retrieval.
- browser 120 presents a release notice over display device 126 or another notification. This release notification informs the user that a background process will receive response 132 , and that the user is being returned to normal web surfing without the need to open a new browser window and manually poll for the receipt of response 132 .
- the browsing experience is substantially enhanced as the user can now turn attention to other matters while the background process waits for the file.
- Step 319 depicts browser 120 waiting a delivery increment. After waiting a delivery increment, the process next proceeds to step 317 , which depicts browser 120 on client data processing system 102 detecting whether response 132 has been delivered to browser 120 .
- step 317 If response 132 has not been delivered to browser 120 , then browser 120 again proceeds back to step 319 to wait for the expiration of another delivery increment. If, in step 317 , browser 120 detects receipt of response 132 from file server 106 , then the process next moves to step 320 , which depicts browser 120 creating outgoing mail message 134 and inserting response 132 into outgoing mail message 134 .
- Response 132 can be inserted into outgoing mail message 134 by a variety of methods, including without limitation encapsulating an HTML file into the text of the message and attaching an HTML file, supporting files, executables, or a JPG representation of an HTML file to outgoing mail message 134 .
- step 322 which illustrates browser 120 sending outgoing mail message 134 to mail server 104 .
- step 324 data processing system 102 awaits a next operation.
- step 322 the background process of steps 319 , 317 , 320 and 322 completes and terminates after sending outgoing mail message 134 , though termination may not be readily discernable to the user because no new window was opened for the background process.
- the present invention provides an improved user experience in web browsing or other file viewing and retrieval activities by enabling the user to continue normal file viewing and retrieval while a background process waits to receive high-latency files and forward such files to a mail server. The user can then, at his leisure, query an email server with an email client to retrieve delayed files. Delivery to an email server in this manner also facilitates storage and portability of requested files.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
A method, system and computer program product for improving efficiency of file receipt in a communication program by redirecting a file received as the result of a file request to a mail server is disclosed. A communication program sends a request for a first file to a file server. The communication program then waits a length of time to receive that first file. If the set length of time for waiting for the first file expires before the first file is received, the user interface of the communications program is released to request additional files while a background process waits for the first file. Then, once the background process receives the first file, the background process encapsulates the first file in a message and transmits the message to a target address.
Description
- 1. Technical Field
- The present invention relates in general to data processing and in particular to improving efficiency of file receipts in a communication program. Still more particularly, the present invention relates to a system, method and computer program product for improving efficiency of a file receipt in a communication program by redirecting a file received as the result of a file request to a mail server.
- 2. Description of the Related Art
- The advent of widely distributed, interoperable, packetized data processing networks has transformed many aspects of commerce and information distribution. At the point of sale, this revolution has allowed transactions to be conducted instantaneously, at any time of the day or night, by persons separated by thousands of miles. Similarly, the marketplace of ideas has been revolutionized.
- From the flash distribution of an announcement such as a press release, to the archival storage and querying of millions of pages on electronic data storage systems, users have become accustomed to receiving in seconds data that previously took days or weeks to reach the user. Prior methods of information storage and retrieval involved cumbersome manual search processes through multi-volume index references, travel to distant places where written records could be stored in bulk, and hours and hours of time invested in the reproduction of paper copies.
- Now, through the advent of the Internet, and in particular the World Wide Web, the user of information can perform complex queries through remote search engines, while sitting thousands of miles from a place where records are physically stored. After the results of these queries are completed, digital copies can then be sent to the user of information almost instantaneously. The user of information can then select which records need to be reproduced, and the entire process can be undertaken without ever having to leave the user's desk to visit a dusty file room.
- For all of the convenience and power in record retrieval from massive databases, problems exist in the use of particularly large bodies of information. One problem inherent in complex queries of large databases is the amount of time required to process queries and sort through the records represented in a database to obtain results. With particularly large databases, many of which may involve millions of records, each record containing scores of pages of information and diagrams, a query of the database can, depending on network traffic and allocation of resources, take anything from several minutes to more than half of an hour.
- In an age when information is expected instantaneously, these wait times prove to be a great source of frustration, delay, and cost to the users of information. The problem posed by waiting time during the execution of complex online queries represents one of the single greatest and most costly annoyances in the retrieval of electronic records. Currently, alternatives to waiting are extremely limited. If a user wants to pursue other surfing, the user is forced to open a new browser window for the new surfing task and repeatedly check the old window to see if a response to a query has arrived.
- The present invention recognizes that, to conserve user time and/or to reduce a user's annoyance, a method, system and computer program product for improving efficiency of a file receipt in a communications program is needed.
- A method, system and computer program product for improving efficiency of a file receipt in a communication program by redirecting a file received as the result of a file request to a mail server is disclosed. A communication program sends a request for a first file to a file server. The communication program then waits a length of time to receive that first file. If the set length of time for waiting for the first file expires before the first file is received, the user interface of the communications program is released to request additional files while a background process waits for the first file. Then, once the background process receives the first file, the background process encapsulates the first file in a message and transmits the message to a target address.
- A preferred embodiment includes detecting whether a user prefers to continue waiting for receipt of the file or to redirect the file received as the result of the request. Additionally, the length of time on which the communications program will wait can be configurably fixed. Further, one or more designated email addresses can be designated as the target address for the message transmission.
- The present invention can be embodied on a variety of communication program platforms including a hypertext browser, and the first file that is received can be a file of any of the several available markup languages, or a plain text file.
- The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself however, as well as a preferred mode of use, further objects and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
-
FIG. 1 illustrates a data processing system in a network environment, in which a preferred embodiment of the method, system and computer program product for improving efficiency of file receipt are implemented; -
FIG. 2A depicts a graphical user interface for ascertaining user preferences in accordance with a preferred embodiment of the present invention; -
FIG. 2B depicts a graphical user interface for communicating information to a user in accordance with a preferred embodiment of the present invention; and -
FIG. 3 is a high-level logical flowchart of a process for improving efficiency of file receipt in a communication program by redirecting a hypertext transfer protocol (HTTP) query to a simple mail transfer protocol (SMTP) server. - With reference now to the figures and in particular with reference to
FIG. 1 , there is depicted an exemplary network environment, with which the present invention may be advantageously utilized. The illustrated network environment includes a local or wide area network 100, such as the Internet or another packetized digital network. A clientdata processing system 102, a mail server 104 (e.g., a simple mail transfer protocol (SMTP) and Post Office Protocol 3 (POP3) or Internet Message Access Protocol (IMAP) server), and a file server 106 (e.g., a hypertext transfer protocol (HTTP) server) are attached to network 100. -
Mail server 104 performs functions related to the sending and receiving of electronic mail messages.File server 106 retrieves and delivers files across network 100.Mail server 104 andfile server 106 may both be implemented with conventional or later developed hardware or software. - Client
data processing system 102 includes aprocessing resource 108 for performing data processing functions and astorage unit 110 for storing items of data or instructions for use byprocessing resource 108.Storage unit 110 may be implemented as a Random Access Memory (RAM) or as another form of storage, such as a dynamic access storage device. As illustrated,storage unit 110 stores operating system (OS) 116, application program interface (API) 118,browser 120,mail client 122, and optionallyother applications 124.Storage unit 110 also storesbrowser settings 112 andmail settings 114. Clientdata processing system 102 also includes adisplay device 126 and aninput device 128, such as a keyboard or mouse. As will become quickly apparent to one skilled in the art, although a preferred embodiment of the present invention is illustrated and described with respect tobrowser 120, the present invention can be implemented on a variety of file retrieval programs without departing from the scope of the present invention. - The present invention improves efficiency of file receipt in a communication program, such as
browser 120, by redirecting to a mail server a file received as the result of a file request. This is accomplished through the use of several messages, which are sent and received by clientdata processing system 102. As depicted inFIG. 1 , clientdata processing system 102 transmits afile request 130, which originates frombrowser 120 and is delivered tofile server 106 via network 100 byapplication program interface 118 andoperating system 116 on clientdata processing system 102.File request 130 will typically be an HTTP get request, such as a query to a web server's search engine. In response tofile request 130,file server 106 transmits aresponse 132 to clientdata processing system 102 via network 100.Response 132 will typically contain one or more files responsive to the get request offile request 130, and these files can include a web page, a hit list, an image, an install file, an applet, or some other file fitting the request.Response 132 is received bybrowser 120 fromapplication program interface 118 andoperating system 116. - Client
data processing system 102 transmits anoutgoing mail message 134, which contains files received bybrowser 120 inresponse 132 tomail server 104.Outgoing mail message 134 originates frombrowser 120 and is delivered to network 100 byapplication program interface 118 andoperating system 116 on clientdata processing system 102. The files of interest are thus buffered atmail server 104 untilmail client 122 requests the files of interest through amail request 136. - In an alternative embodiment of the present invention,
browser 120 could contain a unit of data processing instructions for sendingresponse 132 to mailclient 122, which could then send an outgoing mail message to mailserver 104. In another alternative embodiment of the present invention,browser 120 could contain a unit of data processing instructions for sendingresponse 132 to mailclient 122, which could result inmail client 122 creating a simulated incoming message in the inbox ofmail client 122. - Returning to the preferred embodiments, when the user desires to view the files, the user invokes
mail client 122, ifmail client 122 is not already activated. Responsive to a command to check mail, clientdata processing system 102 transmits amail request 136, which originates frommail client 122 and is delivered to network 100 byapplication program interface 118 andoperating system 116 on clientdata processing system 102, to mailserver 104.Mail server 104 responds to mailrequest 136 by transmitting aninbound mail message 138 frommail server 104 to mailclient 122 ondata processing system 102 by way ofapplication program interface 118 andoperating system 116 on clientdata processing system 102.Inbound mail message 138 contains files received bybrowser 120 as part ofresponse 132 and sent bybrowser 120 as part ofoutgoing mail message 134. - As is illustrated in a simplified form in
FIG. 1 , the preferred embodiment of the present invention provides a method, system, and computer program product for freeingbrowser 120 resources by redirectingresponse 132, which was originally sent tobrowser 120 in response to filerequest 130, to mailserver 104 as part ofoutgoing mail message 134. Clientdata processing system 102 can then retrieveresponse 132 frommail server 104 by sendingmail request 136 to mailserver 104 and receivinginbound mail message 138. Afterbrowser 120 sendsoutgoing mail message 134 to mailserver 104, resources belonging tobrowser 120 can be freed for additional file requests and receipts. - Referring now to
FIG. 2A , there is depicted a diagram presenting a user preferences graphical user interface (GUI) 200 ofbrowser 120 for ascertaining user preferences in accordance with a preferred embodiment of the present invention. Information on user preferences, received through the use ofuser preferences GUI 200 is stored inbrowser settings 112 ofstorage unit 110 ondata processing system 102. - As illustrated,
user preferences GUI 200 contains anactivation query box 204.Activation query box 204 prompts the user to indicate whether the user wishes to configurebrowser 120 to redirect high-latency responses, sent in response to file requests bybrowser 120, to mailserver 104. In the particular embodiment illustrated asactivation query box 104, the user is asked whether the user desires to “Use reroute function from HTTP to SMTP?” Thus, in one embodiment the user has the option of routing a hypertext transfer protocol (HTTP) response to a simple mail transfer protocol (SMTP) server. Other embodiments may implement this rerouting by using other servers and protocols. - The user responds to the query contained in
activation query box 204 by checking one of ‘yes’radio button 206 and ‘no’radio button 208. A second query box, timeout query box 210, allows the user to indicate the timeout length, which specifies howlong browser 120 will wait to receiveresponse 132 before presenting userprompt GUI 202 ofFIG. 2B . Timeout query box 210 provides a numerical input field 212 and aunit input field 214. Numerical input field 212 is utilized to set the number of units of time thatbrowser 120 will wait to receiveresponse 132 before presenting userprompt GUI 202. Units field 214 gives the unit of time to be associated with numerical input field 212. During operation ofbrowser 120,browser 120 may vary the timeout length specified in timeout query box 210 in response to a task priority ofbrowser 120. That is, where a browser window is not selected as the foreground task running ondata processing system 102,browser 120 may lengthen or shorten a timeout length. - Input email query box 216 permits the user to input an email address, to which
browser 120 may selectably redirectresponse 132. Input email query box 216 provides anemail field 218 and anadd button 220. When an email address is entered inemail field 218 and addbutton 220 is selected, the email address listed inemail field 218 is presented within current addresses list box 222. Current addresses list box 222 contains a listing of email addresses to which a response may be sent, as well as means for deleting addresses from current addresses list box 222. As illustrated inFIG. 2A , current addresses list box 222 contains a first address 224 accompanied by a delete button 226. Current addresses list box 222 also contains asecond address 228 accompanied by a second delete button 230. Selection of first delete button 226 or second delete button 230 deletes the associated one of first address 224 andsecond address 228 from current addresses list box 222. Current addresses list box 222 will expand or contract according to the number of targeted email addresses added to current email addresses list box 222 through the use of input email query box 216. -
FIG. 2B depicts an exemplary userprompt GUI 202 displayed bybrowser 120 to a user to indicate whether the user desires to re-route a response to a particular file request to a mail server. Userprompt GUI 202 contains a prompt/query message 232 that is displayed to inform the user that the timeout period specified in timeout query blank 210 has expired and to query whether the user desires toforward response 132 to one of the email addresses listed in current addresses list box 222. As illustrated inFIG. 2B , userprompt GUI 202 contains afirst radio button 234 for selecting first email address 236 and asecond radio button 238 for selecting second email address 240 as a target of a forwarded response. Additionally, permission to proceed with forwarding is indicated by actuation of ‘yes’ button 244. A lack of permission is indicated by actuation of ‘no’button 246, and a desired additional delay is indicated by actuation of ‘ask again’ button 248. - With reference now to
FIG. 3 , there is depicted a high-level logical flowchart of a process for improving the efficiency of file receipt in a communication program by redirecting a response to a HTTP query to a SMTP server. The process begins atstep 300, which depicts activation ofbrowser 120 of clientdata processing system 102. The process then proceeds to step 302, which illustratesbrowser 120 transmittingfile request 130 tofile server 106 across network 100.File request 130 will typically be an HTTP get request, such as a query to a web server's search engine or a request for a particular web page associated with a specified URL. The process next moves to step 304, which depictsbrowser 120 on clientdata processing system 102 detecting whether an option to forwardresponse 132 to mailserver 104 has been activated throughuser preferences GUI 200. - If the option to forward
response 132 fromfile server 106 to mailserver 104 has not been selected, the process then proceeds to step 306, which depicts clientdata processing system 102 waiting for and receivingresponse 132. Oncedata processing system 102 receivesresponse 132, the process next moves to step 308, which depictsdata processing system 102 displayingresponse 132 or a portion thereof ondisplay device 126. Displayingresponse 132 ondisplay device 126 will typically mean thatbrowser 120 translates an HTML file for presentation ondisplay device 126, though displayingresponse 132 ondisplay device 126 could easily include other operations, including, for example, the execution of a program executable delivered over the web. The process then proceeds to step 324, which depictsdata processing system 102 waiting for the user or another stimulus to initiate a next operation. - Returning to block 304, if the option to forward
response 132 to mailserver 104 is detected, the process next moves to step 310, which depictsdata processing system 102 waiting during a period, called a user increment, for receipt ofresponse 132. The user increment is a length of time, separate from and generally shorter than, but potentially identical to the amount of time provided in response to timeout query 210.Browser 120 may temporarily and dynamically adjust the user increment in response to a task priority ofbrowser 120. That is, where a browser window is not selected as the foreground task running ondata processing system 102,browser 120 may lengthen or shorten a user increment. The process then proceeds to step 312, which depictsbrowser 120 detecting whetherbrowser 120 has receivedresponse 132 fromfile server 106 over network 100. - If, in
step 312,browser 120 detects thatresponse 132 has been delivered todata processing system 102, then the process next proceeds to step 308, and the process proceeds as previously described with respect to step 308 andstep 324. - If, in
step 312browser 120 detects thatresponse 132 has not been received, then the process next proceeds to step 314, which depictsbrowser 120 determining whether the interval specified in response to timeout query 210 has expired. If the interval specified in response to timeout query 210 has not expired, then the process next proceeds to step 310, which depictsdata processing system 102 waiting during a period, called a user increment, for receipt ofresponse 132 as previously detailed. - If, in
step 314,browser 120 determines that the interval specified in response to timeout query 210 has expired, then the process next proceeds to step 316, which depictsbrowser 120 prompting the user to select a preconfigured email account for delivery through presentation of a prompt, such as userprompt GUI 202, ondisplay device 126. Whendisplay device 126 presents userprompt GUI 202, the user is presented with three options, as described with respect toFIG. 2B . If the user selects ‘no’button 246 withinput device 128 to indicate a lack of permission, the process then proceeds to step 306, which depicts clientdata processing system 102 waiting for and receivingresponse 132. Oncedata processing system 102 receivesresponse 132, the process next moves to step 308, which depictsdata processing system 102 displayingresponse 132 ondisplay device 126, as described above. If the user indicates a desire to defer a decision to redirect a response by actuation of ‘ask again’ button 248, the process next moves to step 310, which depictsdata processing system 102 waiting during a period, called a user increment, for receipt ofresponse 132, as described above. - If the user actuates ‘yes’ button 244 within
user prompt GUI 202, the process depicted inFIG. 3 bifurcates, representing the execution of two separate threads. The first thread begins atstep 318, which depictsbrowser 120 freeing the graphical user interface ondisplay device 126 for continued file retrieval. As a part ofstep 318,browser 120 presents a release notice overdisplay device 126 or another notification. This release notification informs the user that a background process will receiveresponse 132, and that the user is being returned to normal web surfing without the need to open a new browser window and manually poll for the receipt ofresponse 132. The browsing experience is substantially enhanced as the user can now turn attention to other matters while the background process waits for the file. - Additionally, a second background process, depicted in
steps step 319. Step 319 depictsbrowser 120 waiting a delivery increment. After waiting a delivery increment, the process next proceeds to step 317, which depictsbrowser 120 on clientdata processing system 102 detecting whetherresponse 132 has been delivered tobrowser 120. - If
response 132 has not been delivered tobrowser 120, thenbrowser 120 again proceeds back to step 319 to wait for the expiration of another delivery increment. If, instep 317,browser 120 detects receipt ofresponse 132 fromfile server 106, then the process next moves to step 320, which depictsbrowser 120 creatingoutgoing mail message 134 and insertingresponse 132 intooutgoing mail message 134.Response 132 can be inserted intooutgoing mail message 134 by a variety of methods, including without limitation encapsulating an HTML file into the text of the message and attaching an HTML file, supporting files, executables, or a JPG representation of an HTML file tooutgoing mail message 134. The process next moves to step 322, which illustratesbrowser 120 sendingoutgoing mail message 134 to mailserver 104. The process then proceeds to step 324, whereindata processing system 102 awaits a next operation. In step 322, the background process ofsteps outgoing mail message 134, though termination may not be readily discernable to the user because no new window was opened for the background process. - As has been described, the present invention provides an improved user experience in web browsing or other file viewing and retrieval activities by enabling the user to continue normal file viewing and retrieval while a background process waits to receive high-latency files and forward such files to a mail server. The user can then, at his leisure, query an email server with an email client to retrieve delayed files. Delivery to an email server in this manner also facilitates storage and portability of requested files.
- While the invention has been particularly shown as described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention. It is also important to note that although the present invention has been described in the context of a fully functional computer system, those skilled in the art will appreciate that the mechanisms of the present invention are capable of being distributed as a program product in a variety of forms, and that the present invention applies equally regardless of the particular type of signal bearing media utilized to actually carry out the distribution. Examples of signal bearing media include, without limitation, recordable type media such as floppy disks or CD ROMs and transmission type media such as analog or digital communications links.
Claims (22)
1. A method for improving efficiency of file receipt in a communication program, comprising:
sending a request for a first file from a communication program;
waiting a length of time for a receipt of said first file;
responsive to said length of time expiring before said receipt occurs, releasing a user interface of said communication program to request additional files while a background process waits for said first file; and
in response to receipt of said first file with said background process, encapsulating said first file in a message transmission and sending said message transmission to a target address.
2. The method of claim 1 , further comprising, responsive to said length of time expiring before said receipt occurs, detecting whether a user prefers to continue waiting for said receipt.
3. The method of claim 1 , further comprising setting said length of time in response to a configuration input.
4. The method of claim 1 , further comprising designating an email address as said target address.
5. The method of claim 1 , further comprising adjusting said length of time in response to a task priority of said communication program.
6. The method of claim 1 , wherein said sending step further comprises sending from a hypertext browser.
7. The method of claim 1 , wherein said sending step further comprises sending a request for a first file, which is a markup language file.
8. A system for improving efficiency of file receipt in a communication program, comprising:
means for sending a request for a first file from a communication program;
means for waiting a length of time for a receipt of said first file;
means for, responsive to said length of time expiring before said receipt occurs, releasing a user interface of said communication program to request additional files while a background process waits for said first file;
means for receiving said first file with said background process;
means for encapsulating said first file in a message transmission; and
means for sending said message transmission to a target address.
9. The system of claim 8 , further comprising means for, responsive to said length of time expiring before said receipt occurs, detecting whether a user prefers to continue waiting for said receipt.
10. The system of claim 8 , wherein said means for waiting a length of time for a receipt of said first file further comprise means for configurably fixing said length of time.
11. The system of claim 8 , further comprising means for designating an email address as said target address.
12. The system of claim 8 , further comprising means for comprising adjusting said length of time in response to a task priority of said communication program.
13. The system of claim 8 , wherein said communication program is a hypertext browser.
14. The system of claim 8 , wherein said first file is a markup language file.
15. A computer program product in a computer-readable medium for improving efficiency of file receipt in a communication program, comprising:
a computer-readable medium;
instructions on the computer readable medium for sending a request for a first file from a communication program;
instructions on the computer readable medium for waiting a length of time for a receipt of said first file;
instructions on the computer readable medium for, responsive to said length of time expiring before said receipt occurs, releasing a user interface of said communication program to request additional files while a background process waits for said first file;
instructions on the computer readable medium for receiving said first file with said background process;
instructions on the computer readable medium for encapsulating said first file in a message transmission; and instructions on the computer readable medium for sending said message transmission to a target address.
16. The computer program product of claim 15 , further comprising instructions on the computer readable medium for, responsive to said length of time expiring before said receipt occurs, detecting whether a user prefers to continue waiting for said receipt.
17. The computer program product of claim 15 , wherein said instructions for waiting a length of time for a receipt of said first file further comprise instructions on the computer-readable medium for configurably fixing said length of time.
18. The computer program product of claim 15 , further comprising instructions on the computer-readable medium for designating an email address as said target address.
19. The computer program product of claim 15 , further comprising instructions on the computer-readable medium for comprising adjusting said length of time in response to a task priority of said communication program.
20. The computer program product of claim 15 , wherein said communication program is a hypertext browser.
21. The computer program product of claim 15 , wherein said first file is a markup language file.
22. A data processing system for improving efficiency of file receipt, said data processing system comprising:
a processing resource; and
a storage unit coupled to said processing resource, said storage unit storing a communication program that, responsive to receipt of a response to a file request after expiration of a specified interval following the file request, automatically forwards said response to a specified network address upon receipt.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/763,081 US20050165717A1 (en) | 2004-01-22 | 2004-01-22 | Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/763,081 US20050165717A1 (en) | 2004-01-22 | 2004-01-22 | Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050165717A1 true US20050165717A1 (en) | 2005-07-28 |
Family
ID=34794971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/763,081 Abandoned US20050165717A1 (en) | 2004-01-22 | 2004-01-22 | Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server |
Country Status (1)
Country | Link |
---|---|
US (1) | US20050165717A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294175A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc | Operation of a Network Service Recruitment Architecture |
US20070294088A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc | Network Service Recruitment Architecture |
US20070294174A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc. | Electronic Greeting Recruitment Architecture |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5961590A (en) * | 1997-04-11 | 1999-10-05 | Roampage, Inc. | System and method for synchronizing electronic mail between a client site and a central site |
US6185567B1 (en) * | 1998-05-29 | 2001-02-06 | The Trustees Of The University Of Pennsylvania | Authenticated access to internet based research and data services |
US20010054064A1 (en) * | 1997-07-02 | 2001-12-20 | Pallipuram V. Kannan | Method system and computer program product for providing customer service over the world-wide web |
US6349295B1 (en) * | 1998-12-31 | 2002-02-19 | Walker Digital, Llc | Method and apparatus for performing supplemental searches over a network |
US6601061B1 (en) * | 1999-06-18 | 2003-07-29 | Surfwax, Inc. | Scalable information search and retrieval including use of special purpose searching resources |
US6640238B1 (en) * | 1999-08-31 | 2003-10-28 | Accenture Llp | Activity component in a presentation services patterns environment |
US6675212B1 (en) * | 2000-06-12 | 2004-01-06 | Gateway, Inc. | Method and apparatus for efficient data browsing |
US6766315B1 (en) * | 1998-05-01 | 2004-07-20 | Bratsos Timothy G | Method and apparatus for simultaneously accessing a plurality of dispersed databases |
US20040193900A1 (en) * | 2000-03-17 | 2004-09-30 | Mark Nair | System, method and apparatus for controlling the dissemination of digital works |
US6839705B1 (en) * | 1998-02-10 | 2005-01-04 | Gateway, Inc. | Method for delivering and caching preprocessed search results to improve performance of background information searches on a convergence device |
US20050065996A1 (en) * | 2000-02-22 | 2005-03-24 | Harvey Lunenfeld | Client-server multitasking |
US20050071239A1 (en) * | 2003-09-12 | 2005-03-31 | Tormey Peter James | Consumer business search and commerce system |
US20050114306A1 (en) * | 2003-11-20 | 2005-05-26 | International Business Machines Corporation | Integrated searching of multiple search sources |
US7243130B2 (en) * | 2000-03-16 | 2007-07-10 | Microsoft Corporation | Notification platform architecture |
-
2004
- 2004-01-22 US US10/763,081 patent/US20050165717A1/en not_active Abandoned
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5961590A (en) * | 1997-04-11 | 1999-10-05 | Roampage, Inc. | System and method for synchronizing electronic mail between a client site and a central site |
US20010054064A1 (en) * | 1997-07-02 | 2001-12-20 | Pallipuram V. Kannan | Method system and computer program product for providing customer service over the world-wide web |
US6839705B1 (en) * | 1998-02-10 | 2005-01-04 | Gateway, Inc. | Method for delivering and caching preprocessed search results to improve performance of background information searches on a convergence device |
US6766315B1 (en) * | 1998-05-01 | 2004-07-20 | Bratsos Timothy G | Method and apparatus for simultaneously accessing a plurality of dispersed databases |
US6185567B1 (en) * | 1998-05-29 | 2001-02-06 | The Trustees Of The University Of Pennsylvania | Authenticated access to internet based research and data services |
US6349295B1 (en) * | 1998-12-31 | 2002-02-19 | Walker Digital, Llc | Method and apparatus for performing supplemental searches over a network |
US6601061B1 (en) * | 1999-06-18 | 2003-07-29 | Surfwax, Inc. | Scalable information search and retrieval including use of special purpose searching resources |
US6640238B1 (en) * | 1999-08-31 | 2003-10-28 | Accenture Llp | Activity component in a presentation services patterns environment |
US20050065996A1 (en) * | 2000-02-22 | 2005-03-24 | Harvey Lunenfeld | Client-server multitasking |
US7243130B2 (en) * | 2000-03-16 | 2007-07-10 | Microsoft Corporation | Notification platform architecture |
US20040193900A1 (en) * | 2000-03-17 | 2004-09-30 | Mark Nair | System, method and apparatus for controlling the dissemination of digital works |
US6675212B1 (en) * | 2000-06-12 | 2004-01-06 | Gateway, Inc. | Method and apparatus for efficient data browsing |
US20050071239A1 (en) * | 2003-09-12 | 2005-03-31 | Tormey Peter James | Consumer business search and commerce system |
US20050114306A1 (en) * | 2003-11-20 | 2005-05-26 | International Business Machines Corporation | Integrated searching of multiple search sources |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070294175A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc | Operation of a Network Service Recruitment Architecture |
US20070294088A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc | Network Service Recruitment Architecture |
US20070294174A1 (en) * | 2006-05-31 | 2007-12-20 | Big Fish Games, Inc. | Electronic Greeting Recruitment Architecture |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10114905B2 (en) | Individual user selectable multi-level authorization method for accessing a computer system | |
US7171414B1 (en) | Dynamic page generator | |
JP4364947B2 (en) | Method and apparatus for providing a user hit on a mirror protected web site to a remote site administrator | |
JP6665191B2 (en) | Method and apparatus for storing instant messaging chat records | |
US6366947B1 (en) | System and method for accelerating network interaction | |
US6449657B2 (en) | Internet hosting system | |
US6304909B1 (en) | Client-controlled link processing in computer network | |
KR100368348B1 (en) | Internet mail delivery agent with automatic caching of file attachments | |
US9672232B1 (en) | Systems and methods for selectively storing event data | |
US6744452B1 (en) | Indicator to show that a cached web page is being displayed | |
US20030093572A1 (en) | Method and system for browser integration using a forwarding plug-in | |
US20010016845A1 (en) | Method and apparatus for receiving information in response to a request from an email client | |
US7707142B1 (en) | Methods and systems for performing an offline search | |
US20020156781A1 (en) | Delayed storage of cookies with approval capability | |
JP2005528850A (en) | Method and apparatus for controlling data provided to a mobile device | |
US20050229114A1 (en) | User interface for receiving information via a transmission medium | |
EP2254302A2 (en) | Method and apparatus for restoring state information of remote user interface | |
US6963901B1 (en) | Cooperative browsers using browser information contained in an e-mail message for re-configuring | |
US20030172118A1 (en) | Method and apparatus for providing post office protocol 3 support for limited storage devices | |
WO2008134320A1 (en) | Method and system for linking to content and services for a communication device | |
US20010049747A1 (en) | Multi-threaded name server | |
US7499958B1 (en) | Systems and methods of replicating all or part of a data store | |
JPH11272683A (en) | Retrieval processor and storage medium | |
US20050165717A1 (en) | Method, system and computer program product for redirecting a response to a file request from a requesting communication program to a mail server | |
US20050203893A1 (en) | Program for accessing information records |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHAKRAVARTY, VIJAYLAXMI;HERESCU, OLTEA MIHEALA;SALZBERG, CLAUDIA ANDREA;AND OTHERS;REEL/FRAME:014473/0512;SIGNING DATES FROM 20040107 TO 20040114 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |