#ifndef __IMS_H__ #define __IMS_H__ /*h----------------------------------------------------------------------- Copyright (c)1995-96 Cynex. All rights reserved. $Archive: $ $Revision: $ $Author: $ $Date: $ Compiler: C/C++ Contents: Imagine Messaging Service $NoKeywords: $ ------------------------------------------------------------------------*/ /*s----------------------------------------------------------------------- Include files ------------------------------------------------------------------------*/ #include "cynex.h" /*s----------------------------------------------------------------------- Definitions ------------------------------------------------------------------------*/ // // Registrybase of IMS // #define REGKEY_IMS_BASE TEXT("Software\\Cynex\\IMS\\1.0") #define REGVALUE_IMS_BASE_HOMEDIR TEXT("HomeDir") #define REGVALUE_IMS_BASE_IMSSERVER TEXT("IMSServer") #define REGVALUE_IMS_BASE_IMSCLIENTPROTOCOL TEXT("IMSRpcClientProtocol") #define REGVALUE_IMS_BASE_IMSSERVERPROTOCOL TEXT("IMSRpcServerProtocols") #define REGVALUE_IMS_BASE_IMMSCLIENTPROTOCOL TEXT("IMMSRpcClientProtocol") #define REGVALUE_IMS_BASE_IMMSSERVERPROTOCOL TEXT("IMMSRpcServerProtocols") #define REGVALUE_IMS_BASE_RETRY_PAUSE TEXT("RetryPause") #define REGKEY_IMS_CUSTOMER_INFO TEXT("Software\\Cynex\\IMS\\1.0\\CustomerInfo") #define REGVALUE_IMS_CUSTOMER_INFO_COMPANY TEXT("Company") #define REGVALUE_IMS_CUSTOMER_INFO_NAME TEXT("Name") #define REGVALUE_IMS_CUSTOMER_INFO_ADDRESS TEXT("Address") #define REGVALUE_IMS_CUSTOMER_INFO_ZIPCITY TEXT("ZipAndCity") #define REGVALUE_IMS_CUSTOMER_INFO_PHONE TEXT("Phone") #define REGVALUE_IMS_CUSTOMER_INFO_FAX TEXT("Fax") #define REGVALUE_IMS_CUSTOMER_INFO_HANDY TEXT("Handy") #define REGVALUE_IMS_CUSTOMER_INFO_EMAIL TEXT("EMail") #define REGVALUE_IMS_CUSTOMER_INFO_NOTES TEXT("Notes") // // Imagine Messaging Flags (IMF) // Used for calls to IMProcessMessage // #define IMF_SHOW_LOCAL 1 #define IMF_LOG 2 #define IMF_ASYNCHRON 4 // // Messagelog state (ML) // #define ML_STATE_OK 0x0001 #define ML_STATE_FAILED 0x0002 #define ML_STATE_PENDING 0x0004 #define ML_STATE_ABORTED 0x0008 // // Messageresponse (MR) // #define MR_NOT_SUPPORTED 0x0000 #define MR_NONE 0x0000 #define MR_OK 0x0001 #define MR_CANCEL 0x0002 #define MR_HELP 0x0004 #define MR_YES 0x0008 #define MR_NO 0x0010 #define MR_RETRY 0x0020 #define MR_IGNORE 0x0040 #define MR_ABORT 0x0080 // // Default source address generator // #define IMS_DEFAULT_SOURCE_PROCESSOR TEXT("imsdefaultsource.dll") // // Receiver capabilities // IMSM = Imagine Messaging Service Module // #define IMSM_CAP_CONFIGURE_MESSAGE 0x00000001 #define IMSM_CAP_STORE_AND_FORWARD 0x00000002 #define IMSM_CAP_SECURE_CHANNEL 0x00000004 #define IMSM_CAP_MULTICAST 0x00000008 #define IMSM_CAP_PROCESS_HEADING 0x00010000 #define IMSM_CAP_PROCESS_TEXT 0x00020000 #define IMSM_CAP_PROCESS_HTML 0x00040000 #define IMSM_CAP_PROCESS_VIDEO_AVI 0x00080000 #define IMSM_CAP_PROCESS_VIDEO_MPEG 0x00100000 #define IMSM_CAP_PROCESS_AUDIO_WAV 0x00200000 #define IMSM_CAP_MR_NONE 0x0000 #define IMSM_CAP_MR_OK 0x0001 #define IMSM_CAP_MR_CANCEL 0x0002 #define IMSM_CAP_MR_HELP 0x0004 #define IMSM_CAP_MR_YES 0x0008 #define IMSM_CAP_MR_NO 0x0010 #define IMSM_CAP_MR_RETRY 0x0020 #define IMSM_CAP_MR_IGNORE 0x0040 #define IMSM_CAP_MR_ABORT 0x0080 // // max. Länge der Zusammenfassung von Nachrichten // #define STRING_MESSAGE_SUMMARY_LENGTH 200 // // Anzahl der unterstützen Sprachen // #define IMS_NO_OF_LANGUAGES 27 /*s----------------------------------------------------------------------- Type definitions ------------------------------------------------------------------------*/ #if !defined(__RPC_PROCEDURES__) || defined(__MIDL_PASS__) typedef UInt32_t IMCapability_t; typedef Int32_t IMMessageId_t; typedef UInt32_t IMDetailLevel_t; typedef enum _IMMessageClass_t { IMCUndefined = -1, IMCInformation = 0, IMCWarning, IMCError, IMCCritical } IMMessageClass_t; // // ACHTUNG: Falls eine Sprache hinzugefügt wird, // muß die Definition IMS_NO_OF_LANGUAGES angepaßt werden! // typedef enum _IMLanguage_t_ { IMLUndefined = 0x0, IMLGerman = 0x0000001, IMLEnglish = 0x0000002, IMLFrench = 0x0000004, IMLBulgarian = 0x0000008, IMLJapanese = 0x0000010, IMLChinese = 0x0000020, IMLKorean = 0x0000040, IMLCroatian = 0x0000080, IMLCzech = 0x0000100, IMLNorwegian = 0x0000200, IMLDanish = 0x0000400, IMLPolish = 0x0000800, IMLDutch = 0x0001000, IMLPortuguese = 0x0002000, IMLRomanian = 0x0004000, IMLFinnish = 0x0008000, IMLRussian = 0x0010000, IMLSlovak = 0x0020000, IMLSlovenian = 0x0040000, IMLGreek = 0x0080000, IMLSpanish = 0x0100000, IMLHungarian = 0x0200000, IMLSwedish = 0x0400000, IMLIcelandic = 0x0800000, IMLTurkish = 0x1000000, IMLItalian = 0x2000000} IMLanguage_t; typedef enum _IMMessageType_t_ { IMMTUndefined = -1, IMMTHeading = 0x0001, IMMTText = 0x0002, IMMTHTML = 0x0004, IMMTAudioWAV = 0x0008, IMMTVideoAVI = 0x0010, IMMTVideoMPEG = 0x0020 } IMMessageType_t; typedef UInt32_t IMMessageResponse_t; typedef struct _IMInsertData_s_ { IMMessageType_t messageType; UInt32_t size; Data_t data; } IMInsertData_s, *PIMInsertData_s; // // Message-Zusammenfassung // #ifdef __MIDL_PASS__ typedef struct _IMMessageProfile_s_ { [string] Char_t appName[STRING_NAME_LENGTH + 1]; [string] Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; IMDetailLevel_t maxDetailLevel; IMMessageType_t messageType; IMMessageClass_t messageClass; IMLanguage_t languages; [string] Char_t summary[STRING_MESSAGE_SUMMARY_LENGTH + 1]; } IMMessageProfile_s; #else typedef struct _IMMessageProfile_s_ { Char_t appName[STRING_NAME_LENGTH + 1]; Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; IMDetailLevel_t maxDetailLevel; IMMessageType_t messageType; IMMessageClass_t messageClass; IMLanguage_t languages; Char_t summary[STRING_MESSAGE_SUMMARY_LENGTH + 1]; } IMMessageProfile_s; #endif // // Source-Address // #ifdef __MIDL_PASS__ typedef struct _IMSource_s_ { [string] Char_t applicationName[STRING_NAME_LENGTH + 1]; [string] Char_t platform[STRING_NAME_LENGTH + 1]; [string] Char_t sourceName[STRING_NAME_LENGTH + 1]; [string] Char_t sourceAddress[STRING_NAME_LENGTH + 1]; [string] Char_t applicationType[STRING_UUID_LENGTH + 1]; } IMSource_s; #else typedef struct _IMSource_s_ { Char_t applicationName[STRING_NAME_LENGTH + 1]; Char_t platform[STRING_NAME_LENGTH + 1]; Char_t sourceName[STRING_NAME_LENGTH + 1]; Char_t sourceAddress[STRING_NAME_LENGTH + 1]; Char_t applicationType[STRING_UUID_LENGTH + 1]; } IMSource_s; #endif // // Receiver definitions // #ifdef __MIDL_PASS__ typedef struct _IMReceiverAddress_s_ { [string] Char_t displayName[STRING_NAME_LENGTH + 1]; [string] Char_t internalAddress[STRING_PATH_LENGTH + 1]; IMCapability_t channelCapabilities; IMMessageResponse_t responseCapabilities; } IMReceiverAddress_s; #else typedef struct _IMReceiverAddress_s_ { Char_t displayName[STRING_NAME_LENGTH + 1]; Char_t internalAddress[STRING_PATH_LENGTH + 1]; IMCapability_t channelCapabilities; IMMessageResponse_t responseCapabilities; } IMReceiverAddress_s; #endif #ifdef __MIDL_PASS__ typedef struct _IMChannel_s_ { [string] Char_t displayName[STRING_NAME_LENGTH + 1]; [string] Char_t computerName[STRING_NAME_LENGTH + 1]; [string] Char_t serviceName[STRING_NAME_LENGTH + 1]; [string] Char_t receiverId[STRING_UUID_LENGTH + 1]; [string] Char_t internalAddress[STRING_PATH_LENGTH + 1]; IMCapability_t channelCapabilities; IMMessageResponse_t responseCapabilities; } IMChannel_s; #else typedef struct _IMChannel_s_ { Char_t displayName[STRING_NAME_LENGTH + 1]; Char_t computerName[STRING_NAME_LENGTH + 1]; Char_t serviceName[STRING_NAME_LENGTH + 1]; Char_t receiverId[STRING_UUID_LENGTH + 1]; Char_t internalAddress[STRING_PATH_LENGTH + 1]; IMCapability_t channelCapabilities; IMMessageResponse_t responseCapabilities; } IMChannel_s; #endif #ifdef __MIDL_PASS__ typedef struct _IMCustomerInformation_s_ { [string] Char_t company[STRING_NAME_LENGTH + 1]; [string] Char_t name[STRING_NAME_LENGTH + 1]; [string] Char_t address[STRING_PATH_LENGTH + 1]; [string] Char_t zipAndCity[STRING_PATH_LENGTH + 1]; [string] Char_t phoneNo[STRING_PHONE_NO_LENGTH + 1]; [string] Char_t faxNo[STRING_PHONE_NO_LENGTH + 1]; [string] Char_t mobilePhoneNo[STRING_PHONE_NO_LENGTH + 1]; [string] Char_t email[STRING_PATH_LENGTH + 1]; [string] Char_t notes[STRING_NOTES_LENGTH + 1]; } IMCustomerInformation_s; #else typedef struct _IMCustomerInformation_s_ { Char_t company[STRING_NAME_LENGTH + 1]; Char_t name[STRING_NAME_LENGTH + 1]; Char_t address[STRING_PATH_LENGTH + 1]; Char_t zipAndCity[STRING_PATH_LENGTH + 1]; Char_t phoneNo[STRING_PHONE_NO_LENGTH + 1]; Char_t faxNo[STRING_PHONE_NO_LENGTH + 1]; Char_t mobilePhoneNo[STRING_PHONE_NO_LENGTH + 1]; Char_t email[STRING_PATH_LENGTH + 1]; Char_t notes[STRING_NOTES_LENGTH + 1]; } IMCustomerInformation_s; #endif #ifdef __MIDL_PASS__ typedef struct _IMReceiverMessageData_s_ { IMMessageType_t messageType; UInt32_t dataSize; [size_is(dataSize)] PByte_t data; } IMReceiverMessageData_s; typedef struct _IMReceiverMessage_s_ { IMCustomerInformation_s customerInformation; [string] Char_t platform[STRING_NAME_LENGTH + 1]; [string] Char_t applicationName[STRING_NAME_LENGTH + 1]; [string] Char_t applicationType[STRING_UUID_LENGTH + 1]; [string] Char_t subSourceAddress[STRING_NAME_LENGTH + 1]; IMMessageId_t messageId; IMMessageClass_t messageClass; IMMessageResponse_t requiredResponse; UInt32_t noOfData; [size_is(noOfData)] IMReceiverMessageData_s* data; } IMReceiverMessage_s; #else typedef struct _IMReceiverMessageData_s_ { IMMessageType_t messageType; UInt32_t dataSize; PByte_t data; } IMReceiverMessageData_s; typedef struct _IMReceiverMessage_s_ { IMCustomerInformation_s customerInformation; Char_t platform[STRING_NAME_LENGTH + 1]; Char_t applicationName[STRING_NAME_LENGTH + 1]; Char_t applicationType[STRING_UUID_LENGTH + 1]; Char_t subSourceAddress[STRING_NAME_LENGTH + 1]; IMMessageId_t messageId; IMMessageClass_t messageClass; IMMessageResponse_t requiredResponse; UInt32_t noOfData; IMReceiverMessageData_s* data; } IMReceiverMessage_s; #endif // // Database definitions // typedef struct _IMSDBTableReceiver_s_ { Char_t receiverId[STRING_UUID_LENGTH + 1]; Char_t name[STRING_NAME_LENGTH + 1]; Char_t computerName[STRING_NAME_LENGTH + 1]; Char_t phoneBookEntry[STRING_NAME_LENGTH + 1]; Char_t userName[STRING_NAME_LENGTH + 1]; Char_t password[STRING_PASSWORD_LENGTH + 1]; Char_t domain[STRING_NAME_LENGTH + 1]; Char_t processorPath[STRING_PATH_LENGTH + 1]; } IMSDBTableReceiver_s, IMReceiver_s; typedef struct _IMSDBTablePlatforms_s_ { Char_t name[STRING_NAME_LENGTH + 1]; Char_t appType[STRING_UUID_LENGTH + 1]; } IMSDBTablePlatforms_s, IMPlatform_s; typedef struct _IMSDBTableApplications_s_ { Char_t appType[STRING_UUID_LENGTH + 1]; Char_t name[STRING_NAME_LENGTH + 1]; Char_t sourceProcessorDLL[STRING_PATH_LENGTH + 1]; } IMSDBTableApplications_s, IMApplication_s; #ifdef __MIDL_PASS__ typedef struct _IMSDBTableMessages_s_ { [string] Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; IMMessageClass_t messageClass; IMMessageType_t messageType; IMDetailLevel_t messageDetail; IMLanguage_t messageLanguage; IMMessageResponse_t messageResponse; UInt32_t dataSize; [size_is(dataSize)] PByte_t data; } IMSDBTableMessages_s, IMMessage_s; #else typedef struct _IMSDBTableMessages_s_ { Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; IMMessageClass_t messageClass; IMMessageType_t messageType; IMDetailLevel_t messageDetail; IMLanguage_t messageLanguage; IMMessageResponse_t messageResponse; UInt32_t dataSize; PByte_t data; } IMSDBTableMessages_s, IMMessage_s; #endif typedef struct _IMSDBTableConnections_s_ { UInt32_t connectionId; Char_t name[STRING_NAME_LENGTH + 1]; } IMSDBTableConnections_s, IMConnection_s; typedef struct _IMSDBTableConnectionData_s_ { UInt32_t connectionId; Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; Char_t platformName[STRING_NAME_LENGTH + 1]; Char_t sourceAddress[STRING_NAME_LENGTH + 1]; IMDetailLevel_t detailLevel; IMLanguage_t language; Char_t receiverId[STRING_UUID_LENGTH + 1]; Char_t receiverComputerName[STRING_NAME_LENGTH + 1]; IMCapability_t receiverCapabilities; Char_t receiverAddress[STRING_NAME_LENGTH + 1]; } IMSDBTableConnectionData_s, IMConnectionData_s; typedef struct _IMSDBTableMessageLog_s_ { UInt32_t entryId; UInt32_t timeStamp; UInt32_t deliverTimeStamp; UInt32_t logState; UInt32_t connectionId; Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; Char_t platformName[STRING_NAME_LENGTH + 1]; Char_t sourceAddress[STRING_NAME_LENGTH + 1]; IMDetailLevel_t detailLevel; IMLanguage_t language; Char_t receiverId[STRING_UUID_LENGTH + 1]; Char_t receiverComputerName[STRING_NAME_LENGTH + 1]; IMCapability_t receiverCapabilities; Char_t receiverAddress[STRING_NAME_LENGTH + 1]; UInt32_t insertDataSize; PByte_t insertData; } IMSDBTableMessageLog_s, IMMessageLogEntry_s; typedef struct _IMSDBTableUserDefinedMessageData_s_ { Char_t appType[STRING_UUID_LENGTH + 1]; IMMessageId_t messageId; IMDetailLevel_t messageDetail; IMLanguage_t messageLanguage; Char_t receiverId[STRING_UUID_LENGTH + 1]; Char_t receiverAddress[STRING_NAME_LENGTH + 1]; UInt32_t dataSize; PByte_t data; } IMSDBTableUserDefinedMessageData_s, IMUserDefinedMessageData_s; #endif // __RPC_PROCEDURES__ /*s----------------------------------------------------------------------- Functions ------------------------------------------------------------------------*/ #if !defined(__MIDL_PASS__) #ifdef __cplusplus extern "C" { #endif // // Configuration // Retcode_t API_FUNCTION IMConnectionWizard( HWND parent, Char_t* nameBuffer, UInt32_t* noOfConnections, IMConnectionData_s** connectionData ); Retcode_t API_FUNCTION IMSetup( HWND parent ); Retcode_t API_FUNCTION IMReceiverSetup( HWND parent ); Retcode_t API_FUNCTION IMCustomerSetup( HWND parent ); Retcode_t API_FUNCTION IMAllocateMemory( UInt32_t dataSize, Pointer_t* pPointer ); Retcode_t API_FUNCTION IMFreeMemory( Pointer_t pPointer ); // // General functions // Retcode_t API_FUNCTION IMProcessMessage( HWND parent, Flags_t flags, Char_t* appType, Char_t* platform, Char_t* sourceAddress, IMMessageId_t messageId, IMLanguage_t language, IMDetailLevel_t detailLevel, UInt32_t noOfInsertData, IMInsertData_s* insertData, IMMessageResponse_t* messageResponse ); Retcode_t API_FUNCTION IMShowMessage( HWND parent, Char_t* appType, Char_t* sourceAddress, IMMessageId_t messageId, IMMessageResponse_t* messageResponse ); Retcode_t API_FUNCTION IMShowMessageEx( HWND parent, Char_t* appType, Char_t* sourceAddress, IMMessageId_t messageId, IMDetailLevel_t detailLevel, UInt32_t noOfInsertData, IMInsertData_s* insertData, IMMessageResponse_t* messageResponse ); Retcode_t API_FUNCTION IMInstallApplication( Char_t* platform, Char_t* appType, Char_t* appName, Char_t* sourceProcessor, Char_t* messageFile ); Retcode_t API_FUNCTION IMGetSources( UInt32_t bufferSize, IMSource_s* sourceInfos, UInt32_t* usedBufferSize ); Retcode_t API_FUNCTION IMGetChannels( UInt32_t bufferSize, IMChannel_s* channelInfos, UInt32_t* usedBufferSize ); Retcode_t API_FUNCTION IMGetMessageProfiles( Char_t* appType, UInt32_t bufferSize, IMMessageProfile_s* messageInfos, UInt32_t* usedBufferSize ); Retcode_t API_FUNCTION IMGetReceiverMessageData( IMReceiverMessage_s* receiverMessage, IMMessageType_t messageType, IMReceiverMessageData_s** receiverMessageData ); Retcode_t API_FUNCTION IMGetReceiverList( Char_t* computerName, Char_t* phoneBookEntry, Char_t* userName, Char_t* password, Char_t* domain, UInt32_t bufferSize, IMReceiver_s* receiverInfos, UInt32_t* usedBufferSize ); Retcode_t API_FUNCTION IMRegisterReceiver( IMReceiver_s* receiverInfo ); Retcode_t API_FUNCTION IMUnregisterReceiver( Char_t* receiverId, Char_t* computerName ); Retcode_t API_FUNCTION IMGetCustomerInformation( IMCustomerInformation_s* customerInfo ); Retcode_t API_FUNCTION IMSetCustomerInformation( IMCustomerInformation_s* customerInfo ); // // Database API // Retcode_t API_FUNCTION IMDBFreeMemory( Pointer_t pPointer ); Retcode_t API_FUNCTION IMDBCreateDatabase(); Retcode_t API_FUNCTION IMDBAddNewReceiver( IMReceiver_s* receiverInfo ); Retcode_t API_FUNCTION IMDBDeleteReceiver( Char_t* receiverId, Char_t* computerName ); Retcode_t API_FUNCTION IMDBGetReceiver( Char_t* receiverId, Char_t* computerName, IMReceiver_s* receiverInfo ); Retcode_t API_FUNCTION IMDBGetFirstReceiver( Char_t* computerName, PHEnum_t iteratorHandle, IMReceiver_s* receiverInfo ); Retcode_t API_FUNCTION IMDBGetNextReceiver( PHEnum_t iteratorHandle, IMReceiver_s* receiverInfo ); Retcode_t API_FUNCTION IMDBAddNewPlatform( IMPlatform_s* platformInfo ); Retcode_t API_FUNCTION IMDBDeletePlatform( String_t platformName, Char_t* appType ); Retcode_t API_FUNCTION IMDBGetPlatform( String_t platformName, Char_t* appType, IMPlatform_s* platformInfo ); Retcode_t API_FUNCTION IMDBUpdatePlatform( String_t platformName, Char_t* appType, IMPlatform_s* platformInfo ); Retcode_t API_FUNCTION IMDBGetFirstPlatform( Char_t* appType, PHEnum_t iteratorHandle, IMPlatform_s* platformInfo ); Retcode_t API_FUNCTION IMDBGetNextPlatform( PHEnum_t iteratorHandle, IMPlatform_s* platformInfo ); Retcode_t API_FUNCTION IMDBAddNewApplication( IMApplication_s* appInfo ); Retcode_t API_FUNCTION IMDBDeleteApplication( Char_t* appType ); Retcode_t API_FUNCTION IMDBGetApplication( Char_t* appType, IMApplication_s* appInfo ); Retcode_t API_FUNCTION IMDBGetFirstApplication( PHEnum_t iteratorHandle, IMApplication_s* appInfo ); Retcode_t API_FUNCTION IMDBGetNextApplication( PHEnum_t iteratorHandle, IMApplication_s* appInfo ); Retcode_t API_FUNCTION IMDBAddNewMessage( IMMessage_s* messageInfo ); Retcode_t API_FUNCTION IMDBDeleteMessage( Char_t* appType, IMMessageId_t messageId, IMMessageType_t messageType, IMDetailLevel_t messageDetail, IMLanguage_t messageLanguage ); Retcode_t API_FUNCTION IMDBGetMessage( Char_t* appType, IMMessageId_t messageId, IMMessageType_t messageType, IMDetailLevel_t messageDetail, IMLanguage_t messageLanguage, IMMessage_s* messageInfo ); Retcode_t API_FUNCTION IMDBGetFirstMessage( Char_t* appType, PHEnum_t iteratorHandle, IMMessage_s* messageInfo ); Retcode_t API_FUNCTION IMDBGetNextMessage( PHEnum_t iteratorHandle, IMMessage_s* messageInfo ); Retcode_t API_FUNCTION IMDBAddNewConnection( IMConnection_s* connectionInfo ); Retcode_t API_FUNCTION IMDBDeleteConnection( UInt32_t connectionId ); Retcode_t API_FUNCTION IMDBGetConnection( UInt32_t connectionId, IMConnection_s* connectionInfo ); Retcode_t API_FUNCTION IMDBGetFirstConnection( PHEnum_t iteratorHandle, IMConnection_s* connectionInfo ); Retcode_t API_FUNCTION IMDBGetNextConnection( PHEnum_t iteratorHandle, IMConnection_s* connectionInfo ); Retcode_t API_FUNCTION IMDBAddNewConnectionData( IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBDeleteConnectionData( UInt32_t connectionId, Char_t* appType, IMMessageId_t messageId, String_t platform, String_t sourceAddress, Char_t* receiverId ); Retcode_t API_FUNCTION IMDBGetConnectionData( UInt32_t connectionId, Char_t* appType, IMMessageId_t messageId, String_t platform, String_t sourceAddress, Char_t* receiverId, IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBGetFirstConnectionData( UInt32_t connectionId, PHEnum_t iteratorHandle, IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBGetNextConnectionData( PHEnum_t iteratorHandle, IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBGetFirstConnectionDataWithReceiver( UInt32_t connectionId, Char_t* appType, IMMessageId_t messageId, String_t platform, String_t sourceAddress, PHEnum_t iteratorHandle, IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBGetNextConnectionDataWithReceiver( PHEnum_t iteratorHandle, IMConnectionData_s* connectionDataInfo ); Retcode_t API_FUNCTION IMDBAddNewMessageLogEntry( IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBDeleteMessageLogEntry( UInt32_t entryId ); Retcode_t API_FUNCTION IMDBUpdateMessageLogEntry( UInt32_t entryId, IMMessageLogEntry_s* newMessageLogEntry ); Retcode_t API_FUNCTION IMDBGetMessageLogEntry( UInt32_t entryId, IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBGetFirstMessageLogEntry( PHEnum_t iteratorHandle, IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBGetNextMessageLogEntry( PHEnum_t iteratorHandle, IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBGetFirstFailedMessageLogEntry( PHEnum_t iteratorHandle, IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBGetNextFailedMessageLogEntry( PHEnum_t iteratorHandle, IMMessageLogEntry_s* messageLogEntry ); Retcode_t API_FUNCTION IMDBAddNewUserDefinedMessageData( IMUserDefinedMessageData_s* userDefinedMessageData ); Retcode_t API_FUNCTION IMDBDeleteUserDefinedMessageData( Char_t* appType, IMMessageId_t messageId, IMDetailLevel_t messageDetail, IMLanguage_t language, Char_t* receiverId, Char_t* receiverAddress ); Retcode_t API_FUNCTION IMDBGetUserDefinedMessageData( Char_t* appType, IMMessageId_t messageId, IMDetailLevel_t messageDetail, IMLanguage_t language, Char_t* receiverId, Char_t* receiverAddress, IMUserDefinedMessageData_s* userDefinedMessageData ); Retcode_t API_FUNCTION IMDBUpdateUserDefinedMessageData( Char_t* appType, IMMessageId_t messageId, IMDetailLevel_t messageDetail, IMLanguage_t language, Char_t* receiverId, Char_t* receiverAddress, IMUserDefinedMessageData_s* userDefinedMessageData ); #ifdef __cplusplus } #endif #endif // __MIDL_PASS__ #endif // __IMS_H__