glynskyi / ews Goto Github PK
View Code? Open in Web Editor NEWA Dart client library to access Microsoft Exchange web services. The library works against Office 365 Exchange Online as well as on premises Exchange.
License: MIT License
A Dart client library to access Microsoft Exchange web services. The library works against Office 365 Exchange Online as well as on premises Exchange.
License: MIT License
Hope to support flutter web.
Hi,
What an amazing package. Thank you very much for making it available to the community.
I am exploring using the package for sending emails from automated jobs. My organization requires a new password every month. Is there a way for the Credentials to use Active Directory to get the current password? That would save me the trouble to hash and store my password every time after it gets changed.
Thanks,
Tony
Hello, I've been looking at the code and it looks like you have copyright notice written in every file. What is reason for having it when you already have lincense file?
Also I would like to contribute to repo by improving static analysis of the code for now. Let me know if you are okay with it. Thanks
Calendar XML parse error
final service = ExchangeService.withVersion(ExchangeVersion.Exchange2016)
..Url = Uri.parse("https://outlook.office365.com/ews/exchange.asmx")
..Credentials = WebCredentials(USER_NAME, USER_PASSWORD,null);
final syncFolderId = FolderId.fromWellKnownFolderAndMailbox(WellKnownFolderName.Calendar, Mailbox.fromSmtpAddress("[email protected]"));
ServiceResponseCollection r = await service.BuildSyncFolderItemsRequest(syncFolderId, PropertySet.FirstClassProperties, null, 100, 5, SyncFolderItemsScope.NormalItems, null).Execute();
package:ews/Core/EwsUtilities.dart 982:7 EwsUtilities.Parse
package:ews/PropertyDefinitions/GenericPropertyDefinition.dart 85:25 GenericPropertyDefinition.Parse
package:ews/PropertyDefinitions/TypedPropertyDefinition.dart 117:32 TypedPropertyDefinition.LoadPropertyValueFromXml
package:ews/Core/PropertyBag.dart 545:32 PropertyBag.LoadFromXml
package:ews/Core/ServiceObjects/ServiceObject.dart 253:22 ServiceObject.LoadFromXmlWithPropertySet
package:ews/Core/Responses/SyncResponse.dart 156:38 SyncResponse.ReadElementsFromXml
package:ews/Core/Responses/ServiceResponse.dart 116:14 ServiceResponse.LoadFromXml
package:ews/Core/Requests/MultiResponseServiceRequest.dart 71:16 MultiResponseServiceRequest.ParseResponse
package:ews/Core/Requests/ServiceRequestBase.dart 186:17 ServiceRequestBase.ParseResponseWithHeaders
package:ews/Core/Requests/ServiceRequestBase.dart 492:16 ServiceRequestBase.ReadResponseWithHeaders
package:ews/Core/Requests/SimpleServiceRequestBase.dart 194:14 SimpleServiceRequestBase._ReadResponseXml
dart:async _completeOnAsyncReturn
package:ews/Core/EwsServiceXmlReader.dart EwsServiceXmlReader.Create
dart:async _completeOnAsyncReturn
package:ews/Xml/XmlReader.dart XmlReader.Create
Failed to load "E:\XIANG_MU\appointment_screen-test\appointment_screen-test\test\widget_test.dart": NotImplementedException{message: Parse(Busy)}
Hi,
I'm trying to add an attachment to a message and I can't make it work.
var file = File('C:\\README.txt');
final message = EmailMessage(service)
..Subject = 'test message'
..Body = MessageBody.withText('line1\nline2\n\nBye', BodyType.Text)
..ToRecipients.Add(EmailAddress(smtpAddress: to));
message.Attachments.AddFileAttachmentWithContent('filename.txt', file.readAsBytesSync());
await message.Save();
message.Send();
I get no errors, but no message is sent (nor it is saved in the Drafts folder). If I try to use await message.SendAndSaveCopy();
I get an error message.
I looked in the test directory but couldn't find anything that can help. Maybe it's also worth adding as an example to the documentation page as it is a pretty common task.
Thank you very much,
Tony
final folderId = FolderId.fromWellKnownFolderAndMailbox(WellKnownFolderName.Calendar, Mailbox.fromSmtpAddress("[email protected]"));
DateTime start = DateTime.parse("2020-03-18T16:00:00Z");
DateTime end = DateTime.parse("2020-03-19T16:00:00Z");
FindItemsResults fi =await service.FindItemsWithFolderIdAndView(folderId,CalendarView(start,end));
dart:core _StringBase.substring
package:ews/Core/EwsUtilities.dart 2818:38 EwsUtilities.XSDurationToTimeSpan
package:ews/PropertyDefinitions/TimeSpanPropertyDefinition.dart 54:25 TimeSpanPropertyDefinition.Parse
package:ews/PropertyDefinitions/TypedPropertyDefinition.dart 117:32 TypedPropertyDefinition.LoadPropertyValueFromXml
package:ews/Core/PropertyBag.dart 545:32 PropertyBag.LoadFromXml
package:ews/Core/ServiceObjects/ServiceObject.dart 253:22 ServiceObject.LoadFromXmlWithPropertySet
package:ews/Core/Responses/FindItemResponse.dart 178:18 FindItemResponse._InternalReadItemsFromXml
package:ews/Core/Responses/FindItemResponse.dart 92:7 FindItemResponse.ReadElementsFromXml
package:ews/Core/Responses/ServiceResponse.dart 116:14 ServiceResponse.LoadFromXml
package:ews/Core/Requests/MultiResponseServiceRequest.dart 71:16 MultiResponseServiceRequest.ParseResponse
package:ews/Core/Requests/ServiceRequestBase.dart 186:17 ServiceRequestBase.ParseResponseWithHeaders
package:ews/Core/Requests/ServiceRequestBase.dart 492:16 ServiceRequestBase.ReadResponseWithHeaders
package:ews/Core/Requests/SimpleServiceRequestBase.dart 194:14 SimpleServiceRequestBase._ReadResponseXml
dart:async _completeOnAsyncReturn
package:ews/Core/EwsServiceXmlReader.dart EwsServiceXmlReader.Create
dart:async _completeOnAsyncReturn
package:ews/Xml/XmlReader.dart XmlReader.Create
Failed to load "E:\XIANG_MU\appointment_screen-test\appointment_screen-test\test\widget_test.dart": Value not in range: -1
ItemId id = ItemId.withUniqueId(“xxxxxxxxxx”);
Appointment appointment = await Appointment.BindWithItemId(service, id);
appointment.SetSubject("subject");
Item i = await appointment.Update(ConflictResolutionMode.AlwaysOverwrite,true);
package:ews/Core/EwsServiceXmlWriter.dart 124:9 EwsServiceXmlWriter.TryConvertObjectToString
package:ews/Core/EwsServiceXmlWriter.dart 251:14 EwsServiceXmlWriter.WriteAttributeValue
package:ews/Core/Requests/UpdateItemRequest.dart 196:14 UpdateItemRequest.WriteAttributesToXml
package:ews/Core/Requests/ServiceRequestBase.dart 210:10 ServiceRequestBase.WriteBodyToXml
package:ews/Core/Requests/ServiceRequestBase.dart 380:10 ServiceRequestBase.WriteToXml
package:ews/Core/Requests/ServiceRequestBase.dart 413:10 ServiceRequestBase._EmitRequest
NotImplementedException{message: !!! TryConvertObjectToString SendInvitationsOrCancellationsMode.SendToAllAndSaveCopy of type SendInvitationsOrCancellationsMode}
GMT+08:00 . Creating calendar items in outlook web using a browser.
12:20:00.000Z >>>> 04:20:00.000Z bug
Appointment appointment = await Appointment.BindWithItemId(service, id);
print(appointment.Start);
print(appointment.End);
appointment.Start= appointment.Start.add(Duration(minutes: 10));
appointment.End= appointment.End.add(Duration(minutes: 10));
print("----------------------------");
print(appointment.Start);
print(appointment.End);
Item i1= await appointment.Update(ConflictResolutionMode.AlwaysOverwrite);
Appointment appointment2 = await Appointment.BindWithItemId(service, id);
print("----------------------------");
print(appointment2.Start);
print(appointment2.End);
2020-07-27 12:10:00.000Z
2020-07-27 13:40:00.000Z
----------------------------
2020-07-27 12:20:00.000Z
2020-07-27 13:50:00.000Z
----------------------------
2020-07-27 04:20:00.000Z
2020-07-27 05:50:00.000Z
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.