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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations)
Tue Jan 21 22:06:55 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
Changes since 1.2: +13 -5 lines
File MIME type: text/html
+ updated

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

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