Fettahlioglu, Mahmut
2003-Mar-11 20:00 UTC
[Asterisk-Users] Several patches, including recording and music-on-hold
Hello everyone, I was working on implementing several changes to asterisk. I had described the changes and their reasons in several emails before I started the job. I have completed the modifications some weeks ago; the system was then tested extensively and is now in use in a production environment. It seems fairly stable so far. I believe at least some of the additions can be of general use and would like to submit a patch. The modifications done are: - Call recording. Any channel can be recorded through calling applications on the dial plan, or sending messages through the manager interface. A monitoring resource is created for this functionality. I used Kostya V. Ivanov's call recording patch to get the idea how. Thanks for this Kostya! - An alaw pcm format file driver. I had to record conversations in alaw format. This is based on the ulaw format driver. However, I had to make file writing real-time for call recording to function correctly when channels use silence suppression. To do this, basically the file driver keeps the time recording started, and when new data is to be written to the file, it is written to the correct file position. I have seen that a seek function was added to file drivers after I have done those changes, and I think we might want to change the way file seeking is done currently. However, initially adding the file as is will be the easiest. - Additional information is sent through the manager interface for queue events. - Some bug fixes in chan_agent channel driver (mostly to do with race conditions). - Modification to chan_sip so the default callerid used when sending INVITEs is not hardcoded to "asterisk", but is read from the config file. It defaults to "asterisk". - Modifications to manager to make the tcp connection TCP_NODELAY. I have found we sometimes have delays in tcp message transmit due to the Naple algorithm used in TCP. For this fix to work, both the client (astman, gastman) and the server (asterisk) needs to be in TCP_NODELAY mode. - Asterisk exits if it cannot create a thread. I have observed that once thread creation starts to fail, Asterisk never recovers. So the changes cause asterisk to stop once it detects that. The starter script can then restart asterisk. This behaviour can be disabled by sending -DEXPERIMENTAL to the compiler in the makefile. - Changed how music on hold resource works so that it does not need a zaptel driver for timing any more. Sound quality is good and not choppy without any zaptel driver. I believe this should be about all. The patchfile is attached. Any comments are welcome. Regards, Mahmut ---------------------------------------------------------------------------- --------------------- Mahmut Fettahlioglu Software Architect Open Access Pty Ltd PO Box 301 Crows Nest NSW 1585 Phone 02 9978 7009 Fax 02 9978 7099 Email <mahmut.fettahlioglu@oa.com.au> ---------------------------------------------------------------------------- --------------------- This email is intended only for the use of the individual or entity named above and may contain information that is confidential and privileged. If you are not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this email is strictly prohibited. If you have received this email in error, please notify us immediately by return email or telephone 02 9978 7009 and destroy the original message. -------------- next part -------------- A non-text attachment was scrubbed... Name: patchfile.gz Type: application/octet-stream Size: 12815 bytes Desc: not available Url : http://lists.digium.com/pipermail/asterisk-users/attachments/20030311/8787a625/patchfile.obj
Matteo Brancaleoni
2003-Mar-12 02:30 UTC
R: [Asterisk-Users] Several patches, including recording and music-on-hold
Very nice work. I wonder if mark will include that into the main cvs tree. There're many patches till now that're interesting (like that, or pauline i4l patches), but the risk is to have a lot of confusion. Mark, will you merge that ;-) ? (i'm thinking to put up a little website, with a repository of all * patches. tell me if anyone is interested into that) Matteo Brancaleoni mbrancaleoni@espia.it Emmegi System Administrator EspiA - EMMEGI Srl - e*solution provider Uffici: Via Pascoli, 37 20129 Milano - Italy Sede Legale: Corso Sempione 67 20149 Milano - Italy Tel. +39 0270633354 Fax. +39 0245487890 http://www.espia.it> -----Messaggio originale----- > Da: asterisk-users-admin@lists.digium.com > [mailto:asterisk-users-admin@lists.digium.com] Per conto di > Fettahlioglu, Mahmut > Inviato: mercoled? 12 marzo 2003 4.01 > A: 'asterisk-users@lists.digium.com' > Cc: 'markster@digium.com'; 'asterisk-dev@lists.digium.com' > Oggetto: [Asterisk-Users] Several patches, including > recording and music-on-hold > > > Hello everyone, > > I was working on implementing several changes to asterisk. I > had described the changes and their reasons in several emails > before I started the job. I have completed the modifications > some weeks ago; the system was then tested extensively and is > now in use in a production environment. It seems fairly stable so far. > > I believe at least some of the additions can be of general > use and would like to submit a patch. The modifications done are: > > - Call recording. Any channel can be recorded through calling > applications on the dial plan, or sending messages through > the manager interface. A monitoring resource is created for > this functionality. I used Kostya V. Ivanov's call recording > patch to get the idea how. Thanks for this Kostya! > - An alaw pcm format file driver. I had to record > conversations in alaw format. This is based on the ulaw > format driver. However, I had to make file writing real-time > for call recording to function correctly when channels use > silence suppression. To do this, basically the file driver > keeps the time recording started, and when new data is to be > written to the file, it is written to the correct file > position. I have seen that a seek function was added to file > drivers after I have done those changes, and I think we might > want to change the way file seeking is done currently. > However, initially adding the file as is will be the easiest. > - Additional information is sent through the manager > interface for queue events. > - Some bug fixes in chan_agent channel driver (mostly to do > with race conditions). > - Modification to chan_sip so the default callerid used when > sending INVITEs is not hardcoded to "asterisk", but is read > from the config file. It defaults to "asterisk". > - Modifications to manager to make the tcp connection > TCP_NODELAY. I have found we sometimes have delays in tcp > message transmit due to the Naple algorithm used in TCP. For > this fix to work, both the client (astman, > gastman) and the server (asterisk) needs to be in TCP_NODELAY mode. > - Asterisk exits if it cannot create a thread. I have > observed that once thread creation starts to fail, Asterisk > never recovers. So the changes cause asterisk to stop once it > detects that. The starter script can then restart asterisk. > This behaviour can be disabled by sending -DEXPERIMENTAL to > the compiler in the makefile. > - Changed how music on hold resource works so that it does > not need a zaptel driver for timing any more. Sound quality > is good and not choppy without any zaptel driver. > > I believe this should be about all. The patchfile is > attached. Any comments are welcome. > > Regards, > > Mahmut > > -------------------------------------------------------------- > -------------- > --------------------- > Mahmut Fettahlioglu > Software Architect > > Open Access Pty Ltd > PO Box 301 > Crows Nest NSW 1585 > > Phone 02 9978 7009 > Fax 02 9978 7099 > Email <mahmut.fettahlioglu@oa.com.au> > -------------------------------------------------------------- > -------------- > --------------------- > This email is intended only for the use of the individual or > entity named above and may contain information that is > confidential and privileged. If you are not the intended > recipient, you are hereby notified that any dissemination, > distribution or copying of this email is strictly prohibited. > If you have received this email in error, please notify us > immediately by return email or telephone > 02 9978 7009 and destroy the original message. > >
Brian J. Schrock
2003-Mar-12 07:03 UTC
[Asterisk-Users] Several patches, including recording and music-on-hold
Will mark merge this into CVS or do I have to apply this to my own code checked out of CVS? Also, which version of CVS code do I patch this against? On Tuesday, March 11, 2003, at 10:00 PM, Fettahlioglu, Mahmut wrote:> Hello everyone, > > I was working on implementing several changes to asterisk. I had > described > the changes and their reasons in several emails before I started the > job. I > have completed the modifications some weeks ago; the system was then > tested > extensively and is now in use in a production environment. It seems > fairly > stable so far. > > I believe at least some of the additions can be of general use and > would > like to submit a patch. The modifications done are: > > - Call recording. Any channel can be recorded through calling > applications > on the dial plan, or sending messages through the manager interface. A > monitoring resource is created for this > functionality. I used Kostya V. Ivanov's call recording patch to get > the > idea how. Thanks for this Kostya! > - An alaw pcm format file driver. I had to record conversations in alaw > format. This is based on the ulaw format driver. However, I had to > make file > writing real-time for call recording to function correctly when > channels use > silence suppression. To do this, basically the file driver keeps the > time > recording started, and when new data is to be written to the file, it > is > written to the correct file position. I have seen that a seek function > was > added to file drivers after I have done those changes, and I think we > might > want to change the way file seeking is done currently. However, > initially > adding the file as is will be the easiest. > - Additional information is sent through the manager interface for > queue > events. > - Some bug fixes in chan_agent channel driver (mostly to do with race > conditions). > - Modification to chan_sip so the default callerid used when sending > INVITEs > is not hardcoded to "asterisk", but is read from the config file. It > defaults to "asterisk". > - Modifications to manager to make the tcp connection TCP_NODELAY. I > have > found we sometimes have delays in tcp message transmit due to the Naple > algorithm used in TCP. For this fix to work, both the client (astman, > gastman) and the server (asterisk) needs to be in TCP_NODELAY mode. > - Asterisk exits if it cannot create a thread. I have observed that > once > thread creation starts to fail, Asterisk never recovers. So the changes > cause asterisk to stop once it detects that. The starter script can > then > restart asterisk. This behaviour can be disabled by sending > -DEXPERIMENTAL > to the compiler in the makefile. > - Changed how music on hold resource works so that it does not need a > zaptel > driver for timing any more. Sound quality is good and not choppy > without any > zaptel driver. > > I believe this should be about all. The patchfile is attached. Any > comments > are welcome. > > Regards, > > Mahmut > > ----------------------------------------------------------------------- > ----- > --------------------- > Mahmut Fettahlioglu > Software Architect > > Open Access Pty Ltd > PO Box 301 > Crows Nest NSW 1585 > > Phone 02 9978 7009 > Fax 02 9978 7099 > Email <mahmut.fettahlioglu@oa.com.au> > ----------------------------------------------------------------------- > ----- > --------------------- > This email is intended only for the use of the individual or entity > named above and may contain information that is confidential and > privileged. If you are not the intended recipient, you are hereby > notified that any dissemination, distribution or copying of this > email is strictly prohibited. If you have received this email in > error, please notify us immediately by return email or telephone > 02 9978 7009 and destroy the original message. > > <patchfile.gz>Brian J. Schrock Network Engineer, RHCE, CCNA Anistone Technologies Phone: 614-798-9106 FAX: 614-573-7165 6926 Avery Rd. Dublin, OH 43017
Florian Overkamp
2003-Mar-12 09:21 UTC
R: [Asterisk-Users] Several patches, including recording and music-on-hold
Hi, At 10:30 12-3-2003 +0100, you wrote:>(i'm thinking to put up a little website, >with a repository of all * patches. tell me >if anyone is interested into that)Yes, this is -very- usefull. How about a cvs repository :-) Best regards, Florian