addArgument('mode', InputArgument::REQUIRED, 'Command mode (set or delete)') ; } protected function execute(InputInterface $input, OutputInterface $output): int { $io = new SymfonyStyle($input, $output); if (self::MODE_SET === strtolower($input->getArgument('mode'))) { $url = $this->router->generate( 'telegram_webhook', ['token' => $this->telegramToken], UrlGeneratorInterface::ABSOLUTE_URL ); $io->info('Setting webhook: ' . $url); $setWebHook = new SetWebhook(); $setWebHook->url = $url; $setWebHook->max_connections = $this->telegramWebhookMaxConnections; $this->client->performApiRequest($setWebHook); $output->writeln('Done'); } elseif (self::MODE_DELETE === strtolower($input->getArgument('mode'))) { $io->warning('Unsupported until moving to another library.'); } else { throw new \InvalidArgumentException(sprintf('Mode must be exactly one of: %s', implode(', ', [self::MODE_SET, self::MODE_DELETE]))); } return Command::SUCCESS; } }