🤖 Powerful Nest module for easy and fast creation Telegram bots
Go to file
2021-01-03 15:35:18 +03:00
.github ci(): use latest nodejs versions 2020-12-30 20:41:06 +03:00
lib fix(sample-app): make possible to run app 2021-01-03 15:35:18 +03:00
sample feat(sample-app): use include feature 2021-01-03 14:26:32 +03:00
website docs(): update docs 2021-01-02 03:10:25 +03:00
.eslintrc.js chore: replace tslint with eslint (pull request #1) 2020-03-27 20:41:55 +00:00
.gitignore chore(): add lock files to gitignore 2021-01-02 15:23:59 +03:00
.npmignore fix(): working after merge 2021-01-02 21:40:13 +03:00
.prettierrc feat: complete rewrite 2020-03-19 16:21:35 +03:00
index.d.ts fix(): revert back typescript configuration 2021-01-02 16:34:27 +03:00
index.js fix(): revert back typescript configuration 2021-01-02 16:34:27 +03:00
index.ts fix(): revert back typescript configuration 2021-01-02 16:34:27 +03:00
LICENSE.md chore(): update author info 2020-12-30 20:37:11 +03:00
package-lock.json chore(deps): pin dependencies (#188) 2021-01-02 22:01:40 +03:00
package.json fix(sample-app): make possible to run app 2021-01-03 15:35:18 +03:00
README.md docs(): remove all-contributors from project, it's too hard to keep it up to date 2020-12-30 20:45:36 +03:00
renovate.json chore(deps): replace dependabot with renovate bot 2020-12-07 18:14:58 +03:00
tsconfig.json fix(sample-app): make possible to run app 2021-01-03 15:35:18 +03:00
tsconfig.typedoc.json chore(deps): new typedoc version and configuration 2021-01-02 21:59:41 +03:00

Nest Logo

NestJS Telegraf

npm GitHub last commit NPM

Telegraf module for NestJS.

Documentation

If you want to dive fully into NestJS Telegraf then don't waste your time in this dump, check out the documentation site.

Installation

$ npm i nestjs-telegraf

Once the installation process is complete, we can import the TelegrafModule into the root AppModule:

import { Module } from '@nestjs/common';
import { TelegrafModule } from 'nestjs-telegraf';

@Module({
  imports: [
    TelegrafModule.forRoot({
      token: 'TELEGRAM_BOT_TOKEN',
    })
  ],
})
export class AppModule {}

Then add some decorators into the app.service.ts for handling Telegram bot API updates:

import { Injectable } from '@nestjs/common';
import {
  Start,
  Help,
  On,
  Hears,
  Context,
} from 'nestjs-telegraf';

@Injectable()
export class AppService {
  @Start()
  start(ctx: Context) {
    ctx.reply('Welcome');
  }

  @Help()
  help(ctx: Context) {
    ctx.reply('Send me a sticker');
  }

  @On('sticker')
  on(ctx: Context) {
    ctx.reply('👍');
  }

  @Hears('hi')
  hears(ctx: Context) {
    ctx.reply('Hey there');
  }
}