Implementierung der Datetime-Picker-Aktion mit line-bot-sdk-python und Beispielimplementierung von Image Carousel

Einführung

Erst neulich wurden der LINE Messaging-API "Datetime Picker Action" und "Image Carousel" hinzugefügt, also ein Beispiel davon.

Ich habe eine PR über "Image Carousel" gemacht. Es tut mir leid, eine verdammte PR herauszubringen ...

https://github.com/line/line-bot-sdk-python/pull/59

Umgebung

--ngrok <-Ich habe es eingefügt, weil ich es einfach auf localhost testen wollte

Schecks wie "Unterschrift" werden diesmal weggelassen.

Beispiel für eine Datetime Picker-Aktion

https://github.com/line/line-bot-sdk-python/blob/master/tests/api/test_send_template_message.py

Der obige Beispielcode für den Testcode (L129 ~ 202) funktionierte nicht Also mit dem Beispiel, das funktioniert hat, als ich es implementiert habe

from django.http import HttpResponse
from linebot import LineBotApi, WebhookParser
from linebot.models import TemplateSendMessage, ButtonsTemplate, DatetimePickerTemplateAction

line_bot_api = LineBotApi('LINE_CHANNEL_ACCESS_TOKEN')
parser = WebhookParser('LINE_CHANNEL_SECRET')


def webhook(request):
    #Unterschriftenprüfung usw.
    
    for event in events:
        date_picker = TemplateSendMessage(
            alt_text='Stellen Sie das geplante Datum ein',
            template=ButtonsTemplate(
                text='Stellen Sie das geplante Datum ein',
                title='YYYY-MM-dd',
                actions=[
                    DatetimePickerTemplateAction(
                        label='Aufbau',
                        data='action=buy&itemid=1',
                        mode='date',
                        initial='2017-04-01',
                        min='2017-04-01',
                        max='2099-12-31'
                    )
                ]
            )
        )

        line_bot_api.reply_message(
            event.reply_token,
            date_picker
        )

    return HttpResponse()

Wenn die Zeit auf der Seite der LINE-App gesendet wird, können Sie den Wert auf der Serverseite mit "PostbackEvent" abrufen. Die vom Endbenutzer festgelegte Zeit kann unten abgerufen werden

if isinstance(event, PostbackEvent):
    event.postback.params['date'] #Die Diktiertaste ist für den Modus

Screen Shot 2017-09-13 at 22.40.03.png

Sie können date`` time`` datetime auf mode von DatetimePickerTemplateAction setzen. Einzelheiten finden Sie in der folgenden Referenz

Datetime picker action | LINE API Reference

Bild Karussell Probe

from line.models import ImageCarouselTemplate, ImageCarouselColumn
image_carousel_template_message = TemplateSendMessage(
    alt_text='Image carousel template',
    template=ImageCarouselTemplate(
        columns=[
            ImageCarouselColumn(
                image_url='https://example.com/item1.jpg',
                action=PostbackTemplateAction(
                     label='postback1',
                     data='action=buy&itemid=1'
                )
            ),
            ImageCarouselColumn(
                image_url='https://example.com/item2.jpg',
                action=MessageTemplateAction(
                    label='message2',
                    text='message text2'
                )
            ),
            ImageCarouselColumn(
                image_url='https://example.com/item3.jpg',
                action=URITemplateAction(
                    label='uri1',
                    uri='https://example.com/1'
                )
            )
        ]
    )
)

Screen Shot 2017-09-13 at 22.50.52.png

Recommended Posts

Implementierung der Datetime-Picker-Aktion mit line-bot-sdk-python und Beispielimplementierung von Image Carousel
Überprüfung und Implementierung der Videorekonstruktionsmethode mit GRU und Autoencoder
Implementierung von TF-IDF mit Gensim
Erklärung und Implementierung von SocialFoceModel
Erläuterung und Implementierung von PRML Kapitel 4
Bilderfassung von Firefox mit Python
Vorteile und Beispiele für die Verwendung von Rabbit Mq
Erklärung und Implementierung des ESIM-Algorithmus
Beurteilung des hintergrundbeleuchteten Bildes mit OpenCV
Einführung und Implementierung der Aktivierungsfunktion
Erklärung und Implementierung von einfachem Perzeptron
Implementierung von Desktop-Benachrichtigungen mit Python
Bilderkennung von Früchten mit VGG16