35 lines
1.4 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace gehGassiApp.Core.Interfaces
{
/// <summary>
/// Schnittstellenbeschreibung für einen Service der alle Funktionen rund um Pushnotifications bereitstellt
/// </summary>
public interface IPushnotificationService
{
/// <summary>
/// Registrieren / Aktualisieren eines Devices für Push-Notifications
/// </summary>
/// <param name="installationId">Eindeutige ID</param>
/// <param name="channel">Push-Channel / Hub</param>
/// <param name="language">Sprache des Gerätes</param>
/// <param name="accessToken">Aktuelles Accesstoken</param>
/// <param name="token">CancellationToken</param>
/// <returns>True wenn Registrierung erfolgreich, false sonst</returns>
Task<bool> RegisterAsycn(string installationId, string channel, string language, string accessToken, CancellationToken token);
/// <summary>
/// Deregistrieren eines Devices für Push-Notifications
/// </summary>
/// <param name="installationId">Eindeutige ID</param>
/// <param name="accessToken">Aktuelles Accesstoken</param>
/// <param name="token">CancellationToken</param>
/// <returns>True wenn Deregistrierung erfolgreich, false sonst</returns>
Task<bool> UnregisterAsycn(string installationId, string accessToken, CancellationToken token);
}
}