`
`E—uroptllschesPatentamt
`
`European Patent OtticIcej
`
`Office européen des brevets
`
`|||||||||l|||lHIIIIHlllll|||||||||l||l||l||l|llllll||l||l||i|||||||||l|||
`
`(11)
`
`EP 0 838 774 A2
`
`(12)
`
`EUROPEAN PATENT APPLICATION
`
`(43) Date of publication:
`29.04.1998 Bulletin 1993118
`
`(21) Application number: 971184523
`
`(22) Date of fitit‘lg: 23.10.1997
`
`(51) Int. CLS: 606F17160
`
`{84) Designated Contracting States:
`AT BE CH DE DK ESFI FFtGB GR IE IT LI LUIil'IC
`NL PT SE
`
`Designated Extension States:
`AL LT LV RO SI
`
`(30) Priority: 24.10.1996 US 738966
`30.01.1997 US 792171
`14.02.1997 US 800864
`
`(71) Applicant:
`Tumbleweed Software Corp.
`Redwood City, CA 94063 (US)
`
`(72) Inventors:
`. Smith, Jeffrey C.
`lillenlo Park, CA 94025 (US)
`. Bandini. Jean-Christophe
`Cupertino, CA 95014 (US)
`
`{74) Representative:
`DIEHL GLAESER HILTL 8: PARTNER
`
`Fliiggenstrasse 13
`80639 Mfinchen (DE)
`
`
`
`SENI‘DER
`
`1‘12}-
`
`
`
`(54)
`
`Electronic document delivery system
`
`A document. preferably in a portable format. is
`(57)
`forwarded to a remote server (9.9. using HTTP to
`"push" the document to the server). The server sends a
`generic notification of the document to an intended
`recipient. and the recipient can download the document
`from the server using local protocols. A method and
`system is also provided that sends documents tram a
`desktop computer inside an intranet through a series of
`firewalls andfor proxy servers to a server residing on the
`Internet. A computer in an intranet system protected by
`a iirewatl or proxy server uses a software application to
`access the Internet. The software also encodes binary
`data to be sent as text. This binary data may be subdi«
`vided into smaller text packets. The text packets are
`sent. using H'I‘I'P. to a server outside the firewall. which
`has been configured to accept such text packets. The
`server converts the text packets back to the original
`binary data representation. The binary data. once resi-
`dent on the internet server. can then be forwarded
`directly to other internal servers. internet desktop com-
`puters. printers, or fax machines. A document delivery
`server is also provided that dynamically customizes the
`format of a document to be delivered. based on the
`capabilities of the recipient and the type of document to
`be delivered. The server attempts to maintain the infor-
`mation contained in the document in a high level repre-
`sentation and deters the decision oi when to convert to
`
`a lower level representation. thereby maximizing the
`potential set of options and tunction at each step in the
`delivery process.
`
`Primed by Xerox [UK] Business Services
`216.134
`
`Apple/Twitter
`Apple/Twitter
`Ex. 1014
`Ex. 1014
`IPR2 of U.S. Pat. No. 8,612,515
`IPR2 of US. Pat. No. 8,612,515
`
`EP0838774A2
`
`
`
`Description
`
`EP0838774A2
`
`W
`
`15
`
`20
`
`25
`
`3O
`
`40
`
`50
`
`The invention relates to the field of computer networks. More particularly. the invention relates to techniques for the
`delivery of electronic documents to users over the Internet.
`The development of corrputerized information sources, such as those provided through the Internet or other on-
`line sources. has led to a proliferation of etectronically available information. Currenfiy. a user who subscribes to the
`Internet manually navigates through the tnternet to visit sites which may or may not be of interest.
`An inherent probiem in this Internet system is that the available information is distributed through a "pull" type infra-
`structure. where the user who wants to receive information must manually search sites of interest. or use a finder appli-
`cation. to search and download appropriate information. For a user who wishes to publish and distribute information or
`documents. either an individual or a larger entity that has information that is desired to be distributed. the present “pull“
`system doesn't allow the freedom to send and distribute to a recipient or group of recipients, in a "push" fashion.
`Facsimile technology is widely used at the present time for the distribution of simple documents. but has numerous
`drawbacks, including lower quality printed documents. costly and bulky paper copies (particularly if the recipient doesn't
`care to have a paper copy). loss of content (e.g. text and graphics can‘t be edited or manipulated}. and time require-
`ments for transmission. particularly for long or complex documents.
`Electronic Mail (Email) provides a means for sending electronic messages from corrputer user to another. Email
`has advantages of convenience. format and storage of messages for later retrieval. As such. E-mail has been accepted
`and widely used for basic communication. E-mail is typically an ASCII based format. however. and proves to be very
`limiting for the communication of long or formatted documents. As well. E-mail is not the medium of choice for the dis-
`tribution of complex documents, such as reports. articles. advertisements and art which can include page layout grids.
`postscript-formatted objects. multiple fonts with tracking and kerning. graphics. imbedded tables and spreadsheets. and
`other complicated information. Some E-mail systems provide a means for appending an ASCII based E-mail message
`with an associated file. to be downloaded along with the E-mail message. Most systems that allow the appending of an
`associated file are designed to allow a single user to send unsecured files to an associate or friend. and neither allow
`for controlled automated distribution to multiple recipients. nor do they provide advanced accounting, billing or other
`such features (e.g.. receipt notification}. E-mail gateways also limit the applicability of attachments. and do not solve the
`problems of security and receipt notation or acknowledgment.
`C. Baudoin. inferenterprise Eiecfroni'c Mai! Hub, US. Patent No. 5.406.557 i 11 April 1995) discloses an interenter—
`prise communications center. which has a con‘puter hub comprising a common core and a plurality of input and output
`modules. The input modules connect to a first end user. and convert a message sent by the first end user into a univer-
`sal format. The hub core queues the message and fonivards it to the output module for conversion into the format of the
`destination user. While the disclosed hub discloses techniques to relay simple e-mail messages. it is designed to con-
`vert the e-mail message formats. thus losing the integrity of the originat text-based file.
`The disclosed prior art systems and methodologies thus provide some methods for the delivery of documents. but
`fail to provide an economical. fast document delivery system that operates in a push-fashion. while conserving the
`integrity of the original electronic file. The development of such an electronic document delivery system would constitute
`a major technological advance. In addition. the ability to distribute etectronic portable high-quality documents to many
`recipients in a controlled. economical and accountable fashion would constitute a further technological advance.
`The Internet is increasingly being used for communications. It is now possible on the Internet for a sender to direct
`a document to a specific recipient. regardless of platform. operating system. or email system. Such communidation is
`pcssibie even when the recipient is not a computer but. rather. a fax machine or printer connected to the Internet.
`In many instances. the sender of a document will reside on a local area network. referred to as an intranet. The
`sender's con‘puter may be connected to the Internet directly or through the intranet‘s server. An intranet is frequently
`protected and insulated from the internet by a firewall or proxy server. Afirewall is software andfcr hardware which limits
`access to an intranet or a desktop computer. A proxy server is dedicated software andrcr hardware which intercepts
`requests between machines running inside an intranet and machines outside the intranet.
`Such firewall provides one or more of a few basic services. First. a firewall prevents intranet users from accessing
`specific information on the Internet. Thus. an office worker is restricted from accessing non-work-retated Internet sites.
`Second. a firewall restricts outside access to the information available on the intranet. Third. a firewall prevents intranet
`users from sending confidential information from the intranet to the internet. Typically. blocking unsolicited outside
`access to the intranet also blocks information transfer from intranet to Internet.
`
`Various methods have been used to transfer data on the Internet between intranets protected by firewalls. One
`such method is the key management scheme described in Aziz. Method and Apparatus for Key-Management Scheme
`for Use With Internet Protocols at Site Firewalls. US. Patent No. 5.416.842 (16 May 1995}. In this method, intersite traf-
`fic is encrypted at the Internet Protocol (IP) layer by using a Skip scheme to prevent detection of a source and destina-
`tion address of a communicating node.
`IP packets are encrypted only from site firewall to site firewall. such that only firewall servers need to participate in
`
`
`
`EP0838774A2
`
`the Skip scheme. When a firewall receives from an interior site node an IP packet intended for a remote firewall. it
`encrypts the IP packet and sends it encapsulated in another IP packet destined tor the remote firewall. The remote fire'
`wall decrypts the encapsulated packet and sends it in the clear to the destination node on the interior side of the remote
`firewall.
`
`Such method. however. requires the encrypted IP packet to be received by a remote firewall server that is config-
`ured to decrypt the packet. The encrypted information cannot be directly sent to a computer or intranet system that
`does not use such firewall server. or to a device such as a fax machine or printer.
`A security system for connecting computer networks is described in Gelb. Security System for Preventing Unau-
`thorized Communications Between Networks by Translating Communications Ffeceived in IP Protocol to Non-IF Proto-
`col to Remove Address and Ffouting Services lniormation. US. Patent No. 5.550.984 {27 August 1996}. However. Geib
`does not address how documents may be sent through a firewall or proxy server.
`It would therefore be an advantage to provide a method and system for sending documents through a series of fire-
`walls andior proxy servers. it wouid be a further advantage if such method and system permitted the documents to be
`transmitted to a device such as a tax machine or a primer. It would be yet another advantage if such method and system
`did not require the receiving computer of device to be served by a decrypting firewall.
`One of the many compiexities associated with delivering information between two disparate systems stems from
`basic incon'paiibilities between those systems including. for example. differences in capabilities. A printer has a very
`different set oi capabilities than a personal computer. and a commensurate set of data formats which the printer might
`accept. A personal computer. for example. might be capable of processing a WordPerfect document. a portable docu-
`ment leg. Adobe Acrobat or Novell Envoy). or an HTML document. A printer. by contrast, might only be capabie of
`accepting a PCLfile or a Postscript file. A fax machine. as with a printer. may only accept a Group 3 compressed black
`and white raster representation of a document. Thus. various devices have various capabilities in terms oi the types of
`data they may accept.
`Similarly. different data types offer different levels of flexibility and function. For example. an Envoy or PDF file can
`be scaled to any resoiution. can support millions oi colors. and an include text and fonts. A Group 3 compressed fax
`image. on the other hand. is limited in resolution. only supports black and white colors. and includes no text or fonts.
`thereby limiting the ability of a recipient of a Group 3 compressed image to perform any operations. except for rudimen-
`tary operations.
`The extended flexibility of a more robust data representation. such as a portable document. enables such docu-
`ments to be canverted to less robust representations. By illustration. a portable document might be converted to a Post-
`script file or even a Group 3 compressed image. One might therefore suggest that a portabfe document is a high levei
`data representation and a Group 3 compressed image is a low level data representation.
`In most cases. if the recipient system is capable of receiving a high level data representation. such representation
`is the data representation of choice due to the increased capabilities such representation provides. Thus, such repre-
`sentation offers a preferred common format. especially if such representation includes a mechanism that can convert
`the high level representation to a lower level representation as necessary.
`M. Williams. Ff. Yun. Method and Apparatus For Enhanced Eiectronic Maii Distribution. US. Patent No. 5.424. 724
`(13 June 1995) disclose a method and apparatus for enhanced eiectronic mail distribution which permits distribution of
`electronic mail documents to multiple host systems andior external networks via a singie host agent. A host agent ref-
`erence table is established at selected host agents within a local network Each host agent reference table includes an
`identification of selected destination nodes associated with an identified host agent for those nodes. A referral to the
`host agent reference table is used to determine the appropriate host agent for an electronic document destined for a
`selected node. No provision is made within this method and apparatus for dynamic data conversion. Thus. documents
`are delivered with its level of representation unaltered and without regard for processing capability at a destination
`node.
`
`T. Schultz. A. Gross. B. Pappas. G. Shifrin, L. Mack. Apparatus and Method of Distributing Documents To Remote
`Terminate With Different Formats. U.S. Patem No. 4.754.428 {28 June 1988) and T. Schultz. A. Gross. B. Pappas. G.
`Shifrin. L. Mack. Efecl‘ronic Mail. us. Patent No. 4,713,780 {15 December 1987) disclose a method and apparatus for
`delivering a document originated at a local site by a source having a printer output that is normaily connected to a
`printer. to one or more remote locations having printers or display devices that may differ from the printer normally con-
`nected to the printer output of the document generating source. Printer command signals which are normally provided
`at the printer output are converted to character and position data which represent the respective characters and their
`horizontal and vertical positions on each page of the document. The character and position data are transmitted to a
`remote location and reconverted to a form for driving a printer or other display device to produce a line-for-line conform-
`ing copy of the original.
`The '428 and '780 patents disclose the use of upstream data conversion. but do not provide downstream data con-
`version. That is. the ‘428 and ‘780 patents disclose a method and apparatus that allows text to be sent to a printer and
`converted to a printer specific format. However. such method and apparatus lacks the ability to start with a high-levef
`
`TO
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`5t?
`
`55
`
`
`
`EP0838774A2
`
`TO
`
`15
`
`20
`
`25
`
`3O
`
`40
`
`50
`
`representation of the data. and only convert to a lower level representation if such conversion is determined to be nec-
`essary. Thus. such approach is not satisfactory where printer format is not known or established prior to document orig-
`ination. or where a heterogeneous network. such as the Internet. is used to deliver data.
`L. Harkins. K. Hayward. T. Herceg. J. Levine. 0. Parsons. Network Having Setectively Accessrbte Recipient Priori—
`fr'zed Commutation Chance! Profiles. US. Patent No. 5.513.126 {30 April 1996) discloses a method for a sender to
`automatically distribute information to a receiver on a network using devices and communications channels defined in
`a receiver profile. The receiver profile establishes the properties and mode for receipt of information for receivers on the
`network and the profile is published in a network repository for all network users or is accessible for selected groups or
`individuals on the network. The disclosed network does not provide for data conversion. but rather involves sending pre-
`determined data based on the capabilities of the recipient which are communicated through channels. Thus. each
`recipient must first establish a format before data are exchanged.
`M. Bloomfield. Sender-Based Facsimile Store and Forward Facifr'gr. LS. Patent No. 5.404.231 {4 April 1995) dis-
`ctoses a system that provides sender-based store and forward services for delivering facsimile based information. The
`system is solely concerned with the delivery of facsimile bitmap images. and not with data conversion.
`In view of the limitations attendant with the state of the art. it woutd be advantageous to provide a system in which
`the ability to descend to a lower level representation is preserved to allow the flexibility to do so at a future point in time.
`but that also enables a richer set of functions as appropriate.
`The present invention intends to overcome the above problems. The object is solved by the apparatus according to
`independent claims 1. 13 and 36, the method according to independent claims 7. 15. 57 and BB and the system of
`binary data delivery according to independent claim 69.
`Further advantages, features. aspects and details of the invention are evident from the dependent claims. the
`description and the accompanying drawings. The claims are intended to be understood as a first. non-limiting.
`approach of defining the invention in general terms.
`The present invention generally relates to the field of computer networks. In particular it relates to techniques for
`the delivery of electronic document to users over the internet.
`It is an object of the invention to provide an electronic document delivery system and methods of its use.
`A document, preferably in a portable format. is fonrrarded to a remote server (eg. using H'I'I'P to "push" the docu-
`ment to the server). The server sends a generic notification of the document to an intended recipient. and the recipient
`can download the document from the server using local protocols. In preferred embodiments. the invention is used for
`the controlled delivery of portable documents. from a sender to a large number of recipients. using a network of servers
`that route the documents and notifications in a store and forward manner. while providing routing and accounting infor-
`mation back to the sender.
`
`According to a further aspect. the invention also provides a method and system for sending documents from a
`desktop computer inside an intranet through a series of firewalls andlor proxy servers to a server residing on the Inter-
`net. Firewalls presume that HTTP for textual data is a valid operation that allows users to fill in HTML forms. Thus. fire-
`walls do not block H'I'I'P for textual data. The invention circumvents the security provided by firewalls by using this
`Ifeature of HTTP to move a document through the firewall.
`A computer in an intranet system protected by a firewall 0r proxy server uses a software application to access the
`Internet. The software afso encodes binary data to be sent as text. This binary data may be subdivided into smaller text
`packets. The text packets are sent. using H'I'I'P. to a server outside the firewall. which has been configured to accept
`such text packets. The server converts the text packets back to the original binary data representation. The binary data.
`once resident on the internet server. can then be forwarded directly to other internet servers. internet desktop comput-
`ers. printers. or fax machines.
`The invention provides in a further aspect a document delivery server which dynamically customizes the format of
`a document to be delivered, based on the capabilities of the recipient and the type of document to be delivered. The
`server thereby enables the transparent delivery of formatted documents. regardless of the capabilities of the recipient.
`For example. the recipient platform could be a desktop computer. a network computer. a printer. a fax machine. or a
`personal digital assistant. The server attempts to maintain the information contained in the document in a high level rep-
`resentation and defers the decision of when to convert to a lower level representation. thereby maximizing the potential
`set of options and function at each step in the delivery process. Accordingly. the invention starts with a high-level rep—
`resentation of data. and only converts to a lower level representation if necessary.
`According to still another aspect a method and apparatus is provided in which a document preferably in a portable
`format. is fomarded to a remote server (eg. using H'I'I'P to “push" the document to the server). The server sends a
`generic notification of the document to an intended recipient. and the recipient can download the document from the
`server using local protocols.
`A method and system is also provided that sends documents from a desktop computer inside an intranet through
`a saries of firewalls andr'or proxy servers to a server residing on the Internet. A computer in an intranet system protected
`by a firewall or proxy server uses a software application to access the Internet. The software also encodes binary data
`
`
`
`EP 0 838 774 A2
`
`to be sent as text. This binary data may be stbdivided into smaller text packets. The text packets are sent. using HTTP.
`to a server outside the firewall. which has been configured to accept such text packets. The server converts the text
`packets back to the original binary data representation. The binary data. once resident on the internet server. can then
`be forwarded directly to other internet servers. internet desktop computers. printers. or fax machines.
`A document delivery server is also provided that dynamically customizes the format of a document to be delivered.
`based on the capabilities of the recipient and the type of document to be delivered. The server attempts to maintain the
`information contained in the document in a high level representation and defers the decision of when to convert to a
`lower level representation. thereby maximizing the potentiat set of options and function at each step in the delivery proc-
`ess.
`
`The invention will be better understood by reference to the following description of embodiments of the invention
`taken in conjection with the accompanying drawings. wherein:
`
`Figure 1 is a block diagram which depicts a binary fiie delivery system using one binary file server;
`
`Figure 2 is a block diagram which depicts a binary file delivery system using two binary file servers;
`
`Figure 3 is a block diagram which iilustrates key elements of a store item;
`
`Figure 4 is a schematic depiction of lhe binary file delivery server;
`
`Figure 5 provides an example of the architecture of one embodiment of the binary file server:
`
`Figure 6 illustrates different types of store events employed by the binary file delivery server;
`
`Figure 7 is a block diagram of the specific components within the binary file delivery server architecture;
`
`Figure 8 provides a block diagram illustrating of the architecture of the store;
`
`Figure 9 illustrates how the user session organizes internet clients into three layers. including sessions. transac-
`tions. and transports:
`
`Figure 10 illustrates the non-interactive tasks of a delivery. once the send session has created a store item or
`another server is forwarding a store item;
`
`Figure 1 1 provides detaits of the account manager architecture;
`
`Figure 12 provides details of the logger architecture:
`
`Figure 13 provides details of the server connector architecture;
`
`Figure 14 provides a functional block diagram which depicts a portable document delivery system using one port-
`able document delivery server;
`
`Figure 15 provides a functional block diagram which depicts a portable document delivery system using two port-
`able document delivery servers;
`
`Figure 16 illustrates how a portable document send client application and a portable document receive client appli-
`cation are used in the invention;
`
`Figure 17 illustrates how a server configuration user interface application is used in the invention:
`
`Figure 18 illustrates how a document can be sent by the fax gateway of a server to a printer:
`
`Figure 19 illustrates how a document can be sent by the department gateway of a dedidated corporate server
`through a LAN to a department printer;
`
`Fig. 20 is a schematic diagram of the system for transmission of data across a firewall andl‘or proxy server. accord-
`ing to the invention;
`
`TO
`
`15
`
`25
`
`30
`
`35
`
`40
`
`50
`
`55
`
`
`
`EP0838774A2
`
`W
`
`15
`
`20
`
`25
`
`3O
`
`40
`
`50
`
`Fig. 21 an exemplary flow chart illustrating the algorithm for transmission of data across a firewall andr‘or proxy
`server. according to the invention;
`
`Fig. 22 is an exemplary flow chart of the set of operations necessary to transfer a native file across a firewall andior
`proxy server. according to the invention;
`
`Fig. 23 is a block schematic diagram that shows an example at an application involving a dynamic document con-
`version server according to the invention;
`
`Fig. 24 is a block schematic diagram that shows another example oi an application involving the dynamic document
`conversion server according to the invention; and
`
`Fig. 25 is a block schematic diagram showing a presently preferred implementation of the dynamic data conversion
`server according to the invention.
`
`The binary file delivery system 10 enables corporations, publishers and individuals to distribute documents elec-
`tronically. lmportantly. unlike existing Web based document publishing technologies. the binary file delivery system 10
`allows the directed and secme distribution of documents. The Web could currently be characterized as a pull-publishing
`environment. where the consumer of documents must find and retrieve documents from a server. Push~publishing. by
`contrast. allows the producer of a document to direct the delivery of documents to consumers. Facsimile (tax). the
`postal service, and eiectronic mail (E-mail) are all examples of push-publishing.
`Figure 1 is a block diagram which depicts a binary file delivery system 10 using one binary file server 12. The binary
`file delivery system 10 allows users to push documents. enabling the producer oi documents to direct where those doc-
`uments will go. One way that the binary file delivery system 10 achieves push-publishing is by combining HTTP. which
`is usually implemented to pull information over a network. with SMTP (which only supports text). Additionally. the binary
`file delivery system 10 provides a host of services to facilitate the various apptications of directed document delivery. At
`one level, the binary lite delivery system 10 can be characterized as a new generation of facsimile technology. which
`utilizes networks instead 0! telephone lines. and moreover. introduces support for new document representations vastly
`superior to existing fax formats. At another level. the binary file delivery system 10 is a general purpose document deliv-
`ery server capable of supporting massive amounts of documents and transactions. in all cases. the binary tile delivery
`server 10 provides a complete and robust solution for document delivery.
`The binary file delivery server 10 is used for sending a set of binary tiles from one end-point to one or multiple end-
`points. An endpoint is typically a recipient 22 with Internet access. but can also be another entity. such as a facsimile
`machine 172 or a printer 178 (Figs. 14. 15}. The delivery of binary tiles is accomplished in a reliable. accountable. and
`tractable manner. The binary file delivery system 10 provides several levels of security for the directed files. from E-mail
`equivalent scourity, to better than facsimile or physical mail. The system also provides user account management
`including the credit and debit of billing accounts. The system can also cooperate between multiple binary file delivery
`sewers 12. which may or may not be controlled by some otherr authority. Figure 2 depicts a binary file delivery system
`using two binary file servers 12a and 12h. which communicate across an Internet.
`The binary file delivery server 12 operates in three primary modes. which include a public mode, where senders 16
`set up their accounts 132 themselves and are subject to billing. a private mode. where senders 16 are controlled by an
`administrator. and billing is more an internal accounting issue than a collection issue. and a publishing mode. where
`there are many recipients 22. but few senders 16.
`The binary tile delivery server 12 is comprised 01 separate functional oorrponents. and are not necessarily proc-
`esses or shared libraries. The binary file delivery server 12. shown schematically in Figure 4. inciudes an intelligent
`storage compartment called a store 42. which is augmented by a set of clients 44a -44n. called store clients 44. which
`use the store methods and listen to the store events. but do not interact with or know about other clients 44. An account
`manager 46 component is a shared service that keeps intormation about the sender 16. The design also incorporates
`information about recipients 22 for the case of a receive application (as opposed to e-mail notification).
`The clientr‘server general architecture provides a better extensibility than a more pipelined structure. It also decou-
`ples the store clients 44 from each other, which can be useful in the context where some tasks are interactive. while
`others are more background oriented.
`
`The Store.
`
`The store 42 contains a set of store items 48. As shown in Figure 3. a store item 48 includes a tree of binary files
`34 and a descriptor 36, which is a set of store-defined and client-defined attributes. The tree of binary tiles 34 can be
`viewed as part of the store-defined attributes.
`
`
`
`The bile storage system provides the following functionality:
`
`EP0838774A2
`
`1) Permanent storage of Store items 48 tag. the binary lite tree 34 contained in a store item 48 is written to disk)
`2) Client reaerite access to the descriptor 36. which is made up of store-defined and client-defined attributes
`(eg. a client 44 can write the expiration date of a store item 48)
`3) Client notification of store events 67 {9.9. clients 44 can be notified ot the creation event 68 ot a new store item
`48)
`4) Internal management according to store defined attributes (ag. store item expiration date generates an event).
`
`The store 42 provides access to the store items 48 and generates store events 67, wherein store items 48 have
`store-defined attributes such as ID. creation date, file count. file names. file data. and store events 67 can be listened
`to by the clients 44. Store events 6? may include the creation 68. deletion 69 or modification 70 of a store item 48. The
`events 67 play a crucial role in the architecture. since this defines how the ciients 44 synchronize their work with a very
`limited knowledge of the other.
`
`r
`
`lin.
`
`Store clients 44 can be at a wide variety. and specific clients will be detailed further. In this tramework. a store client
`44 is some component which uses some ot the store methods and or listens to some ot the store events 67 to perform
`useful tasks on the store items 48.
`
`70
`
`i5
`
`20
`
`Accgum Manager
`
`25
`
`The account manager 46 provides readfwrite access to user and billing accounts. and is used by clients 44 or other
`components of the system 10. The store 42 does not use or know about the accounts.
`
`hrmn.
`
`30
`
`35
`
`40
`
`5t?
`
`55
`
`Other components used by the store clients 44 and the store 42 itself are implemented within the architecture of
`the system. For example. inter-server communication. log management. and other administrative services. which is dis-
`cussed below.
`
`Figure 5 provides an exampie of the architecture of one embodiment of the binary file server 42. including client 44
`modules (52-66) that are used to implement server functions. The internet Send 52 is used to create store items 48 and
`fills in the attributes. The Internet Receive 54 opens existing store items 48 and can be used to modify their attributes.
`A Fax gateway 56 listens to the creation events 68 generated by the store 42, processes relevant store items 48. and
`then deletes them from the store 42. A forwarder 58 listens to the creation events 68 generated by the store 42. and
`then examines the attributes oi the new store items 48. and decides it forwarding is necessary. An archiver 60 listens
`to deletion events. and copies the store item 48 to secondary private storage before deletion occurs. The format trans-
`lator 62 listens to creation.