jfoltan / sms-manager-bundle
Symfony bundle for sending SMS via SMSManager API
1.1.4
2025-04-06 16:01 UTC
Requires
- php: >=7.4
- guzzlehttp/guzzle: ^7.0
- symfony/framework-bundle: ^5.0 || ^6.0
This package is not auto-updated.
Last update: 2025-07-14 22:51:58 UTC
README
SmsManagerBundle je Symfony bundle pro odesílání SMS zpráv prostřednictvím SMSManager API v2.
📦 Instalace
1. Instalace přes Composer
composer require jfoltan/sms-manager-bundle
2. Registrace bundlu (pouze pokud nepoužíváte Symfony Flex)
// config/bundles.php
return [
// ...
SmsManagerBundle\SmsManagerBundle::class => ['all' => true],
];
⚙️ Konfigurace
Vytvořte konfigurační soubor config/packages/sms_manager.yaml
:
sms_manager:
api_key: '%env(SMS_MANAGER_API_KEY)%'
base_url: '%env(default:https://api.smsmngr.com/v2:SMS_MANAGER_BASE_URL)%'
$httpClient: '@GuzzleHttp\Client'
A přidejte odpovídající proměnné prostředí do .env
nebo .env.local
:
###> sms-manager-bundle ###
SMS_MANAGER_API_KEY=vas_api_klic
# Volitelně lze přepsat výchozí základní URL
# SMS_MANAGER_BASE_URL=https://api.smsmngr.com/v2
###< sms-manager-bundle ###
🚀 Použití
Základní použití
use SmsManagerBundle\Service\SmsManagerClient;
class SmsController extends AbstractController
{
public function __construct(private SmsManagerClient $smsClient) {}
public function sendSms(): Response
{
$text = 'Testovací SMS zpráva';
$recipients = ['+420123456789', '+420987654321'];
$result = $this->smsClient->sendMessage($text, $recipients);
return new Response('SMS odeslána: ' . json_encode($result));
}
}
Odeslání jednoduché zprávy s vlastním odesílatelem
$phoneNumber = '+420123456789';
$text = 'Testovací SMS zpráva';
$sender = 'MujWeb';
$result = $this->smsClient->sendSimpleMessage($phoneNumber, $text, $sender);
Hromadné odeslání více různých zpráv
$messages = [
[
'body' => 'První zpráva',
'to' => [['phone_number' => '+420123456789']],
],
[
'body' => 'Druhá zpráva',
'to' => [['phone_number' => '+420987654321']],
],
];
$result = $this->smsClient->sendMessages($messages);
✅ Dostupné metody
Metoda | Popis |
---|---|
sendMessage(string $text, array $recipients) | Odešle jednu zprávu více příjemcům |
sendSimpleMessage(string $phoneNumber, string $text, string $sender, bool $useGet = false) | Odešle jednoduchou zprávu jednomu příjemci s vlastním odesílatelem |
sendMessages(array $messages) | Odešle více různých zpráv najednou |
📋 Požadavky
- PHP 7.4 nebo vyšší
- Symfony 5.0 nebo 6.0+
guzzlehttp/guzzle
symfony/framework-bundle
🪪 Licence
Tento balíček je open-source software licencovaný pod MIT licencí.
👤 Autor
Vytvořil Jakub Foltán