@almvasiliev/notify
v1.0.2
Published
This is an abstraction layer that allows you to send messages to multiple platforms (Telegram and Slack) using a unified API
Maintainers
Readme
@almvasiliev/notify
This is an abstraction layer that allows you to send messages to multiple platforms (Telegram and Slack) using a unified API.
Example Usage
Installation
npm install @almvasiliev/notifyBasic Usage
import {
Telegram,
Slack,
type telegramSendMessage,
type slackPostMessage
} from '@almvasiliev/notify'
async function sendTelegramAlert(params: telegramSendMessage) {
const telegram = new Telegram({ accessToken: '1234567890:AAHfZ0ExAmPleTeLeGrAmBoTtOkEn12345' })
return telegram.sendMessage(params)
}
async function sendSlackAlert(params: slackPostMessage) {
const slack = new Slack({ accessToken: 'xoxb-123456789012-0987654321098-AbCdEfGhIjKlMnOpQrStUvWx' })
return slack.postMessage(params)
}
// Send message to the Telegram channel
// Required options: "chat_id" and "text"
// All other Telegram API options are optional
const telegramAlert = await sendTelegramAlert({
chat_id: '-123456789',
text: 'Hello World',
parse_mode: 'HTML', // TypeScript will validate this
})
console.log(`telegramAlert: ${JSON.stringify(telegramAlert)}`)
// Send message to the Slack channel
// Required options: "channel" and "text"
// All other Slack API options are optional
const slackAlert = await sendSlackAlert({
channel: 'ABC12345XYZ',
text: 'Hello World',
blocks: [
{
type: 'section',
text: {
type: 'mrkdwn',
text: 'Hey, nice to meet you',
},
},
]
})
console.log(`slackAlert: ${JSON.stringify(slackAlert)}`)Note: The tokens shown above are placeholder values for demonstration purposes only.
To create and set up a Telegram bot, see the official Telegram Bot API docs.
To create and set up a Slack app, see the Slack authentication basics.
Type Definitions Included
This package includes:
*.d.tsfiles for all exported classes and functions- Type definitions for all parameters and return values
- IntelliSense support in VS Code and other TypeScript-aware editors
- Declaration maps for better debugging experience
