using IntegryApiClient.Core.Domain.Abstraction.Contracts.Account; using IntegryApiClient.Core.Domain.RestClient.Contacts; using Microsoft.Extensions.Logging; using salesbook.Maui.Core.RestClient.IntegryApi.Dto; using salesbook.Shared.Core.Interface.IntegryApi; namespace salesbook.Maui.Core.RestClient.IntegryApi; public class IntegryNotificationRestClient( ILogger logger, IUserSession userSession, IIntegryApiRestClient integryApiRestClient ) : IIntegryNotificationRestClient { public async Task Register(string fcmToken, ILogger? logger1 = null) { logger1 ??= logger; var userDeviceToken = new RegisterDeviceDTO() { UserDeviceToken = new WtbUserDeviceTokenDTO() { DeviceToken = fcmToken, Platform = OperatingSystem.IsAndroid() ? "Android" : "iOS", Username = userSession.User.Username } }; try { await integryApiRestClient.AuthorizedPost($"device_tokens/insert", userDeviceToken, logger: logger1); } catch (Exception ex) { SentrySdk.CaptureException(ex); } } }