Interfejs SOAP API

Integracja z SMS API poprzez Web Services

Korzystając z interfejsu API SOAP można zintegrować z SMSAPI prawie każdą aplikację niezależnie od systemu operacyjnego czy wykorzystanej platformy (języka programowania). Jest to protokół, który umożliwia korzystanie z usług SMSAPI prawie z każdego środowiska.


Nazwa pliku: Wersja: Data aktualizacji:
2.0
12.10.2010


  • 1. Klient napisany w języku PHP ułatwiający integrację z SMSAPI.

    Wykorzystując klienta SMSAPI można m.in.:
    • dokonać wysyłki za pomocą SOAP,
    • zarządzać książką telefoniczną,
    • sprawdzić statusy wysłanych wiadomości.
    Pobierz bibliotekę SOAP
    Pobierz wspólną bibliotekę (HTTP + SOAP)
  • 2. Przykład wysyłki SMS z wykorzystaniem biblioteki SOAP.

    Przykład wysyłki SMS z wykorzystaniem powyższej biblioteki.
    <?php

    require_once 'smsapi.php';
    spl_autoload_register(array('smsAPI','__autoload'));

    try {
        
    $smsapi = new smsAPI_SOAPClient('login'md5('password') );

        
    $msg $smsapi->new_sms();
        
    $msg->recipient  '48500500500';
        
    $msg->message    'Wiadomosc pojedyncza Eco wyslana z serwisu SMSAPI';
        
    $msg->eco        TRUE//TRUE- Wiadomość Eco, FALSE- Wiadomość Pro
        
    $msg->sender     'SMSAPI'//Pole nadawcy - dla wiadomości Eco nie jest brane pod uwagę
        
    $result $msg->send();

        
    var_dump($result);
     } catch ( 
    Exception $e ){
        echo 
    $e->getMessage();
    }

    ?>

  • 3. Przykład wysłania SMS-a poprzez SOAP.

    Przykład wysyłki SMS poprzez SOAP.
    Przy wysyłce wiadomości SMS możliwe jest użycie parametrów jako zmiennych w treści wiadomości.
    <?php

    $soap 
    null;

    try {

        
    $soap = new SoapClient'https://ssl.smsapi.pl/webservices/v2/?wsdl' , array(
                    
    'features'   => SOAP_SINGLE_ELEMENT_ARRAYS,
                    
    'cache_wsdl' => WSDL_CACHE_NONE,
                    
    'trace'      => true,
                )
        );

        
    $client = array( 'username' => 'login''password' => md5('haslo') );
        
    $sms = array(
            
    'sender'    => 'SMSAPI',
            
    'recipient' => '600500400',
            
    'eco'       => 0,
            
    'date_send' => 0,
            
    'details'   => 1,
            
    'message'   => 'test wiadomości [%1%] [%4%]',
            
    'params'    => array( 'parametr 1''parametr 2''parametr 3''parametr 4'),
            
    'idx'       => uniqid(),
        );

        
    $params = array(
            
    'client' => $client,
            
    'sms'    => $sms
        
    );

        
    $result $soap->send_sms($params);

        
    print_r($result);
    }
    catch(
    Exception $e) {
        
    print_r($e);
    }
    ?>

  • 4. Wysyłanie kilku wiadomości SMS poprzez SOAP.

    Przykład multi-wysyłki SMS-ów poprzez SOAP.
    W celu nadania kilku wiadomości SMS należy podać wszystkie niezbędne numery odbiorców jako tablicę. Możilwe jest użycie parametrów indywidualnych dla każdego odbiorcy jako zmiennych w treści wiadomości. W tym celu należy zdefiniować tabelę parametrów kluczami odpowiadającą kluczom tabeli z numerami odbiorców.
    <?php

    $soap 
    null;

    try {

        
    $soap = new SoapClient'https://ssl.smsapi.pl/webservices/v2/?wsdl' , array(
                    
    'features'   => SOAP_SINGLE_ELEMENT_ARRAYS,
                    
    'cache_wsdl' => WSDL_CACHE_NONE,
                )
        );

        
    $client = array( 'username' => 'login''password' => md5('haslo') );
        
    $sms = array(
            
    'sender'    => 'SMSAPI',
            
    'recipient' => array('600500400''600500300'),
            
    'eco'       => 0,
            
    'date_send' => 0,
            
    'details'   => 1,
            
    'message'   => 'test wiadomości [%1%] [%3%]',
            
    'params'    => array(
                    array( 
    'param' => array( 'parametr 1-1''parametr 1-2') ),
                    array( 
    'param' => array( 'parametr 2-1''parametr 2-2') ),
                    array( 
    'param' => array( 'parametr 3-1''parametr 3-2') ),
                    array( 
    'param' => array( 'parametr 4-1''parametr 4-2') ),
                ),
            
    'idx'       => array(uniqid(), uniqid()),
        );

        
    $params = array(
            
    'client'    => $client,
            
    'sms'       => $sms
        
    );

        
    $result $soap->send_sms_multi($params);

        
    print_r($result);
    }
    catch(
    Exception $e) {
        
    print_r($e);
    }

    ?>
  • 5. Wysyłanie wiadomości WAP PUSH poprzez SOAP.

    Przykład wysłania wiadomości WAP PUSH poprzez SOAP.
    Aby wysłać wiadomość WAP PUSH należy zdefiniować parametr "message" jako zakodowaną treść wiadomości z linkiem w postaci binarnej. W celu przekonwertowania treści do postaci binarnej należy użyć narzędzia dostępnego w zakładce Narzędzia.
    <?php

    $soap 
    null;

    try {

        
    $soap = new SoapClient'https://ssl.smsapi.pl/webservices/v2/?wsdl' , array(
                    
    'features'   => SOAP_SINGLE_ELEMENT_ARRAYS,
                    
    'cache_wsdl' => WSDL_CACHE_NONE,
                )
        );

        
    $client = array( 'username' => 'login''password' => md5('haslo') );
        
    $sms = array(
            
    'sender'     => 'SMSAPI',
            
    'recipient'  => '600500400',
            
    'eco'        => 0,
            
    'date_send'  => 0,
            
    'details'    => 1,
            
    'datacoding' => 'bin',
            
    'udh'        => '0605040b8423f0',
            
    'message'    => '860601ae02056a0045c60c037777772E736D736170692E706C000701035A'.
                            
    '61707261737A616D7920646F20534D5341504921000101',
            
    'idx'         => uniqid(),
        );

        
    $params = array(
            
    'client'     => $client,
            
    'sms'        => $sms
        
    );

        
    $result $soap->send_sms($params);

        
    print_r($result);
    }
    catch(
    Exception $e) {
        
    print_r($e);
    }
    ?>
  • 6. Wysyłanie wiadomości vCard poprzez SOAP.

    Przykład wysłania wiadomości vCard poprzez SOAP.
    Aby wysłać wiadomość vCard należy zdefiniować parametr "message", czyli dane kontaktu, jako ciąg w postaci binarnej. W celu przekonwertowania treści do postaci binarnej należy użyć narzędzia dostępnego w zakładce Narzędzia.
    <?php

    $soap 
    null;

    try {

        
    $soap = new SoapClient'https://ssl.smsapi.pl/webservices/v2/?wsdl' , array(
                    
    'features'   => SOAP_SINGLE_ELEMENT_ARRAYS,
                    
    'cache_wsdl' => WSDL_CACHE_NONE,
                )
        );

        
    $client = array( 'username' => 'login''password' => md5('haslo') );
        
    $sms = array(
            
    'sender'        => 'SMSAPI',
            
    'recipient'     => '600500400',
            
    'eco'           => 0,
            
    'date_send'     => 0,
            
    'details'       => 1,
            
    'datacoding'    => 'bin',
            
    'udh'           => '06050423F40000',
            
    'message'       => '424547494E3A56434152440D0A56455253494F4E3A322E310D0A464E3A4A616E'.
                               
    '204E6F77616B0D0A4E3A4E6F77616B3B4A616E3B3B3B0D0A54454C3B50524546'.
                               
    '3B43454C4C3A3630303530303430300D0A454D41494C3B494E5445524E45543A'.
                               
    '626F6B40736D736170692E706C0D0A55524C3A7777772E736D736170692E706C'.
                               
    '0D0A454E443A5643415244',
            
    'idx'           => uniqid(),
        );

        
    $params = array(
            
    'client'    => $client,
            
    'sms'        => $sms
        
    );

        
    $result $soap->send_sms($params);

        
    print_r($result);
    }
    catch(
    Exception $e) {
        
    print_r($e);
    }
    ?>
  • 7. Pobranie informacji na temat wysłanej wiadomości.

    Pobranie informacji na temat wysłanej wiadomości poprzez SOAP.
    Aby pobrać informację na temat przesłanych wiadomości należy podać ich numer ID.
    <?php

    $soap 
    null;

    try {

        
    $soap = new SoapClient'https://ssl.smsapi.pl/webservices/v2/?wsdl' , array(
                    
    'features'   => SOAP_SINGLE_ELEMENT_ARRAYS,
                    
    'cache_wsdl' => WSDL_CACHE_NONE,
                )
        );

        
    $client = array( 'username' => 'login''password' => md5('haslo') );
        
    $ids = array('131106486062829000009480''131106471462829000018660');
        
    $params = array(
            
    'client'    => $client,
            
    'ids'       => $ids
        
    );

        
    $result $soap->get_sms_by_ids($params);

        
    print_r($result);
    }
    catch(
    Exception $e) {
        
    print_r($e);
    }
    ?>