SESAR and Messenging
SESAR (Secure Exchanges Secure Archive and Restore) is the advanced messaging system.
Features
- Archived message restoration
- Encrypted callbacks
- Sent message tracking
- Archive system integration
Initialize SESAR
using SecureExchangesSDK.Helpers;
using SecureExchangesSDK.Models.Args;
Uri endpoint = new Uri("https://www.secure-exchanges.com/_api/0217/0217.asmx");
var initResponse = MessengingHelper.InitializeSesar(new InitSesarArgs
{
EndPointConfigurationName = endpoint,
Serial = serial,
ApiUser = apiUser,
ApiPassword = apiPassword
});
Create a Restore Request
// Get recent logs
Uri endpoint = new Uri("https://www.secure-exchanges.com/_api/0217/0217.asmx");
var logs = LogsHelper.GetLogs(new GetLogsArgs(
endpoint, serial, apiUser, apiPassword,
DateTime.Now.AddDays(-30), DateTime.Now
));
// Create restore request
var trackingIds = logs.Logs
.OrderByDescending(l => l.CreatedDate)
.Take(10)
.Select(l => l.TrackingId)
.ToList();
var restoreArgs = new CreateRestoreRequestArgs
{
EndPointConfigurationName = endpoint,
Serial = serial,
ApiUser = apiUser,
ApiPassword = apiPassword,
TrackingIDList = trackingIds
};
var response = MessengingHelper.CreateRestoreRequest(restoreArgs);
Retrieve Messages
// Private key in Base64 (stored securely)
string privateKey = SerializationHelper.DeserializeTextFromBase64(base64PrivateKey);
string hashKey = CryptoHelper.GetSHA512HashOfString(
CryptoHelper.GetPublicKeyFromPrivateKey(privateKey)
);
Uri endpoint = new Uri("https://www.secure-exchanges.com/_api/0217/0217.asmx");
var messengings = MessengingHelper.GetMessenging(new GetMessengingArgs
{
EndPointConfigurationName = endpoint,
Serial = serial,
ApiUser = apiUser,
ApiPassword = apiPassword,
HashKey = hashKey
});
foreach (var msg in messengings.Messengings)
{
// Decrypt and process each message
}