```php
use BulkGate\Sms\SenderSettings;
```

Se pretender enviar SMS, pode escolher entre vários tipos de remetente, descritos [aqui](https://www.bulkgate.com/pt/centro-de-ajuda/sms/tipos-de-remetente-sms/).

## Opção 1: Tipo de remetente

A opção mais simples é definir com `BulkGate\Sms\SenderSettings\StaticSenderSettings` o tipo de remetente que pretende utilizar e, se for suportado no país em causa, a SMS é enviada com esse tipo de remetente.

```php
$type = SenderSettings\Gate::GATE_TEXT_SENDER;
$value = 'BulkGate';

$settings = new SenderSettings\StaticSenderSettings($type, $value); 
```
A variável `$type` pode assumir os seguintes valores.

| VALOR | SIGNIFICADO |
|:------------------------------------------|:------------------------------------------|
| `SenderSettings\Gate::GATE_SYSTEM_SENDER` | Número do sistema |
| `SenderSettings\Gate::GATE_SHORT_SENDER`  | Short Code |
| `SenderSettings\Gate::GATE_TEXT_SENDER`   | ID de remetente de texto |
| `SenderSettings\Gate::GATE_OWN_SENDER`    | Número próprio (requer verificação do número) |

A variável `$value` é preenchida quando `$type` está definido como ID de remetente de texto ou número próprio.

> [!NOTE]
> O comprimento máximo de `$value`, no caso do ID de remetente de texto, é de **11 caracteres do alfabeto inglês.**

> [!IMPORTANT]
> Se escolher o tipo de remetente número próprio, é **necessário verificar primeiro o número no Portal BulkGate**.

Em alternativa, pode definir o tipo de remetente num objeto já criado.

```php
/** @var SenderSettings\StaticSenderSettings $settings */
$settings->systemNumber();
$settings->shortCode();
$settings->textSender('BulkGate');
$settings->ownNumber('420777777777');
```

## Opção 2: Definição de acordo com o país

Esta opção é um pouco mais complexa de configurar, mas permite criar definições exatas para cada país para o qual pretende enviar mensagens.

Isto é feito através de `SenderSettings\CountrySenderSettings`.

```php
$settings = SenderSettings\CountrySenderSettings();

$settings->add(BulkGate\Sms\Country::CZECH_REPUBLIC, SenderSettings\Gate::GATE2)
         ->add(BulkGate\Sms\Country::SLOVAKIA, SenderSettings\Gate::GATE5, '421906123456')
         ->add(BulkGate\Sms\Country::GERMANY, SenderSettings\Gate::GATE3, 'BulkGate');
```

Em que o segundo parâmetro é a seleção de um gateway específico num país específico. As definições adequadas encontram-se na [tabela de preços](https://portal.bulkgate.com/sms-price/list) no Portal.

![bulkgate-sdk-gate](docs:php-sdk-sender-settings/sdk-gate)

## Encaminhar as definições do tipo de remetente

Para que funcione, é necessário encaminhar tudo para `BulkGate\Sms\Sender`.

```php
/** 
  * @var BulkGate\Sms\Sender $sender
  * @var SenderSettings\CountrySenderSettings|SenderSettings\StaticSenderSettings $settings
  */
$sender->setSenderSettings($settings);
```
