serwersms/serwersms-php-client

SerwerSMS API PHP

Maintainers

Package info

github.com/SerwerSMSpl/serwersms-php-api-v2

Homepage

pkg:composer/serwersms/serwersms-php-client

Statistics

Installs: 349 005

Dependents: 2

Suggesters: 0

Stars: 9

Open Issues: 1

v3.0.0 2026-06-17 07:15 UTC

This package is auto-updated.

Last update: 2026-06-17 07:16:17 UTC


README

Klient PHP do komunikacji zdalnej z API v2 SerwerSMS.pl

W celu autoryzacji za pośrednictwem Tokenu API, należy wygenerować go po stronie Panelu Klienta w menu Ustawienia interfejsów → HTTP API → Tokeny API. Format nagłówka autoryzacyjnego jest zgodna z formatem Bearer token

Wysyłka SMS

require_once('vendor/autoload.php');

try {
    $serwersms = new SerwerSMS\SerwerSMS($token);

    // SMS FULL
    $result = $serwersms->messages->sendSms(
        [
            '+48500600700',
            '+48600700800'
        ],
        'Test FULL message',
        'INFORMACJA',
        [
            'test' => true,
            'details' => true
        ]
    );

    // SMS ECO
    $result = $serwersms->messages->sendSms(
        [
            '+48500600700',
            '+48600700800'
        ],
        'Test ECO message',
        null,
        [
            'test' => true,
            'details' => true
        ]
    );

    // VOICE from text
    $result = $serwersms->messages->sendVoice(
        [
            '+48500600700',
            '+48600700800'
        ],
        [
            'text' => 'Test message',
            'test' => true,
            'details' => true
        ]
    );

    // MMS
    $list = $serwersms->files->index('mms');
    $result = $serwersms->messages->sendMms(
        [
            '+48500600700',
            '+48600700800'
        ],
        'MMS Title',
        [
            'test' => true,
            'file_id' => $list->items[0]->id,
            'details' => true
        ]
    );

    echo 'Skolejkowano: ' . $result->queued . '<br />';
    echo 'Niewysłano: ' . $result->unsent . '<br />';

    foreach ($result->items as $sms) {
        echo 'ID: ' . $sms->id . '<br />';
        echo 'NUMER: ' . $sms->phone . '<br />';
        echo 'STATUS: ' . $sms->status . '<br />';
        echo 'CZĘŚCI: ' . $sms->parts . '<br />';
        echo 'WIADOMOŚĆ: ' . $sms->text . '<br />';
    }

} catch(Exception $e) {
    echo 'ERROR: ' . $e->getMessage();
}

Wysyłka spersonalizowanych SMS

require_once('vendor/autoload.php');

try {
    $serwersms = new SerwerSMS\SerwerSMS($token);

    $messages[] = [
        'phone' => '500600700',
        'text' => 'First message'
    ];
    $messages[] = [
        'phone' => '600700800',
        'text' => 'Second message'
    ];

    $result = $serwersms->messages->sendPersonalized(
        $messages,
        'INFORMACJA',
        [
            'test' => true,
            'details' => true
        ]
    );

    echo 'Skolejkowano: ' . $result->queued . '<br />';
    echo 'Niewysłano: ' . $result->unsent . '<br />';

    foreach ($result->items as $sms) {
        echo 'ID: ' . $sms->id . '<br />';
        echo 'NUMER: ' . $sms->phone . '<br />';
        echo 'STATUS: ' . $sms->status . '<br />';
        echo 'CZĘŚCI: ' . $sms->parts . '<br />';
        echo 'WIADOMOŚĆ: ' . $sms->text . '<br />';
    }

} catch(Exception $e) {
    echo 'ERROR: ' . $e->getMessage();
}

Pobieranie raportów doręczeń

require_once('vendor/autoload.php');

try {
    $serwersms = new SerwerSMS\SerwerSMS($token);

    $result = $serwersms->messages->reports(['id' => ['aca3944055']]);

    foreach ($result->items as $sms) {
        echo 'ID: ' . $sms->id . '<br />';
        echo 'NUMER: ' . $sms->phone . '<br />';
        echo 'STATUS: ' . $sms->status . '<br />';
        echo 'SKOLEJKOWANO: ' . $sms->queued . '<br />';
        echo 'WYSŁANO: ' . $sms->sent . '<br />';
        echo 'DORĘCZONO: ' . $sms->delivered . '<br />';
        echo 'NADAWCA: ' . $sms->sender . '<br />';
        echo 'TYP: ' . $sms->type . '<br />';
        echo 'WIADOMOŚĆ: ' . $sms->text . '<br />';
    }

} catch(Exception $e) {
    echo 'ERROR: ' . $e->getMessage();
}

Pobieranie wiadomości przychodzących

require_once('vendor/autoload.php');

try {
    $serwersms = new SerwerSMS\SerwerSMS($token);

    $result = $serwersms->messages->recived('ndi');

    foreach ($result->items as $sms) {
        echo 'ID: ' . $sms->id . '<br />';
        echo 'TYP: ' . $sms->type . '<br />';
        echo 'NUMER: ' . $sms->phone . '<br />';
        echo 'DATA: ' . $sms->recived . '<br />';
        echo 'CZARNA LISTA: ' . $sms->blacklist . '<br />';
        echo 'WIADOMOŚĆ: ' . $sms->text . '<br />';
    }

} catch(Exception $e) {
    echo 'ERROR: ' . $e->getMessage();
}

Wymagania

php >= 8.3

lib-curl >= 7.88

Dokumentacja

http://dev.serwersms.pl

Konsola api: http://apiconsole.serwersms.pl

Instalacja

Instalacja przez Composera (https://getcomposer.org/):

composer require serwersms/serwersms-php-client