X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fpart_export%2Fpbxware.pm;h=467b79f46ce5afbc82ea1b4f6d737497b957a9ad;hb=575dbfc4c5acb1dd2c04e17fd045351b240db218;hp=3da4c2ad1b4906369da8987ff745aed866308dac;hpb=a2671c1396fed27ff620a58fb46773408d21d194;p=freeside.git diff --git a/FS/FS/part_export/pbxware.pm b/FS/FS/part_export/pbxware.pm index 3da4c2ad1..467b79f46 100644 --- a/FS/FS/part_export/pbxware.pm +++ b/FS/FS/part_export/pbxware.pm @@ -5,7 +5,7 @@ use strict; use Tie::IxHash; use LWP::UserAgent; -use JSON; +use Cpanel::JSON::XS; use HTTP::Request::Common; use Digest::MD5 qw(md5_hex); use FS::Record qw(dbh); @@ -140,6 +140,11 @@ sub import_cdrs { uniqueid => $uniqueid, ); @hash{@names} = @$row; + # strip non-numeric junk that sometimes gets appended to these (it + # causes problems creating Freeside detail records) + foreach (qw(src dst)) { + $hash{$_} =~ s/\D*$//; + } my $cdr = FS::cdr->new(\%hash); $error = $cdr->insert; @@ -163,6 +168,10 @@ sub api_request { my $self = shift; my ($method, $content) = @_; $DEBUG ||= 1 if $self->option('debug'); + +# kludge to curb excessive paranoia in LWP 6.0+ +local $ENV{'PERL_LWP_SSL_VERIFY_HOSTNAME'} = 0; + my $url = 'https://' . $self->machine; my $request = POST($url, [ %$content,