PodporaAPI dokumentace

mailkit.sendsms

Odeslání sms kampaně.

XML-RPC žádost musí být vydána ve formátu uvedeném níže.

UPOZORNĚNÍ: Formát zasílaných dat musí být v Base 64.

Struktura volání:

my $result = $server->call(
'mailkit.sendsms',
$cid,
$md5,
{
'ID_user_list' => $ID_user_list,
'ID_message'   => $ID_message,
'use_utf'      => 'TRUE',
'allow_split'	=> 'FALSE'
'source'	=> 'Odesilatel',
},
{
'email'        => $email,
'mobile'       => $mobile,
'custom1'      => 1,
'custom2'      => 2,
'custom3'      => 3,
},
{
'sms_data'     => encode_base64("vlastni obsah sms"),
'content',
{
'company_rpc',encode_base64('Mailkit'),
'name_rpc',encode_base64('nejaky nazev'),
'test_url',encode_base64('http://www.example.cz'),
},
},
);

Ukázka XML-RPC volání:

XML-RPC volání

<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
  <methodName>mailkit.sendsms</methodName>
  <params>
    <param>
    <value>
      <int>client_id</int>
    </value>
    </param>
    <param>
    <value>
      <string>client_md5</string>
    </value>
    </param>
    <param>
    <value>
      <struct>
        <member>
          <name>ID_message</name>
          <value>
            <i4>123456</i4>
          </value>
        </member>
        <member>
          <name>ID_user_list</name>
          <value>
            <i4>123456</i4>
          </value>
        </member>
        <member>
          <name>use_utf</name>
          <value>
            <string>FALSE</string>
          </value>
        </member>
        <member>
          <name>allow_split</name>
          <value>
            <string>FALSE</string>
          </value>
        </member>
        <member>
          <name>source</name>
          <value>
            <string>Odesilatel</string>
          </value>
        </member>
      </struct>
    </value>
    </param>
    
------- komu -------
    
    <param>
    <value>
      <struct>
        <member>
          <name>mobile</name>
          <value>
            <i4>+420778535877</i4>
          </value>
        </member>	  
        <member>
          <name>email</name>
          <value>
            <string>mail@example.com</string>
          </value>
        </member>
		<member>
          <name>first_name</name>
          <value>
            <string>Jméno</string>
          </value>
        </member>
        <member>
            <name>gender</name>
            <value>
              <string>F</string>
            </value>
        </member>
        <member>
          <name>custom1</name>
          <value>
            <i4>123</i4>
          </value>
        </member>
        <member>
          <name>custom2</name>
          <value>
             <string>vlastní pole</string>
          </value>
        </member>
      </struct>
    </value>
    </param>
    
------- co -------
    
    <param>
    <value>
    <struct>
    <member>
      <name>sms_data</name>
      <value>
        <string>obsah sms v base64</string>
      </value>
    </member>
    <member>
      <name>content</name>
      <value>
        <struct>
          <member>
            <name>VAR1</name>
            <value>
              <string>data v base64</string>
            </value>
          </member>
          <member>
            <name>VAR2</name>
            <value>
              <string>data v base64</string>
            </value>
          </member>
          <member>
            <name>VAR_GROUP</name>
            <value>
              <array>
                <data>
                  <value>
                    <struct>
                      <member>
                        <name>VAR1a</name>
                        <value>
                          <string>data v base64</string>
                        </value>
                      </member>
                      <member>
                        <name>VAR1b</name>
                        <value>
                          <string>data v base64</string>
                        </value>
                      </member>
                    </struct>
                  </value>
                  <value>
                    <struct>
                      <member>
                        <name>VAR2a</name>
                        <value>
                          <string>data v base64</string>
                        </value>
                      </member>
                      <member>
                        <name>VAR2b</name>
                        <value>
                          <string>data v base64</string>
                        </value>
                      </member>
                    </struct>
                  </value>
                </data>
              </array>
            </value>
          </member>
        </struct>
      </value>
    </member>
    </struct>
    </value>
    </param>
  
--------------
 
 </params>
</methodCall>
		

Hodnoty

client_id * = API ID 
naleznete ve svém Mailkit účtu v menu Profil / Integrace / Nastavení API.

client_md5 * = MD5 kód 
naleznete ve svém Mailkit účtu v menu Profil / Integrace / Nastavení API.

ID_message * = ID SMS kampaně

ID_user_list * = ID seznamu příjemců

use_utf  = diakritika v SMS. Může nabývat hodnot:

  • FALSE (defaultní stav) = převést diakritiku na ASCII (v SMS se nebude vyskytovat diakritika)
  • TRUE = SMS může obsahovat diakritiku (u zpráv s diakritikou se do jedné SMS vejde pouze cca 70 znaků)

allow_split  = umožnit rozdělení SMS do více částí (max. 6). Může nabývat hodnot:

  • FALSE (defaultní stav) = SMS nebude rozdělena do více částí
  • TRUE = SMS delší než 160 znaků smí být rozdělena do více částí

source = název odesílatele. Nepovinné pole. Tento název se zobrazí příjemci jako odesílatel zprávy. Název musí být předem schválený.

mobile * = mobilní telefonní číslo příjemce v mezinárodním tvaru (+420XXXYYYXXX)

email = e-mailová adresa příjemce. Údaj není povinný - ale v případě jeho nevyplnění bude systémem doplněn příjemci e-mail ve tvaru +420XXXYYYXXX@mailkit.mobile.

Mějte na paměti, že výchozím údajem každého příjemce je vždy pouze jeho e-mailová adresa. Proto, pokud bude poprvé do systému vloženo pouze mobilní číslo příjemce a po druhé bude s mobilním číslem vložen i jeho e-mail - nedojde ke spárování, ale vzniknou 2 odlišní příjemci.

first_name,
gender,
custom1, ...
 = individuální data příjemce

sms_data (v base64) = obsah SMS zprávy v base64

content (v base64) = proměnný obsah v base64, který bude vložen na definovaná místa obsahu SMS prostřednictvím tagů, např. [VAR1] či [JINY_NAZEV].

* povinný parametr

Po úspěšném volání se vrací:

XML-RPC odpověď

        <?xml version="1.0" encoding="utf-8"?>
<methodResponse>
  <params>
    <param>
      <value>
        <struct>
		  <member>
            <name>data</name>
            <value>
              <i4>12345678</i4>
            </value>
          </member>
		  <member>
            <name>data2</name>
            <value>
              <i4>12345</i4>
            </value>
          </member>
          <member>
            <name>data3</name>
            <value>
              <i4>12345678</i4>
            </value>
          </member>
          <member>
            <name>status</name>
            <value>
              <i4>0</i4>
            </value>
          </member>
        </struct>
      </value>
    </param>
  </params>
</methodResponse>
		

Hodnoty

data = ID nově vloženého nebo nalezeného příjemce

data2 = ID rozesílky

data3 = ID zprávy

status

  • 0 = update (příjemce byl aktualizován)
  • 1 = insert (příjemce byl úspěšně vložen)
  • 2 = insert (příjemce byl odhlášen a má status odhlášený)
  • 3 = update (příjemce byl odhlášen a má status odhlášený)
  • 4 = fault (mobilní číslo mělo špatný formát, příjemce nebyl vložen)