someone know how i can get the meetings and events registered in the Calendar of MS Exchange.
For Office 365, you can use Office 365 REST APIs. See http://dev.outlook.com to get started. If you are working with Exchange server installed on-premises, you can use EWS Java API.
Related
The Stack:
Client: AngularJS & Firebase
Server 1: Microsoft Exchange Server
Server 2: NodeJS
AngularJS app loosely communicates with NodeJS through async task-queues. Client does not directly interact with NodeJS instances.
The Problem:
Perform simple operations on a User's calendar, with a task queued on a client and executed on a NodeJS instance.
What I've Tried:
ews-javascript-api: Works well, except there isn't a streamlined authentication mechanism. That is, it doesn't support OAuth authentication. In my opinion, managing each User's Exchange credentials is not a suitable solution.
iCalendar Events Subscription: (Still evaluating this approach.)
I guess fundamentally, what I am trying to do is have a User subscribe to calendar events in my app. I don't mind writing an API for Exchange Web Services but, it seems like overkill.
I am going to keep working on this, but if anyone knows of a simpler solution, it would be greatly appreciated.
I am the author of the library ews-javascript-api.
have you taken a look at https://stackoverflow.com/a/43785262/5884960?
I have provided information on how to use OAuth in the answer to the question in link. caveat is that you have to on-board each Office 365 separately, you can not run a node daemon and connect to multiple Office 365 Organization (without complex environment setup with org on boarding steps). This is quirks of Office 365 OAuth requirements not limited to the library itself. c# version have same limitation.
I have provided another library for helper authentications for ntlm and cookies, for Office 365 you just need ews-javascript-api.
I'm trying to figure out if there is a way to detect when a user launches one of the Office apps (Word, Excel, PowerPoint, OneNote, OneDrive, etc) so that I can add logic to perform some tasks if it's the first time the user has launched that particular Office app.
I was hoping the Microsoft Graph API would help me with this, but I can't find any guidance on how to do this. Is there a way to do this either with notifications or by polling/querying the API?
The closest thing to what you're asking for is Azure AD Reporting API for Sign-in activity:
https://learn.microsoft.com/en-us/azure/active-directory/active-directory-reporting-api-sign-in-activity-reference
Note that, at this time, this is only available in the Azure AD Graph, not the Microsoft Graph.
https://graph.windows.net/contoso.com/activities/signinEvents?api-version=beta
You can filter by user and/or appDisplayName.
https://graph.windows.net/contoso.com/activities/signinEvents?api-version=beta&$filter=appDisplayName eq 'Office 365'
Doing some quick testing by launching the Office Portal, Outlook, Sharepoint, etc, I saw the following entries:
Office 365
O365 Suite UX
Office 365 Exchange Online
Office.com
Office 365 SharePoint Online
Skype Web Experience On Office 365
You'll need to do some experimentation to see if you can see entries for everything your interested in. I don't think you'll get entries down to the granularity level you seem to be interested (Word, Excel, PowerPoint).
I'm trying to log the file name when attaching the file in skype for business by using Lync Client SDK 2013.
I used the ContentSharingModality's ModalityStateChanged and ContentAdded event.
My problem is that this ContentSharingModality's event only raised successfully on a online meeting
but this cannot raised when normal IM,Audio/Video Call.
Could you advice the best solve of my problem?
Thank you.
Content sharing is a feature of the conference server so it's only available in meeting conversations. It's not available in one-to-one conversations.
As soon as you add content in the Lync Client UI your conversation is auto-upgraded to a meeting conversation. If your using the Lync Client SDK you have to upgrade the conversation in code before you can start to use the ContentSharingModality or you have to detect the conversation being converted to a meeting conversation before you can use the ContentSharingModality.
As some background, my company is currently using an Apple Calendar server, some Exchange servers and a Google Apps subscription to provide calendaring for different parts of the organization. I've been tasked with providing free/busy access across these services while we try to take at least one of the services out of the equation.
I've attempted to use Google Interop, but it does not work with Exchange 2013 due to Microsoft eliminating Exchange Public Folder Databases in that release. I've also set up an IIS WebDAV server to attempt to share calendars, but this has shortcomings as well because only one person is able to moderate the calendar, and f/b data can't be queried in the Apple Calendar app - you have to subscribe to a separate f/b calendar.
Are there any suggestions as to how I should proceed?
If you can write your own connectors for each service (ie using propietary API's) you could then expose that information through a custom caldav service.
For example you could use http://milton.io (java) or http://sabre.io/ (php), both allow pulling data from arbitrary data sources.
I'm working on an application (server-side) that requires syncing calendar events.
The application is intended to work with both Google Calendar and Microsoft Exchange calendar services. I already have the Google calendar syncing in place thanks to their use of web-hook notifications when a resource changes, but I'm having trouble figuring out what method to use with Microsoft's service.
All I've been able to find when searching for a Microsoft solution has been related to EWS. Does the Office 365 calendar API provide any sort of notification mechanism? Am I missing some link/relation between O365 and EWS?
Thanks!
We are working on offering webhooks and sync for Office 365 Mail, Calendar and Contact REST APIs, especially for Calendar. Stay tuned.
[UPDATE] You can use Exchange Web Services in the interim. Take a look at SyncFolderItems, SyncFolderHierarchy, and Notifications. In the Notifications doc, you need to look at the info for Push Notifications.
If you are using O365, you will likely want Streaming Notifications as opposed to Push Notifications.