Skip to content

Latest commit

 

History

History
63 lines (54 loc) · 2.01 KB

README.md

File metadata and controls

63 lines (54 loc) · 2.01 KB

Slack Message SDK

SDK for connection to a proprietary automatic slack messaging endpoint

Installation

npm install --save @trifoia/sdk-slack-message

Usage

Options

This library exports a single function that takes an "options" object as its parameter. The following values are supported:

Field Name Required? Description
endpoint Required The API endpoint to use when sending the message
apiKey Required API Key granting access to the endpoint
channel Required The channel the message should be sent to
subject Required Subject line for the message
message Required The main message body to send to Slack
iconEmoji Optional Emoji to use as a user icon
iconUrl Optional Url of an image to use at the user icon
data Optional Additional data to store in CloudWatch
dataLogStream Optional Name of the new CloudWatch Log Stream used to store data

The message request will still send if there is no API key present, to support backwards compatibility, but the API should be set up to reject these requests

Basic Example

const slackMessage = require('@trifoia/sdk-slack-message');

const messageOpts = {
  endpoint: 'APIGatewayEndpoint',
  apiKey: 'YourAPIKey',
  channel: 'test',
  subject: 'Slack Message SDK Test',
  message: 'This is a test from the slack message sdk',
  iconEmoji: ':left_speech_bubble:',
  data: {
    test: 'test',
    num: 123,
    num2: 314532,
    sdkData: 'this is from the sdk! Boo!'
  },
  dataLogStream: `${(new Date()).toISOString()}-slack-message-sdk`,
  sequenceToken: 'log stream sequence token'
}
const res = await slackMessage(messageOpts);

Development

Commands

# Lint files and fix any simple errors
$ npm run lint

# Run all Unit test
$ npm test

# Run only "quick" unit tests
$ npm run test-quick

# Publish to NPM (must be logged in via `npm login`)
$ npm publish --access public