Re: [asterisk-dev] AstriCon 2024: February 15th, 2024 - Fort Lauderdale, Florida
What you mean is seeing only 80% of me. :-) On Wed, Sep 13, 2023 at 1:10 PM Joshua C. Colp wrote: > Glad to hear it, and look forward to seeing you there! > > On Wed, Sep 13, 2023 at 7:04 AM Nir Simionovich > wrote: > >> Hi All, >> >> After a relatively long hiatus and a very brief visit last year, Eric and >> I are going to be back at ITExpo in full force. >> Looking forward to meeting everybody. >> >> On Tue, Sep 5, 2023 at 7:37 PM Joshua C. Colp wrote: >> >>> On Tue, Sep 5, 2023 at 12:41 PM Fred Posner wrote: >>> >>>> +1 regarding valentine’s day… >>>> >>>> Also, is AstriCon just one day this year? >>>> >>> >>> Yes, AstriCon is a single day this year. We're focusing on a solid base >>> of a single day schedule. If all goes well then we'll look at expanding it >>> to more days in the future yet again. >>> >>> -- >>> Joshua C. Colp >>> Asterisk Project Lead >>> Sangoma Technologies >>> Check us out at www.sangoma.com and www.asterisk.org >>> -- >>> _ >>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>> >>> asterisk-dev mailing list >>> To UNSUBSCRIBE or update options visit: >>>http://lists.digium.com/mailman/listinfo/asterisk-dev >> >> -- >> _ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >>http://lists.digium.com/mailman/listinfo/asterisk-dev > > > > -- > Joshua C. Colp > Asterisk Project Lead > Sangoma Technologies > Check us out at www.sangoma.com and www.asterisk.org > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] AstriCon 2024: February 15th, 2024 - Fort Lauderdale, Florida
Hi All, After a relatively long hiatus and a very brief visit last year, Eric and I are going to be back at ITExpo in full force. Looking forward to meeting everybody. On Tue, Sep 5, 2023 at 7:37 PM Joshua C. Colp wrote: > On Tue, Sep 5, 2023 at 12:41 PM Fred Posner wrote: > >> +1 regarding valentine’s day… >> >> Also, is AstriCon just one day this year? >> > > Yes, AstriCon is a single day this year. We're focusing on a solid base of > a single day schedule. If all goes well then we'll look at expanding it to > more days in the future yet again. > > -- > Joshua C. Colp > Asterisk Project Lead > Sangoma Technologies > Check us out at www.sangoma.com and www.asterisk.org > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Support for amr codec?
The usage of AMR codecs is mostly in the LTE space - which means that you're probably aiming to run a slightly higher scale than a single Asterisk server. Why not simply install Kamailio+rtpengine as your signalling media front-end and then relay everything back to Asterisk using a low-footprint codec, like alaw? To me, that would sound like the proper solution in this case. Indeed, there is a minor technical up-hill - but it's worth the effort. Asterisk is a great codec linguistic, but when it comes to "pure transcoding" - Kamailio+rtpengine are far more capable. On Tue, Aug 18, 2020 at 2:31 PM Carsten Bock wrote: > The comfort noise topic was not an issue, until someone got a Samsung S20 > in one of our VoLTE deployments ;-) > There are different types of comfort noise in AMR/AMR-WB and only newer > phones use the full scale of comfort noise there is. > > Thanks, > Carsten > -- > Carsten Bock I CTO & Founder > > ng-voice GmbH > > Trostbrücke 1 I 20457 Hamburg I Germany > T +49 40 524 75 93-40 | M +49 179 2021244 I www.ng-voice.com > > Registry Office at Local Court Hamburg, HRB 120189 > Managing Directors: Dr. David Bachmann, Carsten Bock > > > Am Di., 18. Aug. 2020 um 11:48 Uhr schrieb Michael Maier < > m1278...@mailbox.org>: > >> On 18.08.20 at 10:49 Carsten Bock wrote: >> > Hi, >> > >> > one of the big issues with AMR/AMR-WB and Asterisk is that usually >> devices >> > speaking AMR/AMR-WB do use quite a lot of comfort noise, which is not >> > supported by Asterisk as far as I know. Even if you use the patch from >> the >> > above link, you might end up with some distorted noise. >> >> Well, during my tests I in fact noticed some more or less silent >> distortions which may be caused by comfort noise generated by the mobile(?) >> (it's only from mobile -> local phone - >> not vice versa). For me it sounds like a pretty silent steam engine. >> >> I tested with amr and amr-wb in conjunction with transcoding (as I'm >> having no local phone supporting amr. Transcoding was between g722 or >> g711). Therefore I can't say for sure if >> this distortion is a result of transcoding or not. I could here it with >> two different mobiles (iPhone and Huawei). After muting of the iPhone, the >> distortion mostly went away (no >> change with the Huawei mobile). >> >> >> Thanks >> Michael >> >> -- >> _ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >>http://lists.digium.com/mailman/listinfo/asterisk-dev > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] [BOUNTY] ASTERISK-27545
HI All, I would like to offer a bounty to fix ASTERISK-27545 <https://issues.asterisk.org/jira/browse/ASTERISK-27545> I am offering $500 for fixing the above mentioned issue and RFC in-compliance. Resolution should be made available as a patch for Asterisk 13, 14 and 15. Regards, Nir S -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Suspected chan_sip regression bug, when re-invite occurs from IPv4 to IPv6 (IPv6 is da-shit! giving us the da-shit!)
Issue reported as ASTERISK-27545. On Thu, Jan 4, 2018 at 8:36 AM Nir Simionovich <nir.simionov...@gmail.com> wrote: > Hi All, > > We've recently encountered an interesting bug with Asterisk 13 (the > version we are testing with), but I believe > as this is a fairly crazy (although reasonable) test scenario - the issue > may still be there. > > The scenario is the following: > > UAC A IPv4 + SIP + RTP > Asterisk --- IPv4 + SIP + RTP ---> UA B > > When the following happens, we all know that this is working correctly, > no problem there. However, during the > call, the network condition changes, namely in our case: Transit from UAC > A to Asterisk changes from IPv4 to > IPv6, thus the following happens: > > UAC A IPv6 + SIP + RTP > Asterisk --- IPv4 + SIP + RTP ---> UA B > > The SDP response in the 200 OK coming back from Asterisk is malformed, > and contains IPv4 addresses in the > SDP, although it shouldn't. For example (pay attention to the bolded > section): > > INVITE sip:4015@[2a03:b0c0:1:d0::176b:1001]:5090 SIP/2.0 > Via: SIP/2.0/UDP > [2001:470:1f06:404:8562:7dba:63c9:3986]:5090;rport;branch=z9hG4bKPj.gYD2Pm-L3SCeUUj8Ne69O7AjM27TNq1 > > Max-Forwards: 70 > From: > sip:4...@xx.dev.greenfieldtech.net;tag=7lAWRIh6cVthKG-XFN-bCRvGnlBRG6Gq > > To: sip:6...@xx.dev.greenfieldtech.net;tag=as4b993656 > Contact: <sip:4015@[2001:470:1f06:404:8562:7dba:63c9:3986]:5090;ob> > Call-ID: RqxyicrI6s6vrih1XJMU-GvHFeo9x3IE > CSeq: 18030 INVITE > Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, > REFER, MESSAGE, OPTIONS > Supported: replaces, 100rel, timer, norefersub > Session-Expires: 1800;refresher=uas > Min-SE: 90 > Content-Type: application/sdp > Content-Length: 584 > > v=0 > o=- 3723897380 3723897382 IN IP4 100.101.10.126 > s=pjmedia > b=AS:117 > t=0 0 > a=X-nat:0 > m=audio 4002 RTP/AVP 98 97 99 104 3 0 8 9 120 96 > c=IN IP6 2001:470:1f06:404:8562:7dba:63c9:3986 > b=TIAS:96000 > a=rtcp:4003 IN IP6 2001:470:1f06:404:8562:7dba:63c9:3986 > a=sendrecv > a=rtpmap:98 speex/16000 > a=rtpmap:97 speex/8000 > a=rtpmap:99 speex/32000 > a=rtpmap:104 iLBC/8000 > a=fmtp:104 mode=30 > a=rtpmap:3 GSM/8000 > a=rtpmap:0 PCMU/8000 > a=rtpmap:8 PCMA/8000 > a=rtpmap:9 G722/8000 > a=rtpmap:120 opus/48000/2 > a=fmtp:120 useinbandfec=1 > a=rtpmap:96 telephone-event/8000 > a=fmtp:96 0-16 > > INVITE sip:4015@[2a03:b0c0:1:d0::176b:1001]:5090 SIP/2.0 > Via: SIP/2.0/UDP > [2001:470:1f06:404:8562:7dba:63c9:3986]:5090;rport;branch=z9hG4bKPj.gYD2Pm-L3SCeUUj8Ne69O7AjM27TNq1 > > Max-Forwards: 70 > From: > sip:4...@xx.dev.greenfieldtech.net;tag=7lAWRIh6cVthKG-XFN-bCRvGnlBRG6Gq > > To: sip:6...@xx.dev.greenfieldtech.net;tag=as4b993656 > Contact: <sip:4015@[2001:470:1f06:404:8562:7dba:63c9:3986]:5090;ob> > Call-ID: RqxyicrI6s6vrih1XJMU-GvHFeo9x3IE > CSeq: 18030 INVITE > Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, > REFER, MESSAGE, OPTIONS > Supported: replaces, 100rel, timer, norefersub > Session-Expires: 1800;refresher=uas > Min-SE: 90 > Content-Type: application/sdp > Content-Length: 584 > > v=0 > o=- 3723897380 3723897382 IN IP4 100.101.10.126 > s=pjmedia > b=AS:117 > t=0 0 > a=X-nat:0 > m=audio 4002 RTP/AVP 98 97 99 104 3 0 8 9 120 96 > c=IN IP6 2001:470:1f06:404:8562:7dba:63c9:3986 > b=TIAS:96000 > a=rtcp:4003 IN IP6 2001:470:1f06:404:8562:7dba:63c9:3986 > a=sendrecv > a=rtpmap:98 speex/16000 > a=rtpmap:97 speex/8000 > a=rtpmap:99 speex/32000 > a=rtpmap:104 iLBC/8000 > a=fmtp:104 mode=30 > a=rtpmap:3 GSM/8000 > a=rtpmap:0 PCMU/8000 > a=rtpmap:8 PCMA/8000 > a=rtpmap:9 G722/8000 > a=rtpmap:120 opus/48000/2 > a=fmtp:120 useinbandfec=1 > a=rtpmap:96 telephone-event/8000 > a=fmtp:96 0-16 > > SIP/2.0 100 Trying > Via: SIP/2.0/UDP > [2001:470:1f06:404:8562:7dba:63c9:3986]:5090;branch=z9hG4bKPj.gYD2Pm-L3SCeUUj8Ne69O7AjM27TNq1;received=2001:470:1f06:404:8562:7dba:63c9:3986;rport=5090 > > From: > sip:4...@xx.dev.greenfieldtech.net;tag=7lAWRIh6cVthKG-XFN-bCRvGnlBRG6Gq > > To: sip:6...@xx.dev.greenfieldtech.net;tag=as4b993656 > Call-ID: RqxyicrI6s6vrih1XJMU-GvHFeo9x3IE > CSeq: 18030 INVITE > Server: Asterisk PBX 14.7.0-rc2 > Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, > PUBLISH, MESSAGE > Supported: replaces, timer > Session-Expires: 1800;refresher=uas > Contact: <sip:6...@178.yyy.zzz.231:5090> > Content-Length: 0 > > > > *SIP/2.0 200 OK Via: SIP/2.0/UDP > [2001:470:1f06:404:8562:7dba:63c9:3986]:5090;branch=z9hG4bKPj.gYD2Pm-L3SCeUUj8Ne69O7AjM27TNq1;received=2001:470:1f06:404:8562:7d
Re: [asterisk-dev] Adding a Key/Value Store mechanism to Asterisk
@Alan, I've looked into both implementations - let's put it this way, both are highly opinionated in terms of how things need to be done. The func_redis implementation isn't bad, API wise, however - the concept of having just one possible Redis in the config is highly counter productive. I see it as being a "mysql type backend", where you can define multiple Redis endpoints to work with. I believe the solution is somewhere in the middle - creating a Redis resource that can connect to multiple Redis database at the same time, then a layer that can work with that. On Fri, Dec 22, 2017 at 8:07 PM Alan Graham <a...@zerohalo.com> wrote: > Regarding the func_redis module linked here - I contributed a couple of > patches to it and I spoke to Sergio (the original author) and he is no > longer associated with the IT Departament of the University of La Laguna > Tenerife Spain, who currently owns this repository. He says that the > current person in charge was tasked to push this upstream, and he'll send a > message to direct them to this list. > > However, as he notes, this implementation opens a new connection to redis > for each channel that uses it. > > You might want to also check out this project, which includes a res_redis, > though also apparently abandoned, for some inspiration: > https://github.com/dkgroot/ast_redis > > -Alan Graham > > On Fri, Dec 22, 2017 at 12:43 PM, Corey Farrell <g...@cfware.com> wrote: > >> I hope we consider creating a res_redis first, then base everything off >> that. If a redis library can be used directly by any module that would >> fine but I'd like to see us avoid following the example of curl where >> everything uses a dialplan function to perform requests. Dialplan >> functions should be for dialplan, in general I think they should not be >> used as internal API's. >> >> On 12/22/2017 12:23 PM, Nir Simionovich wrote: >> >> Well, >> >> We can start with that implementation as a base for learning, and go from >> there. Looks like I have some homework for tonight. >> >> Nir >> >> On Fri, Dec 22, 2017, 18:44 Matt Fredrickson <cres...@digium.com> wrote: >> >>> On Fri, Dec 22, 2017 at 10:23 AM, Ivan Poddubny <ivan.poddu...@gmail.com >>> > wrote: >>> >>>> Hi, >>>> >>>> There is an out-of-tree implementation of func_redis: >>>> https://github.com/tic-ull/func_redis. >>>> I don't use it in production, but it worked fine for me on a test >>>> machine. >>>> With slight modifications it works with Asterisk 13+. >>>> Unfortunately, the project seems to be abandoned and the author did not >>>> try to merge the code upstream. >>>> >>> >>> Yeah, unless he submits it and goes through that process himself, we >>> can't do a lot with it in the mainline Asterisk codebase. >>> >>> Matthew Fredrickson >>> >>> >>>> >>>> On 22 December 2017 at 16:54, Matt Fredrickson <cres...@digium.com> >>>> wrote: >>>> >>>>> >>>>> >>>>> On Fri, Dec 22, 2017 at 6:58 AM, Nir Simionovich < >>>>> nir.simionov...@gmail.com> wrote: >>>>> >>>>>> Abhay, >>>>>> >>>>>> Migrating astsb from SQLlite to redis isn't the topic here. I'm >>>>>> talking adding a new type of storage engine. For example, func_redis, >>>>>> that >>>>>> will implement the relevant key/value operations that are commonly used >>>>>> by >>>>>> people. >>>>>> >>>>> >>>>> I think doing it as func_redis instead of a sorcery backend is a good >>>>> idea. >>>>> >>>>> I'm guessing there are a lot of people that can use it. It seems like >>>>> having access to a redis like backend is a modern requirement for most big >>>>> systems. >>>>> >>>>> Matthew Fredrickson >>>>> >>>>> Nir >>>>>> >>>>>> On Fri, Dec 22, 2017, 14:33 Abhay Gupta <ab...@avissol.com> wrote: >>>>>> >>>>>>> Hi All, >>>>>>> >>>>>>> I had a program where I have implemented a project using REDIS >>>>>>> wherein the client is made using a socket library and no other third >>>>>>> party >>>>>>> client library in C . >>>>>>&
Re: [asterisk-dev] Adding a Key/Value Store mechanism to Asterisk
Well, We can start with that implementation as a base for learning, and go from there. Looks like I have some homework for tonight. Nir On Fri, Dec 22, 2017, 18:44 Matt Fredrickson <cres...@digium.com> wrote: > On Fri, Dec 22, 2017 at 10:23 AM, Ivan Poddubny <ivan.poddu...@gmail.com> > wrote: > >> Hi, >> >> There is an out-of-tree implementation of func_redis: >> https://github.com/tic-ull/func_redis. >> I don't use it in production, but it worked fine for me on a test machine. >> With slight modifications it works with Asterisk 13+. >> Unfortunately, the project seems to be abandoned and the author did not >> try to merge the code upstream. >> > > Yeah, unless he submits it and goes through that process himself, we can't > do a lot with it in the mainline Asterisk codebase. > > Matthew Fredrickson > > >> >> On 22 December 2017 at 16:54, Matt Fredrickson <cres...@digium.com> >> wrote: >> >>> >>> >>> On Fri, Dec 22, 2017 at 6:58 AM, Nir Simionovich < >>> nir.simionov...@gmail.com> wrote: >>> >>>> Abhay, >>>> >>>> Migrating astsb from SQLlite to redis isn't the topic here. I'm talking >>>> adding a new type of storage engine. For example, func_redis, that will >>>> implement the relevant key/value operations that are commonly used by >>>> people. >>>> >>> >>> I think doing it as func_redis instead of a sorcery backend is a good >>> idea. >>> >>> I'm guessing there are a lot of people that can use it. It seems like >>> having access to a redis like backend is a modern requirement for most big >>> systems. >>> >>> Matthew Fredrickson >>> >>> Nir >>>> >>>> On Fri, Dec 22, 2017, 14:33 Abhay Gupta <ab...@avissol.com> wrote: >>>> >>>>> Hi All, >>>>> >>>>> I had a program where I have implemented a project using REDIS wherein >>>>> the client is made using a socket library and no other third party client >>>>> library in C . >>>>> >>>>> This REDIS database has 400 million records and performs extremely >>>>> well though the memory requirement for such a large dataset goes to 48GB . >>>>> So I strongly believe that for such key value pair REDIS will be the right >>>>> choice for ASTDB. >>>>> >>>>> Regards, >>>>> >>>>> Abhay >>>>> >>>>> On 22-Dec-2017, at 5:52 PM, Nir Simionovich <nir.simionov...@gmail.com> >>>>> wrote: >>>>> >>>>> Hi All, >>>>> >>>>> Following a discussion on JIRA [ >>>>> https://issues.asterisk.org/jira/browse/ASTERISK-27383], I truly >>>>> believe that >>>>> adding a scaleable, robust and most importantly - accepted key/value >>>>> store mechanism to the Asterisk dialplan >>>>> is a worthwhile effort. >>>>> >>>>> Every, and I do mean every, Asterisk application requires a >>>>> key/value store of some form. Most developers will >>>>> basically butcher (would have used stronger words, but refraining from >>>>> doing so) AstDB in the process, which will >>>>> then result in a performance toll - specifically when dealing with a >>>>> high capacity systems. >>>>> >>>>> Initially, I was under the impression this should be done as a >>>>> sorcery module, but I'm not sure this is the >>>>> correct approach or the required use case. >>>>> >>>>> I would like to hear if others believe this is a worth while effort? >>>>> if others believe it is, I'll be ecstatic to >>>>> work with others on this one (adding Redis support isn't as simple as >>>>> it sounds). However, before I start >>>>> working on something, I'd like to see if others believe this as >>>>> strongly as I do. >>>>> >>>>> On the same note, I'll be in NYC second week of January - so if any >>>>> of you are around that area and would >>>>> like to combine forces to spear this - would love to do so. >>>>> >>>>> >>>>> -- >>>>> Kind Regards, >>>>> Nir Simionovich >>>>> GreenfieldTech >>>>> (schedule) http://nirs
Re: [asterisk-dev] Adding a Key/Value Store mechanism to Asterisk
Abhay, Migrating astsb from SQLlite to redis isn't the topic here. I'm talking adding a new type of storage engine. For example, func_redis, that will implement the relevant key/value operations that are commonly used by people. Nir On Fri, Dec 22, 2017, 14:33 Abhay Gupta <ab...@avissol.com> wrote: > Hi All, > > I had a program where I have implemented a project using REDIS wherein the > client is made using a socket library and no other third party client > library in C . > > This REDIS database has 400 million records and performs extremely well > though the memory requirement for such a large dataset goes to 48GB . So I > strongly believe that for such key value pair REDIS will be the right > choice for ASTDB. > > Regards, > > Abhay > > On 22-Dec-2017, at 5:52 PM, Nir Simionovich <nir.simionov...@gmail.com> > wrote: > > Hi All, > > Following a discussion on JIRA [ > https://issues.asterisk.org/jira/browse/ASTERISK-27383], I truly believe > that > adding a scaleable, robust and most importantly - accepted key/value store > mechanism to the Asterisk dialplan > is a worthwhile effort. > > Every, and I do mean every, Asterisk application requires a key/value > store of some form. Most developers will > basically butcher (would have used stronger words, but refraining from > doing so) AstDB in the process, which will > then result in a performance toll - specifically when dealing with a high > capacity systems. > > Initially, I was under the impression this should be done as a sorcery > module, but I'm not sure this is the > correct approach or the required use case. > > I would like to hear if others believe this is a worth while effort? if > others believe it is, I'll be ecstatic to > work with others on this one (adding Redis support isn't as simple as it > sounds). However, before I start > working on something, I'd like to see if others believe this as strongly > as I do. > > On the same note, I'll be in NYC second week of January - so if any of > you are around that area and would > like to combine forces to spear this - would love to do so. > > > -- > Kind Regards, > Nir Simionovich > GreenfieldTech > (schedule) http://nirsimionovich.appointy.com/ > (w) http://www.greenfieldtech.net > (p) +972-73-2557799(MSN): n...@greenfieldtech.net > (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com > (f) +972-73-2557202 (SKYPE): greenfieldtech.nir > > -- >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > -- > > *Disclaimer:* > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > this e-mail and destroy this e-mail and any attachments. > E-mail may be susceptible to data corruption, interception, unauthorized > amendment, viruses and delays or the consequences thereof. If you are not > the intended recipient, be advised that you have received this email in > error and that any use, dissemination, forwarding, printing or copying of > this email is strictly prohibited. > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-dev > > > -- > _________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidenti
[asterisk-dev] Adding a Key/Value Store mechanism to Asterisk
Hi All, Following a discussion on JIRA [ https://issues.asterisk.org/jira/browse/ASTERISK-27383], I truly believe that adding a scaleable, robust and most importantly - accepted key/value store mechanism to the Asterisk dialplan is a worthwhile effort. Every, and I do mean every, Asterisk application requires a key/value store of some form. Most developers will basically butcher (would have used stronger words, but refraining from doing so) AstDB in the process, which will then result in a performance toll - specifically when dealing with a high capacity systems. Initially, I was under the impression this should be done as a sorcery module, but I'm not sure this is the correct approach or the required use case. I would like to hear if others believe this is a worth while effort? if others believe it is, I'll be ecstatic to work with others on this one (adding Redis support isn't as simple as it sounds). However, before I start working on something, I'd like to see if others believe this as strongly as I do. On the same note, I'll be in NYC second week of January - so if any of you are around that area and would like to combine forces to spear this - would love to do so. -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Can someone please review something
well, that was exactly my feeling. On Mon, Nov 27, 2017 at 3:10 PM Joshua Colp <jc...@digium.com> wrote: > On Mon, Nov 27, 2017, at 08:55 AM, Nir Simionovich wrote: > > @corey, > > > > I've been looking into res_sorcery_astdb, but I think I'm missing > > something in here. > > If I would create a a redis backend for sorcery, the functionality is > > fairly limited in the scope > > of Redis usage. Mainly due to the fact that sorcery is meant as a CRUD > > interface. > > > > Have I got it correct? > > It ultimately depends on the use case and what exactly is trying to be > achieved. As with any general interface (like sorcery) the result is > that you are somewhat limited to what the interface provides, but the > benefit being it can be used by anything that uses the interface. Is it > worth it? Could be as Corey mentioned. > > If your goal, however, is to provide all the knobs and possibilities > that redis can do - then it obviously wouldn't be a good fit. > > -- > Joshua Colp > Digium, Inc. | Senior Software Developer > 445 Jan Davis Drive NW - Huntsville, AL 35806 - US > Check us out at: www.digium.com & www.asterisk.org > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Can someone please review something
@corey, I've been looking into res_sorcery_astdb, but I think I'm missing something in here. If I would create a a redis backend for sorcery, the functionality is fairly limited in the scope of Redis usage. Mainly due to the fact that sorcery is meant as a CRUD interface. Have I got it correct? On Thu, Nov 23, 2017 at 2:03 AM Nir Simionovich <nir.simionov...@gmail.com> wrote: > Actually, I was more thinking about Redis as a PubSub mechanism, not as a > static storage backend. > > Here is my take on things, developers need tools. Some developers prefer > Redis, other may prefer beanstalk, > and other may prefer log files. Each one has its merits and its issues, > but the overall ability to choose is important. > I believe that adding modern backends improves our appeal to "modern > developers" who are accustomed to these > tools. > > > > On Thu, Nov 23, 2017 at 1:52 AM Corey Farrell <g...@cfware.com> wrote: > >> From your configure.ac: >> > AST_EXT_LIB_CHECK([REDIS], [redis], [redisReaderCreate], >> [hiredis/hiredis.h]) >> >> This tries linking with '-lredis', but it needs to use '-lhiredis': >> >> AST_EXT_LIB_CHECK([REDIS], [hiredis], [redisReaderCreate], >> [hiredis/hiredis.h]) >> >> In addition instead of using variable prefix "REDIS" (the first argument) >> I suggest switching to "HIREDIS" (don't forget makeopts.in and >> build_tools/menuselect-deps.in). There are multiple C redis libraries >> so you want the variable name to identify which one you are using. This >> will also make it match "hiredis" in cdr_redis.c so >> menuselect will enable the module. >> >> Since redis is in-memory I'm not really sure about using it for CDR? I >> could see res_sorcery_redis being useful assuming it could be used as an >> alternative to res_sorcery_astdb or res_sorcery_memory. >> >> On 11/22/2017 06:01 PM, Nir Simionovich wrote: >> >> Hi All, >> >> I've started a new branch at team/nirs/cdr-redis-support >> >> I'm having some issues integrating the hiredis library into the >> automake. It seems to be configured correctly, >> however, for some odd reason it will not become available in the >> 'menuselect' tool. >> >> Would highly appreciate it if someone can take a look for a minute and >> see if I missed anything major in there. >> >> >> -- >> >> Kind Regards, >> >> Nir Simionovich >> >> GreenfieldTech >> >> (schedule) http://nirsimionovich.appointy.com/ >> >> (w) http://www.greenfieldtech.net >> >> (p) +972-73-2557799 <073-255-7799>(MSN): >> n...@greenfieldtech.net >> >> (m) +972-54-6982826 <054-698-2826> (GTALK): >> nir.simionov...@gmail.com >> >> (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir >> >> >> -- >> >>Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud >> Servers <https://www.digitalocean.com/?refcode=97eeea09917a> >> >> -- >> >> >> *Disclaimer:* >> >> This e-mail is intended solely for the person to whom it is addressed and >> may contain confidential or legally privileged information. Access to this >> e-mail by anyone else is unauthorized. If an addressing or transmission >> error has misdirected this e-mail, please notify the author by replying to >> this e-mail and destroy this e-mail and any attachments. >> E-mail may be susceptible to data corruption, interception, unauthorized >> amendment, viruses and delays or the consequences thereof. If you are not >> the intended recipient, be advised that you have received this email in >> error and that any use, dissemination, forwarding, printing or copying of >> this email is strictly prohibited. >> >> >> >> -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.d
Re: [asterisk-dev] Can someone please review something
Actually, I was more thinking about Redis as a PubSub mechanism, not as a static storage backend. Here is my take on things, developers need tools. Some developers prefer Redis, other may prefer beanstalk, and other may prefer log files. Each one has its merits and its issues, but the overall ability to choose is important. I believe that adding modern backends improves our appeal to "modern developers" who are accustomed to these tools. On Thu, Nov 23, 2017 at 1:52 AM Corey Farrell <g...@cfware.com> wrote: > From your configure.ac: > > AST_EXT_LIB_CHECK([REDIS], [redis], [redisReaderCreate], > [hiredis/hiredis.h]) > > This tries linking with '-lredis', but it needs to use '-lhiredis': > > AST_EXT_LIB_CHECK([REDIS], [hiredis], [redisReaderCreate], > [hiredis/hiredis.h]) > > In addition instead of using variable prefix "REDIS" (the first argument) > I suggest switching to "HIREDIS" (don't forget makeopts.in and > build_tools/menuselect-deps.in). There are multiple C redis libraries so > you want the variable name to identify which one you are using. This will > also make it match "hiredis" in cdr_redis.c so menuselect > will enable the module. > > Since redis is in-memory I'm not really sure about using it for CDR? I > could see res_sorcery_redis being useful assuming it could be used as an > alternative to res_sorcery_astdb or res_sorcery_memory. > > On 11/22/2017 06:01 PM, Nir Simionovich wrote: > > Hi All, > > I've started a new branch at team/nirs/cdr-redis-support > > I'm having some issues integrating the hiredis library into the > automake. It seems to be configured correctly, > however, for some odd reason it will not become available in the > 'menuselect' tool. > > Would highly appreciate it if someone can take a look for a minute and > see if I missed anything major in there. > > > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > -- > > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > this e-mail and destroy this e-mail and any attachments. > E-mail may be susceptible to data corruption, interception, unauthorized > amendment, viruses and delays or the consequences thereof. If you are not > the intended recipient, be advised that you have received this email in > error and that any use, dissemination, forwarding, printing or copying of > this email is strictly prohibited. > > > > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Can someone please review something
it's on gerrit - it's inside asterisk-team On Thu, Nov 23, 2017 at 1:11 AM Corey Farrell <g...@cfware.com> wrote: > Where did you push this branch? I'm not seeing it on gerrit or github. > > On 11/22/2017 06:01 PM, Nir Simionovich wrote: > > Hi All, > > I've started a new branch at team/nirs/cdr-redis-support > > I'm having some issues integrating the hiredis library into the > automake. It seems to be configured correctly, > however, for some odd reason it will not become available in the > 'menuselect' tool. > > Would highly appreciate it if someone can take a look for a minute and > see if I missed anything major in there. > > > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > -- > > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > this e-mail and destroy this e-mail and any attachments. > E-mail may be susceptible to data corruption, interception, unauthorized > amendment, viruses and delays or the consequences thereof. If you are not > the intended recipient, be advised that you have received this email in > error and that any use, dissemination, forwarding, printing or copying of > this email is strictly prohibited. > > > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Can someone please review something
Hi All, I've started a new branch at team/nirs/cdr-redis-support I'm having some issues integrating the hiredis library into the automake. It seems to be configured correctly, however, for some odd reason it will not become available in the 'menuselect' tool. Would highly appreciate it if someone can take a look for a minute and see if I missed anything major in there. -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Processing .conf files
Hi All, Ok, this email may be totally pointless to some, but I'm having some conceptual difficulties with the methodology of processing .conf files. Allow me to explain my current issues in ramping up on this one. As part of the beanstalk work I've done, I would like to create either an app_beanstalk or func_beanstalk or to be better, a res_beanstalk. In my mind, I see a configuration file works something like the following: ; ; Beanstalk job queue resourcing application ; [general] ttr = 60; an integer number of seconds to allow a worker to run a job delay = 0 ; an integer number of seconds to wait before marking a job as ready. ; A job will be set as "delayed" in this period of time [tube1] enabled = no ;host = 127.0.0.1; Specify the remote IP address of the Beanstalkd server ;port = 11300; Specify the remote PORT of the the Beanstalkd server ;tube = asterisk-cdr ; Specify the default job queue to use ;priority = 99 ; Specify the default job priority for the queue. The lower the number, ; the higher the priority. [tube2] enabled = no ;host = 127.0.0.1; Specify the remote IP address of the Beanstalkd server ;port = 11300; Specify the remote PORT of the the Beanstalkd server ;tube = asterisk-cdr ; Specify the default job queue to ;priority = 99 ; Specify the default job priority for the queue. The lower the number, ; the higher the priority. Now, I've trying to figure out how the configuration parser works with "free form" data. I've tried looking into app_voicemail.c, as that uses a fairly similar concept, however, that didn't provide much help. From what I gathered, there are two main functions that I need to understand how they work: ast_category_browse and ast_variable_browse. Now, the basic methodology of the various Asterisk config files is fairly static, namely, a configuration for a singular function - very much like cdr_beanstalkd.conf. However, for my new tool to work, I need to be able to create dynamically allocated "tube contexts". I couldn't find any specific sample that would describe this kind of methodology of operation in a coherent manner. Another option I was thinking of doing is going with the following route: ; ; Beanstalk job queue resourcing application ; [general] ttr = 60; an integer number of seconds to allow a worker to run a job delay = 0 ; an integer number of seconds to wait before marking a job as ready. ; A job will be set as "delayed" in this period of time tube => tube1,beanstalk://127.0.0.1:11300/asterisk-tube1,99 tube => tube2,beanstalk://127.0.0.1:11300/asterisk-tube2,99 In general, this seems like a simpler configuration parsing mechanism, but, it doesn't really comply with how the rest of the Asterisk configuration is built, and thus, seems fairly alien to the configuration construct. Any assistance would be appreciated. P.S. Already looked into app_skel, didn't really provide me the information I was looking for. -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] RPM Repository for Asterisk/Kamailio
Hi Olle, Well, as I'm maintaining these packages mainly for our own deployments, I don't mind making them available for the community - actually, we'll be happy to. Currently, the packages I have are for 4.4.6, and I'll see if I can create the same for kamailio 5.1.X. From a naming convention point of view, would you believe building two packages named kamailio4 and kamailio5 be beneficial? On Sun, Nov 19, 2017 at 12:56 PM Olle E. Johansson <o...@edvina.net> wrote: > > On 16 Nov 2017, at 22:18, Nir Simionovich <nir.simionov...@gmail.com> > wrote: > > and that the RPM repo for Kamailio is - how shall we put it, not providing > all the possible modules. > > You are very welcome to contribute updates directly to the Kamailio > project. We’ve been looking > for maintainers of the RPM specs for a long time - I am happy to see that > you are interested. > > We have active maintainers of the Debian specs, so working in tandem > should not be hard. > > Cheers, > /O > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] RPM Repository for Asterisk/Kamailio
https://gitlab.com/osvoipdoc-project On Sat, Nov 18, 2017 at 6:45 AM Nasir Iqbal <na...@ictinnovations.com> wrote: > Hi Nir, > > Pardon my ignorance! > > Can you please share the link to "Open Source documentation project" i.e > where I can find that spec file. > > Thanks > > Nasir Iqbal > > ICTBroadcast - an Auto Dialer software for ITSP > <https://www.ictbroadcast.com/how-become-internet-telephony-service-provider-itsp-using-ictbroadcast-sp-edition> > SMS, Fax and Voice broadcasting & Inbound / Outbound Campaigns > http://www.ictbroadcast.com/ > > On Fri, Nov 17, 2017 at 9:06 PM, Nir Simionovich < > nir.simionov...@gmail.com> wrote: > >> Hi Guys, >> >> I've uploaded the SPEC file to the Open Source documentation project >> repo, under asterisk/useful-scripts/RPM_spec_files. >> I'm confident that Jared can add some new stuff in there, as I mostly >> disabled Dahdi and shit like that. >> >> Another thing, to make this work, you will need traud's Asterisk Opus >> repo, for Asterisk 13.7 as a tar.gz file. I'm confident >> you'll be able to understand it from the code. I think the best would be >> for me to upload the SRPM in there as well, so people >> can use that as well at ease. >> >> >> >> On Fri, Nov 17, 2017 at 5:43 PM Nir Simionovich < >> nir.simionov...@gmail.com> wrote: >> >>> oh, the repos also have an SRPM repo in there, so you can also install >>> from there as well to see the SPEC file. >>> >>> At least, before I go ahead and start the public repo. Maybe I should >>> add it to the "Documentation project" repo? >>> >>> >>> On Fri, Nov 17, 2017 at 5:41 PM Nir Simionovich < >>> nir.simionov...@gmail.com> wrote: >>> >>>> No problem guys - I'll create respective repos on github later today. >>>> >>>> On Fri, Nov 17, 2017 at 4:40 PM Jared Smith <jaredsm...@jaredsmith.net> >>>> wrote: >>>> >>>>> On Thu, Nov 16, 2017 at 4:18 PM, Nir Simionovich < >>>>> nir.simionov...@gmail.com> wrote: >>>>> >>>>>> As part of our work, we've noticed that Asterisk doesn't have an >>>>>> updated RPM repo, and that the RPM repo for Kamailio is - how shall we >>>>>> put >>>>>> it, not providing all the possible modules. >>>>>> >>>>> >>>>> As one of the maintainers of the Asterisk and dahdi-tools packages in >>>>> Fedora and EPEL and a long time RPM packaging fanatic, I'd really like to >>>>> collaborate together on the spec files you're using. >>>>> >>>>> -- >>>>> Jared Smith >>>>> -- >>>>> _ >>>>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>>>> >>>>> asterisk-dev mailing list >>>>> To UNSUBSCRIBE or update options visit: >>>>>http://lists.digium.com/mailman/listinfo/asterisk-dev >>>> >>>> -- >>>> >>>> Kind Regards, >>>> >>>> Nir Simionovich >>>> >>>> GreenfieldTech >>>> >>>> (schedule) http://nirsimionovich.appointy.com/ >>>> >>>> (w) http://www.greenfieldtech.net >>>> >>>> (p) +972-73-2557799 <073-255-7799>(MSN): >>>> n...@greenfieldtech.net >>>> >>>> (m) +972-54-6982826 <054-698-2826> (GTALK): >>>> nir.simionov...@gmail.com >>>> >>>> (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir >>>> >>>> >>>> -- >>>> >>>>Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | >>>> Cloud >>>> Servers <https://www.digitalocean.com/?refcode=97eeea09917a> >>>> >>>> -- >>>> >>>> *Disclaimer:* >>>> >>>> This e-mail is intended solely for the person to whom it is addressed >>>> and may contain confidential or legally privileged information. Access to >>>> this e-mail by anyone else is unauthorized. If an addressing or >>>> transmission error has misdirected this e-mail, please notify
Re: [asterisk-dev] RPM Repository for Asterisk/Kamailio
Hi Guys, I've uploaded the SPEC file to the Open Source documentation project repo, under asterisk/useful-scripts/RPM_spec_files. I'm confident that Jared can add some new stuff in there, as I mostly disabled Dahdi and shit like that. Another thing, to make this work, you will need traud's Asterisk Opus repo, for Asterisk 13.7 as a tar.gz file. I'm confident you'll be able to understand it from the code. I think the best would be for me to upload the SRPM in there as well, so people can use that as well at ease. On Fri, Nov 17, 2017 at 5:43 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > oh, the repos also have an SRPM repo in there, so you can also install > from there as well to see the SPEC file. > > At least, before I go ahead and start the public repo. Maybe I should add > it to the "Documentation project" repo? > > > On Fri, Nov 17, 2017 at 5:41 PM Nir Simionovich <nir.simionov...@gmail.com> > wrote: > >> No problem guys - I'll create respective repos on github later today. >> >> On Fri, Nov 17, 2017 at 4:40 PM Jared Smith <jaredsm...@jaredsmith.net> >> wrote: >> >>> On Thu, Nov 16, 2017 at 4:18 PM, Nir Simionovich < >>> nir.simionov...@gmail.com> wrote: >>> >>>> As part of our work, we've noticed that Asterisk doesn't have an >>>> updated RPM repo, and that the RPM repo for Kamailio is - how shall we put >>>> it, not providing all the possible modules. >>>> >>> >>> As one of the maintainers of the Asterisk and dahdi-tools packages in >>> Fedora and EPEL and a long time RPM packaging fanatic, I'd really like to >>> collaborate together on the spec files you're using. >>> >>> -- >>> Jared Smith >>> -- >>> _ >>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>> >>> asterisk-dev mailing list >>> To UNSUBSCRIBE or update options visit: >>>http://lists.digium.com/mailman/listinfo/asterisk-dev >> >> -- >> >> Kind Regards, >> >> Nir Simionovich >> >> GreenfieldTech >> >> (schedule) http://nirsimionovich.appointy.com/ >> >> (w) http://www.greenfieldtech.net >> >> (p) +972-73-2557799 <073-255-7799>(MSN): >> n...@greenfieldtech.net >> >> (m) +972-54-6982826 <054-698-2826> (GTALK): >> nir.simionov...@gmail.com >> >> (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir >> >> >> -- >> >>Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud >> Servers <https://www.digitalocean.com/?refcode=97eeea09917a> >> >> -- >> >> *Disclaimer:* >> >> This e-mail is intended solely for the person to whom it is addressed and >> may contain confidential or legally privileged information. Access to this >> e-mail by anyone else is unauthorized. If an addressing or transmission >> error has misdirected this e-mail, please notify the author by replying to >> this e-mail and destroy this e-mail and any attachments. >> E-mail may be susceptible to data corruption, interception, unauthorized >> amendment, viruses and delays or the consequences thereof. If you are not >> the intended recipient, be advised that you have received this email in >> error and that any use, dissemination, forwarding, printing or copying of >> this email is strictly prohibited. >> > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > -- > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission
Re: [asterisk-dev] RPM Repository for Asterisk/Kamailio
oh, the repos also have an SRPM repo in there, so you can also install from there as well to see the SPEC file. At least, before I go ahead and start the public repo. Maybe I should add it to the "Documentation project" repo? On Fri, Nov 17, 2017 at 5:41 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > No problem guys - I'll create respective repos on github later today. > > On Fri, Nov 17, 2017 at 4:40 PM Jared Smith <jaredsm...@jaredsmith.net> > wrote: > >> On Thu, Nov 16, 2017 at 4:18 PM, Nir Simionovich < >> nir.simionov...@gmail.com> wrote: >> >>> As part of our work, we've noticed that Asterisk doesn't have an >>> updated RPM repo, and that the RPM repo for Kamailio is - how shall we put >>> it, not providing all the possible modules. >>> >> >> As one of the maintainers of the Asterisk and dahdi-tools packages in >> Fedora and EPEL and a long time RPM packaging fanatic, I'd really like to >> collaborate together on the spec files you're using. >> >> -- >> Jared Smith >> -- >> _ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >>http://lists.digium.com/mailman/listinfo/asterisk-dev > > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > -- > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > this e-mail and destroy this e-mail and any attachments. > E-mail may be susceptible to data corruption, interception, unauthorized > amendment, viruses and delays or the consequences thereof. If you are not > the intended recipient, be advised that you have received this email in > error and that any use, dissemination, forwarding, printing or copying of > this email is strictly prohibited. > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] RPM Repository for Asterisk/Kamailio
No problem guys - I'll create respective repos on github later today. On Fri, Nov 17, 2017 at 4:40 PM Jared Smith <jaredsm...@jaredsmith.net> wrote: > On Thu, Nov 16, 2017 at 4:18 PM, Nir Simionovich < > nir.simionov...@gmail.com> wrote: > >> As part of our work, we've noticed that Asterisk doesn't have an >> updated RPM repo, and that the RPM repo for Kamailio is - how shall we put >> it, not providing all the possible modules. >> > > As one of the maintainers of the Asterisk and dahdi-tools packages in > Fedora and EPEL and a long time RPM packaging fanatic, I'd really like to > collaborate together on the spec files you're using. > > -- > Jared Smith > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] RPM Repository for Asterisk/Kamailio
Hi All, As part of our work, we've noticed that Asterisk doesn't have an updated RPM repo, and that the RPM repo for Kamailio is - how shall we put it, not providing all the possible modules. As part of our commitment, we've created a simple repository that we are maintaining, which includes both. Please note that the Asterisk RPM includes the patches for the Open Source Opus codec. You may add the following to your repos, to make your life easier: [cloudonix_opensource_noarch] gpgcheck = 0 enabled = 1 baseurl = https://cloudonix-dist.s3.amazonaws.com/repository/noarch/ [cloudonix_opensource_x86_64] gpgcheck = 0 enabled = 1 baseurl = https://cloudonix-dist.s3.amazonaws.com/repository/$basearch/ The version of Asterisk in there is Asterisk 14.7.2 and Kamailio 4.4.6 - which is currently our production environment. I will start working on the Asterisk 15 and Kamailio 5.X packaging in the near future - once I get around to finalizing my current work path. Would appreciate some feedback and ideas. -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Open Invitation - Open Source VoIP Documentation Project
Well, As long as the wiki entry indicates the original source and retains the CC license, I have no problem with "Cross publication". On Tue, Nov 7, 2017 at 12:59 AM Matt Fredrickson <cres...@digium.com> wrote: > On Sat, Nov 4, 2017 at 2:53 PM, Nir Simionovich <nir.simionov...@gmail.com > > wrote: > >> Hi All, >> >> Following Astricon 2017, and my own personal interest in providing the >> community with more detailed documentation sources and specifically - best >> of practice and how-to documents, I've opened a public gitlab project, >> specifically for this object. >> >> The project is located at https://gitlab.com/osvoipdoc-project - and >> people are welcome to ask for access to contribute documentation. I've >> already started working on the first how-to, which is an Asterisk+Opus >> installation guide. It's geared toward installing Asterisk on cloud >> instances, with Alexander Traud's Opus patches - which work really well. >> >> The project is split into several sub-projects, mainly - asterisk, >> kamailio and cloudformation. Cloudformation is something I've received an >> interest from AWS, in regards to providing the community with a solid set >> of cloudformation and cloud-init templates to use for deploying Asterisk, >> Kamailio and other open source VoIP tools into Amazon AWS. >> >> Currently, the project includes both myself and Lenz Emitrely, who >> showed a keen interest in assisting with this project. Others had showed >> similar interest during Astricon, so please logon to gitlab and join the >> project. >> >> For the time being, I will serve as both writer and curator - till >> other people step in and provide additional assistance. >> >> Regards, >> Nir Simionovich >> > > Hey Nir, > > First off, thanks for taking on the great challenge of documenting the > cross project open source telephony world :-) (that was a mouthful to say). > > I noticed one or two documents that might be interesting to have included > in some kind of Asterisk documentation, like your "How to add a library to > the build process" - that might be some kind of Asterisk source code > included document, as well as your document on "Dial plan best practices" - > that might fit on the wiki. What does everybody else think? > > Just a few thoughts, but so far, it looks like a good start! > > -- > Matthew Fredrickson > Digium, Inc. | Engineering Manager > 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA > -- > _________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Open Invitation - Open Source VoIP Documentation Project
Hi All, Following Astricon 2017, and my own personal interest in providing the community with more detailed documentation sources and specifically - best of practice and how-to documents, I've opened a public gitlab project, specifically for this object. The project is located at https://gitlab.com/osvoipdoc-project - and people are welcome to ask for access to contribute documentation. I've already started working on the first how-to, which is an Asterisk+Opus installation guide. It's geared toward installing Asterisk on cloud instances, with Alexander Traud's Opus patches - which work really well. The project is split into several sub-projects, mainly - asterisk, kamailio and cloudformation. Cloudformation is something I've received an interest from AWS, in regards to providing the community with a solid set of cloudformation and cloud-init templates to use for deploying Asterisk, Kamailio and other open source VoIP tools into Amazon AWS. Currently, the project includes both myself and Lenz Emitrely, who showed a keen interest in assisting with this project. Others had showed similar interest during Astricon, so please logon to gitlab and join the project. For the time being, I will serve as both writer and curator - till other people step in and provide additional assistance. Regards, Nir Simionovich -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] autoconf version requirement increase
Hi Corey, Our production environment is based on CentOS 6.9 and we're slowly migrating to 7.X I would be happy to check out your patches inside our testing facility. On Tue, Oct 31, 2017 at 10:52 PM Corey Farrell <g...@cfware.com> wrote: > Hello all, > > autoconf is required to run ./bootstrap.sh after changing configure.ac > or *.m4 in any folder of the Asterisk source tree (including menuselect > and third-party folders). Currently we require 2.60, I'm working on a > patch that will require 2.64. Note autoconf is not required to run > './configure', it is only needed to run ./bootstrap.sh. > > Does anyone work on these files from a distribution which cannot install > autoconf-2.69? Although the changes I'm working on only require > autoconf 2.64 I see no reason to hold back at this point. Version 2.69 > is from 2012 and is the latest version. As far as I know CentOS 6 is > the only major currently supported distribution which has autoconf < > 2.64, all others provide 2.69. Requiring 2.69 would be one less thing > to worry about when working on configure scripts, especially since I > don't have access to test any lower version. > > -Corey > > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] AstDB mySQL implementation
Yes, that's not a bad start - but I believe that are dozens other functions that should be used - instead of other functions. For example, I remember that a while back atoi and itoa were said to be unsafe and that there is a better "asteriskian" way of using those. For example, the Wiki says: 2.15. String conversions When converting from strings to integers or floats, use the sscanf function in preference to the atoi and atof family of functions, as sscanf detects errors. Always check the return value of sscanf to verify that your numeric variables successfully scanned before using them. Also, to avoid a potential libc bug, always specify a maximum width for each conversion specifier, including integers and floats. A good length for both integers and floats is 30, as this is more than generous, even if you're using doubles or long integers. However, without a proper "best practice" example in the Wiki, people will do as they see fit, which in turn will turn into a "review board" ping-pong, which can be avoided by a simple sample in there. On Mon, Oct 30, 2017 at 9:22 PM Kevin Harwell <kharw...@digium.com> wrote: > On Mon, Oct 30, 2017 at 1:19 PM, Nir Simionovich < > nir.simionov...@gmail.com> wrote: > >> Definite +1 on the Documentation side - for sure. Here is a stupid >> question, is there a "Best Practices" coding document somewhere? >> I remember that many years ago there was something really basic, but much >> has changed since then. >> > > Are you referring to the coding guidelines? If so those can be found on > the wiki[1]. > > [1] https://wiki.asterisk.org/wiki/display/AST/Coding+Guidelines > > -- > > Kevin Harwell > Digium, Inc. | Software Developer > 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA > Check us out at: http://digium.com & http://asterisk.org > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] AstDB mySQL implementation
Definite +1 on the Documentation side - for sure. Here is a stupid question, is there a "Best Practices" coding document somewhere? I remember that many years ago there was something really basic, but much has changed since then. On Mon, Oct 30, 2017 at 6:53 PM Corey Farrell <g...@cfware.com> wrote: > I think astdb itself is an inappropriate place to deal with this. astdb > is initialized well before module preloads so it would be nearly impossible > for modules to provide the astdb implementation. In my opinion astdb is a > database "implementation", not a connector (and that shouldn't change). > For higher level connectors with configurable backends we have realtime and > sorcery. If someone were to write a redis or memcached connector for > Asterisk I would expect it to be a realtime or sorcery driver. If > func_sorcery can be expanded to perform writes/deletes maybe it could be > used in place of func_db? I suspect that dialplan use of astdb is a bigger > problem than the ways that Asterisk uses astdb directly on it's own. > > Documentation: Maybe we need to add a warning to xmldoc for the astdb > app/func/AMI/AGI that all astdb operations are serialized (dblock global > mutex) and thus performance could suffer if used too much from too many > threads? Do we have any guides/sample files showing how to replace astdb > operations with alternatives (func_odbc for example)? > > On 10/29/2017 10:17 AM, Nir Simionovich wrote: > > Seems like I have under estimated the task at hand, as this part of > Asterisk requires some > more intricate familiarity with how AstDB truly works. It would be one > thing to "change the backend" > it would a far more complex task to "make two backends selectable". > > Conclusion - not sure this is worth the effort at this point in time, > maybe in a later stage. :-( > > > > On Thu, Oct 26, 2017 at 6:01 PM Nir Simionovich <nir.simionov...@gmail.com> > wrote: > >> Correction, seems like this requires a bit more architecture than I >> anticipated. >> >> Basically, we need to separate this into several files and turn the >> entire AstDB concept >> into a pluggable module type module. >> >> But, as AstDB is a mandatory module for Asterisk, can we create a >> situation where >> a pluggable module is a mandatory requirement for Asterisk to launch >> correctly? >> >> Is there anything like that in Asterisk? can someone point me in some >> proper example >> or preferably, something that I can look at and learn from? >> >> >> >> On Thu, Oct 26, 2017 at 4:47 PM Nir Simionovich < >> nir.simionov...@gmail.com> wrote: >> >>> I'll have a look at it. >>> >>> If I read the code correctly, the AstDB is invoked from the asterisk.c >>> file, when asterisk is launched. >>> I think the best would be to add a configuration file like astdb.conf, >>> which will look something like this: >>> >>> [general] >>> engine=builtin ; values can be either builtin, redis or memcache (or >>> others in the future) >>> >>> ;[redis] >>> ;server = 127.0.0.1 >>> ;port = 6379 >>> ;database = 15 ; By default AstDB will use Redis database number 15 >>> >>> ;[memcache] >>> ;server = 127.0.0.1 >>> ;port = 11211 >>> ;prefix = asterisk >>> >>> Then, inside the db.c file add the proper statements and backend to >>> support each of these. I'm confident >>> that from a design perspective, this is not optimal, but it would serve >>> as a nice PoC to indicate if the task >>> is feasible or not. >>> >>> For example, the following: >>> >>> DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR REPLACE INTO astdb (key, >>> value) VALUES (?, ?)") >>> DEFINE_SQL_STATEMENT(get_stmt, "SELECT value FROM astdb WHERE key=?") >>> DEFINE_SQL_STATEMENT(del_stmt, "DELETE FROM astdb WHERE key=?") >>> DEFINE_SQL_STATEMENT(deltree_stmt, "DELETE FROM astdb WHERE key || '/' >>> LIKE ? || '/' || '%'") >>> DEFINE_SQL_STATEMENT(deltree_all_stmt, "DELETE FROM astdb") >>> DEFINE_SQL_STATEMENT(gettree_stmt, "SELECT key, value FROM astdb WHERE >>> key || '/' LIKE ? || '/' || '%' ORDER BY key") >>> DEFINE_SQL_STATEMENT(gettree_all_stmt, "SELECT key, value FROM astdb >>> ORDER BY key") >>> DEFINE_SQL_STATEMENT(showkey_stmt, "SELECT key, value FROM astdb WHERE >>> key LIKE '%' || '/' || ? ORDER BY key") >>> DEFINE_SQL_STATEME
Re: [asterisk-dev] AstDB mySQL implementation
Seems like I have under estimated the task at hand, as this part of Asterisk requires some more intricate familiarity with how AstDB truly works. It would be one thing to "change the backend" it would a far more complex task to "make two backends selectable". Conclusion - not sure this is worth the effort at this point in time, maybe in a later stage. :-( On Thu, Oct 26, 2017 at 6:01 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > Correction, seems like this requires a bit more architecture than I > anticipated. > > Basically, we need to separate this into several files and turn the entire > AstDB concept > into a pluggable module type module. > > But, as AstDB is a mandatory module for Asterisk, can we create a > situation where > a pluggable module is a mandatory requirement for Asterisk to launch > correctly? > > Is there anything like that in Asterisk? can someone point me in some > proper example > or preferably, something that I can look at and learn from? > > > > On Thu, Oct 26, 2017 at 4:47 PM Nir Simionovich <nir.simionov...@gmail.com> > wrote: > >> I'll have a look at it. >> >> If I read the code correctly, the AstDB is invoked from the asterisk.c >> file, when asterisk is launched. >> I think the best would be to add a configuration file like astdb.conf, >> which will look something like this: >> >> [general] >> engine=builtin ; values can be either builtin, redis or memcache (or >> others in the future) >> >> ;[redis] >> ;server = 127.0.0.1 >> ;port = 6379 >> ;database = 15 ; By default AstDB will use Redis database number 15 >> >> ;[memcache] >> ;server = 127.0.0.1 >> ;port = 11211 >> ;prefix = asterisk >> >> Then, inside the db.c file add the proper statements and backend to >> support each of these. I'm confident >> that from a design perspective, this is not optimal, but it would serve >> as a nice PoC to indicate if the task >> is feasible or not. >> >> For example, the following: >> >> DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR REPLACE INTO astdb (key, value) >> VALUES (?, ?)") >> DEFINE_SQL_STATEMENT(get_stmt, "SELECT value FROM astdb WHERE key=?") >> DEFINE_SQL_STATEMENT(del_stmt, "DELETE FROM astdb WHERE key=?") >> DEFINE_SQL_STATEMENT(deltree_stmt, "DELETE FROM astdb WHERE key || '/' >> LIKE ? || '/' || '%'") >> DEFINE_SQL_STATEMENT(deltree_all_stmt, "DELETE FROM astdb") >> DEFINE_SQL_STATEMENT(gettree_stmt, "SELECT key, value FROM astdb WHERE >> key || '/' LIKE ? || '/' || '%' ORDER BY key") >> DEFINE_SQL_STATEMENT(gettree_all_stmt, "SELECT key, value FROM astdb >> ORDER BY key") >> DEFINE_SQL_STATEMENT(showkey_stmt, "SELECT key, value FROM astdb WHERE >> key LIKE '%' || '/' || ? ORDER BY key") >> DEFINE_SQL_STATEMENT(create_astdb_stmt, "CREATE TABLE IF NOT EXISTS >> astdb(key VARCHAR(256), value VARCHAR(256), PRIMARY KEY(key))") >> >> Can be augmented with something like the following: >> >> DEFINE_REDIS_STATEMENT(put_redis_stmt, ""); >> DEFINE_REDIS_STATEMENT(get_redis_stmt, ""); >> DEFINE_REDIS_STATEMENT(del_redis_stmt, ""); >> >> Following this, we can simply point to the proper statements following >> the engine selection. >> >> What do you think, sounds reasonable? >> >> >> On Thu, Oct 26, 2017 at 4:30 PM Olle E. Johansson <o...@edvina.net> wrote: >> >>> On 26 Oct 2017, at 15:25, Nir Simionovich <nir.simionov...@gmail.com> >>> wrote: >>> >>> I suspect the original code didn't change the overall mechanism >>> dramatically, it's mainly a new implementation. >>> This thing is this - replacing the implementation seems straight forward >>> enough, making it configurable, seems >>> like a pain in the butt. >>> >>> Look for the “appleraisin” branch if you want to see code :-) >>> >>> /O >>> >>> >>> >>> >>> On Thu, Oct 26, 2017 at 4:23 PM Olle E. Johansson <o...@edvina.net> >>> wrote: >>> >>>> On 26 Oct 2017, at 15:20, Nir Simionovich <nir.simionov...@gmail.com> >>>> wrote: >>>> >>>> Just looked into the code, this is not a simple task to put a new >>>> backend for astdb. The code isn't even designed >>>> for something like that. Judging from what I can tell, and tell me if >>>> I'm wrong - turning this into a configurable thing >>&g
Re: [asterisk-dev] AstDB mySQL implementation
Correction, seems like this requires a bit more architecture than I anticipated. Basically, we need to separate this into several files and turn the entire AstDB concept into a pluggable module type module. But, as AstDB is a mandatory module for Asterisk, can we create a situation where a pluggable module is a mandatory requirement for Asterisk to launch correctly? Is there anything like that in Asterisk? can someone point me in some proper example or preferably, something that I can look at and learn from? On Thu, Oct 26, 2017 at 4:47 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > I'll have a look at it. > > If I read the code correctly, the AstDB is invoked from the asterisk.c > file, when asterisk is launched. > I think the best would be to add a configuration file like astdb.conf, > which will look something like this: > > [general] > engine=builtin ; values can be either builtin, redis or memcache (or > others in the future) > > ;[redis] > ;server = 127.0.0.1 > ;port = 6379 > ;database = 15 ; By default AstDB will use Redis database number 15 > > ;[memcache] > ;server = 127.0.0.1 > ;port = 11211 > ;prefix = asterisk > > Then, inside the db.c file add the proper statements and backend to > support each of these. I'm confident > that from a design perspective, this is not optimal, but it would serve as > a nice PoC to indicate if the task > is feasible or not. > > For example, the following: > > DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR REPLACE INTO astdb (key, value) > VALUES (?, ?)") > DEFINE_SQL_STATEMENT(get_stmt, "SELECT value FROM astdb WHERE key=?") > DEFINE_SQL_STATEMENT(del_stmt, "DELETE FROM astdb WHERE key=?") > DEFINE_SQL_STATEMENT(deltree_stmt, "DELETE FROM astdb WHERE key || '/' > LIKE ? || '/' || '%'") > DEFINE_SQL_STATEMENT(deltree_all_stmt, "DELETE FROM astdb") > DEFINE_SQL_STATEMENT(gettree_stmt, "SELECT key, value FROM astdb WHERE key > || '/' LIKE ? || '/' || '%' ORDER BY key") > DEFINE_SQL_STATEMENT(gettree_all_stmt, "SELECT key, value FROM astdb ORDER > BY key") > DEFINE_SQL_STATEMENT(showkey_stmt, "SELECT key, value FROM astdb WHERE key > LIKE '%' || '/' || ? ORDER BY key") > DEFINE_SQL_STATEMENT(create_astdb_stmt, "CREATE TABLE IF NOT EXISTS > astdb(key VARCHAR(256), value VARCHAR(256), PRIMARY KEY(key))") > > Can be augmented with something like the following: > > DEFINE_REDIS_STATEMENT(put_redis_stmt, ""); > DEFINE_REDIS_STATEMENT(get_redis_stmt, ""); > DEFINE_REDIS_STATEMENT(del_redis_stmt, ""); > > Following this, we can simply point to the proper statements following the > engine selection. > > What do you think, sounds reasonable? > > > On Thu, Oct 26, 2017 at 4:30 PM Olle E. Johansson <o...@edvina.net> wrote: > >> On 26 Oct 2017, at 15:25, Nir Simionovich <nir.simionov...@gmail.com> >> wrote: >> >> I suspect the original code didn't change the overall mechanism >> dramatically, it's mainly a new implementation. >> This thing is this - replacing the implementation seems straight forward >> enough, making it configurable, seems >> like a pain in the butt. >> >> Look for the “appleraisin” branch if you want to see code :-) >> >> /O >> >> >> >> >> On Thu, Oct 26, 2017 at 4:23 PM Olle E. Johansson <o...@edvina.net> wrote: >> >>> On 26 Oct 2017, at 15:20, Nir Simionovich <nir.simionov...@gmail.com> >>> wrote: >>> >>> Just looked into the code, this is not a simple task to put a new >>> backend for astdb. The code isn't even designed >>> for something like that. Judging from what I can tell, and tell me if >>> I'm wrong - turning this into a configurable thing >>> would be more or less an open-heart surgery. >>> >>> My patch wasn’t that bad, but it was before sqlite. >>> >>> /O >>> >>> >>> >>> >>> On Thu, Oct 26, 2017 at 4:16 PM Olle E. Johansson <o...@edvina.net> >>> wrote: >>> >>>> Somewhere in Asterisk space, there’s an old patch where I added ASTDB >>>> over realtime, meaning you can use >>>> any realtime storage. If I remember correctly there was a bit of >>>> chicken-and-egg problem with some astdb >>>> calls happening before realtime got launched, but otherwise it worked >>>> just fine in production for a long time. >>>> >>>> /O >>>> >>>> On 26 Oct 2017, at 15:13, Nir Simionovich <nir.simionov...@gmail.com> >&g
Re: [asterisk-dev] AstDB mySQL implementation
I'll have a look at it. If I read the code correctly, the AstDB is invoked from the asterisk.c file, when asterisk is launched. I think the best would be to add a configuration file like astdb.conf, which will look something like this: [general] engine=builtin ; values can be either builtin, redis or memcache (or others in the future) ;[redis] ;server = 127.0.0.1 ;port = 6379 ;database = 15 ; By default AstDB will use Redis database number 15 ;[memcache] ;server = 127.0.0.1 ;port = 11211 ;prefix = asterisk Then, inside the db.c file add the proper statements and backend to support each of these. I'm confident that from a design perspective, this is not optimal, but it would serve as a nice PoC to indicate if the task is feasible or not. For example, the following: DEFINE_SQL_STATEMENT(put_stmt, "INSERT OR REPLACE INTO astdb (key, value) VALUES (?, ?)") DEFINE_SQL_STATEMENT(get_stmt, "SELECT value FROM astdb WHERE key=?") DEFINE_SQL_STATEMENT(del_stmt, "DELETE FROM astdb WHERE key=?") DEFINE_SQL_STATEMENT(deltree_stmt, "DELETE FROM astdb WHERE key || '/' LIKE ? || '/' || '%'") DEFINE_SQL_STATEMENT(deltree_all_stmt, "DELETE FROM astdb") DEFINE_SQL_STATEMENT(gettree_stmt, "SELECT key, value FROM astdb WHERE key || '/' LIKE ? || '/' || '%' ORDER BY key") DEFINE_SQL_STATEMENT(gettree_all_stmt, "SELECT key, value FROM astdb ORDER BY key") DEFINE_SQL_STATEMENT(showkey_stmt, "SELECT key, value FROM astdb WHERE key LIKE '%' || '/' || ? ORDER BY key") DEFINE_SQL_STATEMENT(create_astdb_stmt, "CREATE TABLE IF NOT EXISTS astdb(key VARCHAR(256), value VARCHAR(256), PRIMARY KEY(key))") Can be augmented with something like the following: DEFINE_REDIS_STATEMENT(put_redis_stmt, ""); DEFINE_REDIS_STATEMENT(get_redis_stmt, ""); DEFINE_REDIS_STATEMENT(del_redis_stmt, ""); Following this, we can simply point to the proper statements following the engine selection. What do you think, sounds reasonable? On Thu, Oct 26, 2017 at 4:30 PM Olle E. Johansson <o...@edvina.net> wrote: > On 26 Oct 2017, at 15:25, Nir Simionovich <nir.simionov...@gmail.com> > wrote: > > I suspect the original code didn't change the overall mechanism > dramatically, it's mainly a new implementation. > This thing is this - replacing the implementation seems straight forward > enough, making it configurable, seems > like a pain in the butt. > > Look for the “appleraisin” branch if you want to see code :-) > > /O > > > > > On Thu, Oct 26, 2017 at 4:23 PM Olle E. Johansson <o...@edvina.net> wrote: > >> On 26 Oct 2017, at 15:20, Nir Simionovich <nir.simionov...@gmail.com> >> wrote: >> >> Just looked into the code, this is not a simple task to put a new backend >> for astdb. The code isn't even designed >> for something like that. Judging from what I can tell, and tell me if I'm >> wrong - turning this into a configurable thing >> would be more or less an open-heart surgery. >> >> My patch wasn’t that bad, but it was before sqlite. >> >> /O >> >> >> >> >> On Thu, Oct 26, 2017 at 4:16 PM Olle E. Johansson <o...@edvina.net> wrote: >> >>> Somewhere in Asterisk space, there’s an old patch where I added ASTDB >>> over realtime, meaning you can use >>> any realtime storage. If I remember correctly there was a bit of >>> chicken-and-egg problem with some astdb >>> calls happening before realtime got launched, but otherwise it worked >>> just fine in production for a long time. >>> >>> /O >>> >>> On 26 Oct 2017, at 15:13, Nir Simionovich <nir.simionov...@gmail.com> >>> wrote: >>> >>> I'd like to +1 on that idea. >>> >>> While I'm somewhat reluctant to using mySQL as the base of such a >>> change, as mySQL is an overkill for AstDB, >>> having a proper AstDB configurable backend is an interesting thing. >>> Personally speaking, I would actually prefer >>> something like Memcache or preferably Redis. Both are similar in >>> function and usability to AstDB, both are fairly >>> scalable (Redis specifically) and both are fairly simplistic in nature. >>> >>> I do admit that this got me intrigued... >>> >>> >>> >>> On Tue, Sep 26, 2017 at 12:45 AM Matt Fredrickson <cres...@digium.com> >>> wrote: >>> >>>> On Fri, Sep 22, 2017 at 12:12 PM, Ryan Wagoner <rswago...@gmail.com> >>>> wrote: >>>> >>>>> I've been scaling out FreePBX horizontally with Kamailio and custom >>>>> FreePBX modules mainly to handle call center o
Re: [asterisk-dev] AstDB mySQL implementation
I suspect the original code didn't change the overall mechanism dramatically, it's mainly a new implementation. This thing is this - replacing the implementation seems straight forward enough, making it configurable, seems like a pain in the butt. On Thu, Oct 26, 2017 at 4:23 PM Olle E. Johansson <o...@edvina.net> wrote: > On 26 Oct 2017, at 15:20, Nir Simionovich <nir.simionov...@gmail.com> > wrote: > > Just looked into the code, this is not a simple task to put a new backend > for astdb. The code isn't even designed > for something like that. Judging from what I can tell, and tell me if I'm > wrong - turning this into a configurable thing > would be more or less an open-heart surgery. > > My patch wasn’t that bad, but it was before sqlite. > > /O > > > > > On Thu, Oct 26, 2017 at 4:16 PM Olle E. Johansson <o...@edvina.net> wrote: > >> Somewhere in Asterisk space, there’s an old patch where I added ASTDB >> over realtime, meaning you can use >> any realtime storage. If I remember correctly there was a bit of >> chicken-and-egg problem with some astdb >> calls happening before realtime got launched, but otherwise it worked >> just fine in production for a long time. >> >> /O >> >> On 26 Oct 2017, at 15:13, Nir Simionovich <nir.simionov...@gmail.com> >> wrote: >> >> I'd like to +1 on that idea. >> >> While I'm somewhat reluctant to using mySQL as the base of such a change, >> as mySQL is an overkill for AstDB, >> having a proper AstDB configurable backend is an interesting thing. >> Personally speaking, I would actually prefer >> something like Memcache or preferably Redis. Both are similar in function >> and usability to AstDB, both are fairly >> scalable (Redis specifically) and both are fairly simplistic in nature. >> >> I do admit that this got me intrigued... >> >> >> >> On Tue, Sep 26, 2017 at 12:45 AM Matt Fredrickson <cres...@digium.com> >> wrote: >> >>> On Fri, Sep 22, 2017 at 12:12 PM, Ryan Wagoner <rswago...@gmail.com> >>> wrote: >>> >>>> I've been scaling out FreePBX horizontally with Kamailio and custom >>>> FreePBX modules mainly to handle call center outbound dialing (around 20k >>>> calls per day). One of the issues I ran into was FreePBX uses the AstDB >>>> extensively and will write changes to it from the dialplan or the FreePBX >>>> user control panel. >>>> >>>> To overcome this I either needed to scrap FreePBX and build a new GUI >>>> using Asterisk realtime, heavily modify FreePBX (not an option), or rewrite >>>> AstDB to use a database like mySQL. I choose the last option and have had >>>> the code in production for just over a month. I'm backing it with a two >>>> node MariaDB Galera cluster with HAProxy providing failover for the client >>>> DB connections. >>>> >>>> I realize that SQLite was chosen for AstDB for performance reasons. >>>> However mySQL seems to perform just fine in the above scenario. Right now I >>>> have a db.c file that just has the mySQL code. Does anybody else have any >>>> interest in using mySQL for the AstDB backend? I'm debating if it would >>>> make sense to have the option to select your AstDB backend. >>>> >>> >>> Hey Ryan, >>> >>> First off, thanks for letting us know about the fun project you embarked >>> upon. I think Josh already answered some of your questions, but with >>> regards to the work you did - I believe that in the past there have been >>> others who have wanted an ODBC AstDB driver as well. If your code can be >>> made configurable, it may be a good contribution. >>> >>> Anyways, hope you are doing well, and perhaps we'll see your code up on >>> gerrit at some time in the future. :-) >>> >>> -- >>> Matthew Fredrickson >>> Digium, Inc. | Engineering Manager >>> 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA >>> -- >>> _ >>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>> >>> asterisk-dev mailing list >>> To UNSUBSCRIBE or update options visit: >>>http://lists.digium.com/mailman/listinfo/asterisk-dev >> >> -- >> Kind Regards, >> Nir Simionovich >> GreenfieldTech >> (schedule) http://nirsimionovich.appointy.com/ >> (w) http://www.greenfieldtech.net >> (p) +972-7
Re: [asterisk-dev] AstDB mySQL implementation
Just looked into the code, this is not a simple task to put a new backend for astdb. The code isn't even designed for something like that. Judging from what I can tell, and tell me if I'm wrong - turning this into a configurable thing would be more or less an open-heart surgery. On Thu, Oct 26, 2017 at 4:16 PM Olle E. Johansson <o...@edvina.net> wrote: > Somewhere in Asterisk space, there’s an old patch where I added ASTDB over > realtime, meaning you can use > any realtime storage. If I remember correctly there was a bit of > chicken-and-egg problem with some astdb > calls happening before realtime got launched, but otherwise it worked just > fine in production for a long time. > > /O > > On 26 Oct 2017, at 15:13, Nir Simionovich <nir.simionov...@gmail.com> > wrote: > > I'd like to +1 on that idea. > > While I'm somewhat reluctant to using mySQL as the base of such a change, > as mySQL is an overkill for AstDB, > having a proper AstDB configurable backend is an interesting thing. > Personally speaking, I would actually prefer > something like Memcache or preferably Redis. Both are similar in function > and usability to AstDB, both are fairly > scalable (Redis specifically) and both are fairly simplistic in nature. > > I do admit that this got me intrigued... > > > > On Tue, Sep 26, 2017 at 12:45 AM Matt Fredrickson <cres...@digium.com> > wrote: > >> On Fri, Sep 22, 2017 at 12:12 PM, Ryan Wagoner <rswago...@gmail.com> >> wrote: >> >>> I've been scaling out FreePBX horizontally with Kamailio and custom >>> FreePBX modules mainly to handle call center outbound dialing (around 20k >>> calls per day). One of the issues I ran into was FreePBX uses the AstDB >>> extensively and will write changes to it from the dialplan or the FreePBX >>> user control panel. >>> >>> To overcome this I either needed to scrap FreePBX and build a new GUI >>> using Asterisk realtime, heavily modify FreePBX (not an option), or rewrite >>> AstDB to use a database like mySQL. I choose the last option and have had >>> the code in production for just over a month. I'm backing it with a two >>> node MariaDB Galera cluster with HAProxy providing failover for the client >>> DB connections. >>> >>> I realize that SQLite was chosen for AstDB for performance reasons. >>> However mySQL seems to perform just fine in the above scenario. Right now I >>> have a db.c file that just has the mySQL code. Does anybody else have any >>> interest in using mySQL for the AstDB backend? I'm debating if it would >>> make sense to have the option to select your AstDB backend. >>> >> >> Hey Ryan, >> >> First off, thanks for letting us know about the fun project you embarked >> upon. I think Josh already answered some of your questions, but with >> regards to the work you did - I believe that in the past there have been >> others who have wanted an ODBC AstDB driver as well. If your code can be >> made configurable, it may be a good contribution. >> >> Anyways, hope you are doing well, and perhaps we'll see your code up on >> gerrit at some time in the future. :-) >> >> -- >> Matthew Fredrickson >> Digium, Inc. | Engineering Manager >> 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA >> -- >> _ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >>http://lists.digium.com/mailman/listinfo/asterisk-dev > > -- > Kind Regards, > Nir Simionovich > GreenfieldTech > (schedule) http://nirsimionovich.appointy.com/ > (w) http://www.greenfieldtech.net > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > -- >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > -- > > *Disclaimer:* > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > thi
Re: [asterisk-dev] AstDB mySQL implementation
I'd like to +1 on that idea. While I'm somewhat reluctant to using mySQL as the base of such a change, as mySQL is an overkill for AstDB, having a proper AstDB configurable backend is an interesting thing. Personally speaking, I would actually prefer something like Memcache or preferably Redis. Both are similar in function and usability to AstDB, both are fairly scalable (Redis specifically) and both are fairly simplistic in nature. I do admit that this got me intrigued... On Tue, Sep 26, 2017 at 12:45 AM Matt Fredrickson <cres...@digium.com> wrote: > On Fri, Sep 22, 2017 at 12:12 PM, Ryan Wagoner <rswago...@gmail.com> > wrote: > >> I've been scaling out FreePBX horizontally with Kamailio and custom >> FreePBX modules mainly to handle call center outbound dialing (around 20k >> calls per day). One of the issues I ran into was FreePBX uses the AstDB >> extensively and will write changes to it from the dialplan or the FreePBX >> user control panel. >> >> To overcome this I either needed to scrap FreePBX and build a new GUI >> using Asterisk realtime, heavily modify FreePBX (not an option), or rewrite >> AstDB to use a database like mySQL. I choose the last option and have had >> the code in production for just over a month. I'm backing it with a two >> node MariaDB Galera cluster with HAProxy providing failover for the client >> DB connections. >> >> I realize that SQLite was chosen for AstDB for performance reasons. >> However mySQL seems to perform just fine in the above scenario. Right now I >> have a db.c file that just has the mySQL code. Does anybody else have any >> interest in using mySQL for the AstDB backend? I'm debating if it would >> make sense to have the option to select your AstDB backend. >> > > Hey Ryan, > > First off, thanks for letting us know about the fun project you embarked > upon. I think Josh already answered some of your questions, but with > regards to the work you did - I believe that in the past there have been > others who have wanted an ODBC AstDB driver as well. If your code can be > made configurable, it may be a good contribution. > > Anyways, hope you are doing well, and perhaps we'll see your code up on > gerrit at some time in the future. :-) > > -- > Matthew Fredrickson > Digium, Inc. | Engineering Manager > 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Asterisk 11 EOL Announcement
▓██▓██░─ ░███░░███░── ──█▒──█─ ─▓█▓███░──░▒▓█─▒ ──▓███─██▓███─── ─▓██──░███── ▓█──░░████▓██▓▒─ █▒─░ █░───▓██▓███ █░───░██ █░───▒█▒ ███▓▓██▓███─ ───▒█▓█─▒█──▓─▒░─██─ ───████─░█░──░█▓──▒▓█▓█─▒██─ ───▓▓▓█▓▓───░▒█▓──░██─▒█───▓▓█▓░███─ ───█▓───░───░▓█───░▓█─▒█───▒██──██▒─ ───█───░─██░█░▒─░██───░─██─█▓█░─ ───█─██─▓▓░▒▓██▓█──█▓▒──▓█── ──██───░▒▒▒█▓▒▒─██── ──▓▒─░──██── ──█▒█▓── ──█──Asterisk 11───▓█░── ──████▒██─── ──███─── ──█▓─▒─██─── ─░███░─██─── ─██─█───░▒▒█▓─── ─█░──▒███▒██ ─███▓███ ─█──░─█▓▓███ ─▓─▒▓─█░ ─█▒█░──▒─░█░░██▓ ░▓▓▓──█▒─▒█──██░ ░██▒─██░─██──██░ ─██▒▓█▒──█─▒███░ ─█──▒█▒█▓███░▒░─ ██▒▒██▓█▓─░▒██░▒▓█▓██░░─ ───░█▓█▓██░▒░▒░░░──███░█▓▓▓─ ─██▓██▓▓██── ─▓███─── On Wed, Oct 25, 2017 at 5:45 PM Matt Fredrickson <cres...@digium.com> wrote: > Dearly Beloved, > > We have gathered here today to mourn the passing of a deeply regarded > branch of Asterisk - Asterisk 11. As of today, it has officially > reached its end of life. It was a good branch, having served 5 years > faithfully in the service of its users. As far as history goes, > 11.0.0 was born on November 28th 2012. It had 1458 commits in its 5 > year life, and some will try to use it even after its useful end of > life. Now, mostly due to the fact that it is no longer with us, > Asterisk 11 will become one of the “great” releases of Asterisk, > joining the ranks of all the other “great” branches such as 1.0, 1.2, > 1.4, 1.6, 1.8, and 10. Please join with me now for a moment of > silence for it, as it passes to the great beyond. > > In all seriousness, if you didn’t get the humor in the above message, > today is the day that Asterisk 11 officially goes end of life. For > the last year, Asterisk 11 has been in security fix only mode, meaning > it stopped receive regular bug fixes a year ago, and has only received > security related fixes. Today that all ends and not even security > fixes will going into that branch. If you haven’t gotten off of it > yet, there is no better time than the present. > > If you’re curious about the dates and times associated with life > cycles transitions on Asterisk branches, you can read more at > https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions > > Last of all, thanks to all of you who contribute to the Asterisk > project, whether it be bug reports, bug fixes, new feature > development, or helping other users by answering questions on the > mailing lists, forums, and other venues. At the end of the day, it’s > the quality of the user and development community that make Asterisk > such a great project. > > Best wishes. > > -- > Matthew Fredrickson > Digium, Inc. | Engineering Manager > 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA > <https://maps.google.com/?q=445+Jan+Davis+Drive+NW+-+Huntsville,+AL+35806+-+USA=gmail=g> > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If
Re: [asterisk-dev] Adding a new module to Asterisk
Hi All, Following cdr_beanstalk, I've added a beanstalk backend to CEL as well. I'll be uploading that to geritt review under a new review issue. On Mon, Oct 16, 2017 at 6:35 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > Hi All, > > So, my new cdr_beanstalkd module is available at > team/nirs/beanstalkd-support > <https://gerrit.asterisk.org/#/q/topic:team/nirs/beanstalkd-support+(status:open+OR+status:merged)> > . > I'm not sure I've opened the review correctly, so would appreciate if > someone can > lend a hand on this one :-) > > > > On Mon, Oct 16, 2017 at 5:02 PM Nir Simionovich <nir.simionov...@gmail.com> > wrote: > >> Thanks. The module is now finished - and also tested. I want to generate >> some tests and make sure >> it holds up, but in general - it's working as I expected it to work. >> >> >> >> On Mon, Oct 16, 2017 at 4:06 PM Joshua Colp <jc...@digium.com> wrote: >> >>> On Mon, Oct 16, 2017, at 10:03 AM, Nir Simionovich wrote: >>> > ok, managed to pass that hurdle - I'm basically using a fairly old >>> piece >>> > of >>> > code to base my module on - namely, cdr_manager.c, >>> > so the configuration parser in there is slightly different. >>> > >>> > Minor question, is there a "safe" asterisk method of doing a "sprintf"? >>> >>> There is no Asterisk wrapper for it, but snprintf should be used instead >>> generally. >>> >>> -- >>> Joshua Colp >>> Digium, Inc. | Senior Software Developer >>> 445 Jan Davis Drive NW - Huntsville, AL 35806 - US >>> Check us out at: www.digium.com & www.asterisk.org >>> >>> -- >>> _ >>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>> >>> asterisk-dev mailing list >>> To UNSUBSCRIBE or update options visit: >>>http://lists.digium.com/mailman/listinfo/asterisk-dev >>> >> -- >> >> Kind Regards, >> >> Nir Simionovich >> >> GreenfieldTech >> >> (schedule) http://nirsimionovich.appointy.com/ >> >> (w) http://www.greenfieldtech.net >> >> (p) +972-73-2557799 <073-255-7799>(MSN): >> n...@greenfieldtech.net >> >> (m) +972-54-6982826 <054-698-2826> (GTALK): >> nir.simionov...@gmail.com >> >> (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir >> >> >> -- >> >>Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud >> Servers <https://www.digitalocean.com/?refcode=97eeea09917a> >> >> -- >> >> *Disclaimer:* >> >> This e-mail is intended solely for the person to whom it is addressed and >> may contain confidential or legally privileged information. Access to this >> e-mail by anyone else is unauthorized. If an addressing or transmission >> error has misdirected this e-mail, please notify the author by replying to >> this e-mail and destroy this e-mail and any attachments. >> E-mail may be susceptible to data corruption, interception, unauthorized >> amendment, viruses and delays or the consequences thereof. If you are not >> the intended recipient, be advised that you have received this email in >> error and that any use, dissemination, forwarding, printing or copying of >> this email is strictly prohibited. >> > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > ---------- > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission >
Re: [asterisk-dev] Adding a new module to Asterisk
Hi All, So, my new cdr_beanstalkd module is available at team/nirs/beanstalkd-support <https://gerrit.asterisk.org/#/q/topic:team/nirs/beanstalkd-support+(status:open+OR+status:merged)> . I'm not sure I've opened the review correctly, so would appreciate if someone can lend a hand on this one :-) On Mon, Oct 16, 2017 at 5:02 PM Nir Simionovich <nir.simionov...@gmail.com> wrote: > Thanks. The module is now finished - and also tested. I want to generate > some tests and make sure > it holds up, but in general - it's working as I expected it to work. > > > > On Mon, Oct 16, 2017 at 4:06 PM Joshua Colp <jc...@digium.com> wrote: > >> On Mon, Oct 16, 2017, at 10:03 AM, Nir Simionovich wrote: >> > ok, managed to pass that hurdle - I'm basically using a fairly old piece >> > of >> > code to base my module on - namely, cdr_manager.c, >> > so the configuration parser in there is slightly different. >> > >> > Minor question, is there a "safe" asterisk method of doing a "sprintf"? >> >> There is no Asterisk wrapper for it, but snprintf should be used instead >> generally. >> >> -- >> Joshua Colp >> Digium, Inc. | Senior Software Developer >> 445 Jan Davis Drive NW - Huntsville, AL 35806 - US >> Check us out at: www.digium.com & www.asterisk.org >> >> -- >> _ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >>http://lists.digium.com/mailman/listinfo/asterisk-dev >> > -- > > Kind Regards, > > Nir Simionovich > > GreenfieldTech > > (schedule) http://nirsimionovich.appointy.com/ > > (w) http://www.greenfieldtech.net > > (p) +972-73-2557799 <073-255-7799>(MSN): n...@greenfieldtech.net > > (m) +972-54-6982826 <054-698-2826> (GTALK): > nir.simionov...@gmail.com > > (f) +972-73-2557202 <073-255-7202> (SKYPE): greenfieldtech.nir > > > -- > >Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud > Servers <https://www.digitalocean.com/?refcode=97eeea09917a> > > -- > > *Disclaimer:* > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or legally privileged information. Access to this > e-mail by anyone else is unauthorized. If an addressing or transmission > error has misdirected this e-mail, please notify the author by replying to > this e-mail and destroy this e-mail and any attachments. > E-mail may be susceptible to data corruption, interception, unauthorized > amendment, viruses and delays or the consequences thereof. If you are not > the intended recipient, be advised that you have received this email in > error and that any use, dissemination, forwarding, printing or copying of > this email is strictly prohibited. > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Adding a new module to Asterisk
Thanks. The module is now finished - and also tested. I want to generate some tests and make sure it holds up, but in general - it's working as I expected it to work. On Mon, Oct 16, 2017 at 4:06 PM Joshua Colp <jc...@digium.com> wrote: > On Mon, Oct 16, 2017, at 10:03 AM, Nir Simionovich wrote: > > ok, managed to pass that hurdle - I'm basically using a fairly old piece > > of > > code to base my module on - namely, cdr_manager.c, > > so the configuration parser in there is slightly different. > > > > Minor question, is there a "safe" asterisk method of doing a "sprintf"? > > There is no Asterisk wrapper for it, but snprintf should be used instead > generally. > > -- > Joshua Colp > Digium, Inc. | Senior Software Developer > 445 Jan Davis Drive NW - Huntsville, AL 35806 - US > Check us out at: www.digium.com & www.asterisk.org > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Adding a new module to Asterisk
ok, managed to pass that hurdle - I'm basically using a fairly old piece of code to base my module on - namely, cdr_manager.c, so the configuration parser in there is slightly different. Minor question, is there a "safe" asterisk method of doing a "sprintf"? On Mon, Oct 16, 2017 at 1:16 PM Joshua Colp <jc...@digium.com> wrote: > On Mon, Oct 16, 2017, at 06:45 AM, Nir Simionovich wrote: > > Ok, that helped - looks like I'm linking correctly now. > > > > Different question, I remember their used to be a "safe string copy" > > function that I'm supposed to use, > > instead of using strcpy. Mainly, I want to parse my configuration file > > correctly, but I can't find any > > specific methodology for doing this in a uniform asteriskish manner. > > From a configuration perspective there's two APIs: > > If only .conf files are needed then there is the Asterisk Config Options > API, include/asterisk/config_options.h, which is used by the skeleton > application apps/app_skel.c for configuration parsing, storing, and > usage. > > If realtime is needed then there is the Asterisk Sorcery API, > include/asterisk/sorcery.h, which is used by PJSIP and other things - > with the simplest being res/res_mwi_external.c > > It's highly recommended to use one of them instead of rolling your own > configuration parsing. They take care of things (such as safe atomic > reloads). > > The "safe string copy" you are thinking of is probably ast_copy_string. > > -- > Joshua Colp > Digium, Inc. | Senior Software Developer > 445 Jan Davis Drive NW - Huntsville, AL 35806 - US > Check us out at: www.digium.com & www.asterisk.org > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Adding a new module to Asterisk
Ok, that helped - looks like I'm linking correctly now. Different question, I remember their used to be a "safe string copy" function that I'm supposed to use, instead of using strcpy. Mainly, I want to parse my configuration file correctly, but I can't find any specific methodology for doing this in a uniform asteriskish manner. On Wed, Oct 11, 2017 at 10:37 AM Alexander Traud <pabstr...@compuserve.com> wrote: > > The new [module] relies on a library that I need to introduce to the > > linker, however, I've tried to figure out how the autotools work in > > there > > Took me a while to understand as well. Have a look at audio-codec modules > like the one for Codec 2: <http://github.com/traud/asterisk-codec2>. > > The required patches for the autotools are in "build_codec2.patch". Then, > in your actual module, you add a MODULEINFO at the start, like shown in > "codecs/codec_codec2.c". At the end, you have to call "./bootstrap.sh" once > before you start "./configure". Then, make should be happy. > > If that did not help either, please, explain in more detail, for example > the error message you are facing or which library you try to link. Are you > able to compile against its header files already? Furthermore, in which > directory of the Asterisk project are your added source files? > > > > -- > _ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: >http://lists.digium.com/mailman/listinfo/asterisk-dev > -- Kind Regards, Nir Simionovich GreenfieldTech (schedule) http://nirsimionovich.appointy.com/ (w) http://www.greenfieldtech.net (p) +972-73-2557799(MSN): n...@greenfieldtech.net (m) +972-54-6982826 (GTALK): nir.simionov...@gmail.com (f) +972-73-2557202 (SKYPE): greenfieldtech.nir -- Zero Your Inbox <https://mailstrom.co/referral/ARZJE> | Cloud Servers <https://www.digitalocean.com/?refcode=97eeea09917a> -- *Disclaimer:* This e-mail is intended solely for the person to whom it is addressed and may contain confidential or legally privileged information. Access to this e-mail by anyone else is unauthorized. If an addressing or transmission error has misdirected this e-mail, please notify the author by replying to this e-mail and destroy this e-mail and any attachments. E-mail may be susceptible to data corruption, interception, unauthorized amendment, viruses and delays or the consequences thereof. If you are not the intended recipient, be advised that you have received this email in error and that any use, dissemination, forwarding, printing or copying of this email is strictly prohibited. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Adding a new module to Asterisk
Hi All, I'm in the process of adding a new module to Asterisk, in this case, a new CDR backend. The new backend relies on a library that I need to introduce to the linker, however, I've tried to figure out how the autotools work in there - and had failed miserably. I would appreciate if someone can shed a little light on the process - if possible. Regards, Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Deadlock in chan_sip
Hey Ryan, Well, I'm not using Realtime hear and the setup is much simpler - but the overall deadlock pathology is very similar. Currently, I've managed to mitigate the issue on my systems by doing the following: 1. Migration of my inbound SIP channel from chan_sip to chan_pjsip 2. Forcing Asterisk to "transcode" between ulaw to alaw and back, so that re-invites don't work on the problematic path. I've tested with version running as back as 13.0 and 12.4 - all manifested the same scenario. This is not version specific or setup specific, this is something a bit more lower level then it looks. On Mon, Apr 4, 2016 at 7:11 PM, Ryan Rittgarn <rrittg...@techpro.com> wrote: > Nir, is your bug possibly related to: > https://issues.asterisk.org/jira/browse/ASTERISK-25468 > > I've been experiencing the bug referenced and have had to roll back to > 13.4 as the issue seems to have been introduced going into 13.5 > > > -Original Message- > From: asterisk-dev-boun...@lists.digium.com [mailto: > asterisk-dev-boun...@lists.digium.com] On Behalf Of > asterisk-dev-requ...@lists.digium.com > Sent: Sunday, April 03, 2016 12:00 PM > To: asterisk-dev@lists.digium.com > Subject: asterisk-dev Digest, Vol 141, Issue 4 > > Send asterisk-dev mailing list submissions to > asterisk-dev@lists.digium.com > > To subscribe or unsubscribe via the World Wide Web, visit > http://lists.digium.com/mailman/listinfo/asterisk-dev > or, via email, send a message with subject or body 'help' to > asterisk-dev-requ...@lists.digium.com > > You can reach the person managing the list at > asterisk-dev-ow...@lists.digium.com > > When replying, please edit your Subject line so it is more specific than > "Re: Contents of asterisk-dev digest..." > > > Today's Topics: > >1. Deadlock in chan_sip, caused by weird media re-invite from > remote side (Nir Simionovich) > > > ------ > > Message: 1 > Date: Sun, 3 Apr 2016 12:03:19 +0300 > From: Nir Simionovich <nir.simionov...@gmail.com> > To: Asterisk Developers Mailing List <asterisk-dev@lists.digium.com> > Subject: [asterisk-dev] Deadlock in chan_sip, caused by weird media > re-invite from remote side > Message-ID: > < > cae+pvdpzbzj0b4aq3kyedgbcgzpxev2zqrdhrhqqya4stze...@mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Hi All, > > We have several systems, some running Asterisk 13 some 12. We have > recently discovered a possible dead-lock scenario in chan_sip. The > dead-lock seems to manifest as the below: > > LCR-AMS-01*CLI> core show locks > > === > === 12.8.2 > === Currently Held Locks > === > === > === <lock#> (): name> (times locked) > === > === Thread ID: 0x7f922f88b700 (do_monitor started at [29073] > chan_sip.c restart_monitor()) > === ---> Lock #0 (astobj2_container.c): MUTEX 333 internal_ao2_traverse > self 0x36a9880 (1) > /usr/sbin/asterisk(__ast_bt_get_addresses+0x1d) [0x46556d] > /usr/sbin/asterisk(__ast_pthread_mutex_lock+0xc9) [0x5317d5] > /usr/sbin/asterisk(__ao2_lock+0x96) [0x45a21f] > /usr/sbin/asterisk() [0x45b9b1] > /usr/sbin/asterisk(__ao2_callback+0x5f) [0x45bd83] > /usr/lib/asterisk/modules/chan_sip.so(+0x96a7d) [0x7f9249c2fa7d] > /usr/sbin/asterisk() [0x5edbd1] > /lib64/libpthread.so.0(+0x7a51) [0x7f92da37aa51] > /lib64/libc.so.6(clone+0x6d) [0x7f92dbf8d93d] === > --- > === > === > > Now, the funny bit is how it happens. This is the scenario: > > Soft Phone -> Asterisk A -> Asterisk B -> Carrier > > Soft phone is behind a NAT. Asterisk servers are not, same as the > carrier. > > We've noticed that the carrier tries to run a media re-invite, after the > call had basically dropped from Asterisk B, and tries to do it over and > over again, without stopping. Eventually, that would dead-lock chan_sip > completely, requiring a full blown asterisk restart. > > Any of you ever encountered anything like this? > > I've mitigated the issue by forcing two different codecs on the two > sides of Asterisk B, basically, preventing the media re-invite - but it > isn't the proper solution. > -- next part -- > An HTML attachment was scrubbed... > URL: < > http://lists.digium.com/pi
[asterisk-dev] Deadlock in chan_sip, caused by weird media re-invite from remote side
Hi All, We have several systems, some running Asterisk 13 some 12. We have recently discovered a possible dead-lock scenario in chan_sip. The dead-lock seems to manifest as the below: LCR-AMS-01*CLI> core show locks === === 12.8.2 === Currently Held Locks === === ===(): (times locked) === === Thread ID: 0x7f922f88b700 (do_monitor started at [29073] chan_sip.c restart_monitor()) === ---> Lock #0 (astobj2_container.c): MUTEX 333 internal_ao2_traverse self 0x36a9880 (1) /usr/sbin/asterisk(__ast_bt_get_addresses+0x1d) [0x46556d] /usr/sbin/asterisk(__ast_pthread_mutex_lock+0xc9) [0x5317d5] /usr/sbin/asterisk(__ao2_lock+0x96) [0x45a21f] /usr/sbin/asterisk() [0x45b9b1] /usr/sbin/asterisk(__ao2_callback+0x5f) [0x45bd83] /usr/lib/asterisk/modules/chan_sip.so(+0x96a7d) [0x7f9249c2fa7d] /usr/sbin/asterisk() [0x5edbd1] /lib64/libpthread.so.0(+0x7a51) [0x7f92da37aa51] /lib64/libc.so.6(clone+0x6d) [0x7f92dbf8d93d] === --- === === Now, the funny bit is how it happens. This is the scenario: Soft Phone -> Asterisk A -> Asterisk B -> Carrier Soft phone is behind a NAT. Asterisk servers are not, same as the carrier. We've noticed that the carrier tries to run a media re-invite, after the call had basically dropped from Asterisk B, and tries to do it over and over again, without stopping. Eventually, that would dead-lock chan_sip completely, requiring a full blown asterisk restart. Any of you ever encountered anything like this? I've mitigated the issue by forcing two different codecs on the two sides of Asterisk B, basically, preventing the media re-invite - but it isn't the proper solution. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI - Add Support for custom SIP Headers with Originate
Cool, too bad it isn't documented. I'll add it into PHPARI as well. On Mar 8, 2015 6:18 PM, Matthew Jordan mjor...@digium.com wrote: On Sun, Mar 8, 2015 at 10:51 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Ok, I'll have a look into that one. On Sun, Mar 8, 2015 at 1:03 PM, Olle E. Johansson o...@edvina.net wrote: On 08 Mar 2015, at 09:52, Nir Simionovich nir.simionov...@gmail.com wrote: Hi All, So, I've been banging my head against an issue with ARI. While Channel Originate enables you to originate channels, you can't really do a SIPAddHeader type functionality in there. Originally, I was under impression that endpoints/message should be able to give me the functionality I wanted, but it didn't. So, I realized that the functionality I'm looking for doesn't really exist. Question, are we missing a feature here? or is there an alternative method of achieving the same functionality? If you can add channel variables, you can add SIP headers. Look at a dump of the channel after you executed SIPaddheader to figure out how it works. Add two headers, and run dumpchan(). You should be able to do it with just the channel variable SIPADDHEADER, that is: SIPADDHEADER=X-CustomHeader-1: foo SIPADDHEADER=X-CustomHeader-2: bar These can be specified in the /channels operation's JSON body. WIth chan_pjsip, headers are manipulated using a dialplan function, so there shouldn't be any issue there. -- Matthew Jordan Digium, Inc. | Director of Technology 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA Check us out at: http://digium.com http://asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] ARI - Add Support for custom SIP Headers with Originate
Hi All, So, I've been banging my head against an issue with ARI. While Channel Originate enables you to originate channels, you can't really do a SIPAddHeader type functionality in there. Originally, I was under impression that endpoints/message should be able to give me the functionality I wanted, but it didn't. So, I realized that the functionality I'm looking for doesn't really exist. Question, are we missing a feature here? or is there an alternative method of achieving the same functionality? Regards, Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI - Add Support for custom SIP Headers with Originate
Ok, I'll have a look into that one. On Sun, Mar 8, 2015 at 1:03 PM, Olle E. Johansson o...@edvina.net wrote: On 08 Mar 2015, at 09:52, Nir Simionovich nir.simionov...@gmail.com wrote: Hi All, So, I've been banging my head against an issue with ARI. While Channel Originate enables you to originate channels, you can't really do a SIPAddHeader type functionality in there. Originally, I was under impression that endpoints/message should be able to give me the functionality I wanted, but it didn't. So, I realized that the functionality I'm looking for doesn't really exist. Question, are we missing a feature here? or is there an alternative method of achieving the same functionality? If you can add channel variables, you can add SIP headers. Look at a dump of the channel after you executed SIPaddheader to figure out how it works. Add two headers, and run dumpchan(). /O -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] PHPARI app_dial re-implementation
Hi All, I've managed to re-implement the basic functionality of app_dial using ARI and PHPARI. I've tested it and it supports handling of multiple calls at the same time. Having said that, I would highly appreciate some feedback in regards to the methodology, or if anybody can see something I can't. You can find the information here: http://www.phpari.org/documentation/app_dial-re-implemented-using-phpari/ And soon to be added to the 0.3 release of phpari. Regards, Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] OFF TOPIC: GitHub vs. BitBucket vs. GitLab
Hi all, This is somewhat of an off topic discussion, however, I'm putting it here - as most of your have more experience than me when it comes to using git. So, we've been using GitHub for a year now as our Git repository and are fairly happy with it. At the same time, we're using BitBucket for some of our projects, specifically those who are not of Open Source nature. Recently, I've become frustrated with both platforms - specifically when it comes to managing code within teams - specifically when code reviews are required from multiple entry points - code review becomes longer than actual coding. So, I was wondering what you guys are using and working with? You are welcome to answer this off-list, but I do believe that some of us may benefit from the discussion. Nir -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] ARI Stasis Application Examples and Tutorials
Hi All, I'm not sure if the dev list is the proper list of this, however, due to the fact that the issue at hand revolves around documentation and proper usage, I think bringing it up here is a good place. So, during the past few days, I've been trying to implement the Dial application using ARI. So, I'm aware I'm not the only one, but I'm the one trying to do it using PHPARI - naturally. In any case, I managed to write the functionality - reaching an issue where if I disconnect the first bridge handled by the stasis app, it will kill all the other bridges as well. I was wondering why that happens. I then realized that part of the my stasis loop implementation is just wrong, and it's not because PHPARI is wrong, or ARI is wrong - it's wrong because it is a WebSocket client. A stasis application, at least as I understand it - is a websocket client - or consumer in that respect. However, our consumer application is required to be able to handle multiple sessions, so, it now needs to be stateful on one hand, and 'multi-threaded' on the other. The result is that our 'client' application is actually a server in disguise. This is something that the ARI documentation and general usage concepts is missing - I think that we need to make ARI more accessible by explaining the basic concepts better. Another thing, yesterday Scott and I were going through Matt's example of the bridge_dial ARI application. The fact that the ari-py is autogenerated makes it really hard for a none-python (yours truly) guy to follow along. Even Scott, who is fluent in Python had a bit of trouble looking through the logic of the app, specifically when seeing that a certain event overloads an existing one - and some other stuff that ari-py does. In other words, if we want to deprecate AGI/AMI at some point - or for a better term, get people to use ARI extensively - we need better examples. I'm working on adding additional examples to PHPARI for this, but we need simple, to the point, usage examples for ARI. For example, examples that don't go about and do something funky in the background, so that people can truly learn from it. When I started with AGI and AMI, the one thing I liked was that I could use BASH. ARI isn't such a thing, and a WebSocket library is mandatory. But giving some basic concepts using only that, would be awesome. What do you think? Nir -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] git migration update
+1 from me as well. We use the methodology of using personalized repos for projects and it works really well. We use either GitHub or BitBucket, depending on the project - but both work equally well. I'm confident that Atlassian will be happy to show their support by contributing a Stash license to the project, and you'll get the same functionality of BitBucket on a dedicated server - if you don't want to host the project publicly. On Tue, Dec 23, 2014 at 1:34 AM, Russell Bryant russ...@russellbryant.net wrote: On Mon, Dec 22, 2014 at 3:08 PM, George Joseph george.jos...@fairview5.com wrote: On Mon, Dec 22, 2014 at 12:03 PM, Samuel Galarneau sgalarn...@digium.com wrote: 2 - we have a few options as far as team branches go. We could configure user branches using refs/heads/team/${username}/* permissions in Gerrit to allow users to create branches. This would prohibit other users from pushing to a user branch, but they would still be visible. This would most likely involve reproducing some sort of automerge/autorebase process. The other option is to use github as another remote for team branches, with a remote pointing to Gerrit for code reviews. Is there a preference between these two approaches, or perhaps a better setup we could follow? I don't think there's any need for you to host users' repos any more. It may have made sense for SVN but I don't think it does for GIT. Let users make their own arrangements be it GitHub or in my case, my own GIT infrastructure. +1. I don't think it makes sense with git. github or whatever should work just fine for that purpose. -- Russell Bryant -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Sorry, previous sample was wrong, here is a more accurate sample: T 178.62.127.227:44972 - 178.62.127.227:8088 [AP] POST /ari/channels/participant HTTP/1.1. Authorization: Basic dGVzdDp0ZXN0. Host: 178.62.127.227:8088. Content-Length: 31. Accept: application/json. Content-Type: application/json. . {endpoint:Local\/1000@demo} T 178.62.127.227:8088 - 178.62.127.227:44972 [AP] HTTP/1.1 400 Bad Request. Server: Asterisk/SVN-trunk-r429683M. Date: Thu, 18 Dec 2014 07:59:34 GMT. Cache-Control: no-cache, no-store. Content-type: application/json. Content-Length: 61. . T 178.62.127.227:8088 - 178.62.127.227:44972 [AP] { message: Application or extension must be specified } On Thu, Dec 18, 2014 at 9:48 AM, Nir Simionovich nir.simionov...@gmail.com wrote: One more thing - per your recommendations, I'm trying to re-implement app_dial using ARI. Now, if I read you all right, the process should be: 1. Get a call into Asterisk from an external phone 2. Create a new bridge 3. Put the call into the newly created bridge 4. Originate a new call 5. Put the new call into the existing bridge So, 1,2,3 work just fine - then you get to 4. According to the docs, I can originate a channel with only the endpoint defined. However, that doesn't seem to work: T 178.62.127.227:44938 - 178.62.127.227:8088 [AP] POST /ari/channels HTTP/1.1. Authorization: Basic dGVzdDp0ZXN0. Host: 178.62.127.227:8088. Content-Length: 85. Accept: application/json. Content-Type: application/json. . {endpoint:Local\/1000@demo ,channelId:participant,variables:{var1:var1}} T 178.62.127.227:8088 - 178.62.127.227:44938 [AP] HTTP/1.1 400 Bad Request. Server: Asterisk/SVN-trunk-r429683M. Date: Thu, 18 Dec 2014 07:41:59 GMT. Cache-Control: no-cache, no-store. Content-type: application/json. Content-Length: 61. . T 178.62.127.227:8088 - 178.62.127.227:44938 [AP] { message: Application or extension must be specified } Am I missing something here? or is this a bug? On Thu, Dec 18, 2014 at 8:59 AM, Nir Simionovich nir.simionov...@gmail.com wrote: I see your point now - that makes more sense. It was fairly clear to me that ast_bridge_config is somewhat of a legacy data structure, but I was assuming that in some respect it was used in ARI as well. What your actually saying is that ARI bypasses all of the legacy stuff and interacts directly with the bridge core, and that's why it doesn't support that data structure. So technically, accessing bridge configuration for a Legacy (Dial, Queue, FollowMe) is a fairly complex task, as they don't see the same information space. This now raises a slightly off-topic discussion - wouldn't it beneficial to provide some form of ARI access to some of the legacy stuff as well? On one hand, we don't really want to do that - as we're trying to push people into proper usage of ARI and Asterisk, however, my heart goes out to the legacy stuff, that if we don't cater to, will become a caveat. I will explain. About 6 years I've built a large scale Asterisk based dialer for a customer. When I say large scale, I meant humongous in 2008 terms - 2500 concurrent calls. Now, that dialer relied heavily on AMI (of course) and AGI. It was originally built on Asterisk 1.6. Recently, the customer came back to me, asking me to upgrade their system to Asterisk 11, specifically for security reasons. I then looked at the code, realizing that the customer had wrote some stuff using MeetMe and some of the deprecated app_queue stuff. I indicated to them that their legacy code should be migrated as well. Customer looked at it, realized that apart from upgrading Asterisk, they will have about 6 months worth of coding to migrate their stuff to the new constructs - the entire project caved. We just upgraded to latest version of the 1.6 branch, and the customer is now evaluating 1.8 - in other words, not supporting the legacy stuff in some respect will at some point bite us in the ass. I realize this is very much a leadership question, not a technical nor operational. New question: Do we want to enable legacy features inside ARI? Nir On Thu, Dec 18, 2014 at 1:26 AM, Mark Michelson mmichel...@digium.com wrote: On 12/17/2014 05:01 PM, Nir Simionovich wrote: snip Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? ast_bridge_config is not used at all for Stasis bridges. ast_bridge_config describes bridge features that basic bridges use based on Dial(), Queue(), and FollowMe() features. For instance, when Dial is called with the 't' and 'T' options, the ast_bridge_config indicates that the caller and callee can perform DTMF transfers based on features.conf settings. For Stasis bridges, the idea of using ast_bridge_config does not make sense for several reasons 1) Stasis applications are intended to be fully in control
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
In deed, that is interesting - but truly stirs away from ARI - not something that I'm trying to do. On Thu, Dec 18, 2014 at 1:00 PM, Kaloyan Kovachev kkovac...@varna.net wrote: Hi, On 2014-12-18 01:01, Nir Simionovich wrote: Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration in real time? Nir You may take a look at my old RTCC patch for Dial() [1]: In the last version [2] I have ended with adding the bridge_config and both channels to a data store, which is accessed from a scheduled callback and modifies the call limit. Once you have the data store attached to the channel it is easy to access it from a hook or another thread/app [1] https://issues.asterisk.org/jira/browse/ASTERISK-6175 [2] https://issues.asterisk.org/jira/secure/attachment/40666/ rtcc_trunk_327742.diff -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Ahh... On Thu, Dec 18, 2014 at 1:32 PM, Kaloyan Kovachev kkovac...@varna.net wrote: I meant that for accessing bridge configuration for a Legacy (Dial, Queue, FollowMe) from your other email On 2014-12-18 13:26, Nir Simionovich wrote: In deed, that is interesting - but truly stirs away from ARI - not something that I'm trying to do. On Thu, Dec 18, 2014 at 1:00 PM, Kaloyan Kovachev kkovac...@varna.netwrote: Hi, On 2014-12-18 01:01, Nir Simionovich wrote: Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration in real time? Nir You may take a look at my old RTCC patch for Dial() [1]: In the last version [2] I have ended with adding the bridge_config and both channels to a data store, which is accessed from a scheduled callback and modifies the call limit. Once you have the data store attached to the channel it is easy to access it from a hook or another thread/app [1] https://issues.asterisk.org/jira/browse/ASTERISK-6175 [1] [2] https://issues.asterisk.org/jira/secure/attachment/40666/ rtcc_trunk_327742.diff [2] -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com [3] -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev [4] Links: -- [1] https://issues.asterisk.org/jira/browse/ASTERISK-6175 [2] https://issues.asterisk.org/jira/secure/attachment/40666/ rtcc_trunk_327742.diff [3] http://www.api-digital.com [4] http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Now, this is why I love Open Source - opinions, thoughts and most importantly, acceptance. I can totally see where the general idea is going here, and that is what we all agreed during AstriDevCon this year. On Thu, Dec 18, 2014 at 6:31 PM, Leif Madsen lmad...@thinkingphones.com wrote: On 18 December 2014 at 11:07, Paul Belanger paul.belan...@polybeacon.com wrote: On Thu, Dec 18, 2014 at 1:59 AM, Nir Simionovich nir.simionov...@gmail.com wrote: New question: Do we want to enable legacy features inside ARI? New answer: I don't believe so. I think this issue / question is the hardest thing to understand about ARI. There really isn't any sort of link to existing Asterisk application or features; not yet any ways. Somebody has to build it again a top of ARI. When I first dreamed of using ARI I was looking at it from a configuration management tool mindset. Oh, I could create a new peer in chan_sip over HTTP or let me reconfigure features.conf using ARI. However, as I started playing with it more I found that was not what it did. And, changing it to do something like that doesn't feel like the right approach. Now, that being said. Creating some sort of interface to control sorcery objects, now that would be cool. Having sorcery connect to redis and change key / values directly in redis for sip peers would be hotness. However, I'm not sure I would want to have Asterisk serve up that interface directly. Feels more like an external application would serve up the REST interface into redis, allowing the user to change key/pairs. I also believe, until there are some standard ARI libraries / application (for example app_dial replacement). It will feel like a large task to build anything in ARI, because some of the core application basically need to be written from scratch. And I think this is the main reason people are slow to move to ARI or fearful from dropping the dialplan. Because doing: exten = s,1,NoOp() same = n,Dial(SIP/f...@example.org) is a lot easier then origination a channel over ARI, creating bridges and playing any tones needed using ARI. Easier might not be the right work, more steps required is. I also agree that we do not want to start making ARI start talking to legacy applications. As discussed at AstriDevCon, the push is really to start making Asterisk a media communications platform. The way to do that is to move away from the dialplan centric driven applications and to move to a decentralized model of applications and business logic being separated from Asterisk, and essentially making Asterisk much dumber in terms of the actual business logic and routing logic, and making it a lean mean media communications machine. The way forward sometimes is to stop looking back. Currently both AMI and AGI are still happily co-existant in Asterisk, and should be considered the defacto interface to traditional methods of writing Asterisk business logic (dialplan, etc). When flipping to ARI, it is a different mind set that does take some time to get around. Much like Paul I had my own preconceived notions about what ARI was and was initially disappointed it didn't match what I thought it should have been. However over the last few months of watching what Paul has been doing along with some small side POC stuff to better understand what ARI is intended for, it definitely has become a lot clearer. At the most basic levels, ARI to me is a bridge control interface that allows you to hook channels together while not worrying about transcoding, media characteristics etc. You have two or more channels that may or may not speak the same language, and your external applications stick them together, and Asterisk acts as the universal translator for those channels. By writing all your business logic and controls outside of Asterisk, it makes the API much simpler to interoperate with, and allows great scaling possibilities. Admittedly I'm still a bit naive on a lot of the ARI front, but one thing my gut tells me, is it is a new interface, and should not be confused as a replacement to the legacy (term used loosely) methods of building Asterisk systems. This is one of those situations that I feel avoiding legacy and backwards compatibility with the traditional methods is going to really open up a better realm of possibilities with ARI. If someone truly just needs an HTTP based interface for controlling dialplan and such, I feel a translation application (library) should just be written for AMI and AGI that permits that and has that goal. Overloading what ARI is supposed to be doing is a step backwards in my opinion. -- Leif The Dialplan Is Dead Madsen -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Matt, I think your entire email should be put on the wiki, maybe not in its current format, but the contents are imperative for the future. This is actually the first ever detailed explanation I've ever read as to why ARI shouldn't do all sorts of things - which from an external (none core developer) point of view - would seem reasonable. On Thu, Dec 18, 2014 at 8:38 PM, Matthew Jordan mjor...@digium.com wrote: On Thu, Dec 18, 2014 at 10:31 AM, Leif Madsen lmad...@thinkingphones.com wrote: On 18 December 2014 at 11:07, Paul Belanger paul.belan...@polybeacon.com wrote: On Thu, Dec 18, 2014 at 1:59 AM, Nir Simionovich nir.simionov...@gmail.com wrote: New question: Do we want to enable legacy features inside ARI? New answer: I don't believe so. I think this issue / question is the hardest thing to understand about ARI. There really isn't any sort of link to existing Asterisk application or features; not yet any ways. Somebody has to build it again a top of ARI. When I first dreamed of using ARI I was looking at it from a configuration management tool mindset. Oh, I could create a new peer in chan_sip over HTTP or let me reconfigure features.conf using ARI. However, as I started playing with it more I found that was not what it did. And, changing it to do something like that doesn't feel like the right approach. Now, that being said. Creating some sort of interface to control sorcery objects, now that would be cool. Having sorcery connect to redis and change key / values directly in redis for sip peers would be hotness. However, I'm not sure I would want to have Asterisk serve up that interface directly. Feels more like an external application would serve up the REST interface into redis, allowing the user to change key/pairs. I also believe, until there are some standard ARI libraries / application (for example app_dial replacement). It will feel like a large task to build anything in ARI, because some of the core application basically need to be written from scratch. And I think this is the main reason people are slow to move to ARI or fearful from dropping the dialplan. Because doing: exten = s,1,NoOp() same = n,Dial(SIP/f...@example.org) is a lot easier then origination a channel over ARI, creating bridges and playing any tones needed using ARI. Easier might not be the right work, more steps required is. I also agree that we do not want to start making ARI start talking to legacy applications. As discussed at AstriDevCon, the push is really to start making Asterisk a media communications platform. The way to do that is to move away from the dialplan centric driven applications and to move to a decentralized model of applications and business logic being separated from Asterisk, and essentially making Asterisk much dumber in terms of the actual business logic and routing logic, and making it a lean mean media communications machine. The way forward sometimes is to stop looking back. Currently both AMI and AGI are still happily co-existant in Asterisk, and should be considered the defacto interface to traditional methods of writing Asterisk business logic (dialplan, etc). When flipping to ARI, it is a different mind set that does take some time to get around. Much like Paul I had my own preconceived notions about what ARI was and was initially disappointed it didn't match what I thought it should have been. However over the last few months of watching what Paul has been doing along with some small side POC stuff to better understand what ARI is intended for, it definitely has become a lot clearer. At the most basic levels, ARI to me is a bridge control interface that allows you to hook channels together while not worrying about transcoding, media characteristics etc. You have two or more channels that may or may not speak the same language, and your external applications stick them together, and Asterisk acts as the universal translator for those channels. By writing all your business logic and controls outside of Asterisk, it makes the API much simpler to interoperate with, and allows great scaling possibilities. Admittedly I'm still a bit naive on a lot of the ARI front, but one thing my gut tells me, is it is a new interface, and should not be confused as a replacement to the legacy (term used loosely) methods of building Asterisk systems. This is one of those situations that I feel avoiding legacy and backwards compatibility with the traditional methods is going to really open up a better realm of possibilities with ARI. If someone truly just needs an HTTP based interface for controlling dialplan and such, I feel a translation application (library) should just be written for AMI and AGI that permits that and has that goal. Overloading what ARI is supposed to be doing is a step backwards in my
[asterisk-dev] ARI Extending Existing Feature: bridge control
Hi All, After shipping out my first patch to ARI, I became hungry :-) So, now I've set up a slightly higher goal, adding a much required feature for ARI. I'll describe the problem first, then I have some questions. The Asterisk dial application enables us to limit the duration of the call and play a warning sound. Once this had been set, as far as I know, you can't modify these values externally. When the feature was originally introduced, over 10 years ago, the goal was simple: enable a calling card system to limit the call according to a credit line. As time went by, people realized that this feature is useful, however limited. In today's mobile application era, when a VoIP phone can actually purchase credit while on the actual call, we need a way to control this from an external source. Now, I've started digging into the code, and I've managed to understand that following (feel free to bash me if I'm wrong): 1. The time limits are maintained at the bridge structure, not at the channel - using the ast_bridge_config data structure 2. The ARI bridges GET method only retrieves a list of bridges and their associated channels, not their configurations So, assuming that I'm reading the ast_ari_bridges_list http://doxygen.asterisk.org/trunk/db/d0b/resource__bridges_8c.html#f456b35967dc37f869de264ee800f2b8 function from resouce_bridges.c correctly, we retrieve a snapshot of all active bridges via the snapshots variable (if you can call it that). The output is built by iterating through it. Now, my questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges, then output it via the JSON response? 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration? The floor is now open :-) Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Well, In simple words yes. To be more specific, I'd like to do something like this: 1. Have a simple dialplan that will dialout using the L parameter in Dial application 2. Have ARI bridge list function retrieve not only the list of active bridges, but also their allocated duration timers - if assigned 3. Provide a means via ARI to manipulate the duration timers Nir On Wed, Dec 17, 2014 at 10:37 PM, Paul Belanger paul.belan...@polybeacon.com wrote: On Wed, Dec 17, 2014 at 3:16 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Hi All, After shipping out my first patch to ARI, I became hungry :-) So, now I've set up a slightly higher goal, adding a much required feature for ARI. I'll describe the problem first, then I have some questions. The Asterisk dial application enables us to limit the duration of the call and play a warning sound. Once this had been set, as far as I know, you can't modify these values externally. When the feature was originally introduced, over 10 years ago, the goal was simple: enable a calling card system to limit the call according to a credit line. As time went by, people realized that this feature is useful, however limited. In today's mobile application era, when a VoIP phone can actually purchase credit while on the actual call, we need a way to control this from an external source. Now, I've started digging into the code, and I've managed to understand that following (feel free to bash me if I'm wrong): 1. The time limits are maintained at the bridge structure, not at the channel - using the ast_bridge_config data structure 2. The ARI bridges GET method only retrieves a list of bridges and their associated channels, not their configurations So, assuming that I'm reading the ast_ari_bridges_list function from resouce_bridges.c correctly, we retrieve a snapshot of all active bridges via the snapshots variable (if you can call it that). The output is built by iterating through it. Now, my questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges, then output it via the JSON response? 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration? The floor is now open :-) I am a little confused what you are asking. You want to add some sort of lifetime support to bridge within asterisk, using ARI? -- Paul Belanger | PolyBeacon, Inc. Jabber: paul.belan...@polybeacon.com | IRC: pabelanger (Freenode) Github: https://github.com/pabelanger | Twitter: https://twitter.com/pabelanger -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Ok, I'll start with this - I agree with the both of you, ARI is the right way to go. However, when I look at ARI, I see somewhat of a Hybrid. When I say hybrid I mean, a tool that enables me to do stuff, both inside and outside of the Stasis construct. Example, ARI provides a channels API, enabling you to originate a call. If ARI was only about stasis, why did we enable the classic application/extension, we could have easily just said: oh, originate the call and dump it into a Stasis app - but that didn't happen. Instead, you put the call into a dialplan or an application, which in turn, will call the Stasis app (if truly required). My point is this, if the ability exists and can be added, why not? It doesn't break anything that's already in there, it adds much needed functionality and it makes ARI richer in comparison to its predecessor AMI, which people still have a hard time figuring out why they should move to ARI. This kind of feature can be a tipping point. My 2c on the matter. On Wed, Dec 17, 2014 at 11:04 PM, Phil Mickelson p...@cbasoftware.com wrote: I agree with Paul 100%. Given my experience with ARI over the last year and how easy it is to create these apps I would think you could avoid the dialplan completely and easily create a routine to do exactly what you want. 1. You would know when the call started and was connected. 2. You can easily play a sound, any sound, to either end of the connection or to both. 3. You can disconnect the call when you want. 4. I'm not sure given your requirements but you could even allow the caller (or callee) to put funds in their account to allow for more time. ARI is the way to go! IMHO. Phil M On Wed, Dec 17, 2014 at 3:58 PM, Paul Belanger paul.belan...@polybeacon.com wrote: On Wed, Dec 17, 2014 at 3:46 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Well, In simple words yes. To be more specific, I'd like to do something like this: 1. Have a simple dialplan that will dialout using the L parameter in Dial application 2. Have ARI bridge list function retrieve not only the list of active bridges, but also their allocated duration timers - if assigned 3. Provide a means via ARI to manipulate the duration timers Correct me if I am wrong, but I don't think this will work. Any bridge or channel from your dialplan would not be controlled by stasis. And since it is not in stasis, ARI cannot modify it. I think the general idea was to build a new app_dial atop of ARI, then your application would provide that functionality to control the L parameter. -- Paul Belanger | PolyBeacon, Inc. Jabber: paul.belan...@polybeacon.com | IRC: pabelanger (Freenode) Github: https://github.com/pabelanger | Twitter: https://twitter.com/pabelanger -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
Phil, It is one thing to say: I'm interested in advancement, it is completely a different thing to say: I don't give a damn about backward compatibility. Asterisk is a huge community around the world, shifting the community from one methodology of thought to another takes time. During that time of transition, we must think about the fact that some (if not many) will still stick to the old ways. For example, it took over 3 years to deprecate app_meetme - do you honestly believe it will take the same time to deprecate app_dial? I suspect that the answer will be - app_dial will always be there. We may not like it, but still, it is the simplest way of getting a call out of Asterisk. Like it or not, the dialplan will still be here, even 5 years or 10 years from now - it's the most basic form. In the mean time, we must provide functionality and robustness - if we don't, we'll become irrelevant. On Wed, Dec 17, 2014 at 11:16 PM, Phil Mickelson p...@cbasoftware.com wrote: Nir, I agree with you about wondering why does the call go through the dialplan. Perhaps someone could answer that? Or, perhaps give us some idea if this will change? In my case, the connection to the dialplan is literally three lines. The minimum required. I never return. Phil M On Wed, Dec 17, 2014 at 4:12 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Ok, I'll start with this - I agree with the both of you, ARI is the right way to go. However, when I look at ARI, I see somewhat of a Hybrid. When I say hybrid I mean, a tool that enables me to do stuff, both inside and outside of the Stasis construct. Example, ARI provides a channels API, enabling you to originate a call. If ARI was only about stasis, why did we enable the classic application/extension, we could have easily just said: oh, originate the call and dump it into a Stasis app - but that didn't happen. Instead, you put the call into a dialplan or an application, which in turn, will call the Stasis app (if truly required). My point is this, if the ability exists and can be added, why not? It doesn't break anything that's already in there, it adds much needed functionality and it makes ARI richer in comparison to its predecessor AMI, which people still have a hard time figuring out why they should move to ARI. This kind of feature can be a tipping point. My 2c on the matter. On Wed, Dec 17, 2014 at 11:04 PM, Phil Mickelson p...@cbasoftware.com wrote: I agree with Paul 100%. Given my experience with ARI over the last year and how easy it is to create these apps I would think you could avoid the dialplan completely and easily create a routine to do exactly what you want. 1. You would know when the call started and was connected. 2. You can easily play a sound, any sound, to either end of the connection or to both. 3. You can disconnect the call when you want. 4. I'm not sure given your requirements but you could even allow the caller (or callee) to put funds in their account to allow for more time. ARI is the way to go! IMHO. Phil M On Wed, Dec 17, 2014 at 3:58 PM, Paul Belanger paul.belan...@polybeacon.com wrote: On Wed, Dec 17, 2014 at 3:46 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Well, In simple words yes. To be more specific, I'd like to do something like this: 1. Have a simple dialplan that will dialout using the L parameter in Dial application 2. Have ARI bridge list function retrieve not only the list of active bridges, but also their allocated duration timers - if assigned 3. Provide a means via ARI to manipulate the duration timers Correct me if I am wrong, but I don't think this will work. Any bridge or channel from your dialplan would not be controlled by stasis. And since it is not in stasis, ARI cannot modify it. I think the general idea was to build a new app_dial atop of ARI, then your application would provide that functionality to control the L parameter. -- Paul Belanger | PolyBeacon, Inc. Jabber: paul.belan...@polybeacon.com | IRC: pabelanger (Freenode) Github: https://github.com/pabelanger | Twitter: https://twitter.com/pabelanger -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
While I agree with the both of you - I still don't see a reason why not to do it. I'll tell you how I see it - I'm looking at this kind of feature from a cost/performance/benefit ratio. Does this kind of feature enable a new benefit that didn't exist previously - yes. Does it impact the overall performance of Asterisk - probably not. Is it a low hanging fruit to develop? - I can't answer that yet Would it take a longer time to develop a bridge manager externally, or develop the feature? - I can't answer that yet Currently, I'm trying to evaluate the task - from a technical/operational/financial reasoning. If Tech/Ops make sense, but Finance doesn't - it ain't worth doing. Let's try and discuss for a minute what it would actually take in order to do this, instead of debating if we should or shouldn't. Yes, maybe you'll say - in order to do this, you'll need to do 1, 2, 3, 4 - and maybe I'll: cool, I'll have a go at it, and maybe it will go in, and maybe it will not - but that's open source. Open Source means, we work collaboratively, we explore things and keep our minds open to ideas and suggestions. When Leonid and I created PHPARI about 4 months ago, we created it out of a need for a proper wrapper that will fit nicely into our projects. I'm currently aware of 10 different people using it in production - and some of them already contributed code and structural changes to it. One of the things people asked us for an OAuth based ARI proxy, because they like using tokens. Does ARI truly need something like that - not really. Does ARI need better security - for sure. Will we shot down the idea down? not at this point. We first examine what it will take to do it, technically, then financially - then we decide. Damn, this is turning into another theological discussion - not really to be part of this list. Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration in real time? Nir On Thu, Dec 18, 2014 at 12:33 AM, Phil Mickelson p...@cbasoftware.com wrote: Nir, I don't disagree with you at all. All I'd like is another way. The current methods don't have to disappear. It's not either or. However, there's also no reason not to explore new methods, is there? Phil M On Wed, Dec 17, 2014 at 5:29 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Phil, It is one thing to say: I'm interested in advancement, it is completely a different thing to say: I don't give a damn about backward compatibility. Asterisk is a huge community around the world, shifting the community from one methodology of thought to another takes time. During that time of transition, we must think about the fact that some (if not many) will still stick to the old ways. For example, it took over 3 years to deprecate app_meetme - do you honestly believe it will take the same time to deprecate app_dial? I suspect that the answer will be - app_dial will always be there. We may not like it, but still, it is the simplest way of getting a call out of Asterisk. Like it or not, the dialplan will still be here, even 5 years or 10 years from now - it's the most basic form. In the mean time, we must provide functionality and robustness - if we don't, we'll become irrelevant. On Wed, Dec 17, 2014 at 11:16 PM, Phil Mickelson p...@cbasoftware.com wrote: Nir, I agree with you about wondering why does the call go through the dialplan. Perhaps someone could answer that? Or, perhaps give us some idea if this will change? In my case, the connection to the dialplan is literally three lines. The minimum required. I never return. Phil M On Wed, Dec 17, 2014 at 4:12 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Ok, I'll start with this - I agree with the both of you, ARI is the right way to go. However, when I look at ARI, I see somewhat of a Hybrid. When I say hybrid I mean, a tool that enables me to do stuff, both inside and outside of the Stasis construct. Example, ARI provides a channels API, enabling you to originate a call. If ARI was only about stasis, why did we enable the classic application/extension, we could have easily just said: oh, originate the call and dump it into a Stasis app - but that didn't happen. Instead, you put the call into a dialplan or an application, which in turn, will call the Stasis app (if truly required). My point is this, if the ability exists and can be added, why not? It doesn't break anything that's already in there, it adds much needed functionality and it makes ARI richer in comparison to its predecessor AMI, which people still have a hard time figuring out why they should move to ARI. This kind of feature can be a tipping point. My 2c on the matter. On Wed, Dec 17, 2014 at 11:04 PM
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
I see your point now - that makes more sense. It was fairly clear to me that ast_bridge_config is somewhat of a legacy data structure, but I was assuming that in some respect it was used in ARI as well. What your actually saying is that ARI bypasses all of the legacy stuff and interacts directly with the bridge core, and that's why it doesn't support that data structure. So technically, accessing bridge configuration for a Legacy (Dial, Queue, FollowMe) is a fairly complex task, as they don't see the same information space. This now raises a slightly off-topic discussion - wouldn't it beneficial to provide some form of ARI access to some of the legacy stuff as well? On one hand, we don't really want to do that - as we're trying to push people into proper usage of ARI and Asterisk, however, my heart goes out to the legacy stuff, that if we don't cater to, will become a caveat. I will explain. About 6 years I've built a large scale Asterisk based dialer for a customer. When I say large scale, I meant humongous in 2008 terms - 2500 concurrent calls. Now, that dialer relied heavily on AMI (of course) and AGI. It was originally built on Asterisk 1.6. Recently, the customer came back to me, asking me to upgrade their system to Asterisk 11, specifically for security reasons. I then looked at the code, realizing that the customer had wrote some stuff using MeetMe and some of the deprecated app_queue stuff. I indicated to them that their legacy code should be migrated as well. Customer looked at it, realized that apart from upgrading Asterisk, they will have about 6 months worth of coding to migrate their stuff to the new constructs - the entire project caved. We just upgraded to latest version of the 1.6 branch, and the customer is now evaluating 1.8 - in other words, not supporting the legacy stuff in some respect will at some point bite us in the ass. I realize this is very much a leadership question, not a technical nor operational. New question: Do we want to enable legacy features inside ARI? Nir On Thu, Dec 18, 2014 at 1:26 AM, Mark Michelson mmichel...@digium.com wrote: On 12/17/2014 05:01 PM, Nir Simionovich wrote: snip Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? ast_bridge_config is not used at all for Stasis bridges. ast_bridge_config describes bridge features that basic bridges use based on Dial(), Queue(), and FollowMe() features. For instance, when Dial is called with the 't' and 'T' options, the ast_bridge_config indicates that the caller and callee can perform DTMF transfers based on features.conf settings. For Stasis bridges, the idea of using ast_bridge_config does not make sense for several reasons 1) Stasis applications are intended to be fully in control of everything that happens in the bridge. There should be nothing that the participants should be able to do independently of the Stasis application to change the bridge. 2) ast_bridge_config relies heavily on the concept that a bridge contains exactly two participants. For basic bridges, this assumption holds. Stasis bridges can have any number of participants, though, so this structure doesn't work well. 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration in real time? The configuration of a Stasis bridge is defined by the Stasis application that creates and manipulates the bridge. It is up to the Stasis application to determine properties of the bridge and manipulate the bridge based on those properties. Whether you can manipulate this in real time is based on the programming language and runtime model of the ARI library you use. Nir -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] ARI Extending Existing Feature: bridge control
One more thing - per your recommendations, I'm trying to re-implement app_dial using ARI. Now, if I read you all right, the process should be: 1. Get a call into Asterisk from an external phone 2. Create a new bridge 3. Put the call into the newly created bridge 4. Originate a new call 5. Put the new call into the existing bridge So, 1,2,3 work just fine - then you get to 4. According to the docs, I can originate a channel with only the endpoint defined. However, that doesn't seem to work: T 178.62.127.227:44938 - 178.62.127.227:8088 [AP] POST /ari/channels HTTP/1.1. Authorization: Basic dGVzdDp0ZXN0. Host: 178.62.127.227:8088. Content-Length: 85. Accept: application/json. Content-Type: application/json. . {endpoint:Local\/1000@demo ,channelId:participant,variables:{var1:var1}} T 178.62.127.227:8088 - 178.62.127.227:44938 [AP] HTTP/1.1 400 Bad Request. Server: Asterisk/SVN-trunk-r429683M. Date: Thu, 18 Dec 2014 07:41:59 GMT. Cache-Control: no-cache, no-store. Content-type: application/json. Content-Length: 61. . T 178.62.127.227:8088 - 178.62.127.227:44938 [AP] { message: Application or extension must be specified } Am I missing something here? or is this a bug? On Thu, Dec 18, 2014 at 8:59 AM, Nir Simionovich nir.simionov...@gmail.com wrote: I see your point now - that makes more sense. It was fairly clear to me that ast_bridge_config is somewhat of a legacy data structure, but I was assuming that in some respect it was used in ARI as well. What your actually saying is that ARI bypasses all of the legacy stuff and interacts directly with the bridge core, and that's why it doesn't support that data structure. So technically, accessing bridge configuration for a Legacy (Dial, Queue, FollowMe) is a fairly complex task, as they don't see the same information space. This now raises a slightly off-topic discussion - wouldn't it beneficial to provide some form of ARI access to some of the legacy stuff as well? On one hand, we don't really want to do that - as we're trying to push people into proper usage of ARI and Asterisk, however, my heart goes out to the legacy stuff, that if we don't cater to, will become a caveat. I will explain. About 6 years I've built a large scale Asterisk based dialer for a customer. When I say large scale, I meant humongous in 2008 terms - 2500 concurrent calls. Now, that dialer relied heavily on AMI (of course) and AGI. It was originally built on Asterisk 1.6. Recently, the customer came back to me, asking me to upgrade their system to Asterisk 11, specifically for security reasons. I then looked at the code, realizing that the customer had wrote some stuff using MeetMe and some of the deprecated app_queue stuff. I indicated to them that their legacy code should be migrated as well. Customer looked at it, realized that apart from upgrading Asterisk, they will have about 6 months worth of coding to migrate their stuff to the new constructs - the entire project caved. We just upgraded to latest version of the 1.6 branch, and the customer is now evaluating 1.8 - in other words, not supporting the legacy stuff in some respect will at some point bite us in the ass. I realize this is very much a leadership question, not a technical nor operational. New question: Do we want to enable legacy features inside ARI? Nir On Thu, Dec 18, 2014 at 1:26 AM, Mark Michelson mmichel...@digium.com wrote: On 12/17/2014 05:01 PM, Nir Simionovich wrote: snip Let's try to stick to the tech for now and answer the first two questions: 1. Is there a way to obtain the information in ast_bridge_config for each of the iterated bridges? ast_bridge_config is not used at all for Stasis bridges. ast_bridge_config describes bridge features that basic bridges use based on Dial(), Queue(), and FollowMe() features. For instance, when Dial is called with the 't' and 'T' options, the ast_bridge_config indicates that the caller and callee can perform DTMF transfers based on features.conf settings. For Stasis bridges, the idea of using ast_bridge_config does not make sense for several reasons 1) Stasis applications are intended to be fully in control of everything that happens in the bridge. There should be nothing that the participants should be able to do independently of the Stasis application to change the bridge. 2) ast_bridge_config relies heavily on the concept that a bridge contains exactly two participants. For basic bridges, this assumption holds. Stasis bridges can have any number of participants, though, so this structure doesn't work well. 2. Is there a way to manipulate the configuration of the bridge, via modifying the associated bridge configuration in real time? The configuration of a Stasis bridge is defined by the Stasis application that creates and manipulates the bridge. It is up to the Stasis application to determine properties of the bridge and manipulate the bridge based on those properties. Whether
[asterisk-dev] Asterisk MoS and RTCP data [pardon the directness and language :-)]
Hi All, So, if there is one thing I really like about PJSIP and WebRTC (specifically with mobile) is the ability to produce meaningful MoS scoring for calls in real time. Now, Asterisk doesn't have that capability, at least, not during the actual call - but only after. In itself, not an issue - it's good enough. If you were to look up the calculation for how to get your MoS, the following is the most common algorithm that I've found: effectiveLatency = rttMs + averageJitterMs * 2 + 10 R = 93.2 - (effectiveLatency/40) R = R - (fractionLost * 2.5) MOS = 1 + (0.035)*R+(0.07)*R*(R-60)*(100-R) My primary question is this: I can't find what rttMs in Asterisk terminology is. There is an rtt value, but its value is several orders of magnitude than I would expect. So, I thought it may be in microSec, not miliSec - but that doesn't make much sense either. So, on one hand I have a shit load of information, on the other hand, it is formatted in a very hard way to manage. Any idea how we can make this better? On another notion, I think that adding RTCP reading capabilities to the channels module in ARI may probe extremely useful. Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Queue discussion at Astricon
I'm in. On Oct 17, 2014 10:08 PM, Leif Madsen lmad...@thinkingphones.com wrote: Your encouragement is noted and discarded. See you all at AstriCon! :) On 17 October 2014 16:00, Billy Chia bc...@digium.com wrote: There will actually be an opportunity to grab a beer at the Hackathon Reception in the same room as AstriDevCon immediately following AstriDevCon on Tuesday (Cherry Lounge 5PM - 7PM) (and as always we encourage people to partake responsibly during opportunities where beers will be offered at AstriCon) More info: http://astriconhackathon.challengepost.com/ -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
Re: [asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
Ok, I'm now looking into implementing a similar thing with the continue request. The main issue that I'm seeing is this - the ast_findlabel_extension function, requires a channel and a callerid. I've tried ascertaining how i can obtain that information from within the ast_ari_channels_continue_in_dialplan function, but had failed to do so. Any pointers? Nir S On Mon, Oct 13, 2014 at 1:52 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Ok, I've opened an issue on JIRA ( https://issues.asterisk.org/jira/browse/ASTERISK-24412) with a small patch submission that will correct the issue at hand - for the originate requests at this point. Basically, before moving forward, I'd like to make sure I'm not off base with the implementation - and that I've done it right. It's the first time I'm touching that side of the code, so I would appreciate the assistance and feedback. Cheers, Nir S On Sun, Oct 12, 2014 at 12:46 AM, Nir Simionovich nir.simionov...@gmail.com wrote: So, here's what I thought - instead of modifying the existing JSON, changing from int to string in priority, I think the better way would be to add a new variable - label. If defined, it will supersede the priority. Judging from what I see in the code, the arguments from the JSON POST are contained in the *args buffer, so I should now have an args-label in there. So, if I'm not mistaken, the following should translate from the label to the priority:ast_find_label_extension. So, I would need to add a label argument to ari_channels_handle_originate_with_id. However, and correct me if I'm wrong, it would seem to me that the actual channel origination is performed using 'ast_pbx_outgoing_exten', and that would return back the 'ast_channel' structure back to *chan in ari_channels_handle_originate_with_id. Makes the entire thing kind'a tricky - no? On Fri, Oct 10, 2014 at 9:48 PM, Scott Griepentrog sgriepent...@digium.com wrote: Yes, that's the function that converts a label to a priority. You should be able to use that to enable label lookup from the rest api. On Fri, Oct 10, 2014 at 1:38 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Well, Can I assume you are referring to the following section in the code (pbx.c): 12371if (sscanf(pri, %30d, ipri) != 1) {12372 ipri = ast_findlabel_extension http://doxygen.asterisk.org/trunk/db/de0/pbx_8h.html#0be9518646cf9aca4878b313cc02e901(chan, context ? context : ast_channel_context http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#582dee4d5ea9b2ff6f309f0c5239f6bd(chan),12373 exten ? exten : ast_channel_exten http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#a8b52fbc8168e939bc5553502367d46a(chan), pri,12374 S_COR http://doxygen.asterisk.org/trunk/d6/d90/strings_8h.html#38a896048b2ca84076864505f0aa8f01(ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.valid, ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.str, NULL http://doxygen.asterisk.org/trunk/dc/d7f/resample_8c.html#070d2ce7b6bb7e5c05602aa8c308d0c4));12375 if (ipri 1) {12376 ast_log http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#cb8ee436a0c80c66dfcdec6b6bcc6196(LOG_WARNING http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#df4476a6a4ea6c74231c826e899d7189, Priority '%s' must be a number 0, or valid label\n, pri);12377 return -1;12378 } else12379 mode = 0;12380} If I read it correctly, line 12372 will translate a label to a priority number. Am I on the right track? Nir On Thu, Oct 9, 2014 at 6:39 PM, Scott Griepentrog sgriepent...@digium.com wrote: If you want to add the label option, my first thought would be to recommend you look at the implementation of app GoTo() for the api to lookup/specify a label. Then you would need to modify the channels.json in rest_api/api-docs to specify the new/different parameters to the rest methods, do a make ari-stubs to rebuild the rest handlers, and finally make the change to the method implementation in res/ari/resource_channels.c. On Thu, Oct 9, 2014 at 4:56 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Forgive me father for I have sinned, it has been over 25 years since I've used GWBasic/Basica - please spare thy humble servant from doom, as I repent my sins and go back in time 25 years :-) Now seriously, this may work nicely for classic dialplan, but for AEL that's a no go - don't even want to think about LUA at this point. Any prospects in regards to this development? I've hadn't ever dug into this part of the code, but, how does Asterisk keep the dialplan in memory? is it a simple data
Re: [asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
Ok, I've opened an issue on JIRA ( https://issues.asterisk.org/jira/browse/ASTERISK-24412) with a small patch submission that will correct the issue at hand - for the originate requests at this point. Basically, before moving forward, I'd like to make sure I'm not off base with the implementation - and that I've done it right. It's the first time I'm touching that side of the code, so I would appreciate the assistance and feedback. Cheers, Nir S On Sun, Oct 12, 2014 at 12:46 AM, Nir Simionovich nir.simionov...@gmail.com wrote: So, here's what I thought - instead of modifying the existing JSON, changing from int to string in priority, I think the better way would be to add a new variable - label. If defined, it will supersede the priority. Judging from what I see in the code, the arguments from the JSON POST are contained in the *args buffer, so I should now have an args-label in there. So, if I'm not mistaken, the following should translate from the label to the priority:ast_find_label_extension. So, I would need to add a label argument to ari_channels_handle_originate_with_id. However, and correct me if I'm wrong, it would seem to me that the actual channel origination is performed using 'ast_pbx_outgoing_exten', and that would return back the 'ast_channel' structure back to *chan in ari_channels_handle_originate_with_id. Makes the entire thing kind'a tricky - no? On Fri, Oct 10, 2014 at 9:48 PM, Scott Griepentrog sgriepent...@digium.com wrote: Yes, that's the function that converts a label to a priority. You should be able to use that to enable label lookup from the rest api. On Fri, Oct 10, 2014 at 1:38 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Well, Can I assume you are referring to the following section in the code (pbx.c): 12371if (sscanf(pri, %30d, ipri) != 1) {12372 ipri = ast_findlabel_extension http://doxygen.asterisk.org/trunk/db/de0/pbx_8h.html#0be9518646cf9aca4878b313cc02e901(chan, context ? context : ast_channel_context http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#582dee4d5ea9b2ff6f309f0c5239f6bd(chan),12373 exten ? exten : ast_channel_exten http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#a8b52fbc8168e939bc5553502367d46a(chan), pri,12374 S_COR http://doxygen.asterisk.org/trunk/d6/d90/strings_8h.html#38a896048b2ca84076864505f0aa8f01(ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.valid, ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.str, NULL http://doxygen.asterisk.org/trunk/dc/d7f/resample_8c.html#070d2ce7b6bb7e5c05602aa8c308d0c4));12375 if (ipri 1) {12376 ast_log http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#cb8ee436a0c80c66dfcdec6b6bcc6196(LOG_WARNING http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#df4476a6a4ea6c74231c826e899d7189, Priority '%s' must be a number 0, or valid label\n, pri);12377 return -1;12378 } else12379 mode = 0;12380} If I read it correctly, line 12372 will translate a label to a priority number. Am I on the right track? Nir On Thu, Oct 9, 2014 at 6:39 PM, Scott Griepentrog sgriepent...@digium.com wrote: If you want to add the label option, my first thought would be to recommend you look at the implementation of app GoTo() for the api to lookup/specify a label. Then you would need to modify the channels.json in rest_api/api-docs to specify the new/different parameters to the rest methods, do a make ari-stubs to rebuild the rest handlers, and finally make the change to the method implementation in res/ari/resource_channels.c. On Thu, Oct 9, 2014 at 4:56 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Forgive me father for I have sinned, it has been over 25 years since I've used GWBasic/Basica - please spare thy humble servant from doom, as I repent my sins and go back in time 25 years :-) Now seriously, this may work nicely for classic dialplan, but for AEL that's a no go - don't even want to think about LUA at this point. Any prospects in regards to this development? I've hadn't ever dug into this part of the code, but, how does Asterisk keep the dialplan in memory? is it a simple data structure? how do labels are manifested in that data structure? Point me in the right direction for the information (apart from the code itself) - and I'll have a look at it. Nir S On Wed, Oct 8, 2014 at 9:01 PM, Scott Griepentrog sgriepent...@digium.com wrote: The only two ARI methods I'm seeing where a priority is used are: 1) Channel origination (optionally sending channel to dialplan instead of into a Stasis app) 2) Channel continue (jump
Re: [asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
So, here's what I thought - instead of modifying the existing JSON, changing from int to string in priority, I think the better way would be to add a new variable - label. If defined, it will supersede the priority. Judging from what I see in the code, the arguments from the JSON POST are contained in the *args buffer, so I should now have an args-label in there. So, if I'm not mistaken, the following should translate from the label to the priority:ast_find_label_extension. So, I would need to add a label argument to ari_channels_handle_originate_with_id. However, and correct me if I'm wrong, it would seem to me that the actual channel origination is performed using 'ast_pbx_outgoing_exten', and that would return back the 'ast_channel' structure back to *chan in ari_channels_handle_originate_with_id. Makes the entire thing kind'a tricky - no? On Fri, Oct 10, 2014 at 9:48 PM, Scott Griepentrog sgriepent...@digium.com wrote: Yes, that's the function that converts a label to a priority. You should be able to use that to enable label lookup from the rest api. On Fri, Oct 10, 2014 at 1:38 PM, Nir Simionovich nir.simionov...@gmail.com wrote: Well, Can I assume you are referring to the following section in the code (pbx.c): 12371if (sscanf(pri, %30d, ipri) != 1) {12372 ipri = ast_findlabel_extension http://doxygen.asterisk.org/trunk/db/de0/pbx_8h.html#0be9518646cf9aca4878b313cc02e901(chan, context ? context : ast_channel_context http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#582dee4d5ea9b2ff6f309f0c5239f6bd(chan),12373 exten ? exten : ast_channel_exten http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#a8b52fbc8168e939bc5553502367d46a(chan), pri,12374 S_COR http://doxygen.asterisk.org/trunk/d6/d90/strings_8h.html#38a896048b2ca84076864505f0aa8f01(ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.valid, ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.str, NULL http://doxygen.asterisk.org/trunk/dc/d7f/resample_8c.html#070d2ce7b6bb7e5c05602aa8c308d0c4));12375 if (ipri 1) {12376 ast_log http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#cb8ee436a0c80c66dfcdec6b6bcc6196(LOG_WARNING http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#df4476a6a4ea6c74231c826e899d7189, Priority '%s' must be a number 0, or valid label\n, pri);12377 return -1;12378 } else12379 mode = 0;12380} If I read it correctly, line 12372 will translate a label to a priority number. Am I on the right track? Nir On Thu, Oct 9, 2014 at 6:39 PM, Scott Griepentrog sgriepent...@digium.com wrote: If you want to add the label option, my first thought would be to recommend you look at the implementation of app GoTo() for the api to lookup/specify a label. Then you would need to modify the channels.json in rest_api/api-docs to specify the new/different parameters to the rest methods, do a make ari-stubs to rebuild the rest handlers, and finally make the change to the method implementation in res/ari/resource_channels.c. On Thu, Oct 9, 2014 at 4:56 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Forgive me father for I have sinned, it has been over 25 years since I've used GWBasic/Basica - please spare thy humble servant from doom, as I repent my sins and go back in time 25 years :-) Now seriously, this may work nicely for classic dialplan, but for AEL that's a no go - don't even want to think about LUA at this point. Any prospects in regards to this development? I've hadn't ever dug into this part of the code, but, how does Asterisk keep the dialplan in memory? is it a simple data structure? how do labels are manifested in that data structure? Point me in the right direction for the information (apart from the code itself) - and I'll have a look at it. Nir S On Wed, Oct 8, 2014 at 9:01 PM, Scott Griepentrog sgriepent...@digium.com wrote: The only two ARI methods I'm seeing where a priority is used are: 1) Channel origination (optionally sending channel to dialplan instead of into a Stasis app) 2) Channel continue (jump out of application into a specific point in dialplan) And yes, you are correct in pointing out that the continue is using an int rather than a long, which is clearly a consistency mistake in the API. In both cases, the priority is given as a part of typical context/extension/priority method of addressing where exactly in the dialplan you want to send the channel to. The most common scenario is to have a priority 1 as the starting point. The other numbers (using same = n) are then sequential but arbitrary, and it is generally not necessary to know
Re: [asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
Well, Can I assume you are referring to the following section in the code (pbx.c): 12371if (sscanf(pri, %30d, ipri) != 1) {12372 ipri = ast_findlabel_extension http://doxygen.asterisk.org/trunk/db/de0/pbx_8h.html#0be9518646cf9aca4878b313cc02e901(chan, context ? context : ast_channel_context http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#582dee4d5ea9b2ff6f309f0c5239f6bd(chan),12373 exten ? exten : ast_channel_exten http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#a8b52fbc8168e939bc5553502367d46a(chan), pri,12374 S_COR http://doxygen.asterisk.org/trunk/d6/d90/strings_8h.html#38a896048b2ca84076864505f0aa8f01(ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.valid, ast_channel_caller http://doxygen.asterisk.org/trunk/d5/d7b/channel_8h.html#c2dc872b606534943c98304aed841b34(chan)-id.number http://doxygen.asterisk.org/trunk/d6/d49/structnumber.html.str, NULL http://doxygen.asterisk.org/trunk/dc/d7f/resample_8c.html#070d2ce7b6bb7e5c05602aa8c308d0c4));12375 if (ipri 1) {12376 ast_log http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#cb8ee436a0c80c66dfcdec6b6bcc6196(LOG_WARNING http://doxygen.asterisk.org/trunk/d1/d8c/logger_8h.html#df4476a6a4ea6c74231c826e899d7189, Priority '%s' must be a number 0, or valid label\n, pri);12377 return -1;12378 } else12379 mode = 0;12380} If I read it correctly, line 12372 will translate a label to a priority number. Am I on the right track? Nir On Thu, Oct 9, 2014 at 6:39 PM, Scott Griepentrog sgriepent...@digium.com wrote: If you want to add the label option, my first thought would be to recommend you look at the implementation of app GoTo() for the api to lookup/specify a label. Then you would need to modify the channels.json in rest_api/api-docs to specify the new/different parameters to the rest methods, do a make ari-stubs to rebuild the rest handlers, and finally make the change to the method implementation in res/ari/resource_channels.c. On Thu, Oct 9, 2014 at 4:56 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Forgive me father for I have sinned, it has been over 25 years since I've used GWBasic/Basica - please spare thy humble servant from doom, as I repent my sins and go back in time 25 years :-) Now seriously, this may work nicely for classic dialplan, but for AEL that's a no go - don't even want to think about LUA at this point. Any prospects in regards to this development? I've hadn't ever dug into this part of the code, but, how does Asterisk keep the dialplan in memory? is it a simple data structure? how do labels are manifested in that data structure? Point me in the right direction for the information (apart from the code itself) - and I'll have a look at it. Nir S On Wed, Oct 8, 2014 at 9:01 PM, Scott Griepentrog sgriepent...@digium.com wrote: The only two ARI methods I'm seeing where a priority is used are: 1) Channel origination (optionally sending channel to dialplan instead of into a Stasis app) 2) Channel continue (jump out of application into a specific point in dialplan) And yes, you are correct in pointing out that the continue is using an int rather than a long, which is clearly a consistency mistake in the API. In both cases, the priority is given as a part of typical context/extension/priority method of addressing where exactly in the dialplan you want to send the channel to. The most common scenario is to have a priority 1 as the starting point. The other numbers (using same = n) are then sequential but arbitrary, and it is generally not necessary to know what they actually are to jump to them directly. As you point out, labels in dialplan are a convenient way of allowing dialplan execution to jump or goto a specific point without needing to know the actual priority number. Unfortunately, the implementation in ARI does not (currently) allow for a label to be specified. This is a limitation that should probably be fixed - possibly a topic of discussion for Astridevcon. For a workaround, I would suggest using arbitrarily large priorities to jump to the correct label where this functionality is needed. For example: exten = _x.,1,Answer() same = n,GoToIf($[${GOTTAGONOW} = 1]?louie) same = n,Playback(tt-monkeys) same = n,Hangup() same = n(louie),Playback(lyrics-louie-louie) same = n,Hangup() exten = _x.,10001,GoTo(louie) On Wed, Oct 8, 2014 at 8:33 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Hi Guys, While working on PHPARI, I've come to a realization that the channels REST API has a slight issue - primarily, its usage of the priority member in the REST API. Currently, the specification states that priority is either int or long (depending on the request). The problem with that is for someone
Re: [asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
Forgive me father for I have sinned, it has been over 25 years since I've used GWBasic/Basica - please spare thy humble servant from doom, as I repent my sins and go back in time 25 years :-) Now seriously, this may work nicely for classic dialplan, but for AEL that's a no go - don't even want to think about LUA at this point. Any prospects in regards to this development? I've hadn't ever dug into this part of the code, but, how does Asterisk keep the dialplan in memory? is it a simple data structure? how do labels are manifested in that data structure? Point me in the right direction for the information (apart from the code itself) - and I'll have a look at it. Nir S On Wed, Oct 8, 2014 at 9:01 PM, Scott Griepentrog sgriepent...@digium.com wrote: The only two ARI methods I'm seeing where a priority is used are: 1) Channel origination (optionally sending channel to dialplan instead of into a Stasis app) 2) Channel continue (jump out of application into a specific point in dialplan) And yes, you are correct in pointing out that the continue is using an int rather than a long, which is clearly a consistency mistake in the API. In both cases, the priority is given as a part of typical context/extension/priority method of addressing where exactly in the dialplan you want to send the channel to. The most common scenario is to have a priority 1 as the starting point. The other numbers (using same = n) are then sequential but arbitrary, and it is generally not necessary to know what they actually are to jump to them directly. As you point out, labels in dialplan are a convenient way of allowing dialplan execution to jump or goto a specific point without needing to know the actual priority number. Unfortunately, the implementation in ARI does not (currently) allow for a label to be specified. This is a limitation that should probably be fixed - possibly a topic of discussion for Astridevcon. For a workaround, I would suggest using arbitrarily large priorities to jump to the correct label where this functionality is needed. For example: exten = _x.,1,Answer() same = n,GoToIf($[${GOTTAGONOW} = 1]?louie) same = n,Playback(tt-monkeys) same = n,Hangup() same = n(louie),Playback(lyrics-louie-louie) same = n,Hangup() exten = _x.,10001,GoTo(louie) On Wed, Oct 8, 2014 at 8:33 AM, Nir Simionovich nir.simionov...@gmail.com wrote: Hi Guys, While working on PHPARI, I've come to a realization that the channels REST API has a slight issue - primarily, its usage of the priority member in the REST API. Currently, the specification states that priority is either int or long (depending on the request). The problem with that is for someone like myself, who codes dialplan in AEL or using the same = n, or the exten = _X.,n, methodology - we have no visibility of priority numbers - we use labels. I'm not that familiar with the ARI part of the Asterisk code yet, as I'm focused on how to actually work with it, but this is somewhat of a show stopper in my book, as all my existing code relies heavily on label usage. Btw, I tried pushing a label into the REST interface, got a 500 error - which means it's designed to work with numbers and not labels. Regards, Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- [image: Digium logo] Scott Griepentrog Digium, Inc · Software Developer 445 Jan Davis Drive NW · Huntsville, AL 35806 · US direct/fax: +1 256 428 6239 · mobile: +1 256 580 6090 Check us out at: http://digium.com · http://asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[asterisk-dev] Asterisk ARI improper usage pattern for channels REST API
Hi Guys, While working on PHPARI, I've come to a realization that the channels REST API has a slight issue - primarily, its usage of the priority member in the REST API. Currently, the specification states that priority is either int or long (depending on the request). The problem with that is for someone like myself, who codes dialplan in AEL or using the same = n, or the exten = _X.,n, methodology - we have no visibility of priority numbers - we use labels. I'm not that familiar with the ARI part of the Asterisk code yet, as I'm focused on how to actually work with it, but this is somewhat of a show stopper in my book, as all my existing code relies heavily on label usage. Btw, I tried pushing a label into the REST interface, got a 500 error - which means it's designed to work with numbers and not labels. Regards, Nir S -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
RE: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe
Title: RE: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe Hi John, Interesting application, although, it's not stable yet and not ready for production use. However, I'll try using it. Nir Simionovich -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of John Lange Sent: Friday, August 11, 2006 5:14 PM To: asterisk-dev@lists.digium.com Subject: Re: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe This exists already though not specifically for meetme. http://www.lobstertech.com/code/voicechanger/ John On Fri, 2006-08-11 at 13:58 +0300, Nir Simionovich wrote: Hi All, We require a new feature for app_meetme to be added, a pitch control. The idea is to enable pitch changes of the talking participent by pressing the * or # buttons (activating this feature will disable the regular * function). The bounty that we've set for this feature is $500, to be paid to the person who delivers a properly working application running on latest stable version of Asterisk (1.2.10). If you would like to work on this bounty, please contact me directly via e-Mail or phone at +972-54-4482826. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
RE: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe
Title: RE: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe Hi John, On another side of things, it's not dynamic. It changes the pitch before the dialing, then connects over. That means that you can't change the pitch during the actual call. Nir S -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of John Lange Sent: Friday, August 11, 2006 5:14 PM To: asterisk-dev@lists.digium.com Subject: Re: [asterisk-dev] Feature Bounty - Pitch Control for MeetMe This exists already though not specifically for meetme. http://www.lobstertech.com/code/voicechanger/ John On Fri, 2006-08-11 at 13:58 +0300, Nir Simionovich wrote: Hi All, We require a new feature for app_meetme to be added, a pitch control. The idea is to enable pitch changes of the talking participent by pressing the * or # buttons (activating this feature will disable the regular * function). The bounty that we've set for this feature is $500, to be paid to the person who delivers a properly working application running on latest stable version of Asterisk (1.2.10). If you would like to work on this bounty, please contact me directly via e-Mail or phone at +972-54-4482826. ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev ___ --Bandwidth and Colocation provided by Easynews.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[Asterisk-Dev] Asterisk Feature Request: app_bridgeme
Hi all, I'm currently involved in a project where the meetme application is used extensively forbridging calls between an operator and 2 or more parties. One of the features that we require is the ability to pass DTMF signals from any party in the bridge to a pre-specified bridge connected channel. I will explain this using the following scenario: 1. User A calls the Asterisk box and is put into the bridge 2. An operator is notified that a user is waiting in the bridge and connects to the bridge. 3. Now, the operator originates 1 or more calls that would be connected to the bridge. One of these calls is designated with an environment variable saying ${OUTBOUND_BRIDGE}. 4. Any channel connected to the bridge, when pressing a DTMF key would then have that DTMF signal transmitter to the ${OUTBOUND_BRIDGE} channel, resulting in the ability to bridge several users into a single outbound channel and to proxy DTMF's to it. I'm aware that is a fairly funky usage for an application, but if someone has a better way of doing this, I'm willing to learn. Oh, btw, one small remark, if you were about to say: use queues and call park, my answer would be: I can't, I have no control over the extensions. I basically interconnect via a PRI to an external Avaya CTI system, thus, I have no way of implementing queues in the system - due to constraints by the Avaya CTI system. Regards, Nir Simionovich ___ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
[Asterisk-Dev] Very Weird problem with MeetMe, SIP, Zap and the combo of the three
Hi All, I have a really funky problem, which I can't seem to pin point.I have a setup that looks something like this: SS7 Networks --SS7-- Veraz IGate4000 --SIP-- Asterisk Now, Asterisk has a second connection, that looks like this: Asterisk --PRI-- Avaya CTI Now, I'll describe several sceanrios that I'm testing, with some really Weird results: Scenario 1: A. User calls in from the SS7 network, via SIP to Asterisk. B. Asterisk originates a call to Avaya CTI via PRI C. Both users are now put into a MeetMe room D. Avaya user talks, SS7 user hears. SS7 user talks, Avaya heards nothing. Scenario 2: A. User calls in from the SS7 network, via SIP to Asterisk B. Asterisk dials out via the PRI to the Avaya to a specified location. C. Avaya picks up the call, then generates an outgoing call. D. The call is picked up. E. User at the avaya end speaks, SS7 user hears. User at SS7 speaks, avaya user doesn't hear. Scenario 3: A. User calls in from the SS7 network, via SIP to Asterisk B. Asterisk dials out via the SIP connection to a specified location. C. The call is being picked at the remote end and we have 2 way audio. Scenario 4: A. User 1 calls in from the SS7 network, and is put into MeetMe room 1000. B. User 2 calls in from the SS7 network, and is put into MeetMe room 1000. C. Users 1 and 2 talk, but can't hear a thing. Ok, now, I'll go through the conclusions I've reached: 1. There is no network blockage, which is proved by Scenario 3. 2. A test system, working with the same Asterisk version (1.2.0-stable) is working fine in a different location, with a slightly different setup. 3. Scenario 3 negates issues of SIP interoperability between Veraz and Asterisk, on the following tested codecs: g711, IPP-g723.1, IPP-g729 and Digium-g729 4. All MeetMe application entries ares started with: MqAx options. 5. Scenario 4 and the options defined in section 4 indicate the MOH should have been heared, but it wasn't. 6. Now, if I wouldn't have tested scenario 4, I would have said that the PRI is causing issues, however, scenario 4 indicates that something else is wrong. So, anyone has an idea of what's going on here? Or better yet, a proposed course of Action? Regards, Nir Simionovich ___ --Bandwidth and Colocation provided by Easynews.com -- Asterisk-Dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
RE: [Asterisk-Dev] startup
Well, I would and use something external, like the mon utility from the linux-ha project. Monitoring if asterisk is alive, from the internal has its advantages, however, monitoring as a concept is always performed from a 3rd party process or server. Nir S -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Klaus Darilion Sent: Tuesday, September 13, 2005 10:04 AM To: Asterisk Developers Mailing List Subject: Re: [Asterisk-Dev] startup Hi! Take a look at the briStuff from junghanns.net. This patch includes res_watchdog.c, which sends keep alive to an ISDN failover switch (via serial connection). This sounds similar to the application you need. klaus himanshoo kumar saxena wrote: Hi all, I am new to asterisk and am looking for following information, any help will be greatly appreciated. When my asterisk starts, I want it to connect it to another server and then continuously keep pinging that server by sending heartbeat messages. So in asterisk, is there some way of specifying an app or some thing can be started by asterisk at start up time and then this app can be on it's own, having it's own logic? Any ideas ? -himanshoo ___ Asterisk-Dev mailing list Asterisk-Dev@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-dev To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev ___ Asterisk-Dev mailing list Asterisk-Dev@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-dev To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev ___ Asterisk-Dev mailing list Asterisk-Dev@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-dev To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev