/[cvs]/nfo/perl/scripts/outlook2ldap/libs/Torus.README.text
ViewVC logotype

Annotation of /nfo/perl/scripts/outlook2ldap/libs/Torus.README.text

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Sun Jan 19 07:45:05 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
+ initial check-in

1 joko 1.1 NAME
2     Torus
3    
4     DESCRIPTION
5     Torus is a module to ease migration from Outlook.
6    
7     Torus uses CPAN's Win32::OLE to access Microsoft's MAPI locally and
8     CPAN's Net::LDAP to connect to a remote OpenLDAP-server (slapd).
9    
10     Access to these storage-implementations is wrapped via Data::Storage.
11     Core functionality of Torus is currently provided from Data::Transfer::Sync.
12    
13     We are starting with Contacts/Adresses, will go along with Messages,
14     Calendar-Items and Journaling-Features.
15     The "rest" should be able to be modeled and implemented on top of this.
16    
17     This is more a reference implementation than anything actually useful. ;-)
18     You'll also like to take a look at:
19     - Kroupware Project: http://kroupware.kde.org
20     - Outlook Connector Project: http://otlkcon.sourceforge.net
21     - bynari InsightConnector: http://bynari.net/index.php?id=7
22    
23     NEWS
24     2003-01-18 - initial check-in
25    
26     REQUIREMENTS
27     Win32::OLE
28     Net::LDAP
29     Data::Storage
30     Data::Transfer::Sync
31     ... and all their dependencies
32    
33     AUTHORS / COPYRIGHT
34     The Data::Storage module is Copyright (c) 2002 Andreas Motl.
35     All rights reserved.
36    
37     You may distribute it under the terms of either the GNU General Public
38     License or the Artistic License, as specified in the Perl README file.
39    
40     CONTRIBUTORS
41     Jan Hoffmann <jan@romain-volk.com>
42     Sebastian Utz <s.utz@tunemedia.de>
43    
44     SUPPORT / WARRANTY
45     Data::Storage is free software. IT COMES WITHOUT WARRANTY OF ANY KIND.
46    
47     BUGS
48     TODO
49     - outlook2ldap - essential modules:
50     - Net::LDAP
51     - Convert::ASN1 / BER1
52     - Unicode::String
53     - MIME::Base64
54     o use setup.pm with autoinstall, use ExtUtils::MakeMaker and/or h2xs
55     x extend logging/debugging-output (logfiles below log/)
56     o enhance mapping through expressions
57     o provide multiple use of same fields
58     o provide mechanism to concatenate fields
59     --> see etc/_future!
60     o make integrated setup
61     o provide gui(s)
62     o development (create mappings and stuff (testing, ...))
63     o productive use (control sync-processing at a central console)
64     o little hotsync-button (iconbar bottom-right) which provides some actions and some configuration-settings (put ACLs on these settings?)
65     o move libs/Torus to nfo-modules, exclude various metadata needed to actually sync with ldap and mappings (csv-files)
66     o provide example to sync with mysql/Tangram/mbox/...
67     o integrate genSchema.pl
68     o regeln:
69     o 3.spalte in outlook_ole_fields.csv: für "genSchema.pl"
70     o wenn 2.spalte und/oder 3. leer, dann wird kein mapping gemacht (genSchema sowieso nicht)
71     --> see etc/_future!
72     +- beliebige outlook-ordner zu ldap-ou's mappen
73     + fest deklarierte (level 1)
74     o tief referenzierte (level X) (!!!) (backup->Addressen->XYZ - Addressen)
75     o daten "rückwärts" übertragen!
76     + bugfix: utf8
77     o mapping aufbohren (csv -> xml) - integrate "schema"-property _per-field_!!!
78     o have the engine use this
79     o maybe provide cross-checks
80     --> see etc/_future!
81     o clean-up debugging (levels)
82     + debugging-level does not work when error occours in Net::LDAP::Entry while adding...
83     + display MAPI-object as hash
84     o transfer statistics
85     o zugriff auf outlook ohne rückfrage gewähren?
86     o v.a. wichtig, wenn integrierter zugriff (z.b. durch outlook-plugin) stattfindet
87     + verwenden _aller_ attribute, die mit einem address-eintrag assoziiert sein können?
88     + mileage (reisekilometer) kommt!
89     + bis dato unbekannte mapi-felder sollten nun auch verwendet werden können
90     o declare folder-mapping inside xml-file
91     o check-before-delete doesn't seem to work (again!)
92     o make basedn configurable
93     o introduce host-to-basedn-mapping
94     o provide additional fallback basedn
95     o maybe additional permissions for folder-autocreation
96     o rework regexes in Torus::Driver::ldap
97     o spaces in ou's?
98     o utf8-encoding for dn's in ou's
99     o also in other property-names (besides the attributes)?!
100     o ä, ö, ü
101     o Insight:
102     o cclient.dll
103     o InsightConnector.dll
104     o folder-mapping
105     o leerzeichen (non-word-chars) do not work inside foldernames
106     o regex fails:
107     o introduce some "highlevel-splitting" of ldap-addresses
108     o fix problems occoured 2003-01-06/07 @barschwaechter: rules, access to mapi, etc. (see email)
109     + syncOutlookContacts.pl --mapidump
110     + provide better workflow for development phase(s)
111     + configurable debugging
112     + configurable tracing
113     o do a _true_ sync! (no delete/add)
114     o handle folder-mapping/-creation completely _before_ continuing with single entries
115     o create non-existant and stuff....
116     o timestamp log-entries
117     o add fieldname-context to ldap_errors.log
118     o regeln für cn/dn - build
119     o wenn "sn" gesetzt, dann nimm "sn" als "cn"
120     o wenn "givenname" gesetzt, dann füge zu "cn" hinzu (bisheriger "build"-Vorgang)
121     o wenn "sn" leer, dann nimm stattdessen "FileAs" als "cn" und ab [Debug Level=1]info
122     o wenn "FileAs" leer, dann nimm stattdessen "FirstName" und ab [Debug Level=1]info
123     o wenn "FirstName" leer, dann nimm stattdessen "CompanyName" und ab [Debug Level=1]info
124     else ab [Debug Level=1] Warn:
125     "Couldn't build DN/CN cause neighter SN/FileAs/FirstName/CompanyName does exist." (Should not happen).
126     o collision checks!!!
127     o convert date-fields
128     o detect must-not-have characters in dn:
129     + replace "+" through "&"
130     o replace "," through "" [Kill]
131     o replace "ô" through "" [to UTF8]
132     o enhance mechanisms to talk to OLE:
133     o use "->EnumAllObjects"
134     o use "->FreeUnusedLibraries"
135     o use "->LastError"
136     o encode "dn" with utf8
137     o "member" is empty!!!
138     o free resources while processing
139     o Outlook (OLE)
140     o Perl (Variables, Objects)
141     o LDAP-Server (Handle)
142    
143     + integration with Data::Storage and Data::Transfer
144     + thrown away "L:" and "R:" o declarations for/in Data::Transfer::Sync
145     o split 'syncOutlookContacts.ini' into 'torus.ini' and 'outlook2ldap.ini'
146     o 'syncOutlookContacts.pl' reads 'outlook2ldap.ini' and runs 'feed.pl'
147     + Data::Transfer::Sync now utilizes DesignPattern::Object and DesignPattern::Bridge
148    
149     o for Horde:
150     o helper: some kinda "genSchema.pl"
151     o app: LDAP-Browser
152    
153     IDEAS
154     o acl based permissions (use Data::ACL?)
155     o combine Torus::Xyz with Device::Xyz somehow?
156     o assure published stuff contains no client-specific informations (HMI, ...)
157     o CPAN's AppConfig is still needed for now (could this be changed? e.g. using App::Config?)
158     o if not, just include it below "libs" or install "nmake" (through integrated setup) before configuring CPAN
159     (if you already have, do "perl -MCPAN -eshell" and "o conf init" to redo configuration)
160     o rework folder-mapping to use xml
161     o rework field-mapping to use xml (Data::Transfer::Sync!)
162     o rework declaration of while-transfer-rules and after-transfer-patches to xml
163     o example of a "while-transfer-rule"
164     o build "dn" from "cn/sn"
165     o must have "sn"
166     o if no "sn" given, just use "Vorname"
167     o don't allow some special characters inside "dn": '+' seems to get translated to '&' at somewhere in code
168     o example of a "after-transfer-patch-rule"
169     o copy contents of field "x" to field "y" to nivelate(?) access from ldap-query-engines we don't have access to! (the source!)
170     (e.g. query-/search-engines in commercial products like "MS Outlook 2000|2002|Express",
171     which also don't have _any_ mechanism to parametrize them)
172     o write papers about networking (computers _and_ small/embedded/electronic devices (atmel, c-control))
173     o janosch: how to control arbitrary devices via personal computers _and_ standalone circuits in parallel!
174     (using Device::SerialPort and Conrad C-Control together)
175     o implement infrastructure(s)
176     o actually handle folders (check, autocreation) completely _before_ starting to sync/process items/entries!
177     o provide easy-to-access shell-interface to LDAP (e.g. via Xyz::Xyz or (maybe later) "oedit.pl")
178     o this removes the need for the currently used Java-based Ldap-Client (which will stay more comfortable - of course)
179     o navigate via "cd" through containers, show items/entries via (e.g.) "dump"(?) and stuff...
180     ... the interactive feeling/behaviour is similar to navigating in a filesystem via a commandline-interface (CLI)
181     o sum up "must-have" features of known synchronization-tools for (e.g.) ...
182     o s25@once
183     o siemens custom sync (S45Sync.exe?)
184     o Nokia Communicator
185     o SyncML (it's not a device from a manufacturer, it's actually a XML-standard) -> sync4j@sourceforge
186     o use news (the nntp-protocol) for journalling-functionality
187     o have mapping stored inside ldap as well
188    

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed