MAPI ( Engelska Messaging Application Programming Interface ) är ett proprietärt API baserat på COM- modellen, samt ett meddelandeprogrammeringsgränssnitt från Microsoft som tillåter applikationer att arbeta med olika elektroniska meddelandesystem . MAPI låter dig ta emot, läsa, skapa, skicka meddelanden, bifoga filer till dem, komma åt bifogade filer, etc.
Exempel på applikationer som använder MAPI är Microsoft MAPI Controls och Microsoft Outlook .
MAPI ger ett konsekvent sätt för applikationer att interagera med många olika elektroniska meddelandesystem. MAPI-delsystemet inkluderar:
Mellan MAPI-delsystemet och meddelandesystemen finns tjänsteleverantörer som länkar systemen. De flesta meddelandesystem inkluderar tre typer av tjänster: leverantörer av meddelandelagring, adressboks- eller katalogleverantörer och leverantörer av meddelandetransport. Det finns andra, mindre vanliga leverantörer, som leverantörer av meddelandefångst och profilleverantörer.
Meddelanden skapas med hjälp av formulär, genom användarinmatning eller programmatiskt utan användarintervention. Innan ett meddelande skickas verifierar meddelandebutiksleverantören att varje mottagare är unik och att all information som krävs för att skicka meddelandet finns. Om valideringen lyckas placeras meddelandet i kön för utgående meddelanden. Om meddelandearkivet har en stark association (det vill säga den kan kommunicera direkt med den utan att använda MAPI-gränssnittet) med transportleverantören och meddelandet inte kräver ytterligare bearbetning, skickas det till transportleverantören utan användning av en spooler. I andra fall bearbetar spoolern meddelandet efter behov och hittar, baserat på mottagarens adress, en lämplig transportleverantör för att skicka meddelandet.
Det finns flera MAPI-klientgränssnitt:
MAPI-formulär är till för att skapa och visa meddelanden. Varje meddelandeklass kräver sin egen form. MAPI definierar flera meddelandeklasser och implementerar formulär för att visa dem. Varje formulär implementeras som en körbar COM-server som kallas en formulärserver. För att använda ett formulär använder en applikation MAPI-formulärgränssnittet för att anropa formulärhanteraren, som laddar den nödvändiga formulärservern och upprättar en anslutning mellan den och den anropande applikationen.
Tjänsteleverantörer implementerar objekt som i första hand används av MAPI, men av vilka några också kan användas av klientapplikationer. Vissa objekt implementeras av alla tjänsteleverantörer, resten är specifika för en typ av leverantör. Följande objekt kan implementeras av leverantörer:
Tills nyligen var Open Source -implementeringen av MAPI inte komplett. Men för tillfället finns det minst tre open source-projekt som arbetar med att implementera MAPI-protokollet i Free och Open Source Software (FOSS) bibliotek för senare användning i andra öppen källkodsapplikationer.
Denna lista inkluderar OpenMapi- projektet [1] , MAPI4Linux av Zarafa ( även en del av OpenMapi ) och libmapi [2] som en del av OpenChange- projektet [3] som i sin tur används i ett annat OpenChange-underprojekt som heter Evolution-MAPI . [4] Evolution-MAPI är en agent (anslutningsleverantör) som kan installeras i den populära open source Evolution groupware-klienten.