Per chi volesse utilizzare il servizio di SMS, CPN mette a disposizione un web service.
Le chiamate possibili sono:
- Lettura credito residuo
- Invio sms
- Lettura lista mittenti
- Lettura rubrica
Per usufruire del servizio è necessario utilizzare il file WSDL scaricabile dall'indirizzo http://ws.cpn.it/?cheapnet-sms e configurare la propria applicazione con i dati di login di un account CPN con servizio VoIP attivo.
Esempi di utilizzo in PHP
Variabili d'ambiente
Queste informazioni vanno usate per rendere operative le operazioni definite di seguito
<?php define("SMS_WSDL", "http://ws.cpn.it/?cheapnet-sms"); //definisco il path per il web service $username="UTENTE"; //inserire username CPN (senza @cpn.it) $password="PASSWORD"; //inserire password di accesso a CPN $client = new SoapClient(SMS_WSDL); //invoco il ws ?>
Esempio di lettura elenco mittenti
<?php echo "Lista mittenti: "; $params=array("username"=>$username,"password"=>$password); $ret=$client->getSenders($params); //richiedo la lista mittenti per l'utente $username $ret=$ret->return; if (is_array($ret)) { foreach ($ret as $value) { echo "[".$value."]"; //stampo i mittenti } } else { echo "[".$ret."]"; } ?>
Esempio di lettura rubrica
<?php echo "Lista voci in rubrica: "; $params=array("username"=>$username,"password"=>$password); //passo le credenziali $ret=$client->getPhoneBook($params); //richiamo la rubrica $ret=$ret->return; if(is_array($ret)){ foreach($ret as $obj){ echo "[".$obj->name."][".$obj->cellPhone."]"; //stampo la lista voci in rubrica } } else { echo "[".$ret."]"; } ?>
Esempio di lettura credito residuo
<?php echo "Credito residuo: "; $params=array("username"=>$username,"password"=>$password); //passo le credenziali $ret=$client->getCredit($params); //richiamo il credito residuo $ret=$ret->return; echo "[".$ret->authenticated."][".$ret->credit."][".$ret->creditAvailable."][".$ret->description."][".$ret->profile."]"; //stampo il credito residuo ?>
Esempio di invio sms
<?php echo "Invio SMS: "; $params=array("username"=>$username,"password"=>$password,"request"=>array("mittente"=>"328123XXX","testo"=>"Ciao!","userAgent"=>"","destinatario"=>array("328456XXX"))); $ret=$client->sendSms($params); //invio l'sms con i parametri sopra specificati $ret=$ret->return; echo "[".$ret->authenticated."][".$ret->description."]"; if(is_array($ret->responses)){ foreach($ret->responses as $sms){ echo "[".$sms->description."][".$sms->destination."][".$sms->result."]"; //stampo il responso per l'invio dell'sms } } else { $sms=$ret->responses; echo "[".$sms->description."][".$sms->destination."][".$sms->result."]"; } ?>