PHPackages                             morfeditorial/machinima-bot - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Admin Panels](/categories/admin)
4. /
5. morfeditorial/machinima-bot

ActiveSymfony-bundle[Admin Panels](/categories/admin)

morfeditorial/machinima-bot
===========================

The official Telegram Bot for the Machinima platform.

05↓75%PHPCI passing

Since Aug 11Pushed 2w ago1 watchersCompare

[ Source](https://github.com/morfeditorial/machinima-bot)[ Packagist](https://packagist.org/packages/morfeditorial/machinima-bot)[ RSS](/packages/morfeditorial-machinima-bot/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependenciesVersions (1)Used By (0)

[![Morf Editorial](assets/images/morf-logo.svg)](assets/images/morf-logo.svg)machinima-bot
=============

[](#machinima-bot)

*Telegram bot bundle for the Machinima platform.*

[![Latest Stable Version](https://camo.githubusercontent.com/1ef10fde9a181fe6f1f757f7618a443122f7562c8e37c5d0b31474238a2f524d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d6f7266656469746f7269616c2f6d616368696e696d612d626f742e7376673f6c6162656c3d5061636b6167697374266c6f676f3d7061636b6167697374)](https://packagist.org/packages/morfeditorial/machinima-bot)[![Total Downloads](https://camo.githubusercontent.com/80c9a0d786fb4bb4b13ce92c68e50b77d863abbcbee55bda60f1d27ead2f8bb0/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d6f7266656469746f7269616c2f6d616368696e696d612d626f742e7376673f6c6162656c3d446f776e6c6f616473266c6f676f3d7061636b6167697374)](https://packagist.org/packages/morfeditorial/machinima-bot)[![License](https://camo.githubusercontent.com/23101dc809e26fbcc53fdd355ee981fe32a930c139148b66cf375c7c70bd4c4a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6d6f7266656469746f7269616c2f6d616368696e696d612d626f742e7376673f6c6162656c3d4c6963656e6365266c6f676f3d6f70656e2d736f757263652d696e6974696174697665)](https://packagist.org/packages/morfeditorial/machinima-bot)

[Features](#features) · [Architecture](#architecture) · [Requirements](#requirements) · [Installation](#installation) · [Usage](#usage) · [Contributing](#contributing)

---

**machinima-bot** is the official Telegram management bundle for the Machinima platform. It provides role and content management features for the platform's administrators.

Features
--------

[](#features)

- **Interactive Screen-Based UI**: Provides a rich admin panel experience directly inside Telegram using inline keyboards with callback-driven navigation, visual panels with images, and domain-organised screen flows (authors, projects, categories, roles, staff).
- **Role &amp; Permission Management**: Full RBAC workflow via Telegram — create, assign, and revoke roles for platform users, powered by the shared `RoleService` from `machinima-core`.
- **Flexible Update Handling**: Supports both a production-ready Webhook endpoint (`POST /webhook/telegram`) and a long-polling CLI command for local development, with automatic user authentication and locale detection on every incoming update.
- **Content Administration Commands**: A set of slash-commands (`/start`, `/help`, `/admin`, role management) that serve as entry points into the screen-based management panels, each with built-in i18n support through the bundle's `Translator`.

Architecture
------------

[](#architecture)

This bundle implements a screen-and-command pattern on top of the [`morfeditorial/telegram-bot-bundle`](https://github.com/morfeditorial/telegram-bot-bundle) abstraction layer. It contains **no domain entities or repositories of its own** — all data access is delegated to [`morfeditorial/machinima-core`](https://github.com/morfeditorial/machinima-core) via its shared services (`AuthorRepository`, `UserRepository`, `RoleService`, etc.).

- **Commands** (`src/Commands/`) — Telegram bot commands (`/start`, `/help`, role assignment, admin panel entry point) that extend `BaseMachinimaCommand` and interact with the user through messages.
- **Screens** (`src/Screens/`) — interactive inline-keyboard panels for domain management (authors, projects, categories, roles, staff), organised by domain subdirectory. Each screen extends `BaseMachinimaScreen` and renders a visual panel with callback-driven navigation.
- **Webhook Controller** (`src/Controller/Webhook/`) — receives Telegram updates via `POST /webhook/telegram`, authenticates the calling user through the Security token storage, sets the locale, and delegates to the `UpdateDispatcher` from `telegram-bot-bundle`.
- **Service Providers** (`src/Service/`) — Telegram-specific implementations of core contracts such as `AvatarProviderInterface` and `MediaProviderInterface`, which resolve avatars and media through the Telegram Bot API.

Requirements
------------

[](#requirements)

- PHP 8.2 or higher
- Composer for dependency management
- Symfony Framework 7.1+

Installation
------------

[](#installation)

This package is intended to be used as a bundle within the `machinima-app` host application. Require it via Composer:

```
composer require morfeditorial/machinima-bot
```

Usage
-----

[](#usage)

The bot runs as part of the host application ecosystem. To run the Telegram bot polling loop locally, use the Symfony console:

```
php bin/console morf:bot:poll
```

For production, the bot interacts with Telegram via the configured Webhook route in the host app.

[![Bot Control Panel Appearance](assets/images/IMG_20250213_144644_598.png)](assets/images/IMG_20250213_144644_598.png)

> *Screenshot of the admin panel showing the management capabilities of the Telegram bot.*

Contributing
------------

[](#contributing)

Contributions are welcome and appreciated! Here's how you can contribute:

1. Fork the project
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request

Please make sure to update tests as appropriate and adhere to the existing coding style.

License
-------

[](#license)

This bundle is licensed under the CSSM Unlimited License v2.0 (CSSM-ULv2). See the [LICENSE](LICENSE) file for details.

###  Health Score

21

—

LowBetter than 17% of packages

Maintenance63

Regular maintenance activity

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e2471bdadcf4a5ea969fe763a72d03fb46525b59a7e4cedc3ed4d855029e7785?d=identicon)[ChernegaSergiy](/maintainers/ChernegaSergiy)

---

Top Contributors

[![ChernegaSergiy](https://avatars.githubusercontent.com/u/60980650?v=4)](https://github.com/ChernegaSergiy "ChernegaSergiy (553 commits)")

---

Tags

admin-panelcontent-managementmachinimamorf-editorialphpphp8symfonysymfony-bundletelegram-bot

### Embed Badge

![Health badge](/badges/morfeditorial-machinima-bot/health.svg)

```
[![Health](https://phpackages.com/badges/morfeditorial-machinima-bot/health.svg)](https://phpackages.com/packages/morfeditorial-machinima-bot)
```

###  Alternatives

[loevgaard/sylius-brand-plugin

A Sylius plugin for handling brands

29160.7k3](/packages/loevgaard-sylius-brand-plugin)[dog-ears/crud-d-scaffold

Extend Laravel 7's generators scaffold.

183.1k](/packages/dog-ears-crud-d-scaffold)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
