A NestJS application that automatically sends random photos from your Immich server to Telegram. Perfect for sharing memories and creating photo streams in your Telegram chats.
- Fetches random photos from Immich API
- Sends photos to Telegram via Telegraf bot API
- Image compression service with configurable settings
- Batch photo sending (up to 10 photos per message)
- Automatic cleanup of temporary files
- HTTP API for testing and manual triggers
- Docker support for easy deployment
npm iSet the following environment variables:
IMMICH_API_URL- Your Immich server API URLIMMICH_API_KEY- Your Immich API keyTELEGRAM_BOT_TOKEN- Your Telegram bot tokenTELEGRAM_CHAT_ID- Target chat ID for sending photos
# Start development server
npm run start:dev# Build and start production server
npm run build
npm run start:prodOnce running, you can use these endpoints:
POST /final/send-random-photos- Send 10 random photos to TelegramPOST /telegram/send-photos- Send specific photos to TelegramPOST /telegram/test-send-photos- Send test photo to TelegramPOST /telegram/check-connection- Check Telegram bot connection
# Build and start the container
docker-compose up -d
# View logs
docker-compose logs -f
# Stop the container
docker-compose downFor detailed information about the project architecture, development standards, and contribution guidelines, please refer to the INSTRUCTIONS.md file.