// Copyright 2005-2008 THALES, BAE Systems, Raytheon import "../Alert_Data_Router/ALMAS_Client.idl"; import "../Alert_Data_Router/ALMAS_DataModel.idl"; #ifndef __ALMAS_Management_DEF #define __ALMAS_Management_DEF [object,uuid(3BC17616-F798-421A-8FB9-DDC0A8259CE3),pointer_default(unique)] interface IALMAS_Manager : IUnknown { HRESULT Get_ALMAS_SystemID(IALMAS_NotificationListener *Handle); // alert retrieval methods HRESULT GetAlert ( [in] ALMAS_AlertIDType AlertID, [in] IALMAS_NotificationListener *Handle, [out] ALMAS_CallStatus *CallStatus); HRESULT GetAlerts ( [in] BSTR Filter, // Issue 12988 - LPSTR now BSTR [in] IALMAS_NotificationListener *Handle, [out] ALMAS_CallStatus *CallStatus); // ALMAS-wide control methods HRESULT SetAlertInhibited ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_TemplateIDType TemplateID, [in] boolean Inhibition); HRESULT UpdateDynamicMessageData ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR ObjectValue, [in] ALMAS_DynamicMessageDataType OldValue); HRESULT RegisterNotificationListener ( [out] ALMAS_CallStatus *CallStatus, [in] IALMAS_NotificationListener *Handle); // Template management methods HRESULT GetTemplate ( [in] IALMAS_NotificationListener *Handle, [in] ALMAS_TemplateIDType TemplateID, [out] ALMAS_CallStatus *CallStatus); HRESULT GetAllTemplateIDs ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR Filter, [in] IALMAS_NotificationListener *Handle); }; [object,uuid(6AE3866D-3EF5-4BBD-B2ED-261DBCFF2307),pointer_default(unique)] interface IALMAS_ManagerExtensions : IALMAS_Manager { HRESULT RemoveAlertsWithDynamicData ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR CancellerID, [in] BSTR DataType, [in] BSTR DataValue); HRESULT AttachCategorisationRule ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_TemplateIDType TemplateID, [in] long RuleID); HRESULT DetachCategorisationRule ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_TemplateIDType TemplateID, [in] long RuleID); }; [object,uuid(32033A16-EC76-4AC5-A457-D607B5CFD0CF),pointer_default(unique)] interface IALMAS_Producer : IUnknown { HRESULT RaiseAlertFromOverrides ( [out] ALMAS_AlertIDType *AlertID, [in] BSTR ProducerID, [in] ALMAS_TemplateIDType TemplateID, [in] ALMAS_CategoryType Category, [in] boolean ValidCategory, [in] short Priority, [in] boolean ValidPriority, [in] ALMAS_StatusType AlertStatus, [in] boolean ValidStatus, [in] ALMAS_ScopeType Scope, [in] boolean ValidScope, [in] ALMAS_TimeoutType Timeout, [in] boolean ValidTimeout, [in] boolean ConfirmationRequired, [in] boolean ValidConfirmationRequired, [in] BSTR SecondaryGrouping, [in] boolean ValidSecondaryGrouping, [in] boolean Persistent, [in] boolean ValidPersistent, [in] boolean ReliablyDistributed, [in] boolean ValidReliablyDistributed, [in] ALMAS_TimeoutActionType TimeoutAction, [in] boolean ValidTimeoutAction, [in] ALMAS_AckModelType AcknowledgementModel, [in] boolean ValidAcknowledgementModel, [in] SAFEARRAY(ALMAS_StaticMessageType) StaticMessages, [in] boolean ValidStaticMessages, [in] SAFEARRAY(ALMAS_DynamicMessageDataType) DynamicMessageData, [in] boolean ValidDynamicMessageData, [in] SAFEARRAY(ALMAS_ReceiverKindType) AlertReceivers, [in] boolean ValidAlertReceiverSet, [out] ALMAS_CallStatus *CallStatus); HRESULT RaiseAlertFromData ( [out] ALMAS_AlertIDType *AlertID, [in] BSTR ProducerID, [in] ALMAS_AlertTemplateType AlertInfo, [out] ALMAS_CallStatus *CallStatus); HRESULT RaiseAlertFromTemplate ( [out] ALMAS_AlertIDType *AlertID, [in] BSTR ProducerID, [in] ALMAS_TemplateIDType TemplateID, [out] ALMAS_CallStatus *CallStatus); HRESULT UpdateAlertPriority ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR ProducerID, [in] short Priority); HRESULT CancelAlert ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR CancellerID, [in] BSTR CancellationReason); }; [object,uuid(BA617DFD-6DBD-4F08-ACD5-E7F489A113E5),pointer_default(unique)] interface IALMAS_Responder : IUnknown { HRESULT RegisterReceiver ( [out] ALMAS_CallStatus *CallStatus, [in] IALMAS_Receiver *ReceiverHandle, [in] BSTR ReceiverID, [in] BSTR RKType); HRESULT UnregisterReceiver ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR ReceiverID); HRESULT AcknowledgeAlert ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR ReceiverID); HRESULT HandleAlert ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR ReceiverID); HRESULT ConfirmReceipt ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] BSTR ReceiverID); }; [object,uuid(CC748587-4926-45D7-B52E-4A88000A3426),pointer_default(unique)] interface IALMAS_ResponderExtensions : IALMAS_Responder { HRESULT SetLanguage ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR ReceiverID, [in] BSTR Language); HRESULT GetFilledMessageText ( [out] ALMAS_CallStatus *CallStatus, [in] ALMAS_AlertIDType AlertID, [in] [out] BSTR MessageText); }; [object,uuid(C3B50C13-8124-4A5F-98B8-9C68D9D1BDE9),pointer_default(unique)] interface IALMAS_Configuration : IUnknown { HRESULT LoadReceiverHierarchy ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR Filename); HRESULT LoadTemplateSet ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR Filename); HRESULT LoadConfiguration ( [out] ALMAS_CallStatus *CallStatus, [in] BSTR Filename); }; #endif