1.0.24 • Published 4 months ago

common-tg-service v1.0.24

Weekly downloads
-
License
MIT
Repository
-
Last release
4 months ago

Common Telegram Service for NestJS

A comprehensive NestJS service for handling Telegram-related functionality, including channel management, client handling, statistics, and more.

Installation

npm install @your-org/common-tg-service

Features

  • Telegram Bot Integration
  • Channel Management
  • Client Management (Active, Archived, Buffer)
  • Statistics and Analytics
  • Promotion Management
  • Transaction Handling
  • User Data Management
  • File Management
  • UPI Integration

Quick Start

import { TelegramModule } from '@your-org/common-tg-service';

@Module({
  imports: [
    TelegramModule.forRoot({
      // your config here
    }),
    // ... other modules
  ],
})
export class AppModule {}

Available Modules

  • TelegramModule - Core Telegram functionality
  • ActiveChannelsModule - Manage active Telegram channels
  • ClientModule - Client management functionality
  • PromoteClientModule - Client promotion features
  • StatModule - Statistics tracking
  • And many more...

Environment Variables

Ensure you have the following environment variables set:

TELEGRAM_BOT_TOKEN=your_bot_token
MONGODB_URI=your_mongodb_uri
# ... other required environment variables

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Peer Dependencies

This package uses peer dependencies to avoid duplicate node_modules in your project. Make sure your project has the following dependencies installed:

{
  "@nestjs/common": "^10.0.0",
  "@nestjs/config": "^3.0.0",
  "@nestjs/core": "^10.0.0",
  "@nestjs/mongoose": "^10.0.0",
  "@nestjs/platform-express": "^10.0.0",
  "@nestjs/swagger": "^8.0.0",
  "mongoose": "^8.0.0",
  "rxjs": "^7.0.0",
  "telegram": "^2.19.0",
  "class-transformer": "^0.5.0",
  "class-validator": "^0.14.0",
  "axios": "^1.6.0",
  "node-fetch": "^2.7.0",
  "swagger-jsdoc": "^6.2.0",
  "swagger-ui-express": "^5.0.0",
  "adm-zip": "^0.5.0",
  "cloudinary": "^2.0.0",
  "imap": "^0.8.0",
  "https": "^1.0.0"
}

Prerequisites

Make sure your project has the following peer dependencies:

{
  "@nestjs/common": "^10.0.0",
  "@nestjs/config": "^3.0.0",
  "@nestjs/core": "^10.0.0",
  "@nestjs/mongoose": "^10.0.0",
  "@nestjs/platform-express": "^10.0.0",
  "@nestjs/swagger": "^8.0.0",
  "mongoose": "^8.0.0",
  "rxjs": "^7.0.0",
  "telegram": "^2.0.0"
}

These dependencies should already be in your NestJS project, so no additional installation is needed.

Running the app

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

Usage

Import the modules you need in your NestJS application:

import { TelegramModule, ChannelsModule /* other modules */ } from 'common-tg-service';

@Module({
  imports: [
    TelegramModule,
    ChannelsModule,
    // ... other modules you need
  ],
})
export class AppModule {}

Updating

To update the package, simply run:

npm update common-tg-service

This will only update the compiled dist files from the dist branch, without re-downloading dependencies.

Test

# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov

Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.

Stay in touch

License

Nest is MIT licensed.

1.0.19

4 months ago

1.0.18

4 months ago

1.0.17

4 months ago

1.0.16

4 months ago

1.0.9

4 months ago

1.0.22

4 months ago

1.0.21

4 months ago

1.0.20

4 months ago

1.0.24

4 months ago

1.0.23

4 months ago

1.0.11

4 months ago

1.0.10

4 months ago

1.0.15

4 months ago

1.0.14

4 months ago

1.0.13

4 months ago

1.0.12

4 months ago

1.0.8

4 months ago

1.0.7

4 months ago

1.0.6

4 months ago

1.0.5

4 months ago

1.0.4

4 months ago

1.0.3

5 months ago

1.0.2

5 months ago

1.0.1

5 months ago