Overview
laravel-bluesky integrates with Laravel’s built-in notification system. Use BlueskyChannel to publish posts and BlueskyPrivateChannel to send direct messages (DMs).
Available channels
Notification class
BlueskyChannel
ReturnBlueskyChannel::class from via() and build the post in toBluesky().
Post API is identical to the Basic client, so TextBuilder, Embed, and all other helpers work the same way.
BlueskyPrivateChannel
BlueskyPrivateMessage is similar to Post but only supports text, facets, and embed. The only supported embed type is QuoteRecord.
On-demand notifications
Send a notification without a notifiable model by usingNotification::route().
BlueskyChannel
BlueskyPrivateChannel
Areceiver (DID or handle) is required for private channel notifications. The receiver must have DM reception enabled.
- App password requires DM-sending privileges.
- OAuth requires the
transition:chat.bskyscope.
Bluesky does not allow sending a DM to yourself. If you want to receive notifications on your own account, create a dedicated sender account.
.env with a dedicated sender account.
User notifications
Define routing methods on your notifiable model.BlueskyChannel
BlueskyPrivateChannel
BlueskyRoute
The parameters differ depending on whether you use App password or OAuth authentication. Always use named arguments.Checking notification results
Use theNotificationSent event to inspect the response after the notification is dispatched, just like standard Laravel notifications.
Source: docs/notification.md