Go to file
2024-01-24 23:53:07 +01:00
.gitea/workflows fix(core): update 2024-01-24 15:58:23 +01:00
.vscode fix(core): update 2024-01-24 15:58:23 +01:00
dist_ts fix(core): update 2024-01-24 23:53:06 +01:00
test fix(core): update 2024-01-24 15:58:23 +01:00
ts fix(core): update 2024-01-24 23:53:06 +01:00
.gitignore fix(core): update 2024-01-24 15:58:23 +01:00
npmextra.json fix(core): update 2024-01-24 15:58:23 +01:00
package.json 3.0.7 2024-01-24 23:53:07 +01:00
pnpm-lock.yaml fix(core): update 2024-01-24 23:53:06 +01:00
qenv.yml fix(core): update 2019-09-05 13:08:42 +02:00
readme.md fix(core): update 2019-09-05 13:09:13 +02:00
tsconfig.json fix(core): update 2024-01-24 15:58:23 +01:00

@mojoio/slack

slack api abstraction for the mojo.io ecosystem

Status for master

build status coverage report npm downloads per month Known Vulnerabilities TypeScript node JavaScript Style Guide

Usage

Use TypeScript for best in class instellisense.

import * as slackme from 'slackme'

// First setup the hook
const mySlackme = new Slackme('https://some.slack.webhook.url')
mySlackme.sendMessage:{{
  // MessageOptions here
}, 'myAwesomeChannel'}

The message interface follows Slack's docs (click here) and looks like this:

interface IAttachmentField {
  title: string
  value: string
  short?: boolean
}

interface IMessageOptions {
  /**
   * "Required plain-text summary of the attachment."
   */
  fallback?: string,
  /**
   * a side color
   */
  color?: string,
  /**
   * a message to show above
   */
  pretext?: string,
  /**
   * author name of the attachment
   */
  author_name?: string,
  /**
   * a link to the author
   */
  author_link?: string,
  /**
   * a string to the author
   */
  author_icon?: string,
  /**
   * a title for the attachment
   */
  title?: string,
  /**
   * a link for the title
   */
  title_link?: string,
  /**
   * the main text of the message
   */
  text?: string,
  fields?: IAttachmentField[],
  image_url?: string,
  thumb_url?: string,
  footer?: string,
  footer_icon?: string,
  /**
   * timestamp as epoch time
   */
  ts?: number
}

Alternatively, there is the option of specifying a SlackMessage class

const mySlackMessage = new SlackMessage({ /* message options here } */, mySlackme)
mySlackMessage.title = 'new Title' // modify message options
mySlackMessage.sendToRoom('general')
mySlackMessage.title = 'another Title'
mySlackMessage.sendToRoom('anotherroom')

For further information read the linked docs at the top of this readme.

MIT licensed | © Lossless GmbH | By using this npm module you agree to our privacy policy

repo-footer