Intrebari Frecvente - Despre noi - Parteneri - Platforma mobila de SMS marketing - Blog - Contact / Support (24/7)    
Pentru a putea crea campanii de SMS Marketing, 2-Way SMS, a accesa Mail to SMS, SMS Gateway, SMS Alerts sau SMS Connectors trebuie sa va autentificati.
Nume de utilizator sau e-mail
Parola
Creati un cont de utilizator
Ati uitat parola?
Reprezentati o companie care activeaza in domeniile marketing, publicitate, public relations sau sunteti consultant in domeniile acestea? Beneficiati de avantajele acestui program de parteneriat pentru a putea propune solutia SMSLink clientilor dv. (inclusiv white-label) si a putea sa dezvoltati astfel noi servicii cu valoare adaugata. Aflati mai multe
Aveti nevoie de o solutie SMS / MMS / SVA / microplati interactiva sau non-interactiva, personalizata? Echipa noastra tehnica si comerciala va sta la dispozitie pentru a identifica specificatiile solutiei si solutia tehnica optima pentru atingerea tuturor obiectivelor propuse. Un consultant SMSLink va va contacta in cel mai scurt timp posibil. Aflati cum ne puteti contacta

Prin pasiune pentru tehnologie si clienti multumiti, suntem singurul furnizor de servicii SMS din Romania prezent in clasamentul Deloitte Technology Fast 50.

Aflati mai multe

Pentru a putea testa live exemplele de integrare SMS Gateway este necesar sa va creati un cont de utilizator in platforma SMSLink iar apoi in contul dvs. de utilizator sa definiti o conexiune pentru serviciul SMS Gateway.

<?php

// ----------------------------------------------------------------------------------------------------------
// 
//    Exemplu minimal pentru trimiterea de SMS-uri criptate 
//    Serviciul SMS Gateway
//    Versiunea 1.1 / 12.04.2010
//    Distribuit gratuit    
//
//  CERINTE MINIME SERVER: 
//        - Biblioteca libcrypt > 2.4.x
//
//    CERINTE MINIME PHP:    
//        - Modulul PHP mcrypt (http://www.php.net/manual/en/book.mcrypt.php)
//        - PHP >= 5.1.2 (Pentru functia HASH SHA 512)
//
// ----------------------------------------------------------------------------------------------------------

// ----------------------------------------------------------------------------------------------------------
//   Configurare SMS Gateway  
// ----------------------------------------------------------------------------------------------------------

// ----------------------------------------------------------------------------------------------------------
//   Algoritm pentru criptare
//    - algoritmi acceptati (case sensitive): 
//      MCRYPT_3DES, MCRYPT_ARCFOUR_IV (libmcrypt > 2.4.x only), MCRYPT_ARCFOUR (libmcrypt > 2.4.x only)
//      MCRYPT_BLOWFISH, MCRYPT_CAST_128, MCRYPT_CAST_256, MCRYPT_CRYPT, MCRYPT_DES, MCRYPT_ENIGMA 
//        (libmcrypt > 2.4.x only, alias for MCRYPT_CRYPT), MCRYPT_GOST
//      MCRYPT_IDEA (non-free), MCRYPT_LOKI97 (libmcrypt > 2.4.x only), MCRYPT_MARS (libmcrypt > 2.4.x only, 
//      non-free), MCRYPT_PANAMA (libmcrypt > 2.4.x only), MCRYPT_RIJNDAEL_128 (libmcrypt > 2.4.x only)
//      MCRYPT_RIJNDAEL_192 (libmcrypt > 2.4.x only), MCRYPT_RIJNDAEL_256 (libmcrypt > 2.4.x only), 
//      MCRYPT_RC2, MCRYPT_RC6 (libmcrypt > 2.4.x only), MCRYPT_SAFER64, MCRYPT_SAFER128, MCRYPT_SAFERPLUS 
//        (libmcrypt > 2.4.x only), MCRYPT_SERPENT(libmcrypt > 2.4.x only), MCRYPT_SKIPJACK 
//        (libmcrypt > 2.4.x only), MCRYPT_THREEWAY, MCRYPT_TRIPLEDES (libmcrypt > 2.4.x only), MCRYPT_WAKE 
//        (libmcrypt > 2.4.x only), MCRYPT_XTEA (libmcrypt > 2.4.x only)
// ----------------------------------------------------------------------------------------------------------
$cipher MCRYPT_TRIPLEDES;                            // Inlocuiti cu algoritmul ales si salvat in contul
                                                    // dumneavoastra de utilizator de pe SMSLink.ro pentru
                                                    // acel Connection ID

$fields["connection_id"] = "";                         // Completati cu SMS Gateway Connection ID
$fields["password"] = "";                            // Completati cu parola pentru Connection ID
$fields["to"] = "0723178275";                        // Completati cu numarul de mobil al destinatarului
$fields["message"] = "test encrypted message";        // Completati cu mesajul text ce urmeaza a fi trimis
$fields["https"] = false;                            // Protocolul poate fi HTTP sau HTTPS

// ----------------------------------------------------------------------------------------------------------
//   Incepe procedura de criptare a datelor care vor fi transmise catre SMS Gateway
//    
//     Specificatii:
//        - Cheia generata este valoarea hash SHA 512 a parolei text trunchiata la maximul cheii acceptate de
//          algoritmul ales.
//        - Parola, destinatarul si mesajul sunt trimise encryptat cu algoritmul ales si cheia generata
// ----------------------------------------------------------------------------------------------------------
function urlsafe_b64encode($string)
{
      
$data base64_encode($string);
     
$data str_replace(array('+''/''='), array('-''_''.'), $data);
     
      return 
$data;
      
}

$iv mcrypt_create_iv(mcrypt_get_block_size($cipherMCRYPT_MODE_CBC), MCRYPT_DEV_RANDOM);
$key substr(hash("sha512"$fields["password"]), 0mcrypt_get_key_size($cipher"cbc"));
$cipher mcrypt_module_open($cipher'''cbc''');

$encrypted = array(
                
=> "password"
                
=> "to"
                
=> "message"
                
            
);

mcrypt_generic_init($cipher$key$iv);

foreach (
$encrypted as $id => $value)
    
$fields[$value] = urlsafe_b64encode(mcrypt_generic($cipher$fields[$value]));
    
mcrypt_generic_deinit($cipher);

$link = (($fields["https"] == false) ? "http://www." "https://secure.").
        
"smslink.ro/sms/gateway/communicate/?".
        
"connection_id=".$fields["connection_id"]."&".
        
"password=".$fields["password"]."&".
        
"to=".$fields["to"]."&".
        
"message=".$fields["message"]."&".
        
"iv=".urlsafe_b64encode($iv);
// ----------------------------------------------------------------------------------------------------------

// ----------------------------------------------------------------------------------------------------------
//   Pasul 1 
//       - Apelam SMS Gateway cu parametrii criptati
// ----------------------------------------------------------------------------------------------------------
$content file_get_contents($link);

// ----------------------------------------------------------------------------------------------------------
//   Pasul 2
//     - Interpretam rezultatul pentru a avea acces la tot continutul acestuia si a putea intelege 
//         rezultatul mesajului trimis spre SMS Gateway
//
//       Rezultatul transmis de SMS Gateway va fi intotdeauna de forma urmatoare:
//       string Nivel;int ID Rezultat;string Mesaj;string[optional] Variabile
// ----------------------------------------------------------------------------------------------------------

// ----------------------------------------------------------------------------------------------------------
//   Pasul 2.1
//     - Extragem din rezultat toate variabilele separate prin punct si virgula 
// ----------------------------------------------------------------------------------------------------------
list($level$id$response$variabiles) = explode(";"$content);

// ----------------------------------------------------------------------------------------------------------
//   Pasul 2.2
//     - Verificam daca mesajul trimis a fost transmis cu succes prin compararea Nivelului si ID Rezultat
// ----------------------------------------------------------------------------------------------------------
//   Daca mesajul este transmis atunci Nivelul va fi MESSAGE si ID- rezultat va avea valoarea numerica 1    
// ----------------------------------------------------------------------------------------------------------
if (($level == "MESSAGE") and ($id == 1))
{        
    
// ------------------------------------------------------------------------------------------------------
    //   Variabilele optionale transmise optional sunt separate prin virgula si vor avea forma urmatoare:
    //     mixed Variabila 1,mixed Variabila 2 ... mixed Variabila 3                
    // ------------------------------------------------------------------------------------------------------
    
$variabiles explode(","$variabiles);                    
    
    
// ------------------------------------------------------------------------------------------------------
    //   Extragem ID-ul Mesajului alocat de gateway pentru a il salva pentru utilizare ulterioara. 
    //   Message ID va fi intotdeauna prima variabila trimisa, restul fiind explicate complet in 
    //     documentatia de pe site. 
    // ------------------------------------------------------------------------------------------------------
    
$message_id $variabiles[0];    
    
    
// ------------------------------------------------------------------------------------------------------
    //   Pasul 3
    //     - Afisam mesajul de confirmare si afisam Message ID-ul alocat
    // ------------------------------------------------------------------------------------------------------
    
echo "Mesajul a fost trimis si are ID-ul ".$message_id."!";
    
}
else
{
    if (
$level == "ERROR")
    {
        
// --------------------------------------------------------------------------------------------------
        //   Pasul 3
        //     - Afisam mesajul de eroare si afisam ID-ul erorii si descrierea
        // --------------------------------------------------------------------------------------------------
        
echo "A intervenit eroarea ID ".$id.", Descriere ".$response;
        
    }
    
}

?>
Acest site foloseşte cookies. Continuarea navigării pe acest site reprezintă acordul dumneavoastră pentru folosirea cookie-urilor. Aflaţi mai multe sau Inchideţi notificarea