From c936d727b495b06f63d7f15949d540f2c9a2b9c0 Mon Sep 17 00:00:00 2001 From: Nikita Kiselev Date: Fri, 3 Oct 2025 00:48:52 +0300 Subject: [PATCH] feat: handle start command for telecart bot --- .../framework/Telegram/Commands/StartCommand.php | 15 +++++++++++++++ .../framework/Telegram/TelegramService.php | 16 ++++++++++++++++ .../src/ServiceProviders/AppServiceProvider.php | 6 ++++++ 3 files changed, 37 insertions(+) create mode 100644 module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/Commands/StartCommand.php diff --git a/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/Commands/StartCommand.php b/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/Commands/StartCommand.php new file mode 100644 index 0000000..217130e --- /dev/null +++ b/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/Commands/StartCommand.php @@ -0,0 +1,15 @@ +telegram->sendMessage($chatId, $message); + } +} \ No newline at end of file diff --git a/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/TelegramService.php b/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/TelegramService.php index 1a5cdd5..5b55c2f 100755 --- a/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/TelegramService.php +++ b/module/oc_telegram_shop/upload/oc_telegram_shop/framework/Telegram/TelegramService.php @@ -178,4 +178,20 @@ class TelegramService return $out; } + + public function getChat(int $chatId): array + { + $response = $this->exec('getChat', [ + 'chat_id' => $chatId, + ]); + + return $response['result']; + } + + public function getMe(): array + { + $response = $this->exec('getMe'); + + return $response['result']; + } } diff --git a/module/oc_telegram_shop/upload/oc_telegram_shop/src/ServiceProviders/AppServiceProvider.php b/module/oc_telegram_shop/upload/oc_telegram_shop/src/ServiceProviders/AppServiceProvider.php index 940eb49..7a0eeb6 100755 --- a/module/oc_telegram_shop/upload/oc_telegram_shop/src/ServiceProviders/AppServiceProvider.php +++ b/module/oc_telegram_shop/upload/oc_telegram_shop/src/ServiceProviders/AppServiceProvider.php @@ -16,6 +16,7 @@ use Openguru\OpenCartFramework\Container\ServiceProvider; use Openguru\OpenCartFramework\Contracts\ExceptionHandlerInterface; use Openguru\OpenCartFramework\CriteriaBuilder\RulesRegistry; use Openguru\OpenCartFramework\Telegram\Commands\ChatIdCommand; +use Openguru\OpenCartFramework\Telegram\Commands\StartCommand; use Openguru\OpenCartFramework\Telegram\TelegramCommandsRegistry; class AppServiceProvider extends ServiceProvider @@ -40,6 +41,11 @@ class AppServiceProvider extends ServiceProvider $registry->addCommand('id', ChatIdCommand::class, 'Возвращает ChatID текущего чата.'); $registry->addCommand('link', LinkCommand::class, 'Генератор Telegram сообщений с кнопкой'); + $registry->addCommand( + 'start', + StartCommand::class, + 'Базовая команда Telegram бота. Присылает ссылку на открытие Telecart магазина.' + ); } private function registerFacetFilters(): void