コード例 #1
0
 private static async Task AskCurrentLocationAsync(CEKRequest request, AppConfiguration config, MessagingChatSettings settings)
 {
     await LineMessagingClientFactory.GetLineMessagingClient(config.MessagingApi.AccessToken).PushMessageAsync(
         request.Session.User.UserId, new List <ISendMessage>
     {
         new TextMessage(ClovaMessages.GetAskLocationMessage(settings.YourName)),
     });
 }
コード例 #2
0
 private static async Task AskCurrentLocationAsync(CEKRequest request, AppConfiguration config)
 {
     await LineMessagingClientFactory.GetLineMessagingClient(config.MessagingApi.AccessToken).PushMessageAsync(
         request.Session.User.UserId, new List <ISendMessage>
     {
         new TextMessage("Clovaから場所が尋ねられたよ。よかったら場所を教えてね。", new QuickReply(
                             new List <QuickReplyButtonObject>
         {
             new QuickReplyButtonObject(new LocationTemplateAction("現在地を送る")),
         })),
     });
 }
コード例 #3
0
        public static async Task <HttpResponseMessage> Run(
            [HttpTrigger(AuthorizationLevel.Function, "post", Route = null)] HttpRequestMessage req,
            ExecutionContext context,
            [Table("LocationLogs")] CloudTable locationLogs,
            ILogger log)
        {
            log.LogInformation("C# HTTP trigger function processed a request.");

            var config     = AppConfiguration.GetConfiguration(context);
            var lineEvents = await req.GetWebhookEventsAsync(config.MessagingApi.AppSecret);

            var client = LineMessagingClientFactory.GetLineMessagingClient(config.MessagingApi.AccessToken);
            var app    = new LineApp(client, locationLogs);
            await app.RunAsync(lineEvents);

            return(req.CreateResponse());
        }