grahamcobb / ews-client Goto Github PK
View Code? Open in Web Editor NEWThis project forked from ollyg/ews-client
Development of EWS::Client Perl distribution
Home Page: http://search.cpan.org/dist/EWS-Client
License: Other
This project forked from ollyg/ews-client
Development of EWS::Client Perl distribution
Home Page: http://search.cpan.org/dist/EWS-Client
License: Other
NAME EWS::Client - Microsoft Exchange Web Services Client VERSION version 1.113000 SYNOPSIS Set up your Exchange Web Services client. use EWS::Client; use DateTime; my $ews = EWS::Client->new({ server => 'exchangeserver.example.com', username => 'oliver', password => 's3krit', # or set in $ENV{EWS_PASS} }); Then perform operations on the Exchange server: my $entries = $ews->calendar->retrieve({ start => DateTime->now(), end => DateTime->now->add( months => 1 ), }); print "I retrieved ". $entries->count ." items\n"; while ($entries->has_next) { print $entries->next->Subject, "\n"; } my $contacts = $ews->contacts->retrieve; DESCRIPTION This module acts as a client to the Microsoft Exchange Web Services API. From here you can access calendar and contact entries in a nicely abstracted fashion. Query results are generally available in an iterator and convenience methods exist to access the properties of each entry. AUTHENTICATION Depending on the configuration of the Microsoft Exchange server, you can use either HTTP Basic Access Auth, or NTLM Negotiated Auth, from this module. The default is HTTP Basic Access Auth, so if using NTLM, the following additional option to "new()" is required: use_negotiated_auth => 1, METHODS EWS::Client->new( \%arguments ) Instantiates a new EWS client. There won't be any connection to the server until you call one of the calendar or contacts retrieval methods. "server" => Fully Qualified Domain Name (required) The host name of the Exchange server to which the module should connect. "username" => String (required) The account username under which the module will connect to Exchange. For Basic Access Auth this value will be URI encoded by the module, meaning you don't have to worry about escaping any special characters. For NTLM Negotiated Auth, pass a "user@domain" format username and it will automatically be converted into Windows' "domain\user" format for you. "password" => String OR via $ENV{EWS_PASS} (required) The password of the account under which the module will connect to Exchange. For Basic Access Auth this value will be URI encoded by the module. You can also provide the password via the "EWS_PASS" environment variable. "use_negotiated_auth" => True or False value The module will assume you wish to use HTTP Basic Access Auth, in which case you should enable that in your Exchange server. However for negotiated methods such as NTLM set this to a True value. "schema_path" => String (optional) A folder on your file system which contains the WSDL and two further Schema files (messages, and types) which describe the Exchange 2007 Web Services SOAP API. They are shipped with this module so your providing this is optional. "server_version" => String (optional) In each request to the server is specified the API version we expect to use. By default this is set to "Exchange2007_SP1" but you have the opportunity to set it to "Exchange2007" if you wish using this option. $ews->calendar() Retrieves the EWS::Client::Calendar object which allows search and retrieval of calendar entries and their various properties. See that linked manual page for more details. $ews->contacts() Retrieves the EWS::Client::Contacts object which allows retrieval of contact entries and their telephone numbers. See that linked manual page for more details. KNOWN ISSUES * No handling of time zone information, sorry. * The "SOAPAction" Header might be wrong for Exchange 2010. THANKS To Greg Shaw for sending patches for NTLM Authentication support and User Impersonation. AUTHOR Oliver Gorwits <[email protected]> COPYRIGHT AND LICENSE This software is copyright (c) 2011 by University of Oxford. This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.