summaryrefslogtreecommitdiff
path: root/FS/FS/cdr/asterisk_skip_clid.pm
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2013-01-09 17:05:31 -0800
committerIvan Kohler <ivan@freeside.biz>2013-01-09 17:05:31 -0800
commit69b1f712cbc76d6ab2671288c314c2f596af06b9 (patch)
treea42fd29c319a8ddf8d5e5fc9050ad8f88e64ec4f /FS/FS/cdr/asterisk_skip_clid.pm
parente0c74fc65bab0afcbedbae00aa06957c99f4c5f5 (diff)
add asterisk format that skips clid, RT#20669
Diffstat (limited to 'FS/FS/cdr/asterisk_skip_clid.pm')
-rw-r--r--FS/FS/cdr/asterisk_skip_clid.pm45
1 files changed, 45 insertions, 0 deletions
diff --git a/FS/FS/cdr/asterisk_skip_clid.pm b/FS/FS/cdr/asterisk_skip_clid.pm
new file mode 100644
index 0000000..1a105b3
--- /dev/null
+++ b/FS/FS/cdr/asterisk_skip_clid.pm
@@ -0,0 +1,45 @@
+package FS::cdr::asterisk_skip_clid;
+
+use strict;
+use vars qw(@ISA %info);
+use FS::cdr qw(_cdr_date_parser_maker);
+
+@ISA = qw(FS::cdr);
+
+#http://www.the-asterisk-book.com/unstable/funktionen-cdr.html
+my %amaflags = (
+ DEFAULT => 0,
+ OMIT => 1, #asterisk 1.4+
+ IGNORE => 1, #asterisk 1.2
+ BILLING => 2, #asterisk 1.4+
+ BILL => 2, #asterisk 1.2
+ DOCUMENTATION => 3,
+ #? '' => 0,
+);
+
+%info = (
+ 'name' => 'Asterisk (skip Caller ID)',
+ 'weight' => 11,
+ 'import_fields' => [
+ 'accountcode',
+ 'src',
+ 'dst',
+ 'dcontext',
+ 'SKIP_clid',
+ 'channel',
+ 'dstchannel',
+ 'lastapp',
+ 'lastdata',
+ _cdr_date_parser_maker('startdate'),
+ _cdr_date_parser_maker('answerdate'),
+ _cdr_date_parser_maker('enddate'),
+ 'duration',
+ 'billsec',
+ 'disposition',
+ sub { my($cdr, $amaflags) = @_; $cdr->amaflags($amaflags{$amaflags}); },
+ 'uniqueid',
+ 'userfield',
+ ],
+);
+
+1;