public async Task SendMessage(string id, string content) { var user = await _mediator.Send(new GetSubscriberQuery(id, PlatformId)); await _apiClient.Send(new SendRequest(id, new Message(content, await GetCancelButton(user.PreferredLanguage)), MessageTags.AccountUpdate)); _logger.LogInformation( "Facebook Messenger Platform Client: sent a generic message to user (uid: {user.Id}) with content (content: {content})", user, content); }
protected override async Task EndRegistration(IncompleteUser user) { await _mediator.Send(user.ToCreateSubscriptionCommand()); _dbContext.IncompleteUsers.Remove(user); await _dbContext.SaveChangesAsync(CancellationToken.None); await _apiClient.Send(new SendRequest(user.Id, new Message( await _translator.TranslateString("congratulations", user.PreferredLanguage), new[] { new QuickReply(await _translator.TranslateString("cancel-button", user.PreferredLanguage), new Payload(PayloadType.Cancel).ToJson()) }))); }
protected override async Task Base(Messaging message) { var uid = message.Sender.Id; var user = await _mediator.Send(new GetSubscriberQuery(uid, FacebookMessengerPlatformClient.PId)); await _mediator.Send(new CancelSubscriptionCommand(uid, FacebookMessengerPlatformClient.PId)); await _apiClient.Send(new SendRequest(uid, new Message(await _translator.TranslateString("subscription-cancelled", user.PreferredLanguage)))); }
protected override async Task Base(Messaging message) { var uid = message.Sender.Id; var user = await _dbContext.IncompleteUsers.FindAsync(uid); _dbContext.IncompleteUsers.Remove(user); await _dbContext.SaveChangesAsync(CancellationToken.None); await _apiClient.Send(new SendRequest(uid, new Message(await _translator.TranslateString("subscription-cancelled", user.PreferredLanguage)))); }
protected override async Task Base(Messaging message) { var uid = message.Sender.Id; var user = await _mediator.Send(new GetSubscriberQuery(uid, FacebookMessengerPlatformClient.PId)); await _apiClient.Send(new SendRequest(uid, new Message(await _translator.TranslateString("unsupported-command", user.PreferredLanguage), new[] { new QuickReply(await _translator.TranslateString("cancel-button", user.PreferredLanguage), new Payload(PayloadType.Cancel).ToJson()) }))); }
protected override async Task ShowInstructionBase(IncompleteUser user, int page) { await _apiClient.Send(new SendRequest(user.Id, new Message(await _translator.TranslateString("greeting", user.PreferredLanguage), await GetLangSelector(page, user.PreferredLanguage)))); }