public void ValidateLineTextMessageSend()
        {
            LineMessageRequestModel req = new LineMessageRequestModel();

            Assert.IsTrue(ValidateModel(req).Any(
                              v => v.MemberNames.Contains("LineChannelAccessToken") &&
                              v.ErrorMessage.Contains("required")

                              ));
            Assert.IsTrue(ValidateModel(req).Any(
                              v =>
                              v.MemberNames.Contains("To") &&
                              v.ErrorMessage.Contains("required")

                              ));
            Assert.IsTrue(ValidateModel(req).Any(
                              v =>
                              v.MemberNames.Contains("Messages") &&
                              v.ErrorMessage.Contains("required")

                              ));

            req.Messages = new string[] { string.Empty };
            Assert.IsTrue(ValidateModel(req).Any(
                              v =>
                              v.MemberNames.Contains("Messages") &&
                              v.ErrorMessage.Contains("required")

                              ));
        }
        public async Task SendTextMessageNoWait(LineMessageRequestModel lineMessageRequest)
        {
            IList <HostedNotiJob> remainJob = await _cacheService.Get <IList <HostedNotiJob> >(HostedNotiJobKey.HostedJob).ConfigureAwait(false) ?? new List <HostedNotiJob>();

            HostedNotiJob hostedNotiJob = new HostedNotiJob()
            {
                Type = (int)HostedNotiJobType.LineNotification, LineMessageRequestModel = lineMessageRequest
            };

            remainJob.Add(hostedNotiJob);

            DateTime expire = DateTime.UtcNow.AddMonths(1);

            await _cacheService.Set <IList <HostedNotiJob> >(HostedNotiJobKey.HostedJob, remainJob, expire).ConfigureAwait(false);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> SendTextMessageWithNoWait([FromBody] LineMessageRequestModel req)
        {
            await _lineMessageService.SendTextMessageNoWait(req).ConfigureAwait(false);

            return(Ok());
        }
        public async Task SendTextMessage(LineMessageRequestModel lineMessageRequest)
        {
            _lineMessagingClient = new LineMessagingClient(lineMessageRequest.LineChannelAccessToken);

            await _lineMessagingClient.PushMessageAsync(lineMessageRequest.To, lineMessageRequest.Messages).ConfigureAwait(false);
        }