Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@synonymdev/blocktank-util-slack-client

Package Overview
Dependencies
Maintainers
4
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@synonymdev/blocktank-util-slack-client

Blocktank Slack client

  • 0.1.5
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
4
Created
Source

blocktank-util-slack-client

NPM version

Client to interact with the blocktank-util-slack service.

Usage

Send message

import { SlackClient } from '@synonymdev/blocktank-util-slack-client';

const client = new SlackClient('myConfiguredChannelName') // See service config for channel names.

await client.info('myTitle', 'myMessage') // Send message.

If the channel name is empty, the message will be logged to the console instead of sent to slack.

Rate limiting

Messages can be ratelimited to not overwhelm the channel. The rate limit is based on a key. If the key was already seen within the limitFor duration, the message will be ignored.

interface RateLimitOptions {
    // Key of the operation that will be rate limited. Example: `blocktank-instant:funds-are-low`.
    key: string,
    // Duration of the rate limit until the next message can be sent.
    limitFor: Duration
}

// Amount of time the limit should be applied for this key.
interface Duration {
    years?: number;
    months?: number;
    weeks?: number;
    days?: number;
    hours?: number;
    minutes?: number;
    seconds?: number;
}

Let's make an example:

await client.error('Couldnt read file', 'errorMessage', {
    key: 'blocktank-ls-btc:fileReadKey',
    limitFor: {
        hours: 1
    }
})

This will send a message with the level error and the title Couldnt read file.
The message will be sent only if the last message with the key blocktank-ls-btc:fileReadKey was sent more than 1 hour ago. If the last message was sent less than 1 hour ago, the message will be ignored.

Emojis used
SlackMessageLevelEmoji
debug
success
infoℹ️
notice📢
warning⚠️
error
critical‼️
alert🚨
emergency🆘

Test messages

Execute npx blocktank-util-slack-cli in the terminal to send test messages. Make sure you install this package first.

Versioning

  1. Increase version in package.json.
  2. Add changes to CHANGELOG.md.
  3. Commit changes.
  4. Tag new version: git tag v0.1.0.
  5. Push tag git push origin v0.1.0.
  6. Publish to npm: npm publish.

FAQs

Package last updated on 09 Jun 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc