# our $DEBUG = 2; # log requests and content of replies
tie my %options, 'Tie::IxHash',
- 'apikey' => { label => 'API key' },
- 'debug' => { label => 'Enable debugging', type => 'checkbox', value => 1 },
-; # best. API. ever.
+ 'apikey' => { label => 'API key' },
+ 'debug' => { label => 'Enable debugging', type => 'checkbox', value => 1 },
+ 'ext' => { label => 'PBXware "ext" field in CDR download request', },
+ 'cdrtype' => { label => 'PBXware "cdrtype" field in CDR download request', },
+ 'trunkdst' => { label => 'PBXware "trunkdst" field in CDR download request', },
+;
our %info = (
'svc' => [qw(svc_phone)],
'notes' => <<'END'
<P>Export to <a href="www.bicomsystems.com/pbxware-3-8">Bicom PBXware</a>
softswitch.</P>
-<P><I>This export does not provision services.</I> Currently you will need
+<P><I>This export does not yet provision services.</I> Currently you will need
to provision trunks and extensions through PBXware. The export only downloads
CDRs.</P>
<P>Set the export machine to the name or IP address of your PBXware server,
end => $ed->strftime('%b-%d-%Y'),
endtime => $ed->strftime('%H:%M:%S'),
);
+
+ $opt{$_} = $self->option($_)
+ for grep length( $self->option($_) ), qw( ext cdrtype trunkdst );
+
# unlike Certain Other VoIP providers, this one does proper pagination if
# the result set is too big to fit in a single chunk.
my $page = 1;
# page's IDs or something.
my $uniqueid = md5_hex(join(',',@$row));
if ( FS::cdr->row_exists('uniqueid = ?', $uniqueid) ) {
- warn "skipped duplicate row in page $page\n" if $DEBUG > 1;
+ warn "skipped duplicate row in page $page\n" if $DEBUG;
next CDR;
}
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,
]
);
warn "$me $method\n" if $DEBUG;
- warn $request->as_string."\n" if $DEBUG > 1;
+ warn $request->as_string."\n" if $DEBUG;
my $ua = LWP::UserAgent->new;
my $response = $ua->request($request);