/[cvs]/nfo/perl/scripts/outlook2ldap/bin/outlook2ldap.pl
ViewVC logotype

Contents of /nfo/perl/scripts/outlook2ldap/bin/outlook2ldap.pl

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (show annotations)
Sat Jan 18 18:20:45 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
CVS Tags: v009, HEAD
File MIME type: text/plain
+ initial check-in

1 #!/usr/bin/perl
2
3 # ==================================
4 # startup
5 # ==================================
6
7 use strict;
8 use warnings;
9
10 # load configuration-data from ini-file
11 BEGIN {
12 use lib '../libs';
13 use loadConfig;
14 }
15
16 use Torus::API;
17
18 =pod
19 # autodispatch to Torus::API
20 use SOAP::Lite +autodispatch =>
21 proxy => "http://" . $config->get("soapservice_host") . ":" . $config->get("soapservice_port"),
22 ;
23 =cut
24
25
26 # for accessing MAPI via Win32::OLE ("Outlook.Application")
27 use Torus::Driver::mapi;
28
29 # dumping data or arbitrary objects
30 use Data::Dumper;
31
32 use Getopt::Long;
33
34
35 our $VERSION = '0.08';
36
37 # ==================================
38 # main
39 # ==================================
40
41 my $DEBUGLEVEL = $config->get("debug_level");
42
43 my $options;
44 GetOptions(
45 'mapidump' => \$options->{mapidump},
46 );
47
48 my $hr = "-" x 60 . "\n";
49
50 #Torus::Driver::mapi::readFieldMapping($config->get('file_mapping'));
51 Torus::Driver::mapi::start();
52
53 # V1 - get the default "Contact"-folder
54 #my $Contacts = Torus::Driver::mapi::getContactFolder();
55 # V2 - get an arbitrary specified folder
56 #my $Contacts = Torus::Driver::mapi::getContactFolder("test");
57 # V3 - work with multiple folders
58
59 my $foldernames = $config->get("folders_use");
60 foreach my $foldername (@$foldernames) {
61 #Torus::Driver::ldap::clearDnCache();
62 print $hr, " trying to access MAPI-Folder \"", $foldername, "\"", "\n", $hr;
63 if (my $Contacts = Torus::Driver::mapi::getContactFolder($foldername)) {
64 print " - syncing MAPI-Folder \"", $Contacts->name, "\"", "\n";
65 Torus::Driver::mapi::readMapiFolder($Contacts, $foldername, \&cb_getContact, $options);
66 print "\n";
67 } else {
68 print " - could not access MAPI-Folder \"", $foldername, "\"", "\n";
69 }
70 }
71
72 Torus::Driver::mapi::stop();
73
74 Torus::Driver::ldap::showCriticalEntries();
75 Torus::Driver::ldap::showGoodEntries();
76
77
78 # callback-function, recieves each Contact-Item data (attributes) as hash
79 sub cb_getContact {
80 # reference to hash with object-attributes
81 my $sourceFolderName = shift;
82 my $contact = shift;
83 Torus::API->sendContact($sourceFolderName, $contact);
84 print "." if $DEBUGLEVEL <= 1;
85 }
86
87 print "\n" if $DEBUGLEVEL <= 1;
88 print "ready.", "\n";

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