1#!/usr/local/bin/perl 2# 3# Copyright (c) 2001 SymLABS <symlabs@symlabs.com>, All Rights Reserved. 4# See README for license. NO WARRANTY. 5# 6# 15.3.2001, Sampo Kellomaki <sampo@symlabs.com> 7# $Id: esme-hammer.pl,v 1.4 2001/09/28 16:53:55 sampo Exp $ 8# 9# ESME - Exterior Short Message Entity 10# 11# Test Net::SMPP in ESME role 12# 13# Usage: ./esme-hammer.pl *version* 14 15use Net::SMPP; 16use Data::Dumper; 17 18$trace = 1; 19$sysid = "GSMSGW"; 20$pw = "secret"; 21$host = 'localhost'; 22$port = 9900; 23$facil = 0x00010003; 24($vers, $iter) = @ARGV; 25$iter ||= 10000; 26$vers = $vers == 4 ? 0x40 : 0x34; #4 27$if_vers = 0x00; 28 29### Connect and bind 30 31($smpp, $resp) = Net::SMPP->new_transmitter($host, 32 smpp_version => $vers, 33 interface_version => $if_vers, 34 system_id => $sysid, 35 password => $pw, 36 addr_ton => 0x09, 37 addr_npi => 0x00, 38 source_addr_ton => 0x09, 39 source_addr_npi => 0x00, 40 dest_addr_ton => 0x09, 41 dest_addr_npi => 0x00, 42 system_type => '_001', 43 facilities_mask => $facil, 44 port => $port, 45 ) 46 or die "Can't contact server: $!"; 47 48### 49### Typical session in synchronous mode 50### 51 52warn "Sending submit_sm"; 53 54$Net::SMPP::trace = 0; 55for my $i (1..$iter) { 56 $resp = $smpp->submit_sm(message_class=>0, 57 protocol_id=>0x20, # telematic_interworking 58 validity_period=>0, # "default" 59 source_addr_ton => 0x00, 60 source_addr => '0777101777', 61 destination_addr => '077747772777', 62 msg_reference => '00000097', 63 priority_level => 3, 64 registered_delivery_mode => 1, 65 data_coding => 9, 66 short_message=>'Hello', 67 PVCY_AuthenticationStr => "\x01\x00\x00", 68 PDC_MessageClass => "\x20\x00", 69 PDC_PresentationOption => "\x01\xff\xff\xff", 70 PDC_AlertMechanism => "\x01", 71 PDC_Teleservice => "\x01", 72 PDC_PredefinedMsg => "\0", 73 source_subaddress => "\x01\x00\x00", # PDC_Originator_Subaddr 74 dest_subaddress => "\x01\x00\x00", # PDC_Destination_Subaddr 75 ); 76} 77warn Dumper $resp; 78 79$resp = $smpp->unbind(); 80 81warn Dumper $resp; 82warn "Done."; 83 84#EOF 85