나군과 예정 조정을 하는 LINE의 Datetime picker action

덧붙여서 이 나군 LINE 계정은 비공식입니다.

나군 을 모르는 사람은 이쪽을 봅시다.

【폭소 필수】 Twitter에 초대물 신인 나타나는 wwwwww 【메시아 나@Messiah_ore】

LINE Messaging API의 Datetime picker action



글쎄, 내 군에 대해서는 이것만큼

오늘 공식 릴리스가 있던 LINE Bot의 새로운 기능입니다.

htps : // 라고 해서 r. 이 m/ぃね_로 V/s타츠 s/903109797431590913



새로운 액션



원래 템플릿 메시지 을 보낼 때 버튼을 누르면 템플릿 액션 라는 다양한 액션을 발화시킬 수 있었습니다.
  • Postback action: 지정한 data를 webhook에 보낼 수 있다
  • Message action: 지정한 텍스트를 발언시킨다
  • URI action : 지정된 URL을 열 수 있습니다.

  • Datetime picker action (이번 추가) : 날짜와 시간을 선택하는 대화 상자를 표시하고 선택한 정보를 Postback action와 같이 데이터를 보낼 수 있습니다.

    나 군과의 일정 조정하자



    만든 것은 이런 느낌.

    파티를 초대하는 곳에서 시작

    나군 스탬프 에서 딱 좋은 느낌의 스탬프로
  • 1. "빈 날 말해줘"라고 레스가 있다/Buttons 템플릿 사용하고 있습니다


  • 2. 좋다고 대답하면 예의 Datetime picker가 표시되므로 대답한다


  • 3. 일정이 맞지 않는 것 같다



  • 아무튼 이것뿐입니다.

    구현



    Node.js로 작성하고 있습니다.

    이런 느낌의 JSON을 써서 BOT에 답장합니다.
    "type": "datetimepicker" 의 지정 부분입니다.
    주의하는 것이 datetimepicker 를 지정하는 경우는 mode 의 키도 추가하지 않으면 안됩니다.

    작동 모드
    date: 날짜 선택
    time: 시간 선택
    datetime: 날짜 및 시간 선택
        const messageObject = {
            "type": "template",
            "altText": "this is a buttons template",
            "template": {
                "type": "buttons",
                "title": "空いてる日程教えてよ",
                "text": "Please select",
                "actions": [
                    {
                      "type": "datetimepicker",
                      "label": "いいよ",
                      "mode": "date",
                      "data": "action=datetemp&selectId=1"
                    },
                    {
                      "type": "postback",
                      "label": "やっぱりやめたい",
                      "data": "action=cancel&selectId=2"
                    },
                ]
            }
        };
    

    express와 body-parser를 사용합니다.

    weo의 내용이 MessagingAPI에서 말하는 WebhookEventObject입니다.Datetime Picker 에서 선택하면 web.type이 postback 가 반환되고 weo.postback.params 에 날짜 정보가 들어 있습니다.
    dateモード 를 지정한 경우 weo.postback.params.date 로 날짜를 받을 수 있습니다.

    time 모드를 지정하면 weo.postback.params.time 같은 느낌으로 지정

    bot.js
    
    /*色々省略*/
    
    app.post('/ore', (req, res) => {
    
        const weo = req.body.events[0];
        if(weo.type === 'postback'){
                console.log(weo.postback.params.date);
                const mes = `${weo.postback.params.date}ね。その日は予定があるんだ、ごめんね。`;
                const smo = [{type: 'text', text: mes}];
                const res = await reply({replyToken: weo.replyToken, messages: smo});
                console.log(res.status);
                return;
            }
    
         /*色々省略*/
    });
    
    /*色々省略*/
    

    결론



    이 기능이 너무 나왔다.

    iOS:7.9.0/Android:7.12.0 이상에서 대응하고 있습니다

    그래서.

    평상시 사용하는 Android 기기에서는 사용할 수 없었다는 곳이 치명적이었습니다.

    하지만 멋지네요.
    일정 조정 등에 꼭 활용합시다.

    좋은 웹페이지 즐겨찾기