[PYTHON] [LINE WORKS-Version Trello Bot] So erstellen Sie einen privaten Gesprächsraum mit einem Gesprächsbot

Guten Abend, das ist @ 0yan. Ich habe in der Vergangenheit die folgenden Artikel über die LINE WORKS-Version von Trello Bot geschrieben.

** [Frühere Artikel] **

  1. Die Geschichte der Erstellung einer Trello Bot-Version von LINE WORKS mit Python
  2. Bis zur Bereitstellung von Trello Bot für LINE WORKS in Heroku
  3. [Hinweis] Implementierung von Trello Bot für LINE WORKS durch Python (PyPI Lineworks Installation Ver.)

Als ich jedoch auf Anfrage einer anderen Abteilung versuchte, einen Trello-Bot zu erstellen, der diesem Abschnitt gewidmet war, konnte ich nicht verstehen: "Was? Wie soll ich einen privaten Gesprächsraum einschließlich des Gesprächsbots einrichten ...?" (Kurz gesagt) Ich habe vergessen).

Vielleicht möchten diejenigen, die den obigen Artikel lesen, die Update-Benachrichtigung des Trello-Boards erhalten, die von einem bestimmten Mitglied geteilt wird (Sie möchten einen privaten Gesprächsraum erstellen) **, also werde ich diesen Artikel dieses Mal lesen Ich würde gerne schreiben.

Voraussetzungen

--LINE WORKS API-Informationen erfasst (Referenz: Vorbereitung für die API-Authentifizierung)

Umgebung

Bibliothek

Erstellen eines Trello-Bots

Befolgen Sie das gleiche Verfahren wie in Artikel 3

  1. Codierung
  2. Stellen Sie Heroku über GitHub bereit
  3. Erstellen Sie Trello Webhook Machen.

Wenn das Benachrichtigungsziel des Gesprächsbot eine bestimmte Person ist, ist es in Ordnung, wenn Sie die Konto-ID dieser Person in die Heroku-Umgebungsvariable "ACCOUNT_ID" eingeben. Wenn das Benachrichtigungsziel des Gesprächsbot jedoch ein privater Gesprächsraum ist, führen Sie die folgenden Arbeiten aus Ich werde.

Wenn das Benachrichtigungsziel des Gesprächsbot ein privater Gesprächsraum ist

① Ändern Sie den Quellcode

Der folgende Code ist der Code, der in der obigen Codierung geschrieben wurde. Geben Sie die Konto-ID (~ @ Domain Name) der Person, die Mitglied des zu erstellenden privaten Gesprächsraums sein soll, in das Element "Beliebige Konto-ID" in der Liste ein, die der Variablen "account_ids" von "create_room ()" zugewiesen werden soll. Geben Sie außerdem den Anzeigenamen des privaten Gesprächsraums in das Argument "Beliebiger Gesprächsraumname" der Funktion "talkbot.create_room ()" ein, die der Variablen "res" von "create_room ()" zugewiesen werden soll.

app.py


# coding: utf-8

import os

from flask import Flask, abort, request
from lineworks.talkbot_api import TalkBotApi


app = Flask(__name__)
talkbot = TalkBotApi(
    api_id=os.environ.get('API_ID'),
    private_key=os.environ.get('PRIVATE_KEY'),
    server_api_consumer_key=os.environ.get('SERVER_API_CONSUMER_KEY'),
    server_id=os.environ.get('SERVER_ID'),
    bot_no=os.environ.get('BOT_NO'),
    account_id=os.environ.get('ACCOUNT_ID'),
    room_id=os.environ.get('ROOM_ID'),
    domain_id=os.environ.get('DOMAIN_ID')
)


@app.route('/')
def index():
    return 'Start', 200


@app.route('/webhook', methods=['GET', 'HEAD', 'POST'])
def webhook():
    if request.method == 'GET':
        return 'Start', 200
    elif request.method == 'HEAD':
        return '', 200
    elif request.method == 'POST':
        action_type = request.json['action']['display']['translationKey']
        if action_type == 'action_comment_on_card':
            card_name = request.json['action']['data']['card']['name']
            user_name = request.json['action']['memberCreator']['fullName']
            comment = request.json['action']['data']['text']
            message = user_name + "Kommentiert.\n [Karte]" + card_name + "\n [Kommentar]" + comment
            talkbot.send_text_message(send_text=message)
            return '', 200
        else:
            pass
    else:
        abort(400)


@app.route('/create_room', methods=['GET'])
def create_room():
    if request.method == 'GET':
        account_ids = [
            "Beliebige Konto-ID",
            "Beliebige Konto-ID",
            "Beliebige Konto-ID",
            "Beliebige Konto-ID",
            "Beliebige Konto-ID"
        ]
        res = talkbot.create_room(account_ids=account_ids, title="Beliebiger Name des Gesprächsraums (z. B. Trello Bot)")
        return res, 200
    else:
        abort(400)        
        

if __name__ == '__main__':
    app.run()
② Erstellen Sie einen privaten Gesprächsraum mit Trello Bot und erhalten Sie eine Raum-ID

https://{Herokuのアプリ名}.herokuapp.com/create_room Wenn Sie auf die obige URL zugreifen, wird die Raum-ID als HTTP-Antwort zurückgegeben (die folgende Raum-ID wird im Browser angezeigt).

{
  "roomId": "123456"
}
③ Geben Sie die Raum-ID in die Heroku-Umgebungsvariable ein

Geben Sie die in ② erhaltene Raum-ID in die Heroku-Umgebungsvariable "ROOM_ID" ein. Vergessen Sie zu diesem Zeitpunkt nicht, die Heroku-Umgebungsvariable "ACCOUNT_ID" zu löschen.

④ Test

Versuchen Sie, Trellos Karte zu kommentieren. Sie erhalten eine Trello-Update-Benachrichtigung mit dem in ② angegebenen Namen des Gesprächsraums.

abschließend

Danke für Ihren Besuch. Ich hoffe, dass LINE WORKS weiter wachsen wird!

Recommended Posts

[LINE WORKS-Version Trello Bot] So erstellen Sie einen privaten Gesprächsraum mit einem Gesprächsbot
So erstellen Sie ein 1-zeiliges Kivy-Eingabefeld
So erstellen Sie ein Conda-Paket
So erstellen Sie eine virtuelle Brücke
Wie erstelle ich eine Docker-Datei?
So erstellen Sie eine Konfigurationsdatei
Erstellen Sie mit Django einen LINE-Bot
Erstellen Sie einen Bot, um Corona-Virus-Informationen zu retweeten
So erstellen Sie einen Git-Klonordner
[Python] [LINE Bot] Erstellen Sie einen LINE Bot mit Papageienrückgabe
So erstellen Sie ein Repository aus Medien
So senden Sie eine Nachricht mit Curl an LINE
So erstellen Sie ein Funktionsobjekt aus einer Zeichenfolge
Erstellen Sie mit Minette für Python einen LINE BOT
So erstellen Sie eine JSON-Datei in Python
Schritte zum Erstellen eines Twitter-Bots mit Python
Verfahren zur Erstellung plattformübergreifender Apps mit kivy
Erstellen Sie mit Amazon Lex einen LINE WORKS-Bot
[Hinweis] So erstellen Sie eine Mac-Entwicklungsumgebung
Die weltweit am einfachsten zu verstehende Erklärung zur Herstellung von LINE BOT (1) [Kontoerstellung]
Lesen Sie die Python-Markdown-Quelle: So erstellen Sie einen Parser
[AWS] Ich habe BOT mit LINE WORKS daran erinnert
So erstellen Sie einen Artikel über die Befehlszeile
[Python] Wie zeichnet man mit Matplotlib ein Liniendiagramm?
So erstellen Sie ein Untermenü mit dem Plug-In [Blender]
[Go] So erstellen Sie einen benutzerdefinierten Fehler für Sentry
So erstellen Sie ein lokales Repository für Linux
So erstellen Sie ein einfaches TCP-Server / Client-Skript
So erstellen Sie einen interaktiven LINE BOT 004 (beantworten Sie den Stichtag eines börsennotierten Unternehmens)
Erstellen Sie einen Slack Bot
So erstellen Sie mit Flask einen BOT für Cisco Webex-Teams
[Go language] Versuchen Sie, einen nutzlos zählbaren Zähler mit mehreren Threads zu erstellen
So installieren Sie NPI + Senden Sie eine Nachricht an Python
Erstellen Sie mit GoogleAppEngine / py einen LINE-Bot. Einfache nackte Version
Erstellen Sie einen Mastodon-Bot mit einer Funktion, die automatisch mit Python antwortet
So generieren Sie einen öffentlichen Schlüssel aus einem privaten SSH-Schlüssel
[Python Kivy] So erstellen Sie ein einfaches Popup-Fenster
Ich möchte eine Nachricht von Python an LINE Bot senden
Ich habe versucht, einen Bot für die Ankündigung eines Wiire-Ereignisses zu erstellen
[AWS] Ich habe BOT mit LINE WORKS (Implementierung) in Erinnerung gerufen.
Erstellen Sie eine automatische Klassenverwaltungs-App für Tenho Private Room mit LINE Bot und Python Part 1
Erstellen Sie mit LINE Bot und Python Part 2 eine automatische Klassenverwaltungs-App für Tenho Private Room
Erstellen Sie eine automatische Klassenverwaltungs-App für Tenho Private Room mit LINE Bot und Python Part ③