How arkaim/moviebot works
This repository implements a Telegram movie bot. Users can search for movie details, look up a person and notable credits, or discover popular movies by choosing a genre and then a numbered result. The main workflow is implemented in src/kpapi.js; src/options.js supplies the inline keyboards used in genre discovery and result selection. The tree does not include the token module required by the bot, and src/genres.js is not referenced by the sampled bot code, so neither is shown as an active runtime dependency.
Main entry points: kpapi.js Bot command handlers · options.js Inline keyboards
Components 10
Telegram interface
- Bot command handlers
src/kpapi.js - Inline keyboards
src/options.js
Movie discovery
- Movie search
src/kpapi.js - Movie details
src/kpapi.js - Person search
src/kpapi.js - Genre discovery
src/kpapi.js - Result selection
src/kpapi.js
External services
- Telegram Bot API
- The Movie Database
Other components
- Telegram user
Connections 26
- Telegram user → Telegram Bot API: sends commands
- Telegram Bot API → Bot command handlers: dispatches updates
- Bot command handlers → Movie search: handles /movie
- Bot command handlers → Person search: handles /cast
- Bot command handlers → Genre discovery: handles /genre
- Genre discovery → Inline keyboards: uses genre keys
- Genre discovery → The Movie Database: requests discovery
- The Movie Database → Genre discovery: returns movie list
- Genre discovery → Telegram Bot API: sends list and numbers
- Telegram Bot API → Bot command handlers: dispatches selection
- Bot command handlers → Result selection: handles callback
- Result selection → Inline keyboards: uses number keys
- Result selection → Movie search: searches selected title
- Movie search → The Movie Database: searches movies
- The Movie Database → Movie search: returns matches
- Movie search → Movie details: requests selected movie
- Movie details → The Movie Database: fetches movie info
- The Movie Database → Movie details: returns details
- Movie details → Telegram Bot API: sends movie details
- Movie search → Telegram Bot API: sends no-match reply
- Person search → The Movie Database: searches people
- The Movie Database → Person search: returns person credits
- Person search → Telegram Bot API: sends profile and credits
- Person search → Telegram Bot API: sends no-match reply
- Genre discovery → Telegram Bot API: prompts genre choice
- Telegram Bot API → Telegram user: sends replies