synology-chat-communicator
v1.1.0
Published
Simple wrapper to send Messages to Synology Chat
Downloads
30
Readme
About
Simple wrapper to send Messages to Synology Chat
❤️ Awesome Features:
- Out of the box simple Interface. 🔥
- Added support for multimedia messages 🍺
- Simple way to send direct messages to one or many users 🎉
- Direct support to list users and channels 🔊
debug
is supported 💪- Easy to use and great test coverage ✅
Installation
npm install synology-chat-communicator
Usage
Simple example
const { sendDirectMessage, getUsers, getChannels } = require('synology-chat-communicator')({
token: '<YOUR-TOKEN>',
baseUrl: 'https://<IP-OR-URL>:<PORT>',
ignoreSSLErrors: true
})
;(async () => {
const channels = await getChannels()
console.log("channels:", channels)
const users = await getUsers()
console.log("users:", users)
const user = users[0]
const userIdsList = users.map(({user_id}) => user_id)
const message = await sendDirectMessage(user.user_id, `Hello, ${user.username}!`)
console.log("message:", message)
const mediaMessage = await sendDirectMessage(user.user_id, `Check out this cool picture, ${user.username}!`, 'https://ulisesgascon.com/ulises_gascon.jpg')
console.log("Media Message:", mediaMessage)
const massiveMessage = await sendDirectMessage(userIdsList, "I am the new 🤖. Chat with me!")
console.log("Massive Message:", massiveMessage)
})()
Disable SSL validation
If you have a Synology NAS with invalid SSL certificates (due to expiration or other issues), you can disable the SSL validation in the requests generated by the library by using the configuration parameter ignoreSSLErrors
.
Additional Features
Please check out the official DSM Documentation to include new features
Built With
Development only:
- Standard - Linting propuses
- Husky - Git Hooks
- commitlint - Linting commit messages
- jest - Testing
- standard - Linting
- standard-version - Manage changelog and releases
Production only:
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Ulises Gascón - Initial work- - @ulisesGascon
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Acknowledgments
- This project is under development, but you can help us to improve it! We :heart: FOSS!