Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
gnfgnfgfgnfn
ghghmghm
fgjgjgjj
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
Папка vendor лежит вверху, потому что может понадобится не только для TG и не для одного TG. Также вверху можно создать наследуемые классы, чтобы еще уменьшить дублирование и сделать проще расширение кода, например, при добавлении соседнего бота из ВК. Однако, тут зависит от задачи: иногда нужно, чтобы функционал для ВК и ТГ дублировался, а иногда чтобы был полностью разный.
- site_root_dir/subfolder?
-
- bots/
-
-
- vendor/ (из композера)
-
-
-
- tg/
-
-
-
-
- bot_name/
-
-
-
-
-
-
- index.php (все запросы сюда)
-
-
-
-
-
-
-
- Senders/ (отправляторы в АПИ)
-
-
-
-
-
-
-
-
- TG.php
-
-
-
-
-
-
-
-
-
- VK.php
-
-
-
-
-
-
-
-
-
- GPT.php
-
-
-
-
-
-
-
-
- Common/ (для общих классов)
-
-
-
-
-
-
-
-
-
- Screen.php (создает экраны)
-
-
-
-
-
-
-
-
-
-
-
- Button.php (создает кнопки)
-
-
-
-
-
-
-
-
-
-
-
- Uploads.php (загрузка файлов в WP)
-
-
-
-
-
-
-
-
-
- General/
-
-
-
-
-
-
-
-
- Config.php
-
-
-
-
-
-
-
-
-
- Parser.php (распарсит и хранит у себя данные из запроса)
-
-
-
-
-
-
-
-
-
- Errors.php
-
-
-
-
-
-
-
-
-
- Router.php (определяет обработчик и направляет к нему запрос)
-
-
-
-
-
-
-
-
- Handlers/ (обработчик действий из ТГ)
-
-
-
-
-
-
-
-
- Callback/ (обработчики нажатий кнопок)
-
-
-
-
-
-
-
-
-
-
- button_data__private.php
-
-
-
-
-
-
-
-
-
-
- Command/ (обработчики команд)
-
-
-
-
-
-
-
-
-
- command_name.php
-
-
-
-
-
-
-
-
-
- Text/ (обработчики текстовых сообщений)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-
-
-
-
-
-
- Photo/ (и так далее: Video, Sticker…)
-
-
-
-
-
-
-
-
-
-
- action_name__private.php
-
-
-
-
-