Provided by: libnet-sip-perl_0.836-1_all 

NAME
Net::SIP::Dropper - drops SIP messages based on callback
SYNOPSIS
use Net::SIP::Dropper::ByIPPort;
my $drop_by_ipport = Net::SIP::Dropper::ByIPPort->new(
database => '/path/to/database.drop',
methods => [ 'REGISTER', '...', '' ],
attempts => 10,
interval => 60,
);
use Net::SIP::Dropper::ByField;
my $drop_by_field = Net::SIP::Dropper::ByField->new(
methods => [ 'REGISTER', '...', '' ],
'From' => qr/sip(?:vicious|sscuser)/,
'User-Agent' => qr/^friendly-scanner$/,
);
my $drop_subscribe = sub {
my ($packet,$leg,$from) = @_;
# drop all subscribe requests and responses
return $packet->method eq 'SUBSCRIBE' ? 1:0;
};
my $dropper = Net::SIP::Dropper->new(
cbs => [ $drop_by_ipport, $drop_by_field, $drop_subscribe ]);
my $chain = Net::SIP::ReceiveChain->new(
[ $dropper, ... ]
);
DESCRIPTION
Drops messages. This means, does no further processing in the Net::SIP chain and does not send something
back if the incoming message match the settings.
Some useful droppers are defined in Net::SIP::Dropper::ByIpPort and Net::SIP::Dropper::ByField.
CONSTRUCTOR
new ( ARGS )
ARGS is a hash with key "cb" or "cbs". "cb" is a single callback to be processed, "cbs" is an
arrayref with callbacks. If one of the callbacks returns true the message will be dropped. If all
callbacks return false the message will be forwarded in the chain.
Returns a new dropper object to be used in the chain.
perl v5.36.0 2023-09-29 Net::SIP::Dropper(3pm)