Überblick
Diese Seite ist die Laravel-Fassung des offiziellen AT-Protocol-Bot-Tutorials. Sie zeigt, wie Sie die für TypeScript ausgelegten Inhalte mit dem Paketlaravel-bluesky in PHP/Laravel umsetzen.
Im offiziellen Tutorial werden die Lexicon-Dateien jeweils mit dem lex-Kommando heruntergeladen. Bei laravel-bluesky sind über atproto-lexicon-contracts bereits alle Lexicons vorab eingebunden, dieser Schritt entfällt daher. Mit Artisan-Kommandos und den Methoden des Traits HasShortHand lassen sich nahezu alle Operationen umsetzen.
Voraussetzungen
- Das Paket
laravel-blueskyist installiert. - Ein Bluesky-Account und ein App Password sind vorbereitet.
Teil 1: Basis-Bot (Posten)
Artisan-Kommando erstellen
Erstellen Sie mitphp artisan make:command ein Kommando für den Bot.
app/Console/Commands/BotPostCommand.php.
Manuelle Ausführung
Automatische Ausführung per Task-Scheduling
Fügen Sie inroutes/console.php eine periodische Ausführung hinzu.
Automatische Ausführung mit GitHub Actions
Ohne eigenen Server können Sie GitHub Actions für die automatische Ausführung verwenden.Teil 2: Reply-Bot (Mentions überwachen)
Wir erstellen einen Bot, der automatisch auf Mentions antwortet. Als Erweiterung zeigen wir auch, wie sich Antworten per KI generieren lassen.Benachrichtigungen abrufen und auf Mentions antworten
Wenn die Root des Threads eine andere ist, rufen Sie über
app.bsky.feed.getPostThread die Thread-Informationen ab und setzen Sie diese als root. Diese vereinfachte Implementierung verwendet den Elternpost als Root.Polling einplanen
Antworten mit KI erzeugen
In Kombination mit dem Paketlaravel/ai und dem Treiber laravel-amazon-bedrock können Sie KI-generierte Antworten passend zum Mention-Inhalt erzeugen.
Teil 3: Label-Bot
Dies entspricht der FunktionlabelAsBot aus dem offiziellen Tutorial. Es setzt am Profil des Bot-Accounts ein Self-Label, um explizit als automatisierter Account gekennzeichnet zu sein.
Das Setzen des Labels erfolgt nur einmal beim initialen Setup. Implementieren Sie es als separates Kommando unabhängig von den Kommandos aus Teil 1 und 2.
Label-Bot-Kommando erstellen
Ausführen
Zu weiteren offiziellen Tutorials
Das offizielle AT-Protocol-Tutorial deckt weitere Themen ab. Der Stand der Unterstützung inlaravel-bluesky ist:
Custom-Feed
Unter Feed Generator finden Sie eine ausführliche Anleitung zur Implementierung eines Custom-Feed-Generators mit Laravel.OAuth-Authentifizierung
Unter Socialite wird die OAuth-Authentifizierung mit Laravel Socialite beschrieben. Die Umsetzung ist einfacher als im offiziellen Tutorial.Soziale App (statusphere)
Eine Laravel-Fassung von statusphere ist unter invokable/statusphere veröffentlicht. Sie basiert auf einer älteren statusphere-Version, die die Kommandoslex und tap nicht verwendet, und weicht dadurch in einigen Punkten vom aktuellen offiziellen Tutorial ab.