Konstruktionsverfahren für LINE Bot x Java (Spring Boot)

Dieser Eintrag ist der 21. Tag des GMO Ad Marketing Adventskalender 2018. Am Tag zuvor war @ thomi40s Über das WebVR-Framework "A-Frame".

Hallo, ich heiße @zakisanbaiman. Ich bin normalerweise für den logischen Teil (Java) der Werbeverteilungsanwendung verantwortlich.

Ich habe kürzlich mit LINE Bot gespielt, also zeige ich Ihnen, wie man es baut.

Bauablauf

  1. Erstellen Sie ein LINE @ -Konto
  2. Messaging API
  3. Vorbereitung von Heroku
  4. SDK-Vorbereitung
  5. Stellen Sie den Bot bereit
  6. Webhook-Einstellungen in LINE Developer

1. Erstellen Sie ein LINE @ -Konto

Erstellen Sie zunächst ein LINE @ -Konto Es gibt zwei Arten von Konten, aber wenn Sie ein Hobby sind, können Sie ein allgemeines Konto verwenden. スクリーンショット_2018-12-09_15_32_14.png

Dies ist der Bildschirm zur Kontoerstellung. Die Art des Geschäfts kann "individuell" sein. スクリーンショット 2018-12-09 15.40.24.png

Sobald Ihr Konto ausgestellt wurde, können Sie sich bei LINE @ MANAGER anmelden. Hier können Sie das Bot-Symbol und die Statusmeldung einstellen. Ich benutze diesen Bildschirm jedoch nicht sehr oft. スクリーンショット_2018-12-09_15_51_54.png

Dieses Mal verwenden wir die Messaging-API für den Bot. Fahren wir also mit "LINE Developers" fort. ¥ スクリーンショット_2018-12-09_15_47_25.png

Das Folgende ist der Bildschirm "LINE Developers". Ich benutze diese Seite hauptsächlich, um Bots einzurichten.

スクリーンショット_2018-12-09_16_05_33.png

  1. Messaging API

Wir werden den "Anbieter" einstellen. Der Anbieter hier ist der Dienstanbieter von Bot.

Kobito.Uof4qL.png

Der Anbieter wurde erstellt. Dann erstelle einen Kanal. ites01.png

Ich denke, der Plan sollte einmal "Developer Trial" sein. image.png

Stellen Sie hier den App-Namen und das App-Symbol ein. Kobito.dv18ve.png

Die App ist jetzt fertig. Am Ende der "Grundeinstellungen des Kanals" befindet sich ein QR-Code zum Hinzufügen von Freunden. Fügen wir also Freunde hinzu.

image.png

Wenn Sie sich als Freund registrieren, werden Sie standardmäßig nur begrüßt.

Kobito.GM1Ugt.png

Wenn dies in Ordnung ist, erstellen wir weiterhin ein Bot-Programm.

3. Vorbereitung von Heroku

Bereiten Sie einen Server zum Einschalten des Programms vor. Dieses Mal werden wir eine Cloud-Plattform namens Heroku verwenden, die kostenlos und einfach vorzubereiten ist. スクリーンショット 2018-12-18 10.59.50.png

Hier melden wir uns einfach einmal an. Ich werde Heroku etwas später einrichten. スクリーンショット 2018-12-19 23.36.13.png

4. SDK-Vorbereitung

Lassen Sie uns zunächst das von LINE aus GitHub erstellte SDK für die LINE-Bot-Entwicklung klonen. Dieses Mal werde ich Java einführen, aber es gibt auch PHP, Go, Perl, Ruby, Python, Node.js und so weiter. https://github.com/line/line-bot-sdk-java

Die Verzeichnisstruktur ist kompliziert, aber wenn Sie nur eine einfache Antwort geben möchten Alles was Sie tun müssen, ist sich mit Sample-Spring-Boot-Echo herumzuschlagen. Da der Papageienrückgabevorgang auch dann funktioniert, wenn der Code unverändert ist, wird die Java-Datei hier nicht geändert.

Es gibt eine Datei, die erstellt werden muss, wenn es nur eine gibt, und das ist application.yml. In den Ressourcen befindet sich application-template.yml. Kopieren Sie es also, um application.yml zu erstellen. (Pfad: line-bot-sdk-java / sample-spring-boot-echo / src / main / resources / application-template.yml)

Legen Sie das Kanaltoken und das Kanalgeheimnis in application.yml fest. (Beide sind in den grundlegenden Kanaleinstellungen aufgeführt)

application.yml


line.bot:
  channel-token: '{Kanal-Token}'
  channel-secret: '{Kanalgeheimnis}'
  handler.path: /callback

5. Stellen Sie den Bot bereit

In line-bot-sdk-java / sample-spring-boot-echo / README.md gibt es eine Schaltfläche mit dem Namen "Deploy to Heroku". Drücken Sie sie also.

Kobito.anDcdS.png

Dann wird der Browser geöffnet und der Anmeldebildschirm wird geöffnet. Melden Sie sich an. Geben Sie dann den App-Namen, das Kanalgeheimnis und das Kanal-Token ein und klicken Sie auf "App bereitstellen".

ites02_1.png

Die Bereitstellung dauert einige Minuten. Wenn jedoch "Ihre App wurde erfolgreich bereitgestellt" angezeigt wird, ist die Bereitstellung erfolgreich.

Kobito.rJWhav.png

6. Webhook-Einstellungen in LINE Developer

Stellen Sie die Webhook-Übertragung auf "Verwenden".

Kobito.HemXll.png

Setzen Sie die Webhook-URL auf "https: // $ {YOUR_HEROKU_APP_NAME} .herokuapp.com / callback". {YOUR_HEROKU_APP_NAME} ist der in heroku festgelegte App-Name.

Kobito.umGEKq.png

Stellen Sie die automatische Antwortnachricht auf "Nicht verwendet". Wenn Sie dies nicht einstellen, wird das erstellte Programm nicht aufgerufen.

Kobito.l06xUw.png

↑ Selbst wenn die oben genannten Einstellungen vorgenommen werden, werden sie möglicherweise nicht richtig wiedergegeben. In diesem Fall wird der Bildschirm angezeigt, wenn Sie ihn aktualisieren. Lassen Sie uns den Bildschirm aktualisieren.

Vorerst haben wir einen Bot, der den Papagei zurückbringt!

Kobito.vD2nql.png

Referenzseite

https://qiita.com/skycat_me/items/9f27cbd9354515df744a

Ich war süchtig nach

Nächster Adventskalender 2018

Morgen ist @ yoshishins [Try Rails 6-Aktionstext]. habe ein schönes Weihnachtsfest ~

Recommended Posts

Konstruktionsverfahren für LINE Bot x Java (Spring Boot)
Aufbau der Spring Boot + Docker Java-Entwicklungsumgebung
Konstruktionsverfahren für die JAVA + STS-Umgebung (Spring Tool Suite)
Spring Boot-Lernverfahren
[Java] Hallo Welt mit Java 14 x Spring Boot 2.3 x JUnit 5 ~
[LINE BOT] Ich habe einen Ramen BOT mit Java (Maven) + Heroku + Spring Boot (1) gemacht.
[Spring Boot] Umgebungskonstruktion (macOS)
[Java] Thymeleaf Basic (Spring Boot)
CICS-Java-Anwendung ausführen- (4) Spring Boot-App
Aufbau der Docker x Spring Boot-Umgebung
[Java] [Spring] Spring Boot 1.4-> 1.2 Downgrade Hinweis
Einstellungen für den Spring Boot 2.x-Kontextpfad
◆ Konstruktionsnotiz für Spring Boot + Gradle-Umgebung
Cassandra x Spring Boot Kampfrekord
[Java] [Spring] Spring Boot Das mysteriöse Hamarineta der Abhängigkeitsinjektion
[Processing x Java] Erstellen einer Entwicklungsumgebung
Spring Boot Umgebungskonstruktionsnotiz auf Mac
Erstellen Sie mit IntelliJ ein Java Spring Boot-Projekt
Frühling Java
Linienbot
Verwenden Sie den Cache mit EhCashe 2.x mit Spring Boot
Servlet-Filter mit Spring Boot verwenden [Spring Boot 1.x, 2.x kompatibel]
Java-Tipps - Erstellen Sie mit Gradle ein Spring Boot-Projekt
[Java] Artikel zum Hinzufügen einer Validierung mit Spring Boot 2.3.1.
Einfacher LINE BOT mit Java Servlet
[Java] Umgebungskonstruktion
Aufbau einer Java-Entwicklungsumgebung (Mac + Plejaden All in One Eclipse 4.7 + Spring Boot + Gradle (Buildship))
Fordern Sie Spring Boot heraus
Selen x Java
Spring Boot Form
[Frühling] Umweltbau
Spring Boot Denken Sie daran
gae + frühlingsstiefel
[Java] Spring DI ③
Ein Memorandum über die Sucht nach Spring Boot2 x Doma2
SSO mit GitHub OAuth in der Spring Boot 1.5.x-Umgebung
[Java] Umgebungskonstruktionsverfahren zum Entwickeln von Streben 1.3 mit Eclipse
Erstellen einer Datenbankumgebung mit Docker in Spring Boot (IntellJ)
Erstellen Sie eine Java + Spring-Entwicklungsumgebung mit VirtualBox + Ubuntu (Xfce4).