Sponsored Content
Full Discussion: lo!
The Lounge What is on Your Mind? lo! Post 302366326 by Neo on Thursday 29th of October 2009 09:14:38 AM
Old 10-29-2009
Thanks!

I added that anniversary date to the calendar:

The UNIX and Linux Forums - 10-29-2009
 
Net::SIP::DTMF(3pm)					User Contributed Perl Documentation				       Net::SIP::DTMF(3pm)

NAME
Net::SIP::DTMF - DTMF RTP packet generating and extracting SYNOPSIS
use Net::SIP::DTMF; my $sub = dtmf_generator( 11, # event '#' 100, # duration 100ms rfc2833_type => 101, # RTP type 101 for telephone-event/8000 # audio_type => 0, # RTP type 0 for PCMU/8000 ); while (...) { my @pkt = $sub->($sequence,$timestamp,$srcid); last if ! @pkt; # dtmf done next if $buf[0] eq ''; # more coming, but no data this time (pause) .. send @pkts ... } use Net::SIP::DTMF; my $sub = dtmf_extractor( rfc2833_type => 101, # RTP type 101 for telephone-event/8000 audio_type => 0, # RTP type 0 for PCMU/8000 ); while (...) { if ( my ($event,$duration,$type) = $sub->($packet)) { # event received ... } } DESCRIPTION
This package provides functions for generating RTP packets containing DTMF events or extracting DTMF events from RTP packets. FUNCTIONS
dtmf_generator ( EVENT, DURATION, %ARGS ) Generates a function which is used to generate packets for the given EVENT. EVENT is the event numer (0..15) or undef if it should just generate silence or pause. DURATION is the time for the event in ms. ARGS contain information how the event should be packed: either as RFC2833 RTP event or as RTP audio PCMU/8000. %ARGS can be rfc2833_type => rtp_type Gives the RTP payload type number for rfc2833 RTP events (telephone-event/8000). If not given will try audio_type instead. audio_type => rtp_type Gives the RTP payload type number for PCMU/8000. If not given and no rfc2833_type given it will croak. volume => volume Sets the volume for RTP event according to rfc2833. The generated function should then be called with SEQUENCE,TIMESTAMP,SRCID to generate the RTP packets and will return @RTP_PACKETS, with () - DTMF event is finished $RTP_PACKETS[0] eq '' - no RTP packet for this call (pause) @RTP_PACKETS - RTP packets which can be send to the peer dtmf_extractor ( %ARGS ) Generates a function which is used to extract DTMF events. Keys rfc2833_type and audio_type have the same meaning as in generate_dtmf. It will only attempt to extract DTMF events from rfc2833 RTP events or audio if the relevant rtp_type is given. The function will be called with the RTP packet as the only argument and will return () if no new events where found or (EVENT,DURATION,TYPE) if an event finished, where DURATION is the duration in ms and TYPE is audio|rfc2833. For performance reasons it is best to use only rfc2833 if the peer supports it. perl v5.14.2 2012-06-12 Net::SIP::DTMF(3pm)
All times are GMT -4. The time now is 07:56 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy