[freeside-commits] branch master updated. 21c3ee38fc44a1ff55f1dc1755ab13ffde82de16
Mark Wells
mark at 420.am
Sun Feb 24 20:42:21 PST 2013
The branch, master has been updated
via 21c3ee38fc44a1ff55f1dc1755ab13ffde82de16 (commit)
from c3b8e954dbf5ddd04930809edfb77fa106fccaee (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 21c3ee38fc44a1ff55f1dc1755ab13ffde82de16
Author: Mark Wells <mark at freeside.biz>
Date: Sun Feb 24 20:42:03 2013 -0800
protocol fixes, #20836
diff --git a/FS/FS/part_export/huawei_hlr.pm b/FS/FS/part_export/huawei_hlr.pm
index fb3b679..5a6a983 100644
--- a/FS/FS/part_export/huawei_hlr.pm
+++ b/FS/FS/part_export/huawei_hlr.pm
@@ -18,6 +18,7 @@ tie my %options, 'Tie::IxHash',
'pwd' => { label=>'Operator password' },
'tplid' => { label=>'Template number' },
'hlrsn' => { label=>'HLR serial number' },
+ 'timeout' => { label=>'Timeout (seconds)', default => 120 },
'debug' => { label=>'Enable debugging', type=>'checkbox' },
;
@@ -36,13 +37,13 @@ sub _export_insert {
my( $self, $svc_phone ) = (shift, shift);
# svc_phone::check should ensure phonenum and sim_imsi are numeric
my @command = (
- 'ADD TPLSUB',
IMSI => '"'.$svc_phone->sim_imsi.'"',
ISDN => '"'.$svc_phone->phonenum.'"',
TPLID => $self->option('tplid'),
);
unshift @command, 'HLRSN', $self->option('hlrsn')
if $self->option('hlrsn');
+ unshift @command, 'ADD TPLSUB';
my $err_or_queue = $self->queue_command($svc_phone->svcnum, @command);
ref($err_or_queue) ? '' : $err_or_queue;
}
@@ -107,7 +108,7 @@ sub _export_delete {
my( $self, $svc_phone ) = (shift, shift);
my @command = (
'RMV SUB',
- IMSI => '"'.$svc_phone->sim_imsi.'"',
+ #IMSI => '"'.$svc_phone->sim_imsi.'"',
ISDN => '"'.$svc_phone->phonenum.'"',
);
my $err_or_queue = $self->queue_command($svc_phone->svcnum, @command);
@@ -179,15 +180,16 @@ sub command {
$string .= shift(@param) . '=' . shift(@param);
$string .= ',' if @param;
}
- $string .= "\n";
+ $string .= "\n;";
my @result;
eval { # timeout
local $SIG{ALRM} = sub { die "timeout\n" };
- alarm ($self->option('timeout') || 30);
+ alarm ($self->option('timeout') || 120);
warn "Sending to server:\n$string\n\n" if $DEBUG;
$socket->print($string);
warn "Received:\n";
my $line;
+ local $/ = "\r\n";
do {
$line = $socket->getline();
warn $line if $DEBUG;
@@ -203,11 +205,10 @@ sub command {
return { error => $@ };
} else {
#+++ HLR9820 <date> <time>\n
- # skip empty lines
my $header = shift(@result);
- return { error => 'malformed response: '.$header }
- unless $header =~ /^\+\+\+/;
- $return{header} = $header;
+ $header =~ /(\+\+\+.*)/
+ or return { error => 'malformed response: '.$header };
+ $return{header} = $1;
#SMU #<serial number>\n
$return{smu} = shift(@result);
#%%<command string>%%\n
-----------------------------------------------------------------------
Summary of changes:
FS/FS/part_export/huawei_hlr.pm | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
More information about the freeside-commits
mailing list