This repository has been archived by the owner. It is now read-only.
A simple node.js library for send notifications to Slack via Incoming WebHooks.
JavaScript
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.gitignore
.travis.yml
README.md
index.js
package.json
yarn-error.log
yarn.lock

README.md

travis-ci

This module has been deprecated.

please move to Slack offecial API

Summary

A simple node.js library for send notifications to Slack via Incoming WebHooks.

Installation

You can also install via npm:

npm install node-slackr

Initialize client:

Slack = require('node-slackr');
slack = new Slack('https://<incoming-hook-url>');

Initialize with options:

slack = new Slack('https://<incoming-hook-url>',{
  channel: "#development",
  username: "slack-bot",
  icon_url: "http://domain.com/image.png",
  icon_emoji: ":ghost:"
});

Send message:

If channel is not set default channel is #general

slack.notify("Message"); //without callback
slack.notify("Message", function(err, result){
    console.log(err,result);
});

Customized Appearance:

You can customize the name and icon of your Incoming Webhook.

messages = {
    text: "Message",
    channel: "#random",
    username: "new-bot-name",
    icon_url: "https://slack.com/img/icons/app-57.png"
}

slack.notify(messages);

Send multiple channels:

messages = {
    text: "Message",
    channel: ["#channel1","#channel2","#channel3"]
}

slack.notify(messages);

Message Attachments:

To display a richly-formatted message attachment in Slack, you can use the same JSON payload as above, but add in an attachments array. Each element of this array is a hash containing the following parameters:

messages = {
  text: "Server Down",
  channel: "#alert",
  attachments: [
    {
      fallback: "Detected server down",
      color: "#36a64f", // Can either be one of 'good', 'warning', 'danger'
      fields: [
        {
          title: "Uptime",
          value: "30 Hours",
          short: false
        },
        {
          title: "Downtime",
          value: "20 Minutes",
          short: false
        }
      ]
    }
  ]
};

slack.notify(messages, function(err, result) {
    console.log(err, result);
});

Documentation

For more information such as send URL link, Message Formatting, @mention and Parsing modes, please follow the link below

Formatting

Incomg Webook