// MSGBIG APIs #include typedef *(BOOL (KPROPS* pData)) VapiCallback; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Callback Registration: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BOOL VapiRegisterMessageHandler (VapiCallback pCallbackFunction); BOOL VapiRegisterQueryResultsHandler (VapiCallback pCallbackFunction); // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Ingestion APIs (several interfaces, all identical functionality): // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BOOL VapiIngestMessage ( LPCTSTR pszXml); // entire message in XML form BOOL VapiIngestMessage ( LPCTSTR pszXmlFilename); // XML filename BOOL VapiIngestMessage ( FILE* fpXml); // XML as an open stream BOOL VapiIngestMessage ( int fdXml); // XML as an open file descriptor BOOL VapiIngestMessage ( LPCTSTR pszXmlFilename); // XML filename BOOL VapiIngestMessage ( KPROPS* pMetaData, // MessageID, SenderID, etc. KPROPS* pRecipients, // List of Recipient IDs LPCTSTR pszMessageBodyFilename); // option1: a local filename BOOL VapiIngestMessage ( KPROPS* pMetaData, // MessageID, SenderID, etc. KPROPS* pRecipients, // List of Recipient IDs FILE* fpBody); // option2: an open stream BOOL VapiIngestMessage ( KPROPS* pMetaData, // MessageID, SenderID, etc. KPROPS* pRecipients, // List of Recipient IDs int fdBody); // option3: an open file descriptor BOOL VapiIngestMessage ( KPROPS* pMetaData, // MessageID, SenderID, MessageBody, etc. KPROPS* pRecipients); // List of Recipient IDs // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Message UPDATE, RECALL and DELETE APIs: // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BOOL VapiUpdateMessage ( LPCTSTR pszXml); // update specified via XML BOOL VapiUpdateMessage ( KPROPS* pMetaData); // MessageID, UserID, meta data to update BOOL VapiRecallMessage ( LPCTSTR pszXml); // update specified via XML BOOL VapiRecallMessage ( KPROPS* pMetaData); // MessageID, UserID, meta data to update BOOL VapiDeleteMessage ( LPCTSTR pszXml); // delete specified via XML BOOL VapiDeleteMessage ( KPROPS* pMetaData); // MessageID, UserID, DeleteType=SOFT|HARD // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // Query APIs (several interfaces, all identical functionality): // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - BOOL VapiQueryStart ( KPROPS* pMetaData, // query by example off Meta Data (optional) LPCTSTR pszQueryString); // query string (optional)