Download the PHP package lickd/slack-gateway-client without Composer
On this page you can find all versions of the php package lickd/slack-gateway-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download lickd/slack-gateway-client
More information about lickd/slack-gateway-client
Files in lickd/slack-gateway-client
Package slack-gateway-client
Short Description PHP package for publishing messages to a Slack gateway micro-service via AWS SQS. Supports Laravel and Symfony.
License MIT
Informations about the package slack-gateway-client
slack-gateway-client
A PHP package for publishing messages to a Slack gateway micro-service via AWS SQS. Does not communicate with Slack directly — it enqueues messages for a gateway service to process.
Supports Laravel and Symfony.
Requirements
| Dependency | Version |
|---|---|
| PHP | ^8.2 |
| Laravel | ^10.0 \| ^11.0 \| ^12.0 |
| Symfony | ^6.0 \| ^7.0 |
| aws/aws-sdk-php | ^3.0 |
Laravel and Symfony are optional — only the one matching your framework is required.
Installation
Laravel
The service provider is auto-discovered. No additional setup required.
Symfony
Register the bundle in config/bundles.php:
Configuration
Both frameworks read from the same two environment variables:
Queue names are derived as {prefix}-high, {prefix}-normal, and {prefix}-low.
Both frameworks also require an Aws\Sqs\SqsClient instance to be bound in the container. SQS credentials (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION) are managed by the consuming application.
Laravel
Add to config/services.php:
Symfony
Create config/packages/slack_gateway_client.yaml:
Usage
Inject SlackGatewayPublisherInterface and call publish() with a SlackMessageDto and a SlackQueue priority:
SlackMessageDto
| Property | Type | Required | Default |
|---|---|---|---|
channel |
string |
yes | — |
text |
string |
yes | — |
blocks |
array |
no | [] |
attachments |
array |
no | [] |
threadTs |
?string |
no | null |
idempotencyKey |
?string |
no | null |
source |
string |
no | 'unknown' |
SlackQueue
| Case | Derived queue name |
|---|---|
SlackQueue::High |
{SLACK_GATEWAY_QUEUE_PREFIX}-high |
SlackQueue::Normal |
{SLACK_GATEWAY_QUEUE_PREFIX}-normal |
SlackQueue::Low |
{SLACK_GATEWAY_QUEUE_PREFIX}-low |
Testing
Licence
MIT. See LICENSE.