Vue d’ensemble
Cette page est la version Laravel du tutoriel officiel de bot AT Protocol. Elle explique comment implémenter en PHP/Laravel avec le packagelaravel-bluesky ce que le tutoriel officiel montre en TypeScript.
Le tutoriel officiel télécharge à chaque fois les fichiers Lexicon via la commande lex, mais laravel-bluesky intègre déjà tous les Lexicons via atproto-lexicon-contracts : cette étape est donc superflue. À l’aide des commandes Artisan et des méthodes du trait HasShortHand, la quasi-totalité des opérations est réalisable.
Prérequis
- Le package
laravel-blueskydoit être installé - Vous devez disposer d’un compte Bluesky et d’un App Password
Partie 1 : bot de base (publication)
Créer une commande Artisan
Créez la commande du bot avecphp artisan make:command.
app/Console/Commands/BotPostCommand.php.
Exécution manuelle
Exécution automatique via le planificateur
Ajoutez une planification dansroutes/console.php.
Exécution automatique via GitHub Actions
Si vous n’avez pas de serveur, GitHub Actions permet également d’exécuter automatiquement la commande.Partie 2 : bot de réponse (surveillance des mentions)
Créons un bot qui répond automatiquement aux mentions. Nous présenterons également un exemple générant des réponses par IA.Récupérer les notifications et répondre aux mentions
Si le root du thread diffère, récupérez les informations du thread avec
app.bsky.feed.getPostThread et affectez-les à root. Cette implémentation simplifiée traite le post parent comme root.Planifier le polling
Générer les réponses avec l’IA
En combinant le packagelaravel/ai et le pilote laravel-amazon-bedrock, vous pouvez générer des réponses IA adaptées au contenu de la mention.
Partie 3 : bot de label
Fonctionnalité équivalente àlabelAsBot du tutoriel officiel. Il s’agit d’ajouter un self label au profil du compte bot pour signaler explicitement qu’il s’agit d’un compte automatisé.
La labellisation ne s’exécute qu’une seule fois, lors de la configuration initiale. Elle est implémentée en tant que commande distincte des parties 1 et 2.
Créer la commande du bot de label
Exécution
Autres tutoriels officiels
Le tutoriel officiel AT Protocol traite d’autres sujets. Voici l’état de la prise en charge danslaravel-bluesky.
Flux personnalisés
Feed Generator décrit en détail comment implémenter un feed generator personnalisé avec Laravel.Authentification OAuth
Socialite explique comment implémenter l’authentification OAuth avec Laravel Socialite. L’implémentation est plus simple que dans le tutoriel officiel.Application sociale (statusphere)
Une version Laravel de statusphere est publiée sous invokable/statusphere. Elle s’appuie sur une version antérieure de statusphere qui n’utilise pas encore les commandeslex ou tap, elle diffère donc légèrement du tutoriel officiel le plus récent.