[SR-Users] play_media sounds interrupted

Stepan Kislyakov stepan at itwave.kz
Wed Oct 12 05:36:12 CEST 2022


> The duration of the media playback is returned from the play_media() 
> command (see `media_duration` modparam). You could use some sort of 
> timer to invoke media unblocking after media playback ends. Sadly my 
> Kamailio-Fu isn't strong enough to be able to tell you how to run this 
> sort of timer. :)
> 
> Cheers

Thank you for the hint.

I was thinking about timers, but rtimer cannot be triggered in an event 
route. I used a "timer" module, it could trigger another route from the 
event route but when a new route is triggered unblock_media() is not 
aware of the call-id and if i assign call-id to a variable in the event 
route, that variable is unavailable at new route. Hope that make sense.

here is my peace of code:

loadmodule "timer.so"

modparam("timer", "declare_timer", "PB_TIMER=START,5000");

route[START]{
xlog("current call id at event route is $ci, but call-id avp is 
$avp(call_id)");
unblock_media("all");
timer_enable("PB_TIMER",0); #we need to disable timer or it will be 
triggered over and over again

}

event_route[dialog:start]{
xlog("L_INFO", "dialog started, received 200OK");
#block_media();
play_media("all file=/usr/local/src/myfile.wav");
$avp(call_id)=$ci;
timer_enable("PB_TIMER",1);
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20221012/3bf3e987/attachment.htm>


More information about the sr-users mailing list