[ previous ] [ next ] [ threads ]
 To :  Madhawa Jayanath <madhawa@d...>,Yate mailing list <yate@v...>
 From :  yate@a...
 Subject :  Re: [yate] Extmodule, voice detection and yrtp statistics patch
 Date :  Wed, 08 Nov 2017 01:20:06 +0300
Are you going to apply the patch? I have the new one, but can't ready to share it before you apply the previous one.
 
27.09.2017, 07:39, "Madhawa Jayanath" <madhawa@d...>:
On Mon, Sep 25, 2017 at 5:19 PM, <yate@a...> wrote:
Hello.
 
A lot of months I improved Yate for personal usage and decided to share my work. It will be better to split it into different patches, but now it requires more time.
 
The list of improvements:
 
1. ExtModule "quit" notification.
There was "%%>quit" message from extmodule to engine which raises "%%<quit" from engine to extmodule and kills the extmodule. It's excess notification from extmodule because it can just close stdout or exit without notification and engine will handle this event.
 
So I change the logic to notify extmodule by engine about quiting. When extmodule is going to shutting down by engine (restart or stop of extmodile), the engine sends to extmodule "%%<quit" message and waiting for timeout to extmodule terminated properly.
 
2. Waiting extmodule to quit properly on shutting down engine.
Waiting shutting down in proper way from extmodule on shutting down the engine is required to leave "Engine worker" thread before extmodules will be terminated. So I make the thread priorities to order the time of threads terminating.
 
3. Extmodule "connected" and "disconnected" messages in any time.
If an extmodule subscribed to "connected" and "disconnected" messages it expects to get they from any modules. I was surprised when I replace the running extmodule leg by other channel I haven't got this message to other "managed" extmodule. The extmodule logic has to decide process or not that messages, not engine.
 
4. Fixed a bug with uninstall from engine a MessageRelay.
 
5. Voice detection.
I've added voice detection to tonedetect module. It raises two "chan.voice" messages: on start and on finish voice detection with appropriate "active" values.
 
6. Return yrtp statistics by request.
Sometime it's important to monitor the quality of the call, so I add "getstats" option to "chan.rtp" message.
 
Kind regards,
Andrey Egorov.
Hello Andrey,
thanks for sharing this patch with us.
 
Cheers,
Madhawa