Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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))));
        }
Esempio n. 4
0
        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))));
        }
Esempio n. 5
0
        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))));
 }