WorkJump to sectionLabJump to sectionAboutJump to sectionContactJump to sectionTech stackTools & technologiesCareer journeyExperience & educationLousin ServicesProject overviewDiscord.js HandlerProject overviewTeleubeProject overviewResumeOriginal CV · PDFGitHubPublic repositoriesEmail Ahmed[email protected]
BACK TO SELECTED WORK
03 / BOTS & AUTOMATION

Teleube

Media workflows, delivered through a Telegram conversation.

JavaScriptNode.jsTelegram APIMongoDB
MY ROLE

Creator · public repository

PERIOD

2023–2024

PROJECT CONTEXT

Public source · historical project

Based on the public README, package.json, and index.js. Historical source snapshot; the original bot’s live availability has not been verified.

The problem behind the project.

Different media sources expose different formats and workflows. A conversational bot can guide users from a link to a format choice through one consistent interface.

What I built.

A Telegram bot that routes media links to platform-specific handlers, with language selection and MongoDB-backed user state.

  • Built the Telegram message and callback-query routing.
  • Organized platform-specific processing into source modules.
  • Added Arabic and English language selection with stored user preferences.
  • Tracked conversion state and applied a per-user conversion limit in the message handler.

How the pieces connect.

Telegram messageSource validationFormat callbackMedia handler

Route by source

The message handler validates incoming links and dispatches to separate YouTube, TikTok, SoundCloud, or Instagram modules.

Keep choices conversational

Inline keyboard callbacks route format and quality choices to the relevant processing functions.

Persist user context

Mongoose-backed user records carry language and conversion state so the bot can tailor subsequent interactions.

The engineering context.

Each source needs its own validation and processing path, while the conversation needs consistent language and user state. The code separates source modules from the central message router.

Looking forward.

The public code is a historical implementation, not a promise that every media provider still works. A new iteration would harden non-text message handling and concurrency accounting. Subscription actions in this snapshot are unfinished and are not presented as a payment system.

Explore the source (opens in a new tab)
NEXT PROJECTLousin Services