Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/0x467/nestjs-telegram
🤖 A NestJS Telegram module for using the Telegram Bot API
https://github.com/0x467/nestjs-telegram
bot nest nestjs telegram telegram-api telegram-bot-api
Last synced: 6 days ago
JSON representation
🤖 A NestJS Telegram module for using the Telegram Bot API
- Host: GitHub
- URL: https://github.com/0x467/nestjs-telegram
- Owner: 0x467
- License: mit
- Created: 2019-07-12T15:43:09.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-04-25T07:04:37.000Z (6 months ago)
- Last Synced: 2024-10-16T19:34:14.039Z (20 days ago)
- Topics: bot, nest, nestjs, telegram, telegram-api, telegram-bot-api
- Language: TypeScript
- Homepage:
- Size: 1.21 MB
- Stars: 96
- Watchers: 2
- Forks: 25
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A NestJS service wrapper for Telegram bots!
## Description
[Telegram](https://telegram.org) API wrapper for the Telegram Bots API made to work with the [Nest](https://github.com/nestjs/nest) framework.
## Installation
```bash
$ npm install nestjs-telegram
```## Using the Module
```typescript
// Inside of your module imports
@Module({
imports: [TelegramModule.forRoot({
botKey: 'YourBotApiToken'
})]
})// Or async
@Module({
imports: [
TelegramModule.forRootAsync({
useFactory: async (configService: ConfigService) => ({
botKey: configService.get('Telegram_API_Key')
}),
inject: [ConfigService]
})
],
})
```In your service class you can inject the service like so and then use it in any function as you would any other service
```typescript
@Injectable()
export class MyService {constructor(private readonly telegram: TelegramService) {}
testBot(): Observable {
return this.telegram.getMe();
}
}
```Currently, the service only returns `Observables` as the `HttpModule` does. If you want to use `Promises` just call `.toPromise()` on the function.
## Support
If any bugs are found in the API wrapper, please open an issue on GitHub, or a Pull Request if you want to fix it yourself! Please be as explicit as possible and provide a minimum reproducing repository if at all possible, as it helps track down what went wrong.
## Documentation
All documentation for this wrapper comes from the [Telegram Bot API documentation](https://core.telegram.org/bots/api), if there are any typos, please let me know or open a PR to fix it.
## Todo
* Implement Telegram Passport methods
* Implement Telegram Inline mode options## Stay in touch
- Author - [Jay McDoniel](https://github.com/jmcdo29)
## License
Nestjs-telegram is [MIT licensed](LICENSE).