4 ms·
> facilitating the native support for the Exchange protocol There is not one single “Exchange Protocol”. There’s MAPI, EWS, ActiveSync, and more. Anyone know w
by ejdyksen 3y ago
> facilitating the native support for the Exchange protocol
There is not one single “Exchange Protocol”. There’s MAPI, EWS, ActiveSync, and more. Anyone know what this uses?
- quonn 3y agoApparently EWS which makes sense. ActiveSync is for mobile and EWS is newer compared to MAPI (which is an API technically), although there is a protocol that maps this to RPC for the Exchange case.
- p_l 3y agoEWS if I recall correctly is transposition of MAPI-RPC onto HTTPS connection
- ejdyksen 3y agoEWS is a SOAP-based web services protocol. Totally separate from MAPI. What you're thinking of is called RPC-over-HTTP or sometimes "Outlook Anywhere".
- p_l 3y agoAhh. I wonder how it deals with things like MAPI (which still forms internals of Outlook and Exchange) not actually supporting HTML email[1] despite having a message for it (and Outlook being infamous for pushing HTML email in minds of many) [1] If you include a HTML Email message part in a MAPI store, the MS MAPI library explodes and declares the store unreadable. You have to wrap HTML in RTF and include it in RTF message part... ¯ \ _ ಠ _ ಠ _ / ¯
- quonn 3y agoIt‘s not totally separate from MAPI because it inherits a large amount of the legacy baggage. A compliant implementation will need a very similar object model, in particular most of the properties, streams and encapsulated formats are also transported through EWS.
- Aachen 3y ago> which is an API technically What's the difference between an API and a protocol? From my understanding, if a developer publishes an API or a protocol spec, I can use that to retrieve data from their server either way
- xxpor 3y agoAPI != Network API. Win32 is also an API.
- mdaniel 3y agoI would expect an API is a set of things one could call, and a protocol is the sequence of things that one must, should, or can do in order to be in compliance with what the other party in the protocol is expecting to happen HTTP is a protocol because one cannot just socket.write whatever bytes they want and have any good outcome, whereas socket.write is an API that is available in a hypothetical library
- blacklion 3y agoAPI is documentation for MAPI.DLL in this case. It is useless under non-windows system and requires this DLL, which is, effectively, Outlook backed. Network protocol between MAPI.DLL and Exchange server newer was published (but partially revers-engineered). And I've participated in project which uses MAPI.DLL, it was buggy as hell, and we delayed product release for whole year (!), trying to workaround all bugs. It was complete disaster and failed product too late to market.
- ejdyksen 3y agoYep, I was using MAPI as shorthand for both RPC MAPI (which was traditionally used inside corp networks, where port 35 would be open) and RPC-over-HTTP. There's also a JSON-based web services API that is, as far as I know, unpublished (which OWA and I think the "next gen" Outlook uses).
- gnabgib 3y agoAre you sure it's not Microsoft Graph? (did you find this in the docs somewhere?) The end of life of EWS has been set in stone for 2026[0] (although it's been implied EoL for a few years) seems futile to invest in an expiring service. [0]: https://www.windowscentral.com/software-apps/microsoft-is-set-to-pull-the-plug-on-exchange-web-services-ews-heres-the-cutoff-date https://www.windowscentral.com/software-apps/microsoft-is-se...
- lousken 3y agothis, i hope they are not wasting time on the protocol which is deprecated just like I hope Evolution will rewrite the exchange handling by that point