UlisesGascon / synology-chat-communicator

Simple wrapper to send Messages to Synology Chat

Home Page:https://www.npmjs.com/package/synology-chat-communicator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

synology-chat-communicator

Simple wrapper to send Messages to Synology Chat

npm version license downloads Known Vulnerabilities

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:

Production only:

  • debug - Debug the app
  • got - Human-friendly and powerful HTTP request library for Node.js

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

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 ❤️ FOSS!

About

Simple wrapper to send Messages to Synology Chat

https://www.npmjs.com/package/synology-chat-communicator

License:MIT License


Languages

Language:JavaScript 97.2%Language:Shell 2.8%