throbber
PCT
`
`
`
`WORLD INTELLECTUAL PROPERTY ORGANIZATION
`International Bureau
`INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT)
`
`
`(51) International Patent Classification © :
`WO 97/41520
`
`
`(11) International Publication Number:
`GO6F 17/30, 13/42, 9/46, 15/16
`
`
` (43) International Publication Date:
`6 November 1997 (06.11.97)
`
`
` (21) International Application Number: PCT/US97/04719|(81) Designated States: AL, AM, AT, AT (Utility model), AU
`
`
`(Petty patent), AZ, BA, BB, BG, BR, BY, CA, CH, CN,
`(22) International Filing Date:
`20 March 1997 (20.03.97)
`
`
`
`CU, CZ, CZ (Utility model), DE, DE (Utility model), DK,
`DK (Utility model), EE, EE (Utility model), ES, Fl, Fi
`
`
`
`(Utility model), GB, GE, GH, HU,IL, IS, JP, KE, KG,
`
`
`
`(30) Priority Data:
`KP, KR, KZ, LK, LR, LS, LT, LU, LV, MD, MG, MK,
`08/640,334
`30 April 1996 (30.04.96)
`us
`
`
`
`MN, MW, MX, NO, NZ, PL, PT, RO, RU, SD, SE, SG,
`
`
`SI, SK, SK (Utility model), TJ, T™,TR, TT, UA, UG, US,
`
`
`UZ, VN, YU, ARIPO patent (GH, KE, LS, MW, SD, SZ,
`
`(71) Applicant(for all designated States except US): INTEL COR-
`
`
`UG), Eurasian patent (AM, AZ, BY, KG, KZ, MD, RU,TI,
`PORATION [US/US]; 2200 Mission College Boulevard,
`TM), European patent (AT, BE, CH, DE, DK, ES,FI, FR,
`
`Santa Clara, CA 95052 (US).
`
`
`GB, GR,JE, IT, LU, MC, NL, PT, SE), OAPI patent (BF,
`
`
`
`BJ, CF, CG, CI, CM, GA, GN, ML, MR, NE, SN,TD, TG),
`(72) Inventors; and
`
`(75) Inventors/Applicants (for US only): HUANG,Chu-Yi[-/US]:
`
`
`
`Apartment 12, 10620 S.W. Davies Road, Beaverton, OR
`Published
`
`97008 (US). ROMRELL, David, A. {US/US}; 2323 N.W.
`With international search report.
`
`
`188th Avenue #1911, Hillsboro, OR 97124 (US). TSO,
`Before the expiration of the time limit for amending the
`
`
`
`Michael, Man-Hak [AU/US]; 5744 S.E. Preston Court,
`claims and to be republished in the event of the receipt of
`Hillsboro, OR 97123 (US).
`
`
`amendments.
`
`94086 (US).
`
`
` (54) Title: A METHOD FOR SCALING LARGE E-MAIL DATABASES FOR DEVICES WITH LIMITED STORAGE
`
`(74) Agents: TAYLOR, Edwin, H.et al.; Blakely, Sokoloff, Taylor
`& Zafman LLP, 1279 Oakmead Parkway, Sunnyvale, CA
`
`
`EMAIL AGENT (57) Abstract
`
`
`
`(INTEL
`
` A method and apparatus for scaling E-mail (electronic mail) address book (132) databases for devices with limited storage capacity
`and synchronization of a first set of mail subsetter (128) for automatically generating a default personal address book (PAB) (128) and a
`mail synchronizer for application independent E-mail synchronization. A pseudo unique identification (200) is generated for each message
`
`
`
`
`Page 1 of 94
`
`GOOGLEEXHIBIT 1027
`
`Page 1 of 94
`
`GOOGLE EXHIBIT 1027
`
`

`

`Singapore
`
`Albania
`Armenia
`Austria
`Australia
`Azerbaijan
`Bosnia and Herzegovina
`Barbados
`Belgium
`Burkina Faso
`Bulgaria
`Benin
`Brazil
`Belarus
`Canada
`Central African Republic
`Congo
`Switzerland
`Cote d'Ivoire
`Cameroon
`China
`Cuba
`Czech Republic
`Germany
`Denmark
`Estonia
`
`Slovenia
`SI
`Slovakia
`SK
`Senegal
`SN
`Swaziland
`SZ
`Chad
`TD
`Togo
`TG
`Tajikietan
`TJ
`™ Turkmenistan
`Turkey
`Trinidad and Tobago
`Ukraine
`Uganda
`United States of America
`Uzbekistan
`Viet Nam
`Yugoslavia
`Zimbabwe
`
`Lesotho
`Lithuania
`Luxembourg
`Latvia
`Monaco
`Republic of Moldova
`Madagascar
`The former Yugoslav
`Republic of Macedonia
`Mali
`Mongolia
`Mauritania
`Malawi
`Mexico
`Niger
`Netherlands
`Norway
`New Zealand
`Poland
`Portugal
`Romania
`Russian Federation
`Sudan
`Sweden
`
`FOR THE PURPOSES OF INFORMATION ONLY
`
`Codes used to identify States party to the PCT on the front pages of pamphlets publishing international applications under the PCT.
`
`ES
`FI
`
`Spain
`Finland
`France
`Gabon
`United Kingdom
`Georgia
`Ghana
`Guinea
`Greece
`Hungary
`Treland
`Israel
`{celand
`Italy
`Japan
`Kenya
`Kyrgyzstan
`Democratic People’s
`Republic of Korea
`Republic of Korea
`Kazakstan
`Saint Lucia
`Liechtenstein
`Sri Lanka
`Liberia
`
`Page 2 of 94
`
`Page 2 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-1-
`
`A METHOD FOR SCALING LARGE
`E-MAIL DATABASES FOR DEVICES
`WITH LIMITED STORAGE
`
`This application is a Continuation-In-Part of pending application serial
`number 08/431,500 entitled APPLICATION INDEPENDENT RECORD LEVEL
`SYNCHRONIZATIONfiled April 28, 1995.
`
`(1)
`
`Field of the Invention
`
`The inventionrelates to E-mail (electronic mail) systems. More
`particularly, the present invention is related to the method and apparatusfor scaling
`E-mail address book databases for devices with limited storage capacity.
`
`(2)
`
`Background
`
`E-mail (electronic mail) is one of the most popular data use application for
`data and voice telephones,in particular, for cellular telephones. However,
`telephonesaretypically limited in storage capacity. An average advancedcellular
`phone (such as a SmartPhone) being designed has less than one mega byte (MB)
`of storage available for use by a user. In contrast, a typical electronic address
`database using corporate environments are very large.
`
`Giventhe storage constraints of devices such as a SmartPhone and the
`desirability for access to a large electronic address database,it is desirable to have
`some type of a default personal address book. Currently, there are a couple of E-
`mail systems which maybe used to offer some type of method for generating a
`default personal address book. However, neither of the systems are easy to use.
`For example, cc: Mail Mobile System from Lotus Development Corporation and
`cc: Mail Remote System from Lotus Development Corporation duplicate the
`address database (generally several mega-bytes in size) on a notebook PC
`(Personal Computer), or require the user to generate their own address book there
`
`Page 3 of 94
`
`Page 3 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-2-
`
`is no subsetting offered by the systems. Additionally the E-mail systems do not
`work with devices with limited storage such as is found in SmartPhones.
`
`MSMail system from Microsoft allows subsetting using personal address
`books, however, with this method and apparatus, the user must manually select
`and moveentries in the network databaseto his or her personal address book.
`Additionally, the method and apparatus clearly does not scale to large databases
`such as for corporations, where there may be a large number of employees. More
`specifically, manually finding, selecting and moving, for example one hundred
`people regularly from a large list of employeesis not only inefficient and slow but
`ultimately unusable in a corporate orlarge organizational environment, e.g. with
`tens of thousands of employees.
`
`Additionally, MS Mail does not provide synchronization for the personal
`address book and the network database. For example, if John Doe is in both a
`user's personal address book and in a network database and if John Doe's nameis
`deleted from the network database, his namewill remain in the user's personal
`address book. Hence,the user will not know that John Doe is no longer available
`until a mail is transmitted to him and the mail is returnedas“undeliverable”or
`
`“user unknown”.
`
`CC: Mail from Lotus Development Corporation provides synchronization
`butit is very inefficient. Synchronization is performed on-line with CC: Mail, 1.e.
`whenauser is connected and requires that the entire database be reconciled.
`Exemplary circumstances requiring reconciliation include when new records are
`added such as for new employees, when records have been deleted suchas to
`account for employeeattrition, and when updates are made such as for changed
`telephone numbers. Scanning a large database for changetakestens of minutes
`and since synchronization mustbe performed periodically, use of CC: Mail
`Remote or Mobile in a large organizational environment becomesimpractical.
`
`Thereforeit is desirable to have a method and an apparatus for scaling E-
`mail address book databases for devices with limited storage capacity by providing
`an easy to use method for generating default personal address books automatically
`
`Page 4 of 94
`
`Page 4 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-3-
`
`and to provide an efficient method for keeping the personal address books
`synchronized with a main database.
`
`
`
`BRIEFSUMMARYOFTHEINVENTION
`
`A method and an apparatus for scaling E-mail (electronic mail) address
`book databasesfor devices with limited storage capacity and synchronization of a
`first set of mail with a second setof mail at the message/folder level. A memory
`contains a mail subsetter for automatically generating a default personal address
`book and a mail synchronizer for application independent E-mail synchronization.
`A pseudouniqueidentification is generated for each message or folder in the mail
`boxes to be synchronized. An event log is then generated for each mail box. The
`memoryalso has a Synchronization mechanism for makingthefirst set of data and
`the second set of data equivalentby using the information in the ChangeList
`generated by the Change Detection Mechanism. A processor runs the mail
`synchronizer.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`Figure la illustrates the architecture of the present invention.
`Figure 1b illustrates an exemplary system block diagram with an
`implementationofthe present invention,
`Figure Icillustrates an exemplary system block diagram ofthe present
`invention.
`Figure 1d illustrates an exemplary personal address book.
`Figure le illustrates the general steps followed in an exemplary installation
`procedureinstalling the presentinvention’s client device address book (DAB).
`Figure2aillustrates an exemplary block diagram of the mail synchronizer
`of the present invention.
`Figure 2billustrates a block diagram ofthe identification (ID) generator
`illustrated in Figure 2a.
`
`Page 5 of 94
`
`Page 5 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-4-
`
`Figure 2c is a block diagram of event log generator 334 illustrated in
`Figure 2a.
`Figure 2d is an exemplary block diagram of the synch mechanism ofthe
`present invention.
`Figure 3a illustrates the general steps followed by the creation mechanism
`(creator) 122 illustrated in Figure Ic.
`Figure 3billustrates general steps followed in obtaining user settings (step
`301 of flow diagram in Figure 3a).
`Figure 3c illustrates the general steps followed including a personal
`address book (PAB) (step 302 illustrated in flow diagram Figure 3a).
`Figure 3d describes the general steps followed in processing the message
`(step 338 in Figure 3c).
`Figure 3e describes the general steps by which an addressis processed
`(step 346 offlow diagram illustrated in Figure 3d).
`Figure 3fillustrates the general steps followed including a device address
`book image (DABD(step 303 of flow diagram illustrated in Figure 3a).
`Figure 3g illustrates general steps in creating a DAB(step 304 of flow
`diagram of Figure 3a).
`Figure 3h describesthe general steps followed by the update mechanism
`(updator 123 illustrated in Figure 1c) of the present invention.
`Figure3i illustrates the general steps followed in processing changes in the
`mailbox (step 372 of Figure 3h).
`Figure 3j illustrates the general steps followed in synchronizing PAB with
`the data source (step 373 of Figure 3h).
`Figure 3k illustrates the general steps followed by the address
`synchronizer.
`Figure 4aillustrates an exemplary source ID table 410.
`Figure 4billustrates an exemplary changelist 420 for DAB 132.
`Figure 4cillustrates an exemplary changelist for DABI 130.
`Figure 4d illustrates an exemplary mergedlist created by merging and
`sorting by time the changelist for DABillustrated in Figure 4b andthe change list
`for DABIillustrated in Figure 4c.
`
`Page 6 of 94
`
`Page 6 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-5-
`
`Figure 5ais a block diagram illustrating an exemplary synchronization
`apparatus of the present invention.
`Figure 5bis a flow diagram illustrating the generalsteps followed by the
`apparatusillustrated in Figure 5a.
`Figure Sc illustrates exemplary data structures for exemplary ChangeLists
`CLO and CLI.
`Figures 5d - 5f are alternate embodiments of a system block diagram
`illustrating the mail synchronization method and apparatusofthe present
`invention.
`Figures 5g and 5h arestate transition diagramsillustrating how a change
`log is truncated to result in exactly one changeflag marked for each record.
`Figure 6aillustrates the general steps followed by the mail synchronizerof
`the present invention.
`Figure 6b describes the general steps followed by the present invention in
`generating a pseudo uniqueID for each mail in a mail box to be synchronized with
`another mail box.
`Figure 6c describes the general steps followed by the present invention in
`generating an eventlog for a mail.
`Figures 6d and 6¢illustrate the general steps followed bythe present
`invention in generating an event log for folders.
`Figure 7a is a flow chart describing the general steps followed by a SUID
`mechanism.
`Figures 7b and 7c are flow charts describing the general steps followed by
`a Change Detection mechanism.
`Figure 7dillustrates an exemplary data structure modified by the steps
`described in Figure 7b.
`Figures 8a - 8d are flow charts describing the general steps followed by an
`Error Correction mechanism.
`Figures 9a - 9e, and 10a and 10bare flow charts describing the general
`Steps followed by a Synchronization mechanism.
`Figures 11a - 11¢ are flow charts describing the general steps followed by
`a Change Existing Data mechanism.
`Figure 12is a tableillustrating the mail synchronization method ofthe
`present invention.
`
`Page 7 of 94
`
`Page 7 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`6-
`
`Figure 13 is a table illustrating exemplary mail synchronization scenarios
`where there are messages/folders with the same Key Field values.
`
`
`
`DETAILEDDESCRIPTIONOFTHEINVENTION
`
`Thepresent invention provides a method and an apparatus for a storage
`efficient mechanism suchthat users can address E-mail off-line on their
`SmartPhonesor Personal Digital Assistant’s (PDA’s), without devotingalarge
`amountof storage space for a database or having to frequently consult a remote
`database for extra E-mail related information such as by looking up E-mail
`addresses on a network server. The method and the apparatusof the present
`invention involves automatically generating, storing and maintaining a subset of a
`large address book containing E-mail addresseslocally on a client device with
`limited storage space such as a SmartPhone. The advantage of storing the E-mail
`addresseslocally on the client deviceis that users can address and compose E-mail
`off-line. This reduces connection time and cost required to send messages.
`Periodically, the data in the personal address book is synchronized with data in a
`master address book. The present invention therefore provides an easy-to-use
`methodfor generating a default personal address book automatically and an
`efficient method for keeping a personal address book synchronized with a master
`database.
`Figure 1a is an exemplary system block diagramillustrating the method
`and apparatusof the present invention. The present invention stores a subset of a
`given large address book(also referred herein as a master address book) locally on
`a SmartPhoneor any otherclient device such as a PDA (Personal Digital Assistant)
`to decrease connection time and enhance responsiveness to E-mail address
`
`requests.
`E-mail agent 100 runs continuously on a user's PC (personal computer) or
`network server 102, periodically checking for new messages. Additionally, E-
`mail agent 100 takes appropriate actions suchasto notify the user if a message is
`urgent. E-mail agent 100 is coupled to MAPI (Messaging Application
`Programming Interface) 105 which is a standard API (Application Programming
`Interface) for transferring and manipulating mail messages, MS Mail 101 which is
`an application used to access mail through MAPI (Mail Application Program
`
`Page 8 of 94
`
`Page 8 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-7-
`
`Interface), VIM (Vendor Independent Messaging) 109 whichis also a standard
`APIfor transferring and manipulating mail messages and cc: Mail 103 which is an
`application based on VIM foraccessing mail. The system is designed so that other
`mail API’s and applications can be supported.
`E-mail client application 104 runsonclient device 106 such as a
`SmartPhoneandallowsa user to compose messages, access his or her network E-
`mails and to manage messagefolders. Periodically, E-mail client application 104
`and E-mail agent 100 connectthrough a telephonecall (or through serial cable,
`LAN,etc.) to synchronizetheir states.
`Figure 1b illustrates an exemplary system block diagram ofthe present
`invention. Computer 102 has memory 114 coupled to CPU 116. Memory 114
`has mail synchronization 112 and various other elements 110 (also referred herein
`as subsetter 110) for subsetting a large E-mail address book to generate a smaller
`E-mail address book for client device 106. Further, computer 102 may have
`various peripheral devices 118 such as a keyboard and/or a display device.
`Computer 102 is also coupledto client device 118 as wasillustrated in Figure La.
`Figure Ic illustrates various componentsof the present invention residing
`on host device 102 and client device 106 respectively. Host device (desktop or
`server) 102 has PIM (Personal Information Manager) 120 whichstores contact
`names and numbers(i.e. addressing information). Host PC 102 also has creator
`122 forinitial creation of personal address book (PAB) 128, updator 123 for
`maintaining changes to PAB 128 based on new messages and changesin the
`network databases, mailbox 124 for storing all received and sent mail messages
`and MAB(master address book) 126 for storing E-mail directory information.
`MAB126 maybe a corporate address book if a user is on a LAN(localarea
`network) or may be a personal“master address book”ofa userif the useris ata
`stand alone PC. PAB (Personal Address Book) 128 in host device 102 is for
`Storing addresses, names, numbers, etc., (i.e. addressing information). PAB 128
`maybe periodically updated for changestoits addressentries. Source ID
`(identification) table 127 is a list of sources from which data for PAB 128 may be
`obtained. Sources of data for PAB 128 maybe by user manual entry, from MAB
`126, from PIM 120, etc. Each sourceis given a unique identifying number.
`Additionally, host device 102 also has DABI (Device Address Book Image) 130
`
`Page 9 of 94
`
`Page 9 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-8-
`
`which maybe stored in PAB 128 andis equivalentto the size of the limited storage
`area of DAB (Device Address Book) 132 of client device 106.
`More specifically, DABI 130 of host device 102 is a mirror image of DAB
`132 of client device 106. In one embodimentof the present invention, DABI 130
`is part of PAB 128(i.e. a subset of PAB 128).
`In this embodiment, whenever
`PAB 128 is updated, DABI 130 is automatically updated as well.
`In another
`embodimentof the present invention, DABI 130 maybe separate from PAB 128.
`In this alternate embodiment, DABI 130 may be updated according to the changes
`made to PAB 128. In both embodiments, whenever DABI 130 of host device 102
`is updated, DABI 130 ofhost device 102 and DAB 132 ofclient device 106 are
`synchronized with each other using address synchronizer 121. During
`synchronization, if an address in DAB 132 of host device 102 is no longerin
`DABI 130ofclient device 106, then the corresponding entry in DAB 132is
`deleted. Otherwise, if an address in DAB 132 of host device 102 is in DABI 130
`of client device 106, then the entire corresponding entry in DAB 132is replaced
`with the corresponding updated entry in DABI 130.
`Client device 106 may be various remoteclient devices such as a
`SmartPhone, a PDA or a notebook PC. Both host PC 102 andclient device 106
`have an application (e.g. E-mail systems), appO 134 and app! 136 respectively,
`for which the subsetting and the synchronization of the address books are being
`performed.
`PIM 120, Mailbox 124 and MAB126 mayreside on network server 127
`instead of on host PC 102. Morespecifically, modulesillustrated in host PC 102
`may exist locally (on host PC 102) or remotely (on network server 127) and it is
`assumedthat a network will take care of remote access if needed(i.e. for
`Mounting Network Volumes, Remote Procedure Calls, etc.). Such network
`implementation may be understood by a personskilled in the art given the detailed
`description of the present invention illustrated herein.
`Figure 1d illustrates an exemplary PAB 128 ofthe presentinvention. Each
`address entry 133 has variousfields 135, source IDs 137 and address entry
`ranking score 139. Theillustrated exemplary fields 135 are E-mail addressfield,
`name field and home phonefield. Eachfield 135 has a corresponding source ID
`137 which identifies what the source of the contents of field 135 is.
`
`Page 10 of 94
`
`Page 10 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-9-
`
`DABI 130 of host device 102 and DAB 132ofclient device 132 are
`subsets of PAB 128 and are formatted similar to PAB 128 with variousfields 135
`associated with selected address entries 133.
`With the present invention,it is assumedthata userof client and host
`device 106 and 102is likely to want to communicate with those users with whom
`he or she has communicated with in the past. Aspart of installation module 131
`for installing a client device E-mail host device connection (described in Figure le
`and the accompanying description),all the E-mail messagesin a given user's E-
`mail folders and archives are scannedanda list of E-mail addresses including
`mailing list names which are all the cohorts the user has corresponded with are
`compiled. Thelist also includesall the recipients copied on the messages.
`The namesand mailing lists of cohorts communicated with are then used to
`match against the names in MAB 126of a E-mail system such as CC: Mail 103 or
`MS Mail 101. The matching address entries are then automatically pulled out to
`form PAB 128. Each matching address entry 133 in PAB 128 contains the same
`informationas the corresponding MAB 126 entry, such as phone numbers, mail
`stops, etc. Additional information mayalso be retrieved from other applications
`(i.e. sources) which include address books, such as external contact databases or
`personal information managers (PIMs) 120. For non-matching entries’ (cohorts
`that are not in MAB 126) additional information such as phone number, mail stop,
`etc. for fields 135, may be retrieved from other sources (e.g. a contact database or
`PIM 120). The user mayalso be prompted to manually add additional information
`that was not included in MAB 126, the contact database, or PIM 120.
`Further, a user mayoptionally edit, add or delete address entries 133 from
`PAB 128 The user can also optionally specify PIM 120to be used to import
`additional contact information for the records in MAB 126. PIM 120 is also used
`if there is no data in the corporate address book.
`Since client device 106 such as SmartPhoneshavelimited storage that may
`notbe able to store the entire PAB 128, two capabilities are used to resolve this
`problem. First, only selected fields 135 of the additional information for address
`entries 135 are copied to DAB 132ofclient device 106 from PAB 128 (i.e. DABI
`130), minimizing the memory used by each address entry 133. Second, PAB 128
`is maintained as a ranked list according to address ranking score 139, and only the
`
`Page 11 of 94
`
`Page 11 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-10-
`
`highest ranked entries (most likely used) are copied into DAB 132 ofclient device
`106.
`
`To keep PAB 128 synchronized automatically, the present invention stores
`a duplicate of the user's PAB 128 on his or her PC 102 or network server 127.
`When a new E-mailis received, the present invention automatically checksif the
`sender and other users copied on the messageare in the compiled PAB 128. If so,
`the present invention updatesthe priority listing by updating address ranking score
`139. If not, the addresses are added to PAB 128 in the same manneras described
`above. Periodically, such as once a day, the present invention checks the PC copy
`of the user's PAB 128 against MAB 126.
`Anyentries including mailing lists which have been deleted from the
`network database (e.g. when a given useris no longer with the company) are
`deleted from the user's PAB 128. Any entries which have been changed such as
`whena user has a new phone numberare updated. Likewise, changesin fields
`from contact databases or PIM’s are also deleted and updated. The changesto the
`PABare queued on PC 102 and periodically transmitted to client device 106 for
`updates. Since it is very time consuming to periodically check the PC copyof the
`user's PAB 128 against MAB 126 andto perform the deletion and updates,
`updates to PAB 128 maybe performed whentheuseris not using his or her PC
`102.
`
`Additionally, a user may manually add additionalinformation(i.e. contents
`of fields 135 of PAB 128) when newentries are added to PAB 128. Since the
`update is being performed as a backgroundtask (possibly onthe server), the
`manually added fields 135 are left blank and a queue of addressentries 133
`needing informationis kept so the user canlater be notified and add the fields 135.
`Occasionally, a user may need to address a person notin his or her PAB
`128. In this case the user is given two options. The first option is to have E-mail
`client application 104 dial-up to connect to E-mail agent 100 and browsethe entries
`stored in PAB 128, MAB 126, or PIM 120. The second option is to allow the
`user to manually type and use an address without searching any address books.
`Thelatter option is useful for new contacts that would not be in an address book.
`Figure leillustrates the general steps followed in an exemplary installation
`procedureinstalling the present invention's client device E mail host device
`connection.
`In step 151, a user’s E-mail folders are scanned to find all the cohorts
`
`Page 12 of 94
`
`Page 12 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-11-
`
`that have been communicated with. Each cohort is added to PAB 128 witha
`numeric score reflecting how the address wasused(i.e. author of received
`message, destination of sent message, copied on sent message,etc.). If the cohort
`wasalreadyin thelist, then the score is increased. The result is a rankedlist ofall
`cohorts communicated with in the form of address ranking score 139.
`In step 152, MAB 126is scanned. Forillustration purposes,it is assumed
`that MAB 126 is a corporate E-mail directory. As entries are found that match the
`cohorts’ addresses, additional information in the corporate E-mail directory is
`copied to PAB 128. For example,the full name of the address is copied, along
`with the employee ID, mail stop, department, and phone number. For those
`address entries not found in the corporate E-mail directory (for example,off-site
`E-mail cohorts and recent new hires), no additional information is added durin£
`this stage of the installation procedure.
`In step 153, the user is given the option to include additional information
`that was not included in the corporate E-mail directory. If this optionis selected,
`then the user is prompted for PIM 120, contact database, or manual entry as the
`source (or sources) of this additional information. Installation module 131 scans
`the known sources for the cohorts communicated with. For example, a user may
`select to find additional information from a PIM such as ECCO from NetManage
`or from manualentry if empty fields are found.
`The additionalfields selected in ECCO contain home phone numbers,
`cellular phone numbersand mail addresses. As entries are found in the ECCO
`database, they are also copied into PAB 128. Along with eachfile stored in PAB
`128, there is a corresponding identifier 137 that indicates the source ofthe
`information containedin that field (MAB 126, PIM, Database, Manual Entry,
`etc.). The identifier is used later for synchronization of changes back to the source
`as will be described later. After scanning all known sources ofadditional
`information, there may still be emptyfields. The user can optionally enterthis
`information manually.
`In step 154,installation module 131 copies a portion of PAB 128(i.e.
`DABIT 130) to client device 106. The result is DAB 132. First the user selects
`whichfields of the PAB 128 should be included in DAB 132. For example, only
`the full name, work number, cellular number and home phone numberfields of
`PAB 128 may beselected. Installation module 131 then computes how many
`
`Page 13 of 94
`
`Page 13 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-12-
`
`entries can be copied onto DAB 132ofclient device 106 and copies only these
`entries starting with the highest ranking entry.
`Figures 2a through 2d, and 5 through 13 illustrate an exemplary method
`and apparatus for data synchronization which may be adaptedfor use in the
`present invention’s address synchronization process. Given the detailed
`description disclosed herein, such implementation of the address synchronization
`processof the present invention may be readily understood by a person skilled in
`the art.
`
`Figure 2ais a block diagram illustrating a mail synchronizer. Mail
`synchronizer 112 synchronizes changes made independently on an e-mail system
`on two separate computers or two different e-mail systems on the same computer.
`Pseudo unique ID (identification) generator 200 generates a pseudo unique ID for
`each mail orfolder in a mail box for an e-mail system. Event log generator 202
`generates an event log by generating events for each ID (i.e. for each mail or
`folder). Synch mechanism 204 synchronizes the mail boxes using the generated
`event logs.
`Figure 2b illustrates a block diagram of the ID generatorillustrated in
`Figure 2a. ID generator 200 has unique attribute selector 206 and ID creator 208.
`Uniqueattribute selector 206 selects an attribute that is most likely to be unique
`given a mail or a folder. ID creator 208 generates an ID for each mail or folder in a
`mail box.
`
`Figure 2c is a block diagram of the event log generatorillustrated in Figure
`2a. Event log generator 202 has mail event log generator 210 and folder event log
`generator 212. Mail event log generator 210 generates an eventfor the event log
`for each mail in mail boxes to be synchronized. Folder event log generator 212
`generates an event for the event log for each folder in the mail boxes to be
`synchronized.
`Figure 2d is a block diagram of the synch mechanism ofthe present
`inventionillustrated in Figure 2a. Synch mechanism 204 has sub-parts, Change
`Detection mechanism 230, Error Detection mechanism 234, Change Existing Data
`mechanism 238 and Synchronization mechanism 236. Change Detection
`mechanism 230 detects the changes which have occurred to a given mail box since
`the last synchronization. Error Detection 234 identifies incorrect updates and
`creates performed by Change Detection mechanism 230. Error conditions
`
`Page 14 of 94
`
`Page 14 of 94
`
`

`

`WO 97/41520
`
`PCT/US97/04719
`
`-13-
`
`triggering Error Detection 234 include when a record's Key Attribute has changed
`in MBO' and/or when more than one message/folderis sharing the same Key
`Attribute values (an example of a non-unique identifier case is described in more
`detail below). Synchronization mechanism 236, performsthe synchronization of
`data sets, given information regarding the mail boxes produced by Change
`Detection mechanism 230. Change Existing Data 238 modifies existing data to
`make the mail boxes equivalent.
`Figure3aillustrates the general steps followed by the creation mechanism
`(creator) 122illustrated in Figure 1c.
`In step 301, user setting according to the
`general steps followed in Figure 3b is obtained. (For a detailed description of the
`steps followed, turn to Figure 3b and the accompanying description).
`In step 302,
`PAB(Personal Address Book) 128is created following the general steps
`illustrated and described in Figure 3c.
`In step 303, DABI (Device Address Book
`Image) 130 is created following the generalstepsillustrated in Figure 3f. In step
`304, DAB (Device Address Book) 132 is created following the general steps
`illustrated and described in Figure 3g.
`Figure 3billustrates the general steps followed in obtaining user settings
`(step 301 of flow diagram in Figure 3a).
`In step 321, additional information
`sources are selected. The sources mayinclude, but are notlimited to, personal
`information managers, contact databases, or manual entry.
`In step 322, the user
`specifies what data fields are to be included in the device address book. The data
`fields are hereinafter referred to as “Additional Information”as they are in addition
`to the required E-mail address field. A sample of whatadditionalfields the user
`mayselect includes, butare not limited to, full name, work address, home
`address, work phone numbers, home phone number, cellular number, pager
`number, employee identification, birthday mail stop fields.
`In step 323, the ranking profile is selected. The rankingprofile consists of
`the score to be given to each entry depending on howanentry wasused. For
`example, a cohort that is cop

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket