Symfony bundle that integrates the Slack API client by providing easy-to-use services and configuration.
If you would like to access the Slack Web API from the command-line, consider installing the slack-cli package.
Here is an example of how you can access the API's chat.postMessage
method to send a message to one of your Slack channels:
<?php
// Acme\DemoBundle\Controller\MySlackController
public function sendAction()
{
$payload = new ChatPostMessagePayload();
$payload->setChannel('#general'); // Channel names must begin with a hash-sign '#'
$payload->setText('Hello world!'); // also supports Slack formatting
$payload->setUsername('acme'); // can be anything you want
$payload->setIconEmoji('birthday'); // check out emoji.list-payload for a list of available emojis
$response = $this->get('cl_slack.api_client')->send($payload);
// display the Slack channel ID on which the message was posted
echo $response->getChannel(); // would return something like 'C01234567'
// display the Slack timestamp on which the message was posted (note: NON-unix timestamp!)
echo $response->getTimestamp(); // would return something like '1407190762.000000'
}
In Slack, that should give you something like this in the #general
channel:
These and more examples can be found in the usage documentation.
Detailed documentation on how to access each API method can be found in the documentation of the package that this bundle integrates: Slack API library
- @fieg, for initial ideas about integrating Slack with our projects.
- The guys at Slack, for making an awesome product and clean documentation.
If you would like to contribute to this package, check out the contribution doc here.