Documentation: http://mobile.vianett.com/files/javadoc/
import no.vianett.sms.SmsEventListener;
import no.vianett.sms.Sms;
import no.vianett.sms.SmsEvent;
import no.vianett.sms.component.SmsTransceiver;
import no.vianett.sms.log.SmsScreenLogger;
import no.vianett.sms.event.SmsDeliveredEvent;
import no.vianett.sms.event.SmsSendingFailedEvent;
import no.vianett.sms.event.SmsDeliveryFailedEvent;
public class SmsSender implements SmsEventListener
{
private SmsTransceiver transceiver = null;
private Object link = null; // Just to keep this object alive.
private int counter = 0;
public SmsSender()
{
this.link = this; // Keeps this object alive.
this.transceiver = SmsTransceiver.getInstance(); // Get the transceiver object.
// Initialize transceiver.
String smsHost = "cpa.vianett.no";
String smsPort = "31337";
String smsUsername = "username";
String smsPassword = "password";
this.transceiver.initialize( smsHost, Integer.parseInt( smsPort ), smsUsername, smsPassword, new SmsScreenLogger() );
this.transceiver.addSmsEventListener( this ); // Registrer this class as listener for SMS events.
// Send message
Sms sms = new Sms();
sms.setId( ++this.counter );
sms.setReplyPath( 100 );
sms.setSender( "1963" ); // Set the sender number.
sms.setMessage( "Testing" );
sms.setRecipient( "91748750" ); // The recipients phone number.
//sms.setType( "flash" ); // Needed if you are to send flash messages.
//sms.setFromAlpha( "Me 2 U" ); // A "from" string if you are not using setSender(). Max 10 characters.
//sms.setType( "binary" ); // Needed if you are to use one of the messages below.
// OP logo
//sms.setHeader( "06050415820000" );
//sms.setMessage( "42F22000480E01007FF000000000000001C00E0000000000000700038000000000000C0F00E0000000000018318021E87943D0F0106080010941421280604080410F41421E8040608083C2F14785E0403F81820681440D0010000702C4B145896008000C0198614330C00400180000000000000101E000000000000000FE00000000000000" );
// Picture
//sms.setHeader( "060504158A158A" );
//sms.setMessage( "3000000002010000481C01EAEBFE000007FF83F8D5D5FF000017FFC1F0EAAFFE0003FFFFE2F8D55FFC000707FFF1F0AAFFFE080EABFFF8B8D17FFE5407F7FFFC50A2BFFE000BBBFFF808C05DFF1D17F5FFF40080AFFE3A0800FFFA20C155FE710001FFFC1080FBFE600800FFFE00C05DFE0004017FFC0080BAFE000002FFFE80C17DFE0005017FFF40827BFE000E02FFFE80C07FFE0054417FFFC080FBFE00080AFFFEA0C47FFF0415517FFFC08AFFFE08AAFAFFFFA0D4FFFF0140117FFFD0A0FFFE0201E2EFFF20C5FFFE041FC16FFF1080FFFE02E0A0EFFE38C17FFFC00141EFFF10A2BFFFC02202EFFE80915FFFE00005EFFD1082BFFEE0000BEFFE80855FFEF00017FFFF10" );
// Ring tone
//sms.setHeader( "06050415810000" );
//sms.setMessage( "024A3A618DC985E9E5C985C0040E8496491941AA1A41041AA1A41041AA1A41C6288B08D08208208D08B12718410A23422826C2AC2B42082082B42082A835434C20C34C20C2B42AC20C2AC20C23422C20C22C49061AA1A49A628AD0AB09A48D08A127106A86904106A8410000" );
this.transceiver.send( sms );
}
// Just make new instance of this class.
public static void main( String[] args ){ new SmsSender(); }
/**
* Listener.
*
* @param event a <code>no.vianett.sms.SmsEvent</code>
*/
public void eventHappened( SmsEvent event )
{
if( event instanceof SmsDeliveredEvent )
{
System.out.println( "Sms delivered." );
System.out.println( "Refno : " + event.getReferenceId() );
System.out.println( "Sms generated by : " + event.getSource().getClass() );
}
else if( event instanceof SmsSendingFailedEvent )
{
System.out.println( "Sms sending failed." );
System.out.println( "Refno : " + event.getReferenceId() );
System.out.println( "Return code : " + ( ( SmsSendingFailedEvent ) event ).getReturnCode() );
System.out.println( "Sms generated by : " + event.getSource().getClass() );
}
else if( event instanceof SmsDeliveryFailedEvent )
{
System.out.println( "Sms delivery failed." );
System.out.println( "Refno : " + event.getReferenceId() );
System.out.println( "Error code : " + ( ( SmsDeliveryFailedEvent ) event ).getErrorCode() );
System.out.println( "Sms generated by : " + event.getSource().getClass() );
}
}
}