WO2000051034A2 - Method and apparatus for network file transfer - Google Patents

Method and apparatus for network file transfer Download PDF

Info

Publication number
WO2000051034A2
WO2000051034A2 PCT/US2000/004890 US0004890W WO0051034A2 WO 2000051034 A2 WO2000051034 A2 WO 2000051034A2 US 0004890 W US0004890 W US 0004890W WO 0051034 A2 WO0051034 A2 WO 0051034A2
Authority
WO
WIPO (PCT)
Prior art keywords
digital data
network computers
repository
user
box
Prior art date
Application number
PCT/US2000/004890
Other languages
French (fr)
Other versions
WO2000051034A3 (en
WO2000051034A9 (en
Inventor
David J. Knight
Original Assignee
Click2Send.Com, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Click2Send.Com, Inc. filed Critical Click2Send.Com, Inc.
Priority to AU36071/00A priority Critical patent/AU3607100A/en
Publication of WO2000051034A2 publication Critical patent/WO2000051034A2/en
Publication of WO2000051034A3 publication Critical patent/WO2000051034A3/en
Publication of WO2000051034A9 publication Critical patent/WO2000051034A9/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/08Annexed information, e.g. attachments

Definitions

  • the present invention relates to the transfer of data in a networked computer environment, and specifically to the exchange of files over a network via a central repository.
  • FTP file transfer protocol
  • the present invention provides a method and apparatus for network file transfer.
  • Embodiments of the invention enable a user to transfer substantially any form of data (such as a file of virtually any size and type of format) over a network by loading the data or file onto a repository on the network from which the file can be accessed by another user's computer.
  • Central to the invention is a repository of "virtual" safe deposit boxes (i.e. storage area and /or partitions) for the deposit and withdrawal of files via the network.
  • virtual safe deposit boxes i.e. storage area and /or partitions
  • such files can be transferred to and from the repository using a conventional web browser.
  • An Internet web site may then be used to display the virtual safe deposit boxes' representation of the files to a user's web browser. This system allows users to freely create and use the boxes to store files, and inform others where these files are stored for retrieval.
  • specific boxes may be accessed by pointing a web browser to the network location (e.g., web site) where the central repository and associated virtual safe deposit boxes are located.
  • the central repository and associated virtual safe deposit boxes are designed to facilitate the access to and transfer of files from one user's computer to another.
  • the boxes are managed on an Internet server with a relational database, using the lightweight directory access protocol (LDAP) as a database tool.
  • LDAP lightweight directory access protocol
  • the central repository may include a "box manager” section, a “deposit a file” section, and a “pick up a file” section.
  • the box manager serves to register new users with the computer server it is located on, to create new safe deposit boxes for use and access by one or more users, and to modify the system settings.
  • a safe deposit box key may also be implemented to secure the boxes with passwords.
  • the repository web site has a deposit a file section, where a user can log in and upload one or more files to the web site or repository box from a computer (e.g., from a hard drive, a floppy drive, or any other suitable computer readable storage medium).
  • HTTP protocol may be used to upload files to the repository. Once uploaded, a file is stored on the repository computer server and appears to a user to be residing "inside" a repository virtual safe deposit box.
  • the web site has a pick up a file section, where users may download files from the repository computer server where the virtual safe deposit box resides. Download will cause a file to be transferred from a repository box to a local computer's hard drive, floppy disk, or other suitable data storage medium.
  • this system describes a more secure, efficient, and desirable method of transferring larger files via the Internet or another network.
  • Figure 1 is a block diagram of an example of a general purpose computer system in which an embodiment of the invention may be implemented.
  • FIG. 2 is a flow diagram representing the structure of the web site, in accordance with an embodiment of the present invention.
  • Figures 3a, 3b, and 3c are a flow diagram of a depositing a file section, in accordance with an embodiment of the present invention.
  • Figure 4 is a diagram of a deposit a file inquiry screen, in accordance with one embodiment of the present invention.
  • FIG. 5 is a diagram of a deposit a file inquiry screen, which includes an e-mail notification, in accordance with one embodiment of the present invention.
  • Figures 6a, 6b, and 6c are a flow diagram of a pick-up a section file, in accordance with one embodiment of the present invention.
  • Figure 7 is a diagram of a pick up a file inquiry screen, in accordance with one embodiment of the present invention.
  • FIGS. 8a and 8b are a flow diagram of a box manager section, in accordance with one embodiment of the present invention.
  • Figure 9 is a diagram of a box manager inquiry screen, in accordance with one embodiment of the present invention.
  • Figures 10a and 10 b are a flow diagram of a create a new box and change box settings section, in accordance with one embodiment of the present invention.
  • Figure 11 is a flow diagram of a modify box owner settings section, in accordance with one embodiment of the present invention.
  • Figure 12 is a flow diagram of an update user profile section, in accordance with one embodiment of the present invention.
  • Figure 13 is a flow diagram of a modify file settings section, in accordance with one embodiment of the present invention.
  • the present invention provides a method and apparatus for transferring computer files using a computer network.
  • numerous specific details are set forth in order to provide a more thorough understanding of the present invention. It will be apparent, however, to one skilled in the art, that the present invention may be practiced without these specific details. In other instances, well-known features have not been described in detail in order not to unnecessarily obscure the present invention.
  • One or more embodiments of the invention implement a system and method for the deposit and withdrawal of files (in particular, large files that are not well behaved with traditional file transfer schemes) from a central repository of "virtual safe deposit boxes" through the interactive communication of computer terminals connected by a computer network.
  • This computer network in one embodiment, is the Internet, but may be any type of network.
  • the central repository may be accessed through an Internet web site, but other types of access may also be employed.
  • the depositing and withdrawing of files may incorporate any web browser, such as Mosaic, Netscape Navigator, or Internet Explorer.
  • system is used to refer to a device and /or a method for performing a function.
  • An embodiment of the invention can be implemented as computer software in the form of computer readable program code executed on a general purpose computer such as the computer 100 illustrated in Figure 1.
  • a keyboard
  • I/O (input/ output) unit 119 coupled to bi-directional system bus 118 represents such I/O elements as a printer, A/V (audio/video) I/O, etc.
  • Computer 100 includes a video memory 114, main memory 115 and mass storage 112, all coupled to a bi-directional system bus 118 along with keyboard 110, mouse 111 and processor or CPU 113.
  • the mass storage 112 may include both fixed and removable media, such as magnetic, optical or magnetic optical storage systems or any other available mass storage technology.
  • Bus 118 may contain, for example, thirty- two address lines for addressing video memory 114 or main memory 115.
  • the system bus 118 also includes, for example, a 32-bit data bus for transferring data between and among the components, such as CPU 113, main memory 115, video memory 114 and mass storage 112. Alternatively, multiplex data /address lines may be used instead of separate data and address lines.
  • the CPU 113 is a microprocessor manufactured by Motorola, such as the 680X0 processor or a microprocessor manufactured by Intel, such as the 80X86, or Pentium processor, or a SPARC microprocessor from Sun Microsystems.
  • the main memory 115 is comprised of dynamic random access memory (DRAM).
  • Video memory 114 is a dual-ported video random access memory. One port of the video memory 114 is coupled to video amplifier 116.
  • the video amplifier 116 is used to drive the cathode ray tube (CRT) raster monitor 117.
  • the video amplifier 116 is well known in the art and may be implemented by any suitable apparatus.
  • the computer 100 may also include a communication interface 120 coupled to the bus 118.
  • the communication interface 120 provides a two-way data communication coupling via a network link 121 to a local network 122.
  • the communication interface 120 is an integrated services digital network (ISDN) card or a modem
  • ISDN integrated services digital network
  • the communication interface 120 provides a data communication connection to a corresponding type of telephone line, which comprises part of a network link 121.
  • the communication interface 120 is a local area network (LAN) card
  • LAN local area network
  • Wireless links are also possible.
  • communication interface 120 sends and receives electrical, electromagnetic or optical signals which carry digital data streams representing various types of information.
  • the network link 121 typically provides data communication through one or more networks to other data devices.
  • network link 121 may provide a connection through local network 122 to a host computer 123 or to data equipment operated by an Internet Service Provider (ISP) 124.
  • ISP 124 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the "Internet" 125.
  • Internet 125 uses electrical, electromagnetic or optical signals which carry digital data streams to files.
  • the signals through the various networks and the signals on network link 121 and through communication interface 120, which carry the digital data to and from computer 100, are exemplary forms of carrier waves for transporting the digital information.
  • the computer 100 can send messages and receive data, including program code, through the network(s), network link 121, and communication interface 120.
  • server 126 might transmit a requested code for an application program through Internet 125, ISP 124, local network 122 and communication interface 120.
  • one such application is the uploading and downloading of digital files to and from a computer server on a network as described herein.
  • the received file may be executed by CPU 113 as it is received, and/or stored in mass storage 112, or other non-volatile storage for later execution. In this manner, computer 100 may obtain application code in the form of a carrier wave.
  • the Internet is a worldwide network of interconnected computers.
  • An Internet client computer accesses a computer on the network via an Internet provider.
  • An Internet provider is an organization that provides a client (computer) with access to the Internet (via analog telephone line or Integrated Services Digital Network line, for example).
  • a client can, for example, read information from, download a file from or send an electronic mail message to another computer /client using the Internet.
  • the World Wide Web was developed to provide a simpler, more uniform means for accessing information on the Internet.
  • the components of the WWW include browser software, network links, servers, and WWW protocols.
  • the browser software, or browser is a user-friendly interface (i.e., front-end) that simplifies access to the Internet.
  • a browser allows a client to communicate a request without having to learn a complicated command syntax, for example.
  • a browser typically provides a graphical user interface (GUI) for displaying information and receiving input. Examples of browsers currently available include Mosaic, Netscape Navigator and Communicator, Microsoft Internet Explorer, and Cello.
  • GUI graphical user interface
  • HTTP Hypertext Transport Protocol
  • HTTP has communication methods that allow clients to request data from a server and send information to the server.
  • the client contacts the HTTP server and transmits the request to the HTTP server.
  • the request contains the communication method requested for the transaction (e.g., GET an object from the server or POST data to an object on the server).
  • the HTTP server responds to the client by sending a status of the request and the requested information. The connection is then terminated between the client and the HTTP server.
  • a client request therefore, consists of establishing a connection between the client and the HTTP server, performing the request, and terminating the connection.
  • the HTTP server does not retain any information about the request after the connection has been terminated.
  • HTTP is, therefore, a stateless protocol. That is, a client can make several requests of an HTTP server, but each individual request is treated independent of any other request.
  • the server has no recollection of any previous request.
  • an addressing scheme is employed by the WWW to identify Internet resources (e.g., HTTP server, file, or program). This addressing scheme is called the Uniform Resource Locator (URL).
  • a URL contains the protocol to use when accessing the server (e.g., HTTP), the Internet domain name of the site on which the server is running, the port number of the server, and the location of the resource in the file structure of the server.
  • the WWW also uses a concept known as hypertext.
  • Hypertext provides the ability to create links within a document to move directly to other information. To activate the link, it is only necessary to click on the hypertext link (e.g., a word or phrase).
  • the hypertext link can be to information stored on a different site than the one that supplied the current information.
  • a URL is associated with the link to identify the location of the additional information. When the link is activated, the client's browser uses the link to access the data at the site specified in the URL.
  • the HTTP server locates the file and sends it to the client.
  • An HTTP server also has the ability to delegate work to gateway programs.
  • CGI Common Gateway Interface
  • a gateway program is referenced using a URL.
  • the HTTP server activates the program specified in the URL and uses CGI mechanisms to pass program data sent by the client to the gateway program.
  • Data is passed from the server to the gateway program via command-line arguments, standard input, or environment variables.
  • the gateway program processes the data and returns its response to the server using CGI (via standard input, for example).
  • the server forwards the data to the client using the HTTP.
  • HTML Hypertext Markup Language
  • Virtual safe deposit boxes are implemented, in one embodiment, using a general purpose computer connected to the Internet.
  • the user accesses the deposit boxes at an Internet web site "home page" 200 by directing the user's web browser to the appropriate network address, for instance a URL.
  • the Internet web site containing the boxes has the overall structure shown in Figure 2 and may easily be accessed via a web browser.
  • the home page gives the user various options 201, such as the option to deposit a file 202, pick up a file 203, or allow for other options 204. Selection of an option activates a link which directs the web browser to a different URL on a web page.
  • the user's web browser is directed to the URL where the deposit a file section resides.
  • the deposit file path 300 allows users to upload files to the web site boxes from a network linked computer where the file resides, for instance on a hard drive.
  • the first category is those users who are unknown to the system.
  • the second category is those users who are known to the system, and have no default deposit box.
  • the third category is those users who are known to the system and have a default deposit box. In the preferred embodiment, all categories of users must login to the web site in order to deposit a file into a safe deposit box.
  • a user is considered unknown to the system if that user has just registered with the system, and thus has no boxes, if that user is accessing the web site using a different computer or browser, or if that user has his browser cookies disabled.
  • the system has no way of knowing what boxes to associate with an unknown user. Consequently, after logging-in, if user has no default deposit box, the user must select a box in which he wishes to deposit a file.
  • the system checks to see if the user is a known user 301. For an unknown user, flow proceeds to login step 302. At step 303, the user attempts to login. Thereafter, the system queries whether the login was valid 304. If the login was invalid, an error page 305 is displayed. If the login was valid, the system queries the user for a default deposit box 306. If the user has a default deposit box, box contents 307 are displayed. If the user does not have a default deposit box, the user must create a deposit box 308.
  • step 304 flows to step 309 and the system queries the user to register with the system. If the user does not register, the user is exited 310 from the system. If the user wishes to register, registration form 311 is displayed. Those users who have validly logged in without a default deposit box create a deposit box at step 308. The system queries the user to create a box 312. Once a default box is chosen, the system prompts the user for a key on password 313. If the key given is valid, the user enters step 307 and the box contents are displayed.
  • step 314 the user is prompted to choose a file to be deposited.
  • the user may search a local file system 316, or other preferred storage medium where files reside. For instance, at this point, the user may scan the directories of a hard disk structure of a computer to locate a file for depositing. Any computer employing any storage means may be used to accomplish this task.
  • the file is uploaded 317. If the transfer is successful 318, new box contents 319 are displayed.
  • the user is returned to the deposit a file screen 314, which may display a deposit confirmation message and, in one embodiment, shows the uploaded file name at the top of the list of box contents.
  • this situation occurs when a user has previously registered with the system, but has not selected a particular box as a default deposit box.
  • the system knows which boxes are associated with a user and thus will bypass the create a box screen 312 and key screen 313.
  • a list of all boxes into which a user has permission to deposit files and boxes the user has tagged to be displayed from a list of boxes will be displayed.
  • the user can select a box to download a file into and can select any displayed box as the default deposit box.
  • the next screen shows the deposit file controls and a list of the selected box contents.
  • the user may then select a file for upload (deposit).
  • the system then completes the upload process. After the upload process finishes, the user is returned to the deposit a file screen, and a confirmation message showing the uploaded file at the top of a list of box contents is displayed.
  • the system will be able to recognize a known user with a default deposit box after login, for instance by implementing a cookie set in a previous session with this user.
  • the system will then bypass the create box name screen 312 and key screen 313 used in the first scenario and bypass the list of associated boxes in the second scenario.
  • the user is sent a screen showing the deposit file controls and the list of default box contents.
  • the user may select a file to upload and finish the upload process.
  • the upload process is complete the user is returned to the deposit a file screen, and a confirmation message showing the uploaded file at the top of the list of box contents is displayed.
  • Figure 4 provides an example of the look and feel of depositing a file in one embodiment.
  • the system provides a listing of the virtual safe deposit boxes owned by the user 401 for selection or allows the user to create a new box 402. The user then selects a box to enter 403. The selected box may appear highlighted.
  • This screen also includes a field for input of the file name of the file to be upload 404.
  • the user can browse the local file system by selecting a browse button 405.
  • the user may optionally add a file description 406, and an e-mail address for intended recipient notification purposes 407.
  • the preferred system also may present the user with an on-screen form from which the user can address and send an optional e-mail message 515 and select a file for deposit into that box 516.
  • the system presents the box contents 522 (i.e., a listing of files already stored into that box, if any) which can be in reverse chronological order (i.e., the topmost file in the listing is the file most recently stored).
  • the system may list files by the date of deposit or the date of file creation on the user's computer. Note also, however, that in other embodiments of the invention, various other ordering schemes are available and that no particular order of displaying the box's contents is required.
  • the user may enter the e-mail address or addresses of the intended recipients for an optional e-mail message 515, which notifies the recipients that the contents of the box have changed.
  • the user may optionally enter addresses for both the intended recipient ("to:”) 518 and carbon copy recipients ("cc:”) 519, as well as a subject line 520 and message body text 521.
  • the e-mail message is transmitted to those recipients specified by the originating user in the to: and cc: fields of the e-mail form. By appearance, this is tantamount to using an e-mail client such as Microsoft Outlook or AOL mail, but may use other e-mail or recipient notification methods.
  • the system appends to the e-mail message body a URL containing an alphanumerically-encoded datagram.
  • This datagram can later be interpreted by the system web site as a reference to the virtual safe deposit box into which a file has been deposited.
  • An encoded database pointer that allows the system web site to highlight the deposited file upon retrieval by the recipient may also be appended.
  • text describing the file selected for deposit into the safe deposit box may be included by the system.
  • the optional text may be displayed immediately below the file when presented in the box after deposit.
  • the user also has the option to select the expiration date of the file deposited. At the end of the expiration period for a file, that file will be deleted from the system. This option allows users to keep a box from holding extraneous or unwanted files and frees up file space on the system.
  • the user submits the e-mail form contents and the file for deposit to the system by clicking an on-screen button labeled, "deposit file” 521.
  • the system accepts the file and represents it, redrawing the screen showing the box contents 522.
  • the newly deposited file may appear at the top of the listing, including data such as the size of the file 523, the date created 524, the time the file was deposited 525, and the time the file will expire 526.
  • the intended recipient receives the e-mail message, any optional information or information typed by the depositing user, along with the URL applied by the system upon final transmission.
  • the recipient may click on the URL upon which the recipient's e-mail center or web browser will typically point to the location specified by the URL and present the target web page on-screen for the recipient.
  • the web site screen presented shows the contents (i.e., deposited-file listing) of the safe deposit box specified by the URL.
  • the name of the file that was deposited associated with that recipient will appear at the top of the box content listing, wherein all other files stored within that box shall be listed in reverse-chronological order below the intended file. Additionally, the intended file may be separated from the other files in the on-screen presentation by a double line or highlighted for easier retrieval.
  • Picking up the file can be accomplished, in the preferred system, in various ways.
  • a user can either access the web site over the Internet or follow the attached link in his received e-mail message.
  • the home page gives the user the choice of picking up a file 203.
  • the user's web browser is directed to the URL where the pick up a file section resides.
  • the system will then prompt the user for the name of the box to pick a file up from and for the password key to unlock the box.
  • the user can then pick-up or download files from the system web site to any location accessible from the user's computer. For instance, the file can be opened or saved to a hard disk drive on the user's local computer.
  • the first category is those users who are unknown to the system.
  • the second category is those users who are known to the system, and have no default pick-up box.
  • the third category is those users who are known to the system and have a default pick-up box.
  • the preferred system has no way of knowing what boxes to associate with a user who has not registered with the system, is using a different computer or browser than that given during registration, or has his browser cookies disabled. Such an "unknown" user will be prompted by the system to type in the name for the box from which he wishes to pick-up the file. If the box is locked, a second screen will appear informing the user that the box is locked and providing a field to enter a key or password. After the user inputs the correct key, a screen is displayed showing the pick-up file controls and a list of the box contents. The user may then select a file to be downloaded (picked-up) and may begin the download process. After the download process finishes, the pick-up a file screen is displayed with confirmation message and display the list of box contents.
  • the user initially begins in the pick up a file section 600.
  • the system checks to see if the user is a known user 601. If the user is unknown, flow proceeds to box name step 602 where the user is prompted to choose the box in which the file to pick up is located. The system then determines whether the box is locked 603. If it is, flow proceeds to box key step 604 where the user enters the key. If the key is valid 605, the box contents are displayed 606. If at step 603, the box is not locked, flow proceeds directly to step 606 and the box contents are displayed.
  • step 608 may optionally query for a file key. If the file key is necessary and invalid, flow proceeds back to step 607. Otherwise if the file key is valid or not necessary, the system downloads the file 609.
  • this situation occurs when a known box owner (i.e., a registered user) has not selected a particular box as a default pick-up box.
  • the system does know which boxes are associated with that user, and thus may bypass the choose box name screen 602.
  • the system may also bypass the box key screen 604 if the user has saved his password. If the user has not saved his password, the system can prompt him with the login script or the box name screen. After choosing to pick-up a file, a list of all boxes which a user has selected as boxes from which he wishes to pickup file is displayed.
  • the user selects a box to pick-up a file from, or types in a new box name and key, if necessary.
  • a user can be given a check box to set the new box as the default pick-up box or to add the box to his profile.
  • the next screen shows the pick-up file controls and a list of the box contents. The user may now select a file to be downloaded. After the system downloads a file screen displaying a confirmation message and the list of box contents, will notify the user of download completion.
  • a user login the system can recognize a cookie set from a previous session with that user having a saved password. If the password is not saved, the system will prompt the user to go to the login script or the box name screen. Once logged in, the system knows which box is the default pick-up box for the user and thus will bypass the choose box name, key screen, and bypass the list of associated boxes screen. Once the user selects the pick-up file path, a screen showing the pick-up file controls and the list of box contents is displayed. The user may select a file to download (pick-up).
  • FIG. 7 provides an example of the look and feel the user will have when picking up a file with his web browser according to one embodiment of the invention.
  • recipient selects the appropriate box 703 from a list of all possible boxes 700.
  • the user selects a file (typically the file recently deposited) for pick up from the system box by clicking on the file name 701.
  • the user is then given the option of opening the file up or saving the file to any digital storage device accessible to the recipient's computer.
  • the user may switch boxes 702.
  • the file may opened within the user's web browser, for more transparent functionality.
  • users who wish to modify box contents, system parameters, or update user profile can access the box manager screen.
  • the system allows users to select the other link 204 from home page 201 thereby directing the user's web browser to the URL where the box manager section resides on the system web site. Users accessing this section of the web site will generally fall into one of two categories.
  • the first category is users who are unknown to the system as explained above.
  • the second category is users known to the system. Both categories of user must login to the site in order to engage in box manager activities.
  • These activities include but are not limited to: creating a new box, modifying the box owner settings (e.g., change default settings for all boxes owned by this user), modifying the files to options for a box (e.g., changing delete time, deleting, adding, removing passwords, etc.), or updating the user profile.
  • modifying the box owner settings e.g., change default settings for all boxes owned by this user
  • modifying the files to options for a box e.g., changing delete time, deleting, adding, removing passwords, etc.
  • updating the user profile e.g., changing delete time, deleting, adding, removing passwords, etc.
  • users unknown to the system have no associated boxes. Consequently, the user must login or register to become an authorized user and then may select any of the box manager activities.
  • Figures 8a and 8b represent a flow control diagram showing an example of box manager selection.
  • the user begins in the box manager section 800 which checks to see if the user is a known user 801. Unknown users are prompted to login 802. New users are asked to register as a new user 804 by filling out a registration form 805. Users whose login is invalid 803 are notified by error page 806. Users who validly login 807 proceed to welcome page 808.
  • step 809 the system queries the user for a box manager activity selection.
  • This situation refers, in one embodiment, to a user who has previously registered with the system and is identified by a cookie.
  • the system at this point recognizes the user and associated boxes with the user and bypasses the user login screen. Consequently, the system then allows the user to then select any of the box manager activities.
  • a screen with a confirmation, list of associated boxes, and the list of box manager activities is displayed.
  • An option to deposit or pick-up files may also appear in this display screen.
  • Figure 9 gives an example of the look and feel of the box manager screen.
  • the box manager screen allows modifications to boxes by a user.
  • such changes include modifications to the box name 900, deposit key 901 (e.g., password), pick-up key 902, e-mail notification to intended recipient requests 903, expiration date of the file 904, and default e-mail notification 905.
  • the user may modify the file settings 906, the user profile 907, the box owner settings 909, the box settings 910, or may create a new box 908.
  • the box manager section of the web site allows a user to create a new box.
  • Figures 10a, 10b, and 10c provide a flow control diagram of the create a new box section. Initially, the user starts at the create a new box section 1000 by choosing a box name. The system then determines whether the chosen name is available 1001. If it is not, the user is prompted to choose another name 1002. If a chosen name is available, the system determines whether the box was successfully created 1003. Error page 1004 appears if creation is unsuccessful. If successful, a new box is set-up for deposit and pick-up of files 1005.
  • the system may query whether the user wishes to modify box settings 1006. If he does not, the system may query the user for another action 1007. For instance, another box manager activity, like depositing a file, or picking-up a file. If the user wishes to modify the box settings 1008, the user is queried to change the box settings 1009. If no change is input, the box settings remain unaffected 1010. If a change is input, a new box settings confirmation is displayed 1011 are confirmed. Box changes can be a setting implemented independently, or part of the box creation function.
  • Figure 11 provides a flow control diagram of one embodiment of the modify box owner settings section.
  • the user begins at the modify box owner settings section 1100 where the system accesses the box owner settings 1101 from a membership database profile 1102. Once obtained, box owner settings 1103 are then displayed.
  • the system determines whether the user has changed the box owner settings 1104. If the user has not changed the box owner settings, the old settings are displayed 1105. If the user has changed the box owner settings, the new settings are displayed 1105.
  • Figure 12 provides a flow control diagram of an embodiment of the update user profile section.
  • the user profile form is displayed 1200 for the user to update.
  • the system determines whether all the fields of the form have been completed 1201. If all the fields of the form have not been completed, registration form partially complete message is displayed 1202 and the process repeats at 1201. When all of the fields are complete, the system updates the user profile 1203.
  • Figure 13 provides a flow control diagram of an embodiment of the modify file settings section.
  • the user reaches the modify file section 1300 and the system accesses the box database file settings 1301 from a box file attributes database 1302. Thereafter, the file settings 1303 are displayed for the user to change.
  • the system determines whether the change in the settings has been successful 1304. And if so, displays the new file settings 1306. If unsuccessful, the old file settings 1305 are displayed.

Abstract

A system and method for the deposit and withdrawal of files from a central repository of virtual safety deposit boxes is provided. The invention uses an Internet web site and web browser to create the virtual safety deposit box metaphor. Users can freely create and use the boxes and inform others of files that may be retrieved from his boxes. To access the box, the user simply points his web browser to the URL where the boxes are located. The box facilitates the transfer of files from one user's desktop to another's over the Internet. The box itself can be implemented in a variety of ways including the use of a relational database.

Description

METHOD AND APPARATUS FOR NETWORK FILE TRANSFER
This application claims the benefit of U.S. Provisional Application No. 60/121,771, filed February 26, 1999.
BACKGROUND OF THE INVENTION
1. FIELD OF THE INVENTION
The present invention relates to the transfer of data in a networked computer environment, and specifically to the exchange of files over a network via a central repository.
2. BACKGROUND ART
There is an ever-present desire to exchange information in human society. Prior solutions to facilitate information exchange, such as messengers and conventional mail, were developed so that people could get information from one place to another. But this type of exchange suffers the disadvantage of being extremely slow.
With the advent of voice mail, fax machines, and e-mail, more advantageous means of information exchange are now possible. However, while voice mail and faxes offer distinct proficiencies in transmitting information, an increasing number of daily transactions demand the movement of digital files from one location or computer to another.
Currently, many corporations and people use e-mail attachments as a primary method for transmitting digital files, but as increasingly larger files are generated by software applications, these files are increasingly hindered by inconsistent quality of document transfer, and other limitations outside the user's control. Such limitations include restrictions in file transfer size due to mail administrator policies and /or technical limitations of the computer servers used.
In addition, servers often delay the transmission of larger files contained in e-mail messages until after peak hours. In response, attempts have been made to find software solutions to the problems inherent in large e-mail attachment transmissions. One such software solution is the file transfer protocol (FTP). FTP, however, requires client computer software installation and user training making it disadvantageous. Therefore, a solution is needed which allows users to transfer files of any type and size, quickly and easily over a network.
SUMMARY OF THE INVENTION
The present invention provides a method and apparatus for network file transfer. Embodiments of the invention enable a user to transfer substantially any form of data (such as a file of virtually any size and type of format) over a network by loading the data or file onto a repository on the network from which the file can be accessed by another user's computer.
Central to the invention is a repository of "virtual" safe deposit boxes (i.e. storage area and /or partitions) for the deposit and withdrawal of files via the network. In particular, large files that are not well behaved with traditional file transfer schemes. For example, such files can be transferred to and from the repository using a conventional web browser. An Internet web site may then be used to display the virtual safe deposit boxes' representation of the files to a user's web browser. This system allows users to freely create and use the boxes to store files, and inform others where these files are stored for retrieval.
In accordance with one objective of the invention, specific boxes may be accessed by pointing a web browser to the network location (e.g., web site) where the central repository and associated virtual safe deposit boxes are located. Moreover, the central repository and associated virtual safe deposit boxes are designed to facilitate the access to and transfer of files from one user's computer to another. In one embodiment, for example, the boxes are managed on an Internet server with a relational database, using the lightweight directory access protocol (LDAP) as a database tool.
In accordance with another objective of the invention, the central repository may include a "box manager" section, a "deposit a file" section, and a "pick up a file" section. The box manager serves to register new users with the computer server it is located on, to create new safe deposit boxes for use and access by one or more users, and to modify the system settings. A safe deposit box key may also be implemented to secure the boxes with passwords.
In accordance with another aspect of the invention, the repository web site has a deposit a file section, where a user can log in and upload one or more files to the web site or repository box from a computer (e.g., from a hard drive, a floppy drive, or any other suitable computer readable storage medium). HTTP protocol may be used to upload files to the repository. Once uploaded, a file is stored on the repository computer server and appears to a user to be residing "inside" a repository virtual safe deposit box.
In accordance with a separate aspect of the invention, the web site has a pick up a file section, where users may download files from the repository computer server where the virtual safe deposit box resides. Download will cause a file to be transferred from a repository box to a local computer's hard drive, floppy disk, or other suitable data storage medium. Hence, this system describes a more secure, efficient, and desirable method of transferring larger files via the Internet or another network.
BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 is a block diagram of an example of a general purpose computer system in which an embodiment of the invention may be implemented.
Figure 2 is a flow diagram representing the structure of the web site, in accordance with an embodiment of the present invention.
Figures 3a, 3b, and 3c are a flow diagram of a depositing a file section, in accordance with an embodiment of the present invention.
Figure 4 is a diagram of a deposit a file inquiry screen, in accordance with one embodiment of the present invention.
Figure 5 is a diagram of a deposit a file inquiry screen, which includes an e-mail notification, in accordance with one embodiment of the present invention.
Figures 6a, 6b, and 6c are a flow diagram of a pick-up a section file, in accordance with one embodiment of the present invention.
Figure 7 is a diagram of a pick up a file inquiry screen, in accordance with one embodiment of the present invention.
Figures 8a and 8b are a flow diagram of a box manager section, in accordance with one embodiment of the present invention.
Figure 9 is a diagram of a box manager inquiry screen, in accordance with one embodiment of the present invention.
Figures 10a and 10 b are a flow diagram of a create a new box and change box settings section, in accordance with one embodiment of the present invention. Figure 11 is a flow diagram of a modify box owner settings section, in accordance with one embodiment of the present invention.
Figure 12 is a flow diagram of an update user profile section, in accordance with one embodiment of the present invention.
Figure 13 is a flow diagram of a modify file settings section, in accordance with one embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
The present invention provides a method and apparatus for transferring computer files using a computer network. In the following description, numerous specific details are set forth in order to provide a more thorough understanding of the present invention. It will be apparent, however, to one skilled in the art, that the present invention may be practiced without these specific details. In other instances, well-known features have not been described in detail in order not to unnecessarily obscure the present invention.
One or more embodiments of the invention implement a system and method for the deposit and withdrawal of files (in particular, large files that are not well behaved with traditional file transfer schemes) from a central repository of "virtual safe deposit boxes" through the interactive communication of computer terminals connected by a computer network. This computer network, in one embodiment, is the Internet, but may be any type of network. Furthermore, the central repository may be accessed through an Internet web site, but other types of access may also be employed. Also, the depositing and withdrawing of files may incorporate any web browser, such as Mosaic, Netscape Navigator, or Internet Explorer. Hereinafter, the term "system" is used to refer to a device and /or a method for performing a function.
Embodiment of General-Purpose Computer Environment
An embodiment of the invention can be implemented as computer software in the form of computer readable program code executed on a general purpose computer such as the computer 100 illustrated in Figure 1. A keyboard
110 and mouse 111 are coupled to a bi-directional system bus 118. The keyboard and mouse are for introducing user input to the computer system and communicating that user input to central processing unit (CPU) 113. Other suitable input devices may be used in addition to, or in place of, the mouse 111 and keyboard 110. I/O (input/ output) unit 119 coupled to bi-directional system bus 118 represents such I/O elements as a printer, A/V (audio/video) I/O, etc.
Computer 100 includes a video memory 114, main memory 115 and mass storage 112, all coupled to a bi-directional system bus 118 along with keyboard 110, mouse 111 and processor or CPU 113. The mass storage 112 may include both fixed and removable media, such as magnetic, optical or magnetic optical storage systems or any other available mass storage technology. Bus 118 may contain, for example, thirty- two address lines for addressing video memory 114 or main memory 115. The system bus 118 also includes, for example, a 32-bit data bus for transferring data between and among the components, such as CPU 113, main memory 115, video memory 114 and mass storage 112. Alternatively, multiplex data /address lines may be used instead of separate data and address lines.
In one embodiment of the invention, the CPU 113 is a microprocessor manufactured by Motorola, such as the 680X0 processor or a microprocessor manufactured by Intel, such as the 80X86, or Pentium processor, or a SPARC microprocessor from Sun Microsystems. However, any other suitable microprocessor or microcomputer may be utilized. The main memory 115 is comprised of dynamic random access memory (DRAM). Video memory 114 is a dual-ported video random access memory. One port of the video memory 114 is coupled to video amplifier 116. The video amplifier 116 is used to drive the cathode ray tube (CRT) raster monitor 117. The video amplifier 116 is well known in the art and may be implemented by any suitable apparatus. This circuitry converts pixel data stored in video memory 114 to a raster signal suitable for use by monitor 117. The monitor 117 is a type of monitor suitable for displaying graphic images. The computer 100 may also include a communication interface 120 coupled to the bus 118. The communication interface 120 provides a two-way data communication coupling via a network link 121 to a local network 122. For example, if the communication interface 120 is an integrated services digital network (ISDN) card or a modem, the communication interface 120 provides a data communication connection to a corresponding type of telephone line, which comprises part of a network link 121. If the communication interface 120 is a local area network (LAN) card, communication interface 120 provides a data communication connection via a network link 121 to a compatible LAN. Wireless links are also possible. In any such implementation, communication interface 120 sends and receives electrical, electromagnetic or optical signals which carry digital data streams representing various types of information.
The network link 121 typically provides data communication through one or more networks to other data devices. For example, network link 121 may provide a connection through local network 122 to a host computer 123 or to data equipment operated by an Internet Service Provider (ISP) 124. ISP 124 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the "Internet" 125. Local network 122 and Internet 125 both use electrical, electromagnetic or optical signals which carry digital data streams to files. The signals through the various networks and the signals on network link 121 and through communication interface 120, which carry the digital data to and from computer 100, are exemplary forms of carrier waves for transporting the digital information.
The computer 100 can send messages and receive data, including program code, through the network(s), network link 121, and communication interface 120. In the Internet example, server 126 might transmit a requested code for an application program through Internet 125, ISP 124, local network 122 and communication interface 120. In accord with the invention, one such application is the uploading and downloading of digital files to and from a computer server on a network as described herein.
The received file may be executed by CPU 113 as it is received, and/or stored in mass storage 112, or other non-volatile storage for later execution. In this manner, computer 100 may obtain application code in the form of a carrier wave.
The computer systems described above are for purposes of example only. An embodiment of the invention may be implemented in any type of computer system or programming or processing environment.
The Internet
The Internet is a worldwide network of interconnected computers. An Internet client computer accesses a computer on the network via an Internet provider. An Internet provider is an organization that provides a client (computer) with access to the Internet (via analog telephone line or Integrated Services Digital Network line, for example). A client can, for example, read information from, download a file from or send an electronic mail message to another computer /client using the Internet.
To retrieve a file or service on the Internet, a client must search for the file or service, make a connection to the computer on which the file or service is stored, and download the file or service. Each of these steps may involve a separate application and access to multiple, dissimilar computer systems. The World Wide Web (WWW) was developed to provide a simpler, more uniform means for accessing information on the Internet. The components of the WWW include browser software, network links, servers, and WWW protocols. The browser software, or browser, is a user-friendly interface (i.e., front-end) that simplifies access to the Internet. A browser allows a client to communicate a request without having to learn a complicated command syntax, for example. A browser typically provides a graphical user interface (GUI) for displaying information and receiving input. Examples of browsers currently available include Mosaic, Netscape Navigator and Communicator, Microsoft Internet Explorer, and Cello.
Information servers maintain the information on the WWW and are capable of processing client requests. Hypertext Transport Protocol (HTTP) is the standard protocol for communication amongst clients and server computers on the WWW. HTTP has communication methods that allow clients to request data from a server and send information to the server.
To submit a request, the client contacts the HTTP server and transmits the request to the HTTP server. The request contains the communication method requested for the transaction (e.g., GET an object from the server or POST data to an object on the server). The HTTP server responds to the client by sending a status of the request and the requested information. The connection is then terminated between the client and the HTTP server.
A client request, therefore, consists of establishing a connection between the client and the HTTP server, performing the request, and terminating the connection. The HTTP server does not retain any information about the request after the connection has been terminated. HTTP is, therefore, a stateless protocol. That is, a client can make several requests of an HTTP server, but each individual request is treated independent of any other request. The server has no recollection of any previous request. Moreover, an addressing scheme is employed by the WWW to identify Internet resources (e.g., HTTP server, file, or program). This addressing scheme is called the Uniform Resource Locator (URL). A URL contains the protocol to use when accessing the server (e.g., HTTP), the Internet domain name of the site on which the server is running, the port number of the server, and the location of the resource in the file structure of the server.
The WWW also uses a concept known as hypertext. Hypertext provides the ability to create links within a document to move directly to other information. To activate the link, it is only necessary to click on the hypertext link (e.g., a word or phrase). The hypertext link can be to information stored on a different site than the one that supplied the current information. A URL is associated with the link to identify the location of the additional information. When the link is activated, the client's browser uses the link to access the data at the site specified in the URL.
If the client request is for a file, the HTTP server locates the file and sends it to the client. An HTTP server also has the ability to delegate work to gateway programs. The Common Gateway Interface (CGI) specification defines a mechanism by which HTTP servers communicate with gateway programs. A gateway program is referenced using a URL. The HTTP server activates the program specified in the URL and uses CGI mechanisms to pass program data sent by the client to the gateway program. Data is passed from the server to the gateway program via command-line arguments, standard input, or environment variables. The gateway program processes the data and returns its response to the server using CGI (via standard input, for example). The server forwards the data to the client using the HTTP. When a browser displays information to a client /user it is typically as pages or documents (referred to as "web pages" or "web sites"). The language generally used to define the format for a page to be displayed in the WWW is called Hypertext Markup Language (HTML). A WWW page is transmitted to a client as an HTML document. The browser, executing on the client computer parses the document and displays a web page based on the information in the HTML document.
Virtual Safe Deposit Boxes
Virtual safe deposit boxes are implemented, in one embodiment, using a general purpose computer connected to the Internet. Referring to Figure 2, the user accesses the deposit boxes at an Internet web site "home page" 200 by directing the user's web browser to the appropriate network address, for instance a URL. Here, the Internet web site containing the boxes has the overall structure shown in Figure 2 and may easily be accessed via a web browser. The home page gives the user various options 201, such as the option to deposit a file 202, pick up a file 203, or allow for other options 204. Selection of an option activates a link which directs the web browser to a different URL on a web page.
Depositing A File
In the preferred embodiment, if the user selects a deposit a file link 202 from home page 200, the user's web browser is directed to the URL where the deposit a file section resides. Referring to Figures 3a, 3b and 3c, the deposit file path 300, allows users to upload files to the web site boxes from a network linked computer where the file resides, for instance on a hard drive.
Users who wish to deposit a file to a virtual safe deposit box will generally fall into one of three categories. The first category is those users who are unknown to the system. The second category is those users who are known to the system, and have no default deposit box. The third category is those users who are known to the system and have a default deposit box. In the preferred embodiment, all categories of users must login to the web site in order to deposit a file into a safe deposit box.
Users Unknown To The System
In the preferred embodiment, a user is considered unknown to the system if that user has just registered with the system, and thus has no boxes, if that user is accessing the web site using a different computer or browser, or if that user has his browser cookies disabled. In any of these instances, the system has no way of knowing what boxes to associate with an unknown user. Consequently, after logging-in, if user has no default deposit box, the user must select a box in which he wishes to deposit a file.
With reference to the embodiment shown in Figures 3a, 3b, and 3c, when a user reaches the deposit a file section of the web site 300, the system checks to see if the user is a known user 301. For an unknown user, flow proceeds to login step 302. At step 303, the user attempts to login. Thereafter, the system queries whether the login was valid 304. If the login was invalid, an error page 305 is displayed. If the login was valid, the system queries the user for a default deposit box 306. If the user has a default deposit box, box contents 307 are displayed. If the user does not have a default deposit box, the user must create a deposit box 308.
If this user is unknown to the system and has never registered, step 304 flows to step 309 and the system queries the user to register with the system. If the user does not register, the user is exited 310 from the system. If the user wishes to register, registration form 311 is displayed. Those users who have validly logged in without a default deposit box create a deposit box at step 308. The system queries the user to create a box 312. Once a default box is chosen, the system prompts the user for a key on password 313. If the key given is valid, the user enters step 307 and the box contents are displayed.
After login to box selection, flow proceeds to step 314 where the user is prompted to choose a file to be deposited. The user may search a local file system 316, or other preferred storage medium where files reside. For instance, at this point, the user may scan the directories of a hard disk structure of a computer to locate a file for depositing. Any computer employing any storage means may be used to accomplish this task. Once the user obtains a file, the file is uploaded 317. If the transfer is successful 318, new box contents 319 are displayed. After the upload process is finished, the user is returned to the deposit a file screen 314, which may display a deposit confirmation message and, in one embodiment, shows the uploaded file name at the top of the list of box contents.
Users Known To The System Having No Default Deposit Box
In the preferred system, this situation occurs when a user has previously registered with the system, but has not selected a particular box as a default deposit box. In the preferred embodiment, the system knows which boxes are associated with a user and thus will bypass the create a box screen 312 and key screen 313. Here, after logging-in, a list of all boxes into which a user has permission to deposit files and boxes the user has tagged to be displayed from a list of boxes will be displayed.
At this point, the user can select a box to download a file into and can select any displayed box as the default deposit box. The next screen shows the deposit file controls and a list of the selected box contents. The user may then select a file for upload (deposit). The system then completes the upload process. After the upload process finishes, the user is returned to the deposit a file screen, and a confirmation message showing the uploaded file at the top of a list of box contents is displayed.
Users Known To The System Having A Default Deposit Box
In the preferred embodiment, the system will be able to recognize a known user with a default deposit box after login, for instance by implementing a cookie set in a previous session with this user. The system will then bypass the create box name screen 312 and key screen 313 used in the first scenario and bypass the list of associated boxes in the second scenario. After logging-in, the user is sent a screen showing the deposit file controls and the list of default box contents. At this point, the user may select a file to upload and finish the upload process. After the upload process is complete the user is returned to the deposit a file screen, and a confirmation message showing the uploaded file at the top of the list of box contents is displayed.
Figure 4 provides an example of the look and feel of depositing a file in one embodiment. The system provides a listing of the virtual safe deposit boxes owned by the user 401 for selection or allows the user to create a new box 402. The user then selects a box to enter 403. The selected box may appear highlighted. This screen also includes a field for input of the file name of the file to be upload 404. Alternatively, the user can browse the local file system by selecting a browse button 405. The user may optionally add a file description 406, and an e-mail address for intended recipient notification purposes 407.
Referring to Figure 5, during depositing a file, the preferred system also may present the user with an on-screen form from which the user can address and send an optional e-mail message 515 and select a file for deposit into that box 516. Below this form the system presents the box contents 522 (i.e., a listing of files already stored into that box, if any) which can be in reverse chronological order (i.e., the topmost file in the listing is the file most recently stored). The system may list files by the date of deposit or the date of file creation on the user's computer. Note also, however, that in other embodiments of the invention, various other ordering schemes are available and that no particular order of displaying the box's contents is required.
Next, the user may enter the e-mail address or addresses of the intended recipients for an optional e-mail message 515, which notifies the recipients that the contents of the box have changed. The user may optionally enter addresses for both the intended recipient ("to:") 518 and carbon copy recipients ("cc:") 519, as well as a subject line 520 and message body text 521. The e-mail message is transmitted to those recipients specified by the originating user in the to: and cc: fields of the e-mail form. By appearance, this is tantamount to using an e-mail client such as Microsoft Outlook or AOL mail, but may use other e-mail or recipient notification methods.
In one embodiment, the system appends to the e-mail message body a URL containing an alphanumerically-encoded datagram. This datagram can later be interpreted by the system web site as a reference to the virtual safe deposit box into which a file has been deposited. An encoded database pointer that allows the system web site to highlight the deposited file upon retrieval by the recipient may also be appended.
Optionally, text describing the file selected for deposit into the safe deposit box may be included by the system. The optional text may be displayed immediately below the file when presented in the box after deposit. The user also has the option to select the expiration date of the file deposited. At the end of the expiration period for a file, that file will be deleted from the system. This option allows users to keep a box from holding extraneous or unwanted files and frees up file space on the system.
Once the deposit a file data screens are complete, in the preferred embodiment the user submits the e-mail form contents and the file for deposit to the system by clicking an on-screen button labeled, "deposit file" 521. The system then accepts the file and represents it, redrawing the screen showing the box contents 522. The newly deposited file may appear at the top of the listing, including data such as the size of the file 523, the date created 524, the time the file was deposited 525, and the time the file will expire 526.
In the preferred embodiment, the intended recipient receives the e-mail message, any optional information or information typed by the depositing user, along with the URL applied by the system upon final transmission. The recipient may click on the URL upon which the recipient's e-mail center or web browser will typically point to the location specified by the URL and present the target web page on-screen for the recipient. The web site screen presented shows the contents (i.e., deposited-file listing) of the safe deposit box specified by the URL.
In one embodiment, the name of the file that was deposited associated with that recipient will appear at the top of the box content listing, wherein all other files stored within that box shall be listed in reverse-chronological order below the intended file. Additionally, the intended file may be separated from the other files in the on-screen presentation by a double line or highlighted for easier retrieval. Picking Up A File
Picking up the file can be accomplished, in the preferred system, in various ways. A user can either access the web site over the Internet or follow the attached link in his received e-mail message. Referring to Figures 6a, 6b, and 6c, if the user accesses the system home page over the Internet, the home page gives the user the choice of picking up a file 203. If the user accepts that option and follows the link, the user's web browser is directed to the URL where the pick up a file section resides. The system will then prompt the user for the name of the box to pick a file up from and for the password key to unlock the box. The user can then pick-up or download files from the system web site to any location accessible from the user's computer. For instance, the file can be opened or saved to a hard disk drive on the user's local computer.
Users who wish to pick up a file from a virtual safe deposit box will generally fall into one of three categories. The first category is those users who are unknown to the system. The second category is those users who are known to the system, and have no default pick-up box. The third category is those users who are known to the system and have a default pick-up box.
Users Unknown To The System
The preferred system has no way of knowing what boxes to associate with a user who has not registered with the system, is using a different computer or browser than that given during registration, or has his browser cookies disabled. Such an "unknown" user will be prompted by the system to type in the name for the box from which he wishes to pick-up the file. If the box is locked, a second screen will appear informing the user that the box is locked and providing a field to enter a key or password. After the user inputs the correct key, a screen is displayed showing the pick-up file controls and a list of the box contents. The user may then select a file to be downloaded (picked-up) and may begin the download process. After the download process finishes, the pick-up a file screen is displayed with confirmation message and display the list of box contents.
With reference to Figures 6a, 6b, and 6c, the user initially begins in the pick up a file section 600. When the system checks to see if the user is a known user 601. If the user is unknown, flow proceeds to box name step 602 where the user is prompted to choose the box in which the file to pick up is located. The system then determines whether the box is locked 603. If it is, flow proceeds to box key step 604 where the user enters the key. If the key is valid 605, the box contents are displayed 606. If at step 603, the box is not locked, flow proceeds directly to step 606 and the box contents are displayed.
After the box contents are displayed 606, the system queries the user to chose a file to pick up 607. After the user chooses a file, step 608 may optionally query for a file key. If the file key is necessary and invalid, flow proceeds back to step 607. Otherwise if the file key is valid or not necessary, the system downloads the file 609.
Users Known To The System Having No Default Deposit Box
In the preferred system, this situation occurs when a known box owner (i.e., a registered user) has not selected a particular box as a default pick-up box. However, since the user is registered, the system does know which boxes are associated with that user, and thus may bypass the choose box name screen 602. The system may also bypass the box key screen 604 if the user has saved his password. If the user has not saved his password, the system can prompt him with the login script or the box name screen. After choosing to pick-up a file, a list of all boxes which a user has selected as boxes from which he wishes to pickup file is displayed.
At this point, in one embodiment, the user selects a box to pick-up a file from, or types in a new box name and key, if necessary. Optionally, a user can be given a check box to set the new box as the default pick-up box or to add the box to his profile. Referring to Figures 6a, 6b, and 6c, the next screen shows the pick-up file controls and a list of the box contents. The user may now select a file to be downloaded. After the system downloads a file screen displaying a confirmation message and the list of box contents, will notify the user of download completion.
Users Known To The System Having A Default Pick-Up Box
In the preferred embodiment, a user login the system can recognize a cookie set from a previous session with that user having a saved password. If the password is not saved, the system will prompt the user to go to the login script or the box name screen. Once logged in, the system knows which box is the default pick-up box for the user and thus will bypass the choose box name, key screen, and bypass the list of associated boxes screen. Once the user selects the pick-up file path, a screen showing the pick-up file controls and the list of box contents is displayed. The user may select a file to download (pick-up).
The above scenario applies to the user who clicks on the hyperlink in an intended recipient e-mail message. The user clicks on the hyperlink or pastes the link into a browser window sending him to the system web site and box where the file is located. If the box is locked, the user is prompted for the box key before the box contents are shown. Likewise, if the file is locked the user must enter a valid file key before picking-up the file. Figure 7, provides an example of the look and feel the user will have when picking up a file with his web browser according to one embodiment of the invention. Here, recipient selects the appropriate box 703 from a list of all possible boxes 700. Then the user selects a file (typically the file recently deposited) for pick up from the system box by clicking on the file name 701. The user is then given the option of opening the file up or saving the file to any digital storage device accessible to the recipient's computer. After pick-up, the user may switch boxes 702. In one embodiment, the file may opened within the user's web browser, for more transparent functionality.
Box Manager
In the preferred system, users who wish to modify box contents, system parameters, or update user profile can access the box manager screen. The system allows users to select the other link 204 from home page 201 thereby directing the user's web browser to the URL where the box manager section resides on the system web site. Users accessing this section of the web site will generally fall into one of two categories. The first category is users who are unknown to the system as explained above. The second category is users known to the system. Both categories of user must login to the site in order to engage in box manager activities. These activities include but are not limited to: creating a new box, modifying the box owner settings (e.g., change default settings for all boxes owned by this user), modifying the files to options for a box (e.g., changing delete time, deleting, adding, removing passwords, etc.), or updating the user profile. Users Unknown To The System
In the preferred embodiment, users unknown to the system have no associated boxes. Consequently, the user must login or register to become an authorized user and then may select any of the box manager activities.
Figures 8a and 8b represent a flow control diagram showing an example of box manager selection. The user begins in the box manager section 800 which checks to see if the user is a known user 801. Unknown users are prompted to login 802. New users are asked to register as a new user 804 by filling out a registration form 805. Users whose login is invalid 803 are notified by error page 806. Users who validly login 807 proceed to welcome page 808.
Thereafter, flow proceeds to step 809 where the system queries the user for a box manager activity selection.
Users Known To The System
This situation refers, in one embodiment, to a user who has previously registered with the system and is identified by a cookie. The system at this point recognizes the user and associated boxes with the user and bypasses the user login screen. Consequently, the system then allows the user to then select any of the box manager activities.
In some instances, after a user has completed any box manager task, a screen with a confirmation, list of associated boxes, and the list of box manager activities is displayed. An option to deposit or pick-up files may also appear in this display screen.
Figure 9 gives an example of the look and feel of the box manager screen. The box manager screen allows modifications to boxes by a user. In one embodiment, such changes include modifications to the box name 900, deposit key 901 (e.g., password), pick-up key 902, e-mail notification to intended recipient requests 903, expiration date of the file 904, and default e-mail notification 905. In addition, the user may modify the file settings 906, the user profile 907, the box owner settings 909, the box settings 910, or may create a new box 908.
Box Manager Activities
In the preferred embodiment, the box manager section of the web site allows a user to create a new box. Figures 10a, 10b, and 10c provide a flow control diagram of the create a new box section. Initially, the user starts at the create a new box section 1000 by choosing a box name. The system then determines whether the chosen name is available 1001. If it is not, the user is prompted to choose another name 1002. If a chosen name is available, the system determines whether the box was successfully created 1003. Error page 1004 appears if creation is unsuccessful. If successful, a new box is set-up for deposit and pick-up of files 1005.
Alternatively, the system may query whether the user wishes to modify box settings 1006. If he does not, the system may query the user for another action 1007. For instance, another box manager activity, like depositing a file, or picking-up a file. If the user wishes to modify the box settings 1008, the user is queried to change the box settings 1009. If no change is input, the box settings remain unaffected 1010. If a change is input, a new box settings confirmation is displayed 1011 are confirmed. Box changes can be a setting implemented independently, or part of the box creation function.
Figure 11 provides a flow control diagram of one embodiment of the modify box owner settings section. Initially, the user begins at the modify box owner settings section 1100 where the system accesses the box owner settings 1101 from a membership database profile 1102. Once obtained, box owner settings 1103 are then displayed. Next, the system determines whether the user has changed the box owner settings 1104. If the user has not changed the box owner settings, the old settings are displayed 1105. If the user has changed the box owner settings, the new settings are displayed 1105.
Figure 12 provides a flow control diagram of an embodiment of the update user profile section. Here, the user profile form is displayed 1200 for the user to update. The system determines whether all the fields of the form have been completed 1201. If all the fields of the form have not been completed, registration form partially complete message is displayed 1202 and the process repeats at 1201. When all of the fields are complete, the system updates the user profile 1203.
Figure 13 provides a flow control diagram of an embodiment of the modify file settings section. The user reaches the modify file section 1300 and the system accesses the box database file settings 1301 from a box file attributes database 1302. Thereafter, the file settings 1303 are displayed for the user to change. The system then determines whether the change in the settings has been successful 1304. And if so, displays the new file settings 1306. If unsuccessful, the old file settings 1305 are displayed.
Thus, a method and apparatus for network file transfer using a repository for files to be deposited into and picked-up from is described. Although the present invention has been described in detail with reference to a particular preferred embodiment, persons possessing ordinary skill in the art to which this invention pertains will appreciate that various modifications and enhancements may be made without departing from the spirit and scope of the claims that follow.

Claims

CLAIMS I claim:
1. A method for the transfer of digital data files comprising: providing a computer network server having a repository for digital data files, wherein said server is accessible by at least two other network computers; providing a web site on said server accessible to said network computers, said web site having a menu driven uploading function that may be executed from a first one of said network computers to transmit a digital data file from a first one of said network computers to said repository, and having a menu driven downloading function that may be executed from a second one of said network computers to retrieve a digital data file from said repository to a second one of said network computers; transmitting a digital data file from one of said network computers to said repository by executing said uploading function; and retrieving a digital data file from said repository to a second of said network computer by executing said downloading function.
2. The method of claim 1 further comprising sending a notice from said server to a second of said network computers indicating completion of said uploading function when said uploading function is completed at a first one of said network computers.
3. The method of claim 2 further comprising sending said notice by an e-mail.
4. The method of claim 3 further comprising sending an encoded datagram in said e-mail, for directing a second one of said network computers to said server web site.
5. The method of claim 1 further comprising transmitting and retrieving digital data files that are larger than those that can be attached to email messages in email systems currently used in the industry.
6. The method of claim 1 further comprising allowing only said network computers that are registered with said server to access said uploading and downloading functions.
7. The method of claim 1 further comprising using a web browser on said network computers to access said web site.
8. The method of claim 7 further comprising displaying said download data from within said web browser.
9. A method for the transfer of digital data files comprising: providing a computer network server having a digital data repository, wherein said server is accessible by at least two other network computers each having at least one industry standard web browser; providing a web site on said server accessible to at least one of said browsers, said web site having a menu driven uploading function that may be executed from said browser to transmit a digital data file from said browser of a first one of said network computers to said repository, and having a menu driven downloading function that may be executed from said browser of a second one of said network computers to retrieve a digital data file from said repository to said browser of a second one of said network computers; transmitting a digital data file from said browser of a first one of said network computers to said repository by executing said uploading function; and retrieving a digital data file from said repository to said browser of a second one of said network computers by executing said downloading function.
10. A computer program product comprising: computer code to implement a digital data repository; computer code to implement a web site for accessing said repository; computer readable program code configured to implement a computer network server accessible by at least two other network computers each having at least one industry standard web browser for hosting said repository and web site; computer readable program code configured to implement a menu driven uploading function that may be executed from said browser to transmit a digital data file from said browser to said repository, and a menu driven downloading function that may be executed from said browser to retrieve a digital data file from said repository to said browser; computer readable program code configured to cause said network computer to transmit a digital data file from said browser to said repository by executing said uploading function; and computer readable program code configured to cause said network computer to retrieve a digital data file from said repository to said browser by executing said downloading function.
11. Computer readable program code of claim 10 further configured to send a notice from said server to said browser of an intended recipient network computer indicating completion of said uploading function when said uploading function is completed.
12. Computer readable program code of claim 11 further configured to send said notice by an e-mail.
13. Computer readable program code of claim 12 further configured to include an encoded datagram in said e-mail, wherein said encoded datagram has a function for directing said intended recipient network computer to said server web site.
14. Computer readable program code of claim 10 further configured to permit said uploading and downloading functions of digital data that are larger than those that can be attached to email messages in email systems currently used in the industry.
15. Computer readable program code of claim 10 further configured to allow only said network computers that are registered with said server access to said uploading and downloading functions.
16. Computer readable program code of claim 10 further configured to use a web browser on said network computers to access said web site.
17. A digital data files transfer system comprising: a computer network server having a repository for digital data files, wherein said server is accessible by at least two other network computers; a web site on said server accessible to said network computers, said web site having a menu driven computer readable program code embodied therein providing an uploading function that may be executed from a first one of said network computers to transmit a digital data file from a first one of said network computers to said repository, and providing a downloading function that may be executed from a second one of said network computers to retrieve a digital data file from said repository to a second one of said network computers.
18. The system of claim 17 further comprising a notice sent from said server to a second of said network computers indicating completion of said uploading function when said uploading function is completed at a first one of said network computers.
19. The system of claim 17 wherein said digital data files are larger than those that can be attached to email messages in email systems currently used in the industry.
20. The system of claim 17 wherein said web site is accessible to at least one industry standard web browser.
PCT/US2000/004890 1999-02-26 2000-02-25 Method and apparatus for network file transfer WO2000051034A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU36071/00A AU3607100A (en) 1999-02-26 2000-02-25 Method and apparatus for network file transfer

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12177199P 1999-02-26 1999-02-26
US60/121,771 1999-02-26

Publications (3)

Publication Number Publication Date
WO2000051034A2 true WO2000051034A2 (en) 2000-08-31
WO2000051034A3 WO2000051034A3 (en) 2000-12-21
WO2000051034A9 WO2000051034A9 (en) 2002-07-11

Family

ID=22398685

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/004890 WO2000051034A2 (en) 1999-02-26 2000-02-25 Method and apparatus for network file transfer

Country Status (2)

Country Link
AU (1) AU3607100A (en)
WO (1) WO2000051034A2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001050229A2 (en) * 1999-12-30 2001-07-12 B4Bpartner, Inc. Electronic safe deposit box
WO2001084377A2 (en) * 2000-05-04 2001-11-08 Kickfire, Inc. An information repository system and method for an itnernet portal system
WO2003098502A2 (en) * 2002-05-22 2003-11-27 Yates Web Marketing Limited Eletronic messaging system with acknowledgement of receipt
WO2005003933A1 (en) * 2003-07-01 2005-01-13 Deutsche Telekom Ag Method for use in a network based safety data storage system
EP1821555A1 (en) * 2005-10-21 2007-08-22 Huawei Technologies Co., Ltd. Method and system for sharing memory area of mobile terminal
EP2173072A1 (en) 2008-10-01 2010-04-07 Accenture Global Services GmbH Personalized storage accounts in an electronic file delivery system
WO2020202041A1 (en) * 2019-04-02 2020-10-08 Esoptra, N.V. Content centric sharing of digital objects

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0471639A2 (en) * 1990-08-13 1992-02-19 International Business Machines Corporation Method for document distribution by reference in a data processing system
EP0838774A2 (en) * 1996-10-24 1998-04-29 Tumbleweed Software Corp. Electronic document delivery system
US5781901A (en) * 1995-12-21 1998-07-14 Intel Corporation Transmitting electronic mail attachment over a network using a e-mail page
US5790793A (en) * 1995-04-04 1998-08-04 Higley; Thomas Method and system to create, transmit, receive and process information, including an address to further information
EP0869652A2 (en) * 1997-04-01 1998-10-07 Tumbleweed Software Corporation Document delivery system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0471639A2 (en) * 1990-08-13 1992-02-19 International Business Machines Corporation Method for document distribution by reference in a data processing system
US5790793A (en) * 1995-04-04 1998-08-04 Higley; Thomas Method and system to create, transmit, receive and process information, including an address to further information
US5781901A (en) * 1995-12-21 1998-07-14 Intel Corporation Transmitting electronic mail attachment over a network using a e-mail page
EP0838774A2 (en) * 1996-10-24 1998-04-29 Tumbleweed Software Corp. Electronic document delivery system
EP0869652A2 (en) * 1997-04-01 1998-10-07 Tumbleweed Software Corporation Document delivery system

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001050229A2 (en) * 1999-12-30 2001-07-12 B4Bpartner, Inc. Electronic safe deposit box
WO2001050229A3 (en) * 1999-12-30 2002-03-21 B4Bpartner Inc Electronic safe deposit box
WO2001084377A2 (en) * 2000-05-04 2001-11-08 Kickfire, Inc. An information repository system and method for an itnernet portal system
WO2001084377A3 (en) * 2000-05-04 2003-12-24 Kickfire Inc An information repository system and method for an itnernet portal system
WO2003098502A2 (en) * 2002-05-22 2003-11-27 Yates Web Marketing Limited Eletronic messaging system with acknowledgement of receipt
WO2003098502A3 (en) * 2002-05-22 2004-01-08 Yates Web Marketing Ltd Eletronic messaging system with acknowledgement of receipt
WO2005003933A1 (en) * 2003-07-01 2005-01-13 Deutsche Telekom Ag Method for use in a network based safety data storage system
US8572715B2 (en) 2003-07-01 2013-10-29 Deutsche Telekom Ag Method for use in a network based safety data storage system
EP1821555A1 (en) * 2005-10-21 2007-08-22 Huawei Technologies Co., Ltd. Method and system for sharing memory area of mobile terminal
EP1821555A4 (en) * 2005-10-21 2008-10-22 Huawei Tech Co Ltd Method and system for sharing memory area of mobile terminal
EP2173072A1 (en) 2008-10-01 2010-04-07 Accenture Global Services GmbH Personalized storage accounts in an electronic file delivery system
US8019822B2 (en) 2008-10-01 2011-09-13 Accenture Global Services Limited Personalized storage accounts in an electronic file delivery system
WO2020202041A1 (en) * 2019-04-02 2020-10-08 Esoptra, N.V. Content centric sharing of digital objects
US11546423B2 (en) 2019-04-02 2023-01-03 Twintag Nv Content centric sharing of digital objects

Also Published As

Publication number Publication date
WO2000051034A3 (en) 2000-12-21
WO2000051034A9 (en) 2002-07-11
AU3607100A (en) 2000-09-14

Similar Documents

Publication Publication Date Title
US7277912B2 (en) Browser environment using multiple browser instantiations
US7711748B2 (en) Method and apparatus for simplified access to online services
US8190629B2 (en) Network-based bookmark management and web-summary system
US5813007A (en) Automatic updates of bookmarks in a client computer
US6421716B1 (en) System for generating context-sensitive hierarchically ordered document service menus
US6647531B2 (en) Customization of network documents
JP4594586B2 (en) Method and system for processing information in a network client
US7272655B2 (en) Delivering electronic content
US8825619B2 (en) Systems and methods for managing database authentication and sessions
US6208986B1 (en) Web interface and method for accessing and displaying directory information
US6278993B1 (en) Method and apparatus for extending an on-line internet search beyond pre-referenced sources and returning data over a data-packet-network (DPN) using private search engines as proxy-engines
US7328245B1 (en) Remote retrieval of documents
US20020174194A1 (en) Providing access to a plurality of message accounts from a single web-based interface
US20020033846A1 (en) Apparatus for controlling the display of and for resolving special characters in URLs, URIs & email addresses and mehtod therefor
GB2354854A (en) Userid and cookie managers for internet browsers
WO2001075646A1 (en) An internet full service system and graphic user interface accessible at this system
WO2000070838A2 (en) Client-server independent intermediary mechanism
US6947979B1 (en) Controlling use of a network resource
US20030163575A1 (en) Resource location and access
JP4066444B2 (en) Homepage automatic generation apparatus and method
WO2000051034A9 (en) Method and apparatus for network file transfer
WO2001098934A2 (en) Method and apparatus for granting access to internet content
US20050114441A1 (en) Methods and systems for retrieving information over a computer network
WO2001027714A2 (en) Information providing media, and information providing system and method using same
EP1290585A1 (en) Network-based bookmark management and web-summary system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

AK Designated states

Kind code of ref document: C2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CR CU CZ DE DK DM EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: C2

Designated state(s): GH GM KE LS MW SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

COP Corrected version of pamphlet

Free format text: PAGES 1/13-13/13, DRAWINGS, REPLACED BY NEW PAGES 1/12-12/12; DUE TO LATE TRANSMITTAL BY THE RECEIVING OFFICE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: COMMUNICATION UNDER RULE 69 EPC ( EPO FORM 2524 DATED 18/03/03 )

122 Ep: pct application non-entry in european phase