Trieda `BulkGate\Sdk\Message\Viber` predstavuje objekt Viber správy, ktorý sa skladá z obsahu správy a príjemcu.

```php
use BulkGate\Sdk\Message\Viber;
use BulkGate\Sdk\Message\Component\{Button, Image, PhoneNumber, SimpleText}
```

## Príjemca

Trieda prijíma ako prvý argument telefónne číslo, ktoré môžete zadať pomocou reťazca:

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

alebo prijíma inštanciu objektu `BulkGate\Sdk\Message\Component\PhoneNumber`:

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

Na získanie telefónneho čísla môžete použiť výpis objektu triedy `BulkGate\Sdk\Message\Component\PhoneNumber`, ktorý vždy vracia telefónne číslo ako reťazec.

Telefónne číslo a ISO môžete nastaviť aj samostatne.

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

## Text správy

Druhým parametrom je zadanie textu správy. Aj tu existujú 2 možnosti, prvou je zadanie textu pomocou `reťazca` a druhou je inštancia triedy `SimpleText` alebo `null`.

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

Text môžete samozrejme definovať aj po vytvorení inštancie objektu pomocou metódy `text(string $text, array $variables = [])`

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

## Nastavenie
Tretím parametrom objektu Viber je `sender`, ktorý je definovaný ako `reťazec`.

```php
$message = new Viber('420777777777', 'text message', 'Sender');
```

Funkcionalita služby Viber umožňuje vo vašich správach používať tlačidlá a obrázky.

Vstupné parametre tlačidla zahŕňajú reťazec s názvom tlačidla a URL adresu, ktorá určuje, kam tlačidlo vedie.
Vstupné parametre obrázka zahŕňajú URL adresu umiestnenia obrázka a `boolean`, ktorý určuje, či pôjde obrázok zväčšovať alebo zmenšovať.

```php
$button = new Button('Caption', 'url');
$image = new Image('image url', false);
$message = new Viber('420777777777', 'text message', 'Sender', $button, $image);
```

Posledným parametrom je životnosť správy v sekundách. Keď ju neuvediete,
platí predvolená hodnota **10 800 s (3 hodiny)** — po jej uplynutí sa nedoručená
Viber správa zahodí (pri [viackanálovej správe](https://www.bulkgate.com/sk/dokumentacia/php-sdk/php-sdk-viackanalova-sprava/2.0/)
sa prepošle ako SMS).

```php
$message = new Viber('420777777777', 'text message', 'Sender', $button, $image, 3_600);
```