Previously, we used Google talk service for communication in our company. It allowed us to exchange only private messages. But we needed to communicate within teams of the projects. Therefore we also used Skype with Google talk because it was possible to create group chats there. It was quite inconvenient to use 2 services for communication at once.
Once we found an amazing service Slack which decided many of our problems.
It's more than just a chat.
Slack is a platform for communication in a company and project teams.
There are three ways of exchanging messages between team members.
It is a place where some people can communicate. Each team member can connect to public channels, see message history and write messages. These channels are available to any member of your team.
It is very easy way for messaging. We have «general» channel for information exchange and discussions within the company, «dev-help» channel where each developer can ask colleagues a question, «sport» channel for planning sport events and many other channels. Any team member can create a new public channel and any member can join it.
These are personal messages. You can exchange messages with any member of your team.
It's almost the same as public channels. But it has one main difference: you cannot join the group unless you are invited. Nobody but the members of the group can read your messages. This is very handy when you have many projects or many tasks as you can create a separate private group for each project / task and communicate with the project team there.
When you send an image or link via Slack, it loads the preview of the image and shows it in the chat. It is very comfortable because there’s no need to switch to another program to see the image.
In our team we use integration with Git, Jenkins and IFTTT.
If desired integration is not available in Slack, you can write your own one using Incoming Webhooks. Thus we send messages to the chat when any member of our team uses certain commands from phing to Slack channels.
Also we use one more Slack integration. It is the Slash commands integration. Using it we can do deploys to our server stage of our projects directly from Slack . It is simply delicious.
Slack in Drupal
We were so pleased with Slack that we decided to write a module integrating Slack with Drupal. It allows you to send messages using Slack Rules or API module. For example, you can be aware of errors on the site or of new articles or new purchases and more.
Using the module
After downloading and installing the module you must configure the module here /admin/config/services/slack/config. It is enough to enter Webhook URL and you can send messages to Slack.
Also you can fill the following fields:
- Default channel is a place where messages are sent if no other settings are specified in the Rules or when calling API functions. If you do not select any module settings or Rules, than the settings that you specified during setup in Incoming WebHooks Slack are used.
- Default username is the name of the person who receives messages in Slack.
After configuring the module you can check if it works here: /admin/config/services/slack/test by sending a test message. If the message is sent, then the module has been configured correctly.
Using Rules you can send a message to Slack. Use the "Slack send a message" action when adding new Rules.