La classe `BulkGate\Sdk\Message\Sms` représente l'objet du message SMS, composé du contenu du message et du destinataire.

```php
use BulkGate\Sdk\Message\Sms;
use BulkGate\Sdk\Message\Component\{PhoneNumber, SimpleText}
```

## Destinataire

La classe accepte comme premier argument un numéro de téléphone, qui peut être indiqué sous forme de chaîne :

```php
$message = new Sms('420777777777', 'test message');
```

ou une instance de l'objet `BulkGate\Sdk\Message\Component\PhoneNumber` :

```php
$message = new Sms(new PhoneNumber('777777777', 'cz'), 'test message');
```

Pour obtenir le numéro de téléphone, vous pouvez afficher l'objet de la classe `BulkGate\Sdk\Message\Component\PhoneNumber`, qui renvoie toujours le numéro de téléphone sous forme de chaîne.

Vous pouvez aussi définir le numéro de téléphone et l'ISO séparément

```php
$phone_number = new PhoneNumber();
$phone_number->phoneNumber('777777777');
$phone_number->iso('cz');       
```

## Texte du message

Le second paramètre est le texte du message. Là aussi, il existe 2 possibilités : indiquer le texte sous forme de `string`, ou passer une instance de la classe `SimpleText`, ou `null`.

```php
$phone_number = new PhoneNumber('777777777', 'cz');
$text = new SimpleText('test <variable>', ['variable' => 'message']);
$message = new Sms($phone_number, $text);
```

Vous pouvez bien sûr définir le texte même après la création de l'instance de l'objet, à l'aide de la méthode `text(string $text, array $variables = [])`

```php
$phone_number = new PhoneNumber('777777777', 'cz');
$message = new Sms($phone_number);
$message->text('test <variable>', ['variable' => 'message'])
```

## Paramètres

Vous pouvez accéder à la variable publique settings pour configurer [sender_id](https://www.bulkgate.com/fr/documentation/advanced-api/advanced-transactional/2.0/) et Unicode

```php
$sender_id = 'gText';
$sender_id_value = 'Test sender';
$unicode = false;
$message->settings->configure($sender_id, $sender_id_value, $unicode);
```