traumschule 53c2d8c4a7 Drop obsolete variables 4 年之前
..
src 53c2d8c4a7 Drop obsolete variables 4 年之前
LICENSE e15c6b21b5 Add files via upload 4 年之前
README.md 373876ed1d migrate to typescript 4 年之前
config.ts 373876ed1d migrate to typescript 4 年之前
package.json 373876ed1d migrate to typescript 4 年之前
tsconfig.json 373876ed1d migrate to typescript 4 年之前

README.md

Joystream Forum Post Notification Tool

This bot notifies a Telegram chat about events on the Joystream chain.

Demo: https://t.me/jsforumnotification

Many thanks to imOnlineMonitor for providing example with polkadot chain (Kusama).

Installation

Joystream Node\ npm/Nodejs

git clone https://github.com/bitoven-dev/joystreamtelegrambot
cd joystreamtelegrambot
npm install

Configuration

Open config.ts and set token and chatid. To get a bot token talk to @botfather on Telegram.

Run npm run build to apply changes. After building *.js files are available in dist/ and you can run for example node dist/bot.js --verbose --channel --council --forum --proposals. For other options see below.

Get chatid

Full explanation: How to get chatid

1- Add the bot to the group.
Go to the group, click on group name, click on Add members, in the searchbox search for your bot like this: @my_bot, select your bot and click add.

2- Send a message to the group.

3- Go to `https://api.telegram.org/botXXX:YYYY/getUpdates` (replace XXX:YYYY with your bot token)

4- Look for "chat":{"id":-zzzzzzzzzz,
-zzzzzzzzzz is your chat id (including the negative sign).

Run npm run start (for example inside screen/tmux window or systemd).

Running

Command Description
npm run start run without parameters.
npm run all like --channel --council --forum --proposals
npm run verbose like 'all', log information on every block
npm run quiet like 'all' without output
npm run channel only channel info
npm run forum only forum info
npm run council only council info
npm run proposals only proposal info
npm run [module]-verbose run [module] and log every block
npm run dev run all modules verbosely, respawn on file changes
npm run [module]-dev run [module] verbosely, respawn on file changes

If you need other combinations, add them to package.json

Development

To test api queries open https://testnet.joystream.org/ -> Settings -> change interface operation mode to Fully featured and got to https://testnet.joystream.org/#/chainstate.

License

GPLv3

Notes

  • bitoven created the first version written in javascript.

  • traumschule migrated and refactored it to typescript.