From Prometheus001 at gmx.net Mon Jul 14 12:04:26 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Mon, 14 Jul 2008 18:04:26 +0200 Subject: [Telegraph-users] Load balancing Telegraph servers Message-ID: <487B790A.3030608@gmx.net> Hello, has anybody an idea how to - load balance requests to a pool of Telegraph agi servers I am thinking of this because I expect a huge number of overlapping requests and one instance of a ruby server can only manage one request at a time (the other will be queued somehow). Best regards Peter From jpalley at gmail.com Mon Jul 14 22:07:47 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Tue, 15 Jul 2008 10:07:47 +0800 Subject: [Telegraph-users] Load balancing Telegraph servers In-Reply-To: <487B790A.3030608@gmx.net> References: <487B790A.3030608@gmx.net> Message-ID: Use pound or similar TCP balancer...or help rewrite telegraph for Asterisk to use EventMachine! (contact me for more info...) On Jul 15, 2008, at 12:04 AM, Peter P GMX wrote: > Hello, > > has anybody an idea how to > - load balance requests to a pool of Telegraph agi servers > > I am thinking of this because I expect a huge number of overlapping > requests and one instance of a ruby server can only manage one > request at a time (the other will be queued somehow). > > Best regards > Peter > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users From Prometheus001 at gmx.net Tue Jul 15 06:15:35 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Tue, 15 Jul 2008 12:15:35 +0200 Subject: [Telegraph-users] Load balancing Telegraph servers In-Reply-To: References: <487B790A.3030608@gmx.net> Message-ID: <487C78C7.6040909@gmx.net> Thank you Jonathan, do you think we need session handling for Telegraph (it may not work for pound). I don't think so, but I am not sure. In terms of enhancing Telegraph, I am already modifying Telegraph to our needs (add more methods, add furtherevent handling to methods, move parameters to .yaml, statemachine for call handling etc.). If we may find a way to enhance Telegraph to manage a number of Asterisk actions is parallel (preferably to also address more than one Asterisk) I would love to discuss and implement this with your help. I think that we also have to have more than one instance of AMI server in larger installations. Best regards Peter Jonathan Palley schrieb: > Use pound or similar TCP balancer...or help rewrite telegraph for > Asterisk to use EventMachine! (contact me for more info...) > On Jul 15, 2008, at 12:04 AM, Peter P GMX wrote: > >> Hello, >> >> has anybody an idea how to >> - load balance requests to a pool of Telegraph agi servers >> >> I am thinking of this because I expect a huge number of overlapping >> requests and one instance of a ruby server can only manage one >> request at a time (the other will be queued somehow). >> >> Best regards >> Peter >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > From jpalley at gmail.com Tue Jul 15 12:27:00 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Wed, 16 Jul 2008 00:27:00 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH Message-ID: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> Hello All - In light of recent discussions on the mailing list, I would like to let everyone that I have released an initial version of Telegraph for FreeSWITCH. This code base is completely refactored and reflects my vision of where Telegraph + Voice/Web Integration should go. It currently does not support Asterisk, but read on and you will see why it easily can and should. You can find more API info here: http://code.google.com/p/telegraph/. I will be presenting at ClueCon and discussing this. Some motivations and information about this new version of Telegraph. a) After dealing with constant Asterisk head-aches, I have ditched it in favor of FreeSWITCH. Why (warning, the following is my truthful promotion and endorsement of FS)? i) Asterisk was built as a PBX. If you are using Telegraph/Rails you are almost certainly not using it as a PBX. FS is, surprise, a SWITCH. There is a fundamental and powerful difference. ii) FreeSWITCH has a great modular architecture, Asterisk is a mess that endlessly locks. Spend a few hours comparing their code. You will truly be astonished. ii) FS is considerably more stable. Hard to believe since its so new but in my experience we rarely deal with FS problems while Asterisk was always a culprit. iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling interfaces are clean and standardized. Take a look at the ami.rb code to understand what I am talking about when it comes to Asterisk's quirks. b) The new Telegraph is built using EventMachine, not TCP. EventMachine is faster, more stable and doesn't require the use of Ruby's notoriously bad threads. We have been running it in production for quiet a while and, again, its considerably more stable than the TCP library based version. c) Telegraph is now modular. The FS specific code and the overall control/rails integration code has been separated. This is why, in theory, adding an EventMachine based Asterisk interface would be quiet simple. We have been running this code with FS in production for the last few months and its been incredibly smooth. If you don't have a reason to use Asterisk over FreeSWITCH, use FS. If your reason is that you are more comfortable with Asterisk, learn FS...you will thank yourself. There are some folks already working on updating Telegraph to work with Asterisk in the new codebase. If you are interested in helping I can connect you. I don't believe in writing code that you do not really use. Right now, everything I and my company does is with FS. I could develop for Asterisk (and am happy to consult) but it should come from someone who is really using this stuff.... Hope this helps! Jonathan P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay Area/Sacramento using Telegraph? I will be in the U.S. at the beginning of August in those locations. Drop me a line if you'd like to meetup. From Prometheus001 at gmx.net Thu Jul 17 19:03:41 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Fri, 18 Jul 2008 01:03:41 +0200 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> Message-ID: <487FCFCD.8080106@gmx.net> Thank you Jonathan, I just installed freeswitch and tested rml-rpc. So far everything works. Just a question: I went through the source files and could not find any note concerning the rails version. Does it work with Rails 2.02 or with Rails 1.2.x? Best regards Peter Jonathan Palley schrieb: > Hello All - > In light of recent discussions on the mailing list, I would like to > let everyone that I have released an initial version of Telegraph for > FreeSWITCH. This code base is completely refactored and reflects my > vision of where Telegraph + Voice/Web Integration should go. It > currently does not support Asterisk, but read on and you will see why > it easily can and should. You can find more API info here: > http://code.google.com/p/telegraph/. I will be presenting at ClueCon > and discussing this. > > Some motivations and information about this new version of Telegraph. > > a) After dealing with constant Asterisk head-aches, I have ditched it > in favor of FreeSWITCH. Why (warning, the following is my truthful > promotion and endorsement of FS)? > i) Asterisk was built as a PBX. If you are using Telegraph/Rails > you are almost certainly not using it as a PBX. FS is, surprise, a > SWITCH. There is a fundamental and powerful difference. > ii) FreeSWITCH has a great modular architecture, Asterisk is a mess > that endlessly locks. Spend a few hours comparing their code. You > will truly be astonished. > ii) FS is considerably more stable. Hard to believe since its so > new but in my experience we rarely deal with FS problems while > Asterisk was always a culprit. > iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling > interfaces are clean and standardized. Take a look at the ami.rb code > to understand what I am talking about when it comes to Asterisk's > quirks. > > b) The new Telegraph is built using EventMachine, not TCP. > EventMachine is faster, more stable and doesn't require the use of > Ruby's notoriously bad threads. We have been running it in production > for quiet a while and, again, its considerably more stable than the > TCP library based version. > > c) Telegraph is now modular. The FS specific code and the overall > control/rails integration code has been separated. This is why, in > theory, adding an EventMachine based Asterisk interface would be quiet > simple. > > We have been running this code with FS in production for the last few > months and its been incredibly smooth. If you don't have a reason to > use Asterisk over FreeSWITCH, use FS. If your reason is that you are > more comfortable with Asterisk, learn FS...you will thank yourself. > > There are some folks already working on updating Telegraph to work > with Asterisk in the new codebase. If you are interested in helping I > can connect you. I don't believe in writing code that you do not > really use. Right now, everything I and my company does is with FS. > I could develop for Asterisk (and am happy to consult) but it should > come from someone who is really using this stuff.... > > Hope this helps! > > Jonathan > P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay > Area/Sacramento using Telegraph? I will be in the U.S. at the > beginning of August in those locations. Drop me a line if you'd like > to meetup. > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > > From jpalley at gmail.com Thu Jul 17 22:58:28 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Fri, 18 Jul 2008 10:58:28 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <487FCFCD.8080106@gmx.net> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> Message-ID: Rails >2. It uses the new template engine in Rails 2. JP On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: > Thank you Jonathan, > > I just installed freeswitch and tested rml-rpc. So far everything > works. > > Just a question: I went through the source files and could not find > any note concerning the rails version. > > Does it work with Rails 2.02 or with Rails 1.2.x? > > Best regards > Peter > > Jonathan Palley schrieb: >> Hello All - >> In light of recent discussions on the mailing list, I would like to >> let everyone that I have released an initial version of Telegraph for >> FreeSWITCH. This code base is completely refactored and reflects my >> vision of where Telegraph + Voice/Web Integration should go. It >> currently does not support Asterisk, but read on and you will see why >> it easily can and should. You can find more API info here: >> http://code.google.com/p/telegraph/. I will be presenting at ClueCon >> and discussing this. >> >> Some motivations and information about this new version of Telegraph. >> >> a) After dealing with constant Asterisk head-aches, I have ditched it >> in favor of FreeSWITCH. Why (warning, the following is my truthful >> promotion and endorsement of FS)? >> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >> you are almost certainly not using it as a PBX. FS is, surprise, a >> SWITCH. There is a fundamental and powerful difference. >> ii) FreeSWITCH has a great modular architecture, Asterisk is a mess >> that endlessly locks. Spend a few hours comparing their code. You >> will truly be astonished. >> ii) FS is considerably more stable. Hard to believe since its so >> new but in my experience we rarely deal with FS problems while >> Asterisk was always a culprit. >> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >> interfaces are clean and standardized. Take a look at the ami.rb >> code >> to understand what I am talking about when it comes to Asterisk's >> quirks. >> >> b) The new Telegraph is built using EventMachine, not TCP. >> EventMachine is faster, more stable and doesn't require the use of >> Ruby's notoriously bad threads. We have been running it in >> production >> for quiet a while and, again, its considerably more stable than the >> TCP library based version. >> >> c) Telegraph is now modular. The FS specific code and the overall >> control/rails integration code has been separated. This is why, in >> theory, adding an EventMachine based Asterisk interface would be >> quiet >> simple. >> >> We have been running this code with FS in production for the last few >> months and its been incredibly smooth. If you don't have a reason to >> use Asterisk over FreeSWITCH, use FS. If your reason is that you are >> more comfortable with Asterisk, learn FS...you will thank yourself. >> >> There are some folks already working on updating Telegraph to work >> with Asterisk in the new codebase. If you are interested in >> helping I >> can connect you. I don't believe in writing code that you do not >> really use. Right now, everything I and my company does is with FS. >> I could develop for Asterisk (and am happy to consult) but it should >> come from someone who is really using this stuff.... >> >> Hope this helps! >> >> Jonathan >> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >> Area/Sacramento using Telegraph? I will be in the U.S. at the >> beginning of August in those locations. Drop me a line if you'd like >> to meetup. >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users >> >> From alxx at indigenious.ro Fri Jul 18 09:23:24 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 16:23:24 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> Message-ID: <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> Jonathan, The documentation seems particularly scarce. As someone who's never used FS before, coming from years with Asterisk (and Rails), I can't seem to figure out how to create even the simplest IVR. Could you perhaps post a small tutorial someplace? Thanks, Alex On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: > Rails >2. It uses the new template engine in Rails 2. > > JP > On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: > >> Thank you Jonathan, >> >> I just installed freeswitch and tested rml-rpc. So far everything >> works. >> >> Just a question: I went through the source files and could not >> find any note concerning the rails version. >> >> Does it work with Rails 2.02 or with Rails 1.2.x? >> >> Best regards >> Peter >> >> Jonathan Palley schrieb: >>> Hello All - >>> In light of recent discussions on the mailing list, I would like to >>> let everyone that I have released an initial version of Telegraph >>> for >>> FreeSWITCH. This code base is completely refactored and reflects my >>> vision of where Telegraph + Voice/Web Integration should go. It >>> currently does not support Asterisk, but read on and you will see >>> why >>> it easily can and should. You can find more API info here: >>> http://code.google.com/p/telegraph/. I will be presenting at >>> ClueCon >>> and discussing this. >>> >>> Some motivations and information about this new version of >>> Telegraph. >>> >>> a) After dealing with constant Asterisk head-aches, I have >>> ditched it >>> in favor of FreeSWITCH. Why (warning, the following is my truthful >>> promotion and endorsement of FS)? >>> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >>> you are almost certainly not using it as a PBX. FS is, surprise, a >>> SWITCH. There is a fundamental and powerful difference. >>> ii) FreeSWITCH has a great modular architecture, Asterisk is a >>> mess >>> that endlessly locks. Spend a few hours comparing their code. You >>> will truly be astonished. >>> ii) FS is considerably more stable. Hard to believe since its so >>> new but in my experience we rarely deal with FS problems while >>> Asterisk was always a culprit. >>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>> interfaces are clean and standardized. Take a look at the ami.rb >>> code >>> to understand what I am talking about when it comes to Asterisk's >>> quirks. >>> >>> b) The new Telegraph is built using EventMachine, not TCP. >>> EventMachine is faster, more stable and doesn't require the use of >>> Ruby's notoriously bad threads. We have been running it in >>> production >>> for quiet a while and, again, its considerably more stable than the >>> TCP library based version. >>> >>> c) Telegraph is now modular. The FS specific code and the overall >>> control/rails integration code has been separated. This is why, in >>> theory, adding an EventMachine based Asterisk interface would be >>> quiet >>> simple. >>> >>> We have been running this code with FS in production for the last >>> few >>> months and its been incredibly smooth. If you don't have a >>> reason to >>> use Asterisk over FreeSWITCH, use FS. If your reason is that you >>> are >>> more comfortable with Asterisk, learn FS...you will thank yourself. >>> >>> There are some folks already working on updating Telegraph to work >>> with Asterisk in the new codebase. If you are interested in >>> helping I >>> can connect you. I don't believe in writing code that you do not >>> really use. Right now, everything I and my company does is with FS. >>> I could develop for Asterisk (and am happy to consult) but it should >>> come from someone who is really using this stuff.... >>> >>> Hope this helps! >>> >>> Jonathan >>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>> beginning of August in those locations. Drop me a line if you'd >>> like >>> to meetup. >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> >>> > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users From Prometheus001 at gmx.net Fri Jul 18 09:55:30 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Fri, 18 Jul 2008 15:55:30 +0200 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> Message-ID: <4880A0D2.8040503@gmx.net> I totally agree, I also have no real clue where to start from. Is there an "example" project available to see some code for the implemented FS calls?. We may also keep it private. If this is possible I can offer to play with the code and create some examples for the cummunity. Best regards Peter Alex Deva schrieb: > Jonathan, > > The documentation seems particularly scarce. As someone who's never > used FS before, coming from years with Asterisk (and Rails), I can't > seem to figure out how to create even the simplest IVR. > > Could you perhaps post a small tutorial someplace? > > Thanks, > > Alex > > On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: > >> Rails >2. It uses the new template engine in Rails 2. >> >> JP >> On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: >> >>> Thank you Jonathan, >>> >>> I just installed freeswitch and tested rml-rpc. So far everything >>> works. >>> >>> Just a question: I went through the source files and could not find >>> any note concerning the rails version. >>> >>> Does it work with Rails 2.02 or with Rails 1.2.x? >>> >>> Best regards >>> Peter >>> >>> Jonathan Palley schrieb: >>>> Hello All - >>>> In light of recent discussions on the mailing list, I would like to >>>> let everyone that I have released an initial version of Telegraph for >>>> FreeSWITCH. This code base is completely refactored and reflects my >>>> vision of where Telegraph + Voice/Web Integration should go. It >>>> currently does not support Asterisk, but read on and you will see why >>>> it easily can and should. You can find more API info here: >>>> http://code.google.com/p/telegraph/. I will be presenting at ClueCon >>>> and discussing this. >>>> >>>> Some motivations and information about this new version of Telegraph. >>>> >>>> a) After dealing with constant Asterisk head-aches, I have ditched it >>>> in favor of FreeSWITCH. Why (warning, the following is my truthful >>>> promotion and endorsement of FS)? >>>> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >>>> you are almost certainly not using it as a PBX. FS is, surprise, a >>>> SWITCH. There is a fundamental and powerful difference. >>>> ii) FreeSWITCH has a great modular architecture, Asterisk is a mess >>>> that endlessly locks. Spend a few hours comparing their code. You >>>> will truly be astonished. >>>> ii) FS is considerably more stable. Hard to believe since its so >>>> new but in my experience we rarely deal with FS problems while >>>> Asterisk was always a culprit. >>>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>>> interfaces are clean and standardized. Take a look at the ami.rb code >>>> to understand what I am talking about when it comes to Asterisk's >>>> quirks. >>>> >>>> b) The new Telegraph is built using EventMachine, not TCP. >>>> EventMachine is faster, more stable and doesn't require the use of >>>> Ruby's notoriously bad threads. We have been running it in production >>>> for quiet a while and, again, its considerably more stable than the >>>> TCP library based version. >>>> >>>> c) Telegraph is now modular. The FS specific code and the overall >>>> control/rails integration code has been separated. This is why, in >>>> theory, adding an EventMachine based Asterisk interface would be quiet >>>> simple. >>>> >>>> We have been running this code with FS in production for the last few >>>> months and its been incredibly smooth. If you don't have a reason to >>>> use Asterisk over FreeSWITCH, use FS. If your reason is that you are >>>> more comfortable with Asterisk, learn FS...you will thank yourself. >>>> >>>> There are some folks already working on updating Telegraph to work >>>> with Asterisk in the new codebase. If you are interested in helping I >>>> can connect you. I don't believe in writing code that you do not >>>> really use. Right now, everything I and my company does is with FS. >>>> I could develop for Asterisk (and am happy to consult) but it should >>>> come from someone who is really using this stuff.... >>>> >>>> Hope this helps! >>>> >>>> Jonathan >>>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>>> beginning of August in those locations. Drop me a line if you'd like >>>> to meetup. >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>> >>>> >> >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > From alxx at indigenious.ro Fri Jul 18 10:09:58 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 17:09:58 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <4880A0D2.8040503@gmx.net> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> Message-ID: <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> Jonathan, You say that Telegraph should work with Rails >2. Please take note that in Rails 2.1, the method register_template_handler() has been moved from ActionView::Base to ActionView::Template. The suitable change needs to be done by anyone using Rails 2.1 in file vendor/plugins/telegraph/lib/core/voice_view/template.rb on the last line. I haven't even managed to get Telegraph running properly yet... :( Alex On Jul 18, 2008, at 4:55 PM, Peter P GMX wrote: > I totally agree, > > I also have no real clue where to start from. Is there an "example" > project available to see some code for the implemented FS calls?. > We may also keep it private. > If this is possible I can offer to play with the code and create > some examples for the cummunity. > > Best regards > Peter > > > Alex Deva schrieb: >> Jonathan, >> >> The documentation seems particularly scarce. As someone who's >> never used FS before, coming from years with Asterisk (and Rails), >> I can't seem to figure out how to create even the simplest IVR. >> >> Could you perhaps post a small tutorial someplace? >> >> Thanks, >> >> Alex >> >> On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: >> >>> Rails >2. It uses the new template engine in Rails 2. >>> >>> JP >>> On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: >>> >>>> Thank you Jonathan, >>>> >>>> I just installed freeswitch and tested rml-rpc. So far >>>> everything works. >>>> >>>> Just a question: I went through the source files and could not >>>> find any note concerning the rails version. >>>> >>>> Does it work with Rails 2.02 or with Rails 1.2.x? >>>> >>>> Best regards >>>> Peter >>>> >>>> Jonathan Palley schrieb: >>>>> Hello All - >>>>> In light of recent discussions on the mailing list, I would >>>>> like to >>>>> let everyone that I have released an initial version of >>>>> Telegraph for >>>>> FreeSWITCH. This code base is completely refactored and >>>>> reflects my >>>>> vision of where Telegraph + Voice/Web Integration should go. It >>>>> currently does not support Asterisk, but read on and you will >>>>> see why >>>>> it easily can and should. You can find more API info here: >>>>> http://code.google.com/p/telegraph/. I will be presenting at >>>>> ClueCon >>>>> and discussing this. >>>>> >>>>> Some motivations and information about this new version of >>>>> Telegraph. >>>>> >>>>> a) After dealing with constant Asterisk head-aches, I have >>>>> ditched it >>>>> in favor of FreeSWITCH. Why (warning, the following is my truthful >>>>> promotion and endorsement of FS)? >>>>> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >>>>> you are almost certainly not using it as a PBX. FS is, surprise, a >>>>> SWITCH. There is a fundamental and powerful difference. >>>>> ii) FreeSWITCH has a great modular architecture, Asterisk is a >>>>> mess >>>>> that endlessly locks. Spend a few hours comparing their code. You >>>>> will truly be astonished. >>>>> ii) FS is considerably more stable. Hard to believe since its so >>>>> new but in my experience we rarely deal with FS problems while >>>>> Asterisk was always a culprit. >>>>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>>>> interfaces are clean and standardized. Take a look at the >>>>> ami.rb code >>>>> to understand what I am talking about when it comes to Asterisk's >>>>> quirks. >>>>> >>>>> b) The new Telegraph is built using EventMachine, not TCP. >>>>> EventMachine is faster, more stable and doesn't require the use of >>>>> Ruby's notoriously bad threads. We have been running it in >>>>> production >>>>> for quiet a while and, again, its considerably more stable than >>>>> the >>>>> TCP library based version. >>>>> >>>>> c) Telegraph is now modular. The FS specific code and the overall >>>>> control/rails integration code has been separated. This is why, in >>>>> theory, adding an EventMachine based Asterisk interface would >>>>> be quiet >>>>> simple. >>>>> >>>>> We have been running this code with FS in production for the >>>>> last few >>>>> months and its been incredibly smooth. If you don't have a >>>>> reason to >>>>> use Asterisk over FreeSWITCH, use FS. If your reason is that >>>>> you are >>>>> more comfortable with Asterisk, learn FS...you will thank >>>>> yourself. >>>>> >>>>> There are some folks already working on updating Telegraph to work >>>>> with Asterisk in the new codebase. If you are interested in >>>>> helping I >>>>> can connect you. I don't believe in writing code that you do not >>>>> really use. Right now, everything I and my company does is with >>>>> FS. >>>>> I could develop for Asterisk (and am happy to consult) but it >>>>> should >>>>> come from someone who is really using this stuff.... >>>>> >>>>> Hope this helps! >>>>> >>>>> Jonathan >>>>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>>>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>>>> beginning of August in those locations. Drop me a line if you'd >>>>> like >>>>> to meetup. >>>>> _______________________________________________ >>>>> Telegraph-users mailing list >>>>> Telegraph-users at rubyforge.org >>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>> >>>>> >>> >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >> >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users >> From edpimentl at gmail.com Fri Jul 18 11:20:45 2008 From: edpimentl at gmail.com (EdPimentl) Date: Fri, 18 Jul 2008 11:20:45 -0400 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> Message-ID: <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> I think the Telegraph is a very good and see a bright future for it. Though as already voiced in this thread, it can really benefit from improve documentation. My interest is certainly FS and Telegraph... I would be willing to post a bounty to get this started. -E http://tagr.mobi http://mobiquity.ws -------------- next part -------------- An HTML attachment was scrubbed... URL: From alxx at indigenious.ro Fri Jul 18 11:37:06 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 18:37:06 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: I've managed to bring both FS and Telegraph to the point where neither crashes. It hasn't been easy and I seriously doubt I could retrace all my steps. However, for the life of me, I cannot: 1. Use the callback feature of the Channel model. I invoke, from the Rails console, the model's create method like so: MyChannel.create(:destination=>'sofia/default/ 1000', :callback=>'http://192.168.0.19:3002/ivr') I pick up extension 1000 and it immediately hangs up. No way does it call anything back. 2. Use the voice views. Even after correctly registering the "voice" template handler, and calling it as a socket application from FS, it says it renders my view, but absolutely nothing in it gets executed. Not voice.answer, not voice.say_time, nothing. Has anyone managed to get these things running? From jpalley at gmail.com Fri Jul 18 11:40:33 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Fri, 18 Jul 2008 23:40:33 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> Message-ID: <7CF01FA1-C85F-4CDB-8E09-8297F089935D@gmail.com> Thanks for comments. Alex, you are right about that line. Will put in a fix. I am working on documentation and examples. The code that is out there was a direct extraction from our systems. I should be talking at ClueCon about how to use it and will work on examples for that. Best - JP On Jul 18, 2008, at 10:09 PM, Alex Deva wrote: > Jonathan, > > You say that Telegraph should work with Rails >2. Please take note > that in Rails 2.1, the method register_template_handler() has been > moved from ActionView::Base to ActionView::Template. > > The suitable change needs to be done by anyone using Rails 2.1 in > file vendor/plugins/telegraph/lib/core/voice_view/template.rb on the > last line. > > I haven't even managed to get Telegraph running properly yet... :( > > Alex > > On Jul 18, 2008, at 4:55 PM, Peter P GMX wrote: > >> I totally agree, >> >> I also have no real clue where to start from. Is there an "example" >> project available to see some code for the implemented FS calls?. >> We may also keep it private. >> If this is possible I can offer to play with the code and create >> some examples for the cummunity. >> >> Best regards >> Peter >> >> >> Alex Deva schrieb: >>> Jonathan, >>> >>> The documentation seems particularly scarce. As someone who's >>> never used FS before, coming from years with Asterisk (and Rails), >>> I can't seem to figure out how to create even the simplest IVR. >>> >>> Could you perhaps post a small tutorial someplace? >>> >>> Thanks, >>> >>> Alex >>> >>> On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: >>> >>>> Rails >2. It uses the new template engine in Rails 2. >>>> >>>> JP >>>> On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: >>>> >>>>> Thank you Jonathan, >>>>> >>>>> I just installed freeswitch and tested rml-rpc. So far >>>>> everything works. >>>>> >>>>> Just a question: I went through the source files and could not >>>>> find any note concerning the rails version. >>>>> >>>>> Does it work with Rails 2.02 or with Rails 1.2.x? >>>>> >>>>> Best regards >>>>> Peter >>>>> >>>>> Jonathan Palley schrieb: >>>>>> Hello All - >>>>>> In light of recent discussions on the mailing list, I would >>>>>> like to >>>>>> let everyone that I have released an initial version of >>>>>> Telegraph for >>>>>> FreeSWITCH. This code base is completely refactored and >>>>>> reflects my >>>>>> vision of where Telegraph + Voice/Web Integration should go. It >>>>>> currently does not support Asterisk, but read on and you will >>>>>> see why >>>>>> it easily can and should. You can find more API info here: >>>>>> http://code.google.com/p/telegraph/. I will be presenting at >>>>>> ClueCon >>>>>> and discussing this. >>>>>> >>>>>> Some motivations and information about this new version of >>>>>> Telegraph. >>>>>> >>>>>> a) After dealing with constant Asterisk head-aches, I have >>>>>> ditched it >>>>>> in favor of FreeSWITCH. Why (warning, the following is my >>>>>> truthful >>>>>> promotion and endorsement of FS)? >>>>>> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >>>>>> you are almost certainly not using it as a PBX. FS is, >>>>>> surprise, a >>>>>> SWITCH. There is a fundamental and powerful difference. >>>>>> ii) FreeSWITCH has a great modular architecture, Asterisk is a >>>>>> mess >>>>>> that endlessly locks. Spend a few hours comparing their code. You >>>>>> will truly be astonished. >>>>>> ii) FS is considerably more stable. Hard to believe since its so >>>>>> new but in my experience we rarely deal with FS problems while >>>>>> Asterisk was always a culprit. >>>>>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>>>>> interfaces are clean and standardized. Take a look at the >>>>>> ami.rb code >>>>>> to understand what I am talking about when it comes to Asterisk's >>>>>> quirks. >>>>>> >>>>>> b) The new Telegraph is built using EventMachine, not TCP. >>>>>> EventMachine is faster, more stable and doesn't require the use >>>>>> of >>>>>> Ruby's notoriously bad threads. We have been running it in >>>>>> production >>>>>> for quiet a while and, again, its considerably more stable than >>>>>> the >>>>>> TCP library based version. >>>>>> >>>>>> c) Telegraph is now modular. The FS specific code and the overall >>>>>> control/rails integration code has been separated. This is why, >>>>>> in >>>>>> theory, adding an EventMachine based Asterisk interface would >>>>>> be quiet >>>>>> simple. >>>>>> >>>>>> We have been running this code with FS in production for the >>>>>> last few >>>>>> months and its been incredibly smooth. If you don't have a >>>>>> reason to >>>>>> use Asterisk over FreeSWITCH, use FS. If your reason is that >>>>>> you are >>>>>> more comfortable with Asterisk, learn FS...you will thank >>>>>> yourself. >>>>>> >>>>>> There are some folks already working on updating Telegraph to >>>>>> work >>>>>> with Asterisk in the new codebase. If you are interested in >>>>>> helping I >>>>>> can connect you. I don't believe in writing code that you do not >>>>>> really use. Right now, everything I and my company does is with >>>>>> FS. >>>>>> I could develop for Asterisk (and am happy to consult) but it >>>>>> should >>>>>> come from someone who is really using this stuff.... >>>>>> >>>>>> Hope this helps! >>>>>> >>>>>> Jonathan >>>>>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>>>>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>>>>> beginning of August in those locations. Drop me a line if you'd >>>>>> like >>>>>> to meetup. >>>>>> _______________________________________________ >>>>>> Telegraph-users mailing list >>>>>> Telegraph-users at rubyforge.org >>>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>>> >>>>>> >>>> >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> > From alxx at indigenious.ro Fri Jul 18 11:43:16 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 18:43:16 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <7CF01FA1-C85F-4CDB-8E09-8297F089935D@gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <7CF01FA1-C85F-4CDB-8E09-8297F089935D@gmail.com> Message-ID: <64BC7F86-2B3E-40E9-87DE-B402A3A42C50@indigenious.ro> I'm sure ClueCon is a wonderful event and people who go there will come back Telegraph experts. However, I live 8500 km away from ClueCon. On Jul 18, 2008, at 6:40 PM, Jonathan Palley wrote: > Thanks for comments. > > Alex, you are right about that line. Will put in a fix. > > I am working on documentation and examples. The code that is out > there was a direct extraction from our systems. I should be > talking at ClueCon about how to use it and will work on examples > for that. > > Best - > JP > On Jul 18, 2008, at 10:09 PM, Alex Deva wrote: > >> Jonathan, >> >> You say that Telegraph should work with Rails >2. Please take note >> that in Rails 2.1, the method register_template_handler() has been >> moved from ActionView::Base to ActionView::Template. >> >> The suitable change needs to be done by anyone using Rails 2.1 in >> file vendor/plugins/telegraph/lib/core/voice_view/template.rb on >> the last line. >> >> I haven't even managed to get Telegraph running properly yet... :( >> >> Alex >> >> On Jul 18, 2008, at 4:55 PM, Peter P GMX wrote: >> >>> I totally agree, >>> >>> I also have no real clue where to start from. Is there an >>> "example" project available to see some code for the implemented >>> FS calls?. We may also keep it private. >>> If this is possible I can offer to play with the code and create >>> some examples for the cummunity. >>> >>> Best regards >>> Peter >>> >>> >>> Alex Deva schrieb: >>>> Jonathan, >>>> >>>> The documentation seems particularly scarce. As someone who's >>>> never used FS before, coming from years with Asterisk (and >>>> Rails), I can't seem to figure out how to create even the >>>> simplest IVR. >>>> >>>> Could you perhaps post a small tutorial someplace? >>>> >>>> Thanks, >>>> >>>> Alex >>>> >>>> On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: >>>> >>>>> Rails >2. It uses the new template engine in Rails 2. >>>>> >>>>> JP >>>>> On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: >>>>> >>>>>> Thank you Jonathan, >>>>>> >>>>>> I just installed freeswitch and tested rml-rpc. So far >>>>>> everything works. >>>>>> >>>>>> Just a question: I went through the source files and could not >>>>>> find any note concerning the rails version. >>>>>> >>>>>> Does it work with Rails 2.02 or with Rails 1.2.x? >>>>>> >>>>>> Best regards >>>>>> Peter >>>>>> >>>>>> Jonathan Palley schrieb: >>>>>>> Hello All - >>>>>>> In light of recent discussions on the mailing list, I would >>>>>>> like to >>>>>>> let everyone that I have released an initial version of >>>>>>> Telegraph for >>>>>>> FreeSWITCH. This code base is completely refactored and >>>>>>> reflects my >>>>>>> vision of where Telegraph + Voice/Web Integration should go. It >>>>>>> currently does not support Asterisk, but read on and you will >>>>>>> see why >>>>>>> it easily can and should. You can find more API info here: >>>>>>> http://code.google.com/p/telegraph/. I will be presenting at >>>>>>> ClueCon >>>>>>> and discussing this. >>>>>>> >>>>>>> Some motivations and information about this new version of >>>>>>> Telegraph. >>>>>>> >>>>>>> a) After dealing with constant Asterisk head-aches, I have >>>>>>> ditched it >>>>>>> in favor of FreeSWITCH. Why (warning, the following is my >>>>>>> truthful >>>>>>> promotion and endorsement of FS)? >>>>>>> i) Asterisk was built as a PBX. If you are using Telegraph/Rails >>>>>>> you are almost certainly not using it as a PBX. FS is, >>>>>>> surprise, a >>>>>>> SWITCH. There is a fundamental and powerful difference. >>>>>>> ii) FreeSWITCH has a great modular architecture, Asterisk is >>>>>>> a mess >>>>>>> that endlessly locks. Spend a few hours comparing their code. >>>>>>> You >>>>>>> will truly be astonished. >>>>>>> ii) FS is considerably more stable. Hard to believe since its so >>>>>>> new but in my experience we rarely deal with FS problems while >>>>>>> Asterisk was always a culprit. >>>>>>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>>>>>> interfaces are clean and standardized. Take a look at the >>>>>>> ami.rb code >>>>>>> to understand what I am talking about when it comes to >>>>>>> Asterisk's >>>>>>> quirks. >>>>>>> >>>>>>> b) The new Telegraph is built using EventMachine, not TCP. >>>>>>> EventMachine is faster, more stable and doesn't require the >>>>>>> use of >>>>>>> Ruby's notoriously bad threads. We have been running it in >>>>>>> production >>>>>>> for quiet a while and, again, its considerably more stable >>>>>>> than the >>>>>>> TCP library based version. >>>>>>> >>>>>>> c) Telegraph is now modular. The FS specific code and the >>>>>>> overall >>>>>>> control/rails integration code has been separated. This is >>>>>>> why, in >>>>>>> theory, adding an EventMachine based Asterisk interface would >>>>>>> be quiet >>>>>>> simple. >>>>>>> >>>>>>> We have been running this code with FS in production for the >>>>>>> last few >>>>>>> months and its been incredibly smooth. If you don't have a >>>>>>> reason to >>>>>>> use Asterisk over FreeSWITCH, use FS. If your reason is that >>>>>>> you are >>>>>>> more comfortable with Asterisk, learn FS...you will thank >>>>>>> yourself. >>>>>>> >>>>>>> There are some folks already working on updating Telegraph to >>>>>>> work >>>>>>> with Asterisk in the new codebase. If you are interested in >>>>>>> helping I >>>>>>> can connect you. I don't believe in writing code that you do not >>>>>>> really use. Right now, everything I and my company does is >>>>>>> with FS. >>>>>>> I could develop for Asterisk (and am happy to consult) but it >>>>>>> should >>>>>>> come from someone who is really using this stuff.... >>>>>>> >>>>>>> Hope this helps! >>>>>>> >>>>>>> Jonathan >>>>>>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>>>>>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>>>>>> beginning of August in those locations. Drop me a line if >>>>>>> you'd like >>>>>>> to meetup. >>>>>>> _______________________________________________ >>>>>>> Telegraph-users mailing list >>>>>>> Telegraph-users at rubyforge.org >>>>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>>>> >>>>>>> >>>>> >>>>> _______________________________________________ >>>>> Telegraph-users mailing list >>>>> Telegraph-users at rubyforge.org >>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>> >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>> >> > From jpalley at gmail.com Fri Jul 18 12:10:30 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Sat, 19 Jul 2008 00:10:30 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: Alex - We run these in production environments doing quiet a few simultaneous calls with complex algorithms and as previously said its much more stable than any Asterisk based solution out there. HOWEVER, it does currently require a certain base understanding of how FS works. You'll find you can quickly debug the problems you had below if you look at the FS console and take a quick look at how FS deals with sockets. More details: 1. The callback is not to a web application but to a voice_view server (socket). You need to a) Define the rails_server variable in FS vars.xml to point to the ip address of the rails voice view server. b) Not specify this in the callback. Just use rails routes...like this: @channel = VoiceChannel.create :destination=>destination.for_fs, :callback => url_for(:action=>:connect, :id=>@call.id) Look at the FS console (after running "console loglevel debug") and you will see what is happening. 2. I doubt its actually being called by FS due to the above. Regardless if you run script/voice_view -v you can see everything that is passing over the socket. If someone could add these tips to the wiki that would be great. :) JP On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: > I've managed to bring both FS and Telegraph to the point where > neither crashes. It hasn't been easy and I seriously doubt I could > retrace all my steps. > > However, for the life of me, I cannot: > > 1. Use the callback feature of the Channel model. I invoke, from the > Rails console, the model's create method like so: > > MyChannel.create(:destination=>'sofia/default/1000', :callback=>'http://192.168.0.19:3002/ivr') > > I pick up extension 1000 and it immediately hangs up. No way does it > call anything back. > > 2. Use the voice views. Even after correctly registering the "voice" > template handler, and calling it as a socket application from FS, it > says it renders my view, but absolutely nothing in it gets executed. > Not voice.answer, not voice.say_time, nothing. > > Has anyone managed to get these things running? > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users From jpalley at gmail.com Fri Jul 18 12:11:47 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Sat, 19 Jul 2008 00:11:47 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <64BC7F86-2B3E-40E9-87DE-B402A3A42C50@indigenious.ro> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <7CF01FA1-C85F-4CDB-8E09-8297F089935D@gmail.com> <64BC7F86-2B3E-40E9-87DE-B402A3A42C50@indigenious.ro> Message-ID: Well...I live ~10,000km away...but had a number of reasons to go back to the U.S. at the point. Regardless, my point was that I'll be putting together a presentation and example for that on how to get started and of course will post that online... JP On Jul 18, 2008, at 11:43 PM, Alex Deva wrote: > I'm sure ClueCon is a wonderful event and people who go there will > come back Telegraph experts. However, I live 8500 km away from > ClueCon. > > On Jul 18, 2008, at 6:40 PM, Jonathan Palley wrote: > >> Thanks for comments. >> >> Alex, you are right about that line. Will put in a fix. >> >> I am working on documentation and examples. The code that is out >> there was a direct extraction from our systems. I should be >> talking at ClueCon about how to use it and will work on examples >> for that. >> >> Best - >> JP >> On Jul 18, 2008, at 10:09 PM, Alex Deva wrote: >> >>> Jonathan, >>> >>> You say that Telegraph should work with Rails >2. Please take note >>> that in Rails 2.1, the method register_template_handler() has been >>> moved from ActionView::Base to ActionView::Template. >>> >>> The suitable change needs to be done by anyone using Rails 2.1 in >>> file vendor/plugins/telegraph/lib/core/voice_view/template.rb on >>> the last line. >>> >>> I haven't even managed to get Telegraph running properly yet... :( >>> >>> Alex >>> >>> On Jul 18, 2008, at 4:55 PM, Peter P GMX wrote: >>> >>>> I totally agree, >>>> >>>> I also have no real clue where to start from. Is there an >>>> "example" project available to see some code for the implemented >>>> FS calls?. We may also keep it private. >>>> If this is possible I can offer to play with the code and create >>>> some examples for the cummunity. >>>> >>>> Best regards >>>> Peter >>>> >>>> >>>> Alex Deva schrieb: >>>>> Jonathan, >>>>> >>>>> The documentation seems particularly scarce. As someone who's >>>>> never used FS before, coming from years with Asterisk (and >>>>> Rails), I can't seem to figure out how to create even the >>>>> simplest IVR. >>>>> >>>>> Could you perhaps post a small tutorial someplace? >>>>> >>>>> Thanks, >>>>> >>>>> Alex >>>>> >>>>> On Jul 18, 2008, at 5:58 AM, Jonathan Palley wrote: >>>>> >>>>>> Rails >2. It uses the new template engine in Rails 2. >>>>>> >>>>>> JP >>>>>> On Jul 18, 2008, at 7:03 AM, Peter P GMX wrote: >>>>>> >>>>>>> Thank you Jonathan, >>>>>>> >>>>>>> I just installed freeswitch and tested rml-rpc. So far >>>>>>> everything works. >>>>>>> >>>>>>> Just a question: I went through the source files and could not >>>>>>> find any note concerning the rails version. >>>>>>> >>>>>>> Does it work with Rails 2.02 or with Rails 1.2.x? >>>>>>> >>>>>>> Best regards >>>>>>> Peter >>>>>>> >>>>>>> Jonathan Palley schrieb: >>>>>>>> Hello All - >>>>>>>> In light of recent discussions on the mailing list, I would >>>>>>>> like to >>>>>>>> let everyone that I have released an initial version of >>>>>>>> Telegraph for >>>>>>>> FreeSWITCH. This code base is completely refactored and >>>>>>>> reflects my >>>>>>>> vision of where Telegraph + Voice/Web Integration should go. It >>>>>>>> currently does not support Asterisk, but read on and you will >>>>>>>> see why >>>>>>>> it easily can and should. You can find more API info here: >>>>>>>> http://code.google.com/p/telegraph/. I will be presenting at >>>>>>>> ClueCon >>>>>>>> and discussing this. >>>>>>>> >>>>>>>> Some motivations and information about this new version of >>>>>>>> Telegraph. >>>>>>>> >>>>>>>> a) After dealing with constant Asterisk head-aches, I have >>>>>>>> ditched it >>>>>>>> in favor of FreeSWITCH. Why (warning, the following is my >>>>>>>> truthful >>>>>>>> promotion and endorsement of FS)? >>>>>>>> i) Asterisk was built as a PBX. If you are using Telegraph/ >>>>>>>> Rails >>>>>>>> you are almost certainly not using it as a PBX. FS is, >>>>>>>> surprise, a >>>>>>>> SWITCH. There is a fundamental and powerful difference. >>>>>>>> ii) FreeSWITCH has a great modular architecture, Asterisk is >>>>>>>> a mess >>>>>>>> that endlessly locks. Spend a few hours comparing their code. >>>>>>>> You >>>>>>>> will truly be astonished. >>>>>>>> ii) FS is considerably more stable. Hard to believe since its >>>>>>>> so >>>>>>>> new but in my experience we rarely deal with FS problems while >>>>>>>> Asterisk was always a culprit. >>>>>>>> iv) Unlike Asterisk's AMI/AGI, the FreeSWITCH controlling >>>>>>>> interfaces are clean and standardized. Take a look at the >>>>>>>> ami.rb code >>>>>>>> to understand what I am talking about when it comes to >>>>>>>> Asterisk's >>>>>>>> quirks. >>>>>>>> >>>>>>>> b) The new Telegraph is built using EventMachine, not TCP. >>>>>>>> EventMachine is faster, more stable and doesn't require the >>>>>>>> use of >>>>>>>> Ruby's notoriously bad threads. We have been running it in >>>>>>>> production >>>>>>>> for quiet a while and, again, its considerably more stable >>>>>>>> than the >>>>>>>> TCP library based version. >>>>>>>> >>>>>>>> c) Telegraph is now modular. The FS specific code and the >>>>>>>> overall >>>>>>>> control/rails integration code has been separated. This is >>>>>>>> why, in >>>>>>>> theory, adding an EventMachine based Asterisk interface would >>>>>>>> be quiet >>>>>>>> simple. >>>>>>>> >>>>>>>> We have been running this code with FS in production for the >>>>>>>> last few >>>>>>>> months and its been incredibly smooth. If you don't have a >>>>>>>> reason to >>>>>>>> use Asterisk over FreeSWITCH, use FS. If your reason is that >>>>>>>> you are >>>>>>>> more comfortable with Asterisk, learn FS...you will thank >>>>>>>> yourself. >>>>>>>> >>>>>>>> There are some folks already working on updating Telegraph to >>>>>>>> work >>>>>>>> with Asterisk in the new codebase. If you are interested in >>>>>>>> helping I >>>>>>>> can connect you. I don't believe in writing code that you do >>>>>>>> not >>>>>>>> really use. Right now, everything I and my company does is >>>>>>>> with FS. >>>>>>>> I could develop for Asterisk (and am happy to consult) but it >>>>>>>> should >>>>>>>> come from someone who is really using this stuff.... >>>>>>>> >>>>>>>> Hope this helps! >>>>>>>> >>>>>>>> Jonathan >>>>>>>> P.S. Anyone going to be at ClueCon? Anyone in Chicago/Bay >>>>>>>> Area/Sacramento using Telegraph? I will be in the U.S. at the >>>>>>>> beginning of August in those locations. Drop me a line if >>>>>>>> you'd like >>>>>>>> to meetup. >>>>>>>> _______________________________________________ >>>>>>>> Telegraph-users mailing list >>>>>>>> Telegraph-users at rubyforge.org >>>>>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>>>>> >>>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> Telegraph-users mailing list >>>>>> Telegraph-users at rubyforge.org >>>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>> >>>>> _______________________________________________ >>>>> Telegraph-users mailing list >>>>> Telegraph-users at rubyforge.org >>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>>> >>> >> > From alxx at indigenious.ro Fri Jul 18 12:22:50 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 19:22:50 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: <49CE62F5-3CB7-407F-B9E8-4C837E07420B@indigenious.ro> Jonathan, Thanks. I was just about to hardcode my IP instead of ${rails_server} in your model :) Didn't occur to me to set it in FS. However, this seems like a crucial bit of information that should find its way in the "Getting started" guide! As you know, url_for doesn't work in the Rails console (without help) so I just put in the URL by hand. Anyway, that fixed the callback issue. My view is now called and rendered... but nothing happens. I had a look in the debug output from voice_view, but appart from receiving an '-ERR Command not found' apparently in reply to 'log DEBUG', there's nothing relevant there for my problem: regardless what I put in the view, it simply doesn't get executed (as is also obvious from the FS debug console). Do you know how I can add some sort of debug flag in the view itself, to check that someone's even reading it? Alex On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: > Alex - > We run these in production environments doing quiet a few > simultaneous calls with complex algorithms and as previously said > its much more stable than any Asterisk based solution out there. > HOWEVER, it does currently require a certain base understanding of > how FS works. You'll find you can quickly debug the problems you > had below if you look at the FS console and take a quick look at > how FS deals with sockets. > > More details: > > 1. The callback is not to a web application but to a voice_view > server (socket). You need to > a) Define the rails_server variable in FS vars.xml to point to the > ip address of the rails voice view server. > b) Not specify this in the callback. Just use rails routes...like > this: > @channel = > VoiceChannel.create :destination=>destination.for_fs, :callback => > url_for(:action=>:connect, :id=>@call.id) > Look at the FS console (after running "console loglevel debug") > and you will see what is happening. > > 2. I doubt its actually being called by FS due to the above. > Regardless if you run > script/voice_view -v > you can see everything that is passing over the socket. > > If someone could add these tips to the wiki that would be great. :) > > JP > On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: > >> I've managed to bring both FS and Telegraph to the point where >> neither crashes. It hasn't been easy and I seriously doubt I could >> retrace all my steps. >> >> However, for the life of me, I cannot: >> >> 1. Use the callback feature of the Channel model. I invoke, from >> the Rails console, the model's create method like so: >> >> MyChannel.create(:destination=>'sofia/default/ >> 1000', :callback=>'http://192.168.0.19:3002/ivr') >> >> I pick up extension 1000 and it immediately hangs up. No way does >> it call anything back. >> >> 2. Use the voice views. Even after correctly registering the >> "voice" template handler, and calling it as a socket application >> from FS, it says it renders my view, but absolutely nothing in it >> gets executed. Not voice.answer, not voice.say_time, nothing. >> >> Has anyone managed to get these things running? >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > From alxx at indigenious.ro Fri Jul 18 12:48:58 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 19:48:58 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: <095B1A5E-C643-4706-81D4-3E6CF190F5FE@indigenious.ro> Jonathan, About line 31 in your template.rb: "controller.render_voice do |voice|\n #{template}\n end" I've logged out the variable "template" and it doesn't contain the body of the view itself, as it seems normal. Instead it's a huge ActionView::Template object. Certainly nothing that can be used in eval context. Are you sure this way of doing things is compatible with Rails 2.1? I've added debug messages in the controller -- I see them, so the callback works; I've added junk in the view, and nothing crashed; I've renamed the view and the REST call crashed. So the view is needed, found, but improperly used. I think you're not using the right bit of it in that line above. Your thoughts? Alex On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: > Alex - > We run these in production environments doing quiet a few > simultaneous calls with complex algorithms and as previously said > its much more stable than any Asterisk based solution out there. > HOWEVER, it does currently require a certain base understanding of > how FS works. You'll find you can quickly debug the problems you > had below if you look at the FS console and take a quick look at > how FS deals with sockets. > > More details: > > 1. The callback is not to a web application but to a voice_view > server (socket). You need to > a) Define the rails_server variable in FS vars.xml to point to the > ip address of the rails voice view server. > b) Not specify this in the callback. Just use rails routes...like > this: > @channel = > VoiceChannel.create :destination=>destination.for_fs, :callback => > url_for(:action=>:connect, :id=>@call.id) > Look at the FS console (after running "console loglevel debug") > and you will see what is happening. > > 2. I doubt its actually being called by FS due to the above. > Regardless if you run > script/voice_view -v > you can see everything that is passing over the socket. > > If someone could add these tips to the wiki that would be great. :) > > JP > On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: > >> I've managed to bring both FS and Telegraph to the point where >> neither crashes. It hasn't been easy and I seriously doubt I could >> retrace all my steps. >> >> However, for the life of me, I cannot: >> >> 1. Use the callback feature of the Channel model. I invoke, from >> the Rails console, the model's create method like so: >> >> MyChannel.create(:destination=>'sofia/default/ >> 1000', :callback=>'http://192.168.0.19:3002/ivr') >> >> I pick up extension 1000 and it immediately hangs up. No way does >> it call anything back. >> >> 2. Use the voice views. Even after correctly registering the >> "voice" template handler, and calling it as a socket application >> from FS, it says it renders my view, but absolutely nothing in it >> gets executed. Not voice.answer, not voice.say_time, nothing. >> >> Has anyone managed to get these things running? >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > From alxx at indigenious.ro Fri Jul 18 12:59:52 2008 From: alxx at indigenious.ro (Alex Deva) Date: Fri, 18 Jul 2008 19:59:52 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: Jonathan, Apparenty on line 31 of template.rb you've used the variable 'template' where 'template.source' should have been. (See my previous mail.) So the correct line is: "controller.render_voice do |voice|\n #{template.source}\n end" I've done that, and everything works now. My views are rendered fine! Sorry everyone about the flood. That'll be all from me for today. I found and fixed 2 separate issues of Telegraph, should be enough for one day :) Alex On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: > Alex - > We run these in production environments doing quiet a few > simultaneous calls with complex algorithms and as previously said > its much more stable than any Asterisk based solution out there. > HOWEVER, it does currently require a certain base understanding of > how FS works. You'll find you can quickly debug the problems you > had below if you look at the FS console and take a quick look at > how FS deals with sockets. > > More details: > > 1. The callback is not to a web application but to a voice_view > server (socket). You need to > a) Define the rails_server variable in FS vars.xml to point to the > ip address of the rails voice view server. > b) Not specify this in the callback. Just use rails routes...like > this: > @channel = > VoiceChannel.create :destination=>destination.for_fs, :callback => > url_for(:action=>:connect, :id=>@call.id) > Look at the FS console (after running "console loglevel debug") > and you will see what is happening. > > 2. I doubt its actually being called by FS due to the above. > Regardless if you run > script/voice_view -v > you can see everything that is passing over the socket. > > If someone could add these tips to the wiki that would be great. :) > > JP > On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: > >> I've managed to bring both FS and Telegraph to the point where >> neither crashes. It hasn't been easy and I seriously doubt I could >> retrace all my steps. >> >> However, for the life of me, I cannot: >> >> 1. Use the callback feature of the Channel model. I invoke, from >> the Rails console, the model's create method like so: >> >> MyChannel.create(:destination=>'sofia/default/ >> 1000', :callback=>'http://192.168.0.19:3002/ivr') >> >> I pick up extension 1000 and it immediately hangs up. No way does >> it call anything back. >> >> 2. Use the voice views. Even after correctly registering the >> "voice" template handler, and calling it as a socket application >> from FS, it says it renders my view, but absolutely nothing in it >> gets executed. Not voice.answer, not voice.say_time, nothing. >> >> Has anyone managed to get these things running? >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jpalley at gmail.com Fri Jul 18 13:23:55 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Sat, 19 Jul 2008 01:23:55 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> Message-ID: <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> Looks like you've spotted a few Rails 2.1 changes. To be honest, we aren't running 2.1 and I'm a bit surprised the rails team broke compatibility so much in a .1 release.Thanks for pointing this stuff out and I'll work on getting some appropriate rails version selection going on. Thanks JP On Jul 19, 2008, at 12:59 AM, Alex Deva wrote: > Jonathan, > > Apparenty on line 31 of template.rb you've used the variable > 'template' where 'template.source' should have been. (See my > previous mail.) > > So the correct line is: > > "controller.render_voice do |voice|\n #{template.source}\n end" > > I've done that, and everything works now. My views are rendered fine! > > Sorry everyone about the flood. That'll be all from me for today. I > found and fixed 2 separate issues of Telegraph, should be enough for > one day :) > > Alex > > On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: > >> Alex - >> We run these in production environments doing quiet a few >> simultaneous calls with complex algorithms and as previously said >> its much more stable than any Asterisk based solution out there. >> HOWEVER, it does currently require a certain base understanding of >> how FS works. You'll find you can quickly debug the problems you >> had below if you look at the FS console and take a quick look at >> how FS deals with sockets. >> >> More details: >> >> 1. The callback is not to a web application but to a voice_view >> server (socket). You need to >> a) Define the rails_server variable in FS vars.xml to point to the >> ip address of the rails voice view server. >> b) Not specify this in the callback. Just use rails routes...like >> this: >> @channel = >> VoiceChannel.create :destination=>destination.for_fs, :callback => >> url_for(:action=>:connect, :id=>@call.id) >> Look at the FS console (after running "console loglevel debug") >> and you will see what is happening. >> >> 2. I doubt its actually being called by FS due to the above. >> Regardless if you run >> script/voice_view -v >> you can see everything that is passing over the socket. >> >> If someone could add these tips to the wiki that would be great. :) >> >> JP >> On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: >> >>> I've managed to bring both FS and Telegraph to the point where >>> neither crashes. It hasn't been easy and I seriously doubt I could >>> retrace all my steps. >>> >>> However, for the life of me, I cannot: >>> >>> 1. Use the callback feature of the Channel model. I invoke, from >>> the Rails console, the model's create method like so: >>> >>> MyChannel.create(:destination=>'sofia/default/1000', :callback=>'http://192.168.0.19:3002/ivr') >>> >>> I pick up extension 1000 and it immediately hangs up. No way does >>> it call anything back. >>> >>> 2. Use the voice views. Even after correctly registering the >>> "voice" template handler, and calling it as a socket application >>> from FS, it says it renders my view, but absolutely nothing in it >>> gets executed. Not voice.answer, not voice.say_time, nothing. >>> >>> Has anyone managed to get these things running? >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dom at pazap.com Fri Jul 18 13:59:59 2008 From: dom at pazap.com (Dominic Son) Date: Fri, 18 Jul 2008 10:59:59 -0700 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> Message-ID: Jonathan, I just want to congratulate you yet again on being in the forefront of technology. You grasped RESTful routing before most could understand the philosophy, and gave us telegraph. And now this?! Thanks for inspiring me on Pazap.com. Though QoS still needs to be worked out, perhaps there is a light with FREESWITCH. -Dominic Son founder, Pazap.com On Fri, Jul 18, 2008 at 10:23 AM, Jonathan Palley wrote: > Looks like you've spotted a few Rails 2.1 changes. To be honest, we aren't > running 2.1 and I'm a bit surprised the rails team broke compatibility so > much in a .1 release.Thanks for pointing this stuff out and I'll work on > getting some appropriate rails version selection going on. > Thanks > JP > > On Jul 19, 2008, at 12:59 AM, Alex Deva wrote: > > Jonathan, > > Apparenty on line 31 of template.rb you've used the variable 'template' > where 'template.source' should have been. (See my previous mail.) > > So the correct line is: > > "controller.render_voice do |voice|\n #{template*.source*}\n end" > > I've done that, and everything works now. My views are rendered fine! > > Sorry everyone about the flood. That'll be all from me for today. I found > and fixed 2 separate issues of Telegraph, should be enough for one day :) > > Alex > > On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: > > Alex - > We run these in production environments doing quiet a few simultaneous > calls with complex algorithms and as previously said its much more stable > than any Asterisk based solution out there. HOWEVER, it does currently > require a certain base understanding of how FS works. You'll find you can > quickly debug the problems you had below if you look at the FS console and > take a quick look at how FS deals with sockets. > > More details: > > 1. The callback is not to a web application but to a voice_view server > (socket). You need to > a) Define the rails_server variable in FS vars.xml to point to the ip > address of the rails voice view server. > b) Not specify this in the callback. Just use rails routes...like this: > @channel = VoiceChannel.create :destination=>destination.for_fs, > :callback => url_for(:action=>:connect, :id=>@call.id) > Look at the FS console (after running "console loglevel debug") and you > will see what is happening. > > 2. I doubt its actually being called by FS due to the above. Regardless > if you run > script/voice_view -v > you can see everything that is passing over the socket. > > If someone could add these tips to the wiki that would be great. :) > > JP > On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: > > I've managed to bring both FS and Telegraph to the point where neither > crashes. It hasn't been easy and I seriously doubt I could retrace all my > steps. > > However, for the life of me, I cannot: > > 1. Use the callback feature of the Channel model. I invoke, from the Rails > console, the model's create method like so: > > MyChannel.create(:destination=>'sofia/default/1000', :callback=>' > http://192.168.0.19:3002/ivr' ) > > I pick up extension 1000 and it immediately hangs up. No way does it call > anything back. > > 2. Use the voice views. Even after correctly registering the "voice" > template handler, and calling it as a socket application from FS, it says it > renders my view, but absolutely nothing in it gets executed. Not > voice.answer, not voice.say_time, nothing. > > Has anyone managed to get these things running? > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > > > > > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > > -- Anything else, let me know. - Dominic Son Cell: (408) 569-9617 "You can tell whether a man is clever by his answers. You can tell whether a man is wise by his questions" - Naguib Mahfouz -------------- next part -------------- An HTML attachment was scrubbed... URL: From alxx at indigenious.ro Sat Jul 19 04:31:33 2008 From: alxx at indigenious.ro (Alex Deva) Date: Sat, 19 Jul 2008 11:31:33 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> Message-ID: Jonathan, There's another thing that puzzles me now. I have this view: voice.spell "def" voice.say_time voice.play_sound "ivr/8000/ivr-welcome_to_freeswitch.wav" voice.spell "abc" I call the system, it compiles the view, sends it, but I hear all the commands in reverse order. I hear "a, b, c" being spelled, then the welcome message, then the time and date, and then "d, e, f". I've added in some debug to make sure that they're yielded in the correct order to render_voice, and they are. Another thing which is pretty bad is that I've added "sleep 2" inbetween each command, and instead of FS sleeping inbetween wave streamings, the server (voice_view) waited to compile the entire view and slept the 6 seconds, before playback even began! (also in reverse order). So then. What's with this reverse order issue? And since views are NOT interpreted in real time, how can I add for example a delay? And speaking of this, how do I read user's input? Could you perhaps write for us a small example of view that make a decision based on what the user enters? Thanks, Alex On Jul 18, 2008, at 8:23 PM, Jonathan Palley wrote: > Looks like you've spotted a few Rails 2.1 changes. To be honest, > we aren't running 2.1 and I'm a bit surprised the rails team broke > compatibility so much in a .1 release.Thanks for pointing this > stuff out and I'll work on getting some appropriate rails version > selection going on. > > Thanks > JP > On Jul 19, 2008, at 12:59 AM, Alex Deva wrote: > >> Jonathan, >> >> Apparenty on line 31 of template.rb you've used the variable >> 'template' where 'template.source' should have been. (See my >> previous mail.) >> >> So the correct line is: >> >> "controller.render_voice do |voice|\n #{template.source}\n end" >> >> I've done that, and everything works now. My views are rendered fine! >> >> Sorry everyone about the flood. That'll be all from me for today. >> I found and fixed 2 separate issues of Telegraph, should be enough >> for one day :) >> >> Alex >> >> On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: >> >>> Alex - >>> We run these in production environments doing quiet a few >>> simultaneous calls with complex algorithms and as previously said >>> its much more stable than any Asterisk based solution out there. >>> HOWEVER, it does currently require a certain base understanding >>> of how FS works. You'll find you can quickly debug the problems >>> you had below if you look at the FS console and take a quick look >>> at how FS deals with sockets. >>> >>> More details: >>> >>> 1. The callback is not to a web application but to a voice_view >>> server (socket). You need to >>> a) Define the rails_server variable in FS vars.xml to point to >>> the ip address of the rails voice view server. >>> b) Not specify this in the callback. Just use rails >>> routes...like this: >>> @channel = >>> VoiceChannel.create :destination=>destination.for_fs, :callback >>> => url_for(:action=>:connect, :id=>@call.id) >>> Look at the FS console (after running "console loglevel debug") >>> and you will see what is happening. >>> >>> 2. I doubt its actually being called by FS due to the above. >>> Regardless if you run >>> script/voice_view -v >>> you can see everything that is passing over the socket. >>> >>> If someone could add these tips to the wiki that would be great. :) >>> >>> JP >>> On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: >>> >>>> I've managed to bring both FS and Telegraph to the point where >>>> neither crashes. It hasn't been easy and I seriously doubt I >>>> could retrace all my steps. >>>> >>>> However, for the life of me, I cannot: >>>> >>>> 1. Use the callback feature of the Channel model. I invoke, from >>>> the Rails console, the model's create method like so: >>>> >>>> MyChannel.create(:destination=>'sofia/default/ >>>> 1000', :callback=>'http://192.168.0.19:3002/ivr') >>>> >>>> I pick up extension 1000 and it immediately hangs up. No way >>>> does it call anything back. >>>> >>>> 2. Use the voice views. Even after correctly registering the >>>> "voice" template handler, and calling it as a socket application >>>> from FS, it says it renders my view, but absolutely nothing in >>>> it gets executed. Not voice.answer, not voice.say_time, nothing. >>>> >>>> Has anyone managed to get these things running? >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From alxx at indigenious.ro Sat Jul 19 06:52:42 2008 From: alxx at indigenious.ro (Alex Deva) Date: Sat, 19 Jul 2008 13:52:42 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH In-Reply-To: <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> Message-ID: Jonathan, I've added this to voice_view_interface.rb: #read dtmf # eg.: dtmf_read(0, 10, 'conference/8000/conf-pin.wav', 10000, '#,*') def dtmf_read(min, max, sound_file, fs_var_name, timeout, terminators) msg "read", "#{min} #{max} #{sound_file} #{fs_var_name} # {timeout} #{terminators}" end It's doing its job, and as I can see in voice_view's debug, the variable does get populated. However, I can do nothing with it, since the views are compiled and not interpreted at run time, and at the time it's compiled, the variable is empty. For instance, I tried this (commands are in reverse order, see my previous mail about that): voice.spell params['variable_fs_option'] voice.dtmf_read(0, 10, 'conference/8000/conf-pin.wav', 'fs_option', 10000, '#,*') but although params['variable_fs_option'] gets populated with what I key in, it crashes because of a null value even before the IVR starts; because indeed at that time there's no such member in params. I confess I don't see how this approach to compile views has any chance of working in real time... Could you please enlighten us? Alex On Jul 18, 2008, at 8:23 PM, Jonathan Palley wrote: > Looks like you've spotted a few Rails 2.1 changes. To be honest, > we aren't running 2.1 and I'm a bit surprised the rails team broke > compatibility so much in a .1 release.Thanks for pointing this > stuff out and I'll work on getting some appropriate rails version > selection going on. > > Thanks > JP > On Jul 19, 2008, at 12:59 AM, Alex Deva wrote: > >> Jonathan, >> >> Apparenty on line 31 of template.rb you've used the variable >> 'template' where 'template.source' should have been. (See my >> previous mail.) >> >> So the correct line is: >> >> "controller.render_voice do |voice|\n #{template.source}\n end" >> >> I've done that, and everything works now. My views are rendered fine! >> >> Sorry everyone about the flood. That'll be all from me for today. >> I found and fixed 2 separate issues of Telegraph, should be enough >> for one day :) >> >> Alex >> >> On Jul 18, 2008, at 7:10 PM, Jonathan Palley wrote: >> >>> Alex - >>> We run these in production environments doing quiet a few >>> simultaneous calls with complex algorithms and as previously said >>> its much more stable than any Asterisk based solution out there. >>> HOWEVER, it does currently require a certain base understanding >>> of how FS works. You'll find you can quickly debug the problems >>> you had below if you look at the FS console and take a quick look >>> at how FS deals with sockets. >>> >>> More details: >>> >>> 1. The callback is not to a web application but to a voice_view >>> server (socket). You need to >>> a) Define the rails_server variable in FS vars.xml to point to >>> the ip address of the rails voice view server. >>> b) Not specify this in the callback. Just use rails >>> routes...like this: >>> @channel = >>> VoiceChannel.create :destination=>destination.for_fs, :callback >>> => url_for(:action=>:connect, :id=>@call.id) >>> Look at the FS console (after running "console loglevel debug") >>> and you will see what is happening. >>> >>> 2. I doubt its actually being called by FS due to the above. >>> Regardless if you run >>> script/voice_view -v >>> you can see everything that is passing over the socket. >>> >>> If someone could add these tips to the wiki that would be great. :) >>> >>> JP >>> On Jul 18, 2008, at 11:37 PM, Alex Deva wrote: >>> >>>> I've managed to bring both FS and Telegraph to the point where >>>> neither crashes. It hasn't been easy and I seriously doubt I >>>> could retrace all my steps. >>>> >>>> However, for the life of me, I cannot: >>>> >>>> 1. Use the callback feature of the Channel model. I invoke, from >>>> the Rails console, the model's create method like so: >>>> >>>> MyChannel.create(:destination=>'sofia/default/ >>>> 1000', :callback=>'http://192.168.0.19:3002/ivr') >>>> >>>> I pick up extension 1000 and it immediately hangs up. No way >>>> does it call anything back. >>>> >>>> 2. Use the voice views. Even after correctly registering the >>>> "voice" template handler, and calling it as a socket application >>>> from FS, it says it renders my view, but absolutely nothing in >>>> it gets executed. Not voice.answer, not voice.say_time, nothing. >>>> >>>> Has anyone managed to get these things running? >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From Prometheus001 at gmx.net Tue Jul 22 15:17:58 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Tue, 22 Jul 2008 21:17:58 +0200 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> Message-ID: <48863266.7050503@gmx.net> Hello Jonathan, I receive an error (wrong number of arguments (2 for 1) when I try MyChannel.find(:all) In fact in voice_channel_model.rb in Line 96: 2 Parameters are passed and the corresponding VoiceChannelModel.initialize method only accepts one. How can we fix this? Best regards Peter From alxx at indigenious.ro Wed Jul 23 05:53:11 2008 From: alxx at indigenious.ro (Alex Deva) Date: Wed, 23 Jul 2008 12:53:11 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: <48863266.7050503@gmx.net> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> Message-ID: Hi all, I've spent over a week entangled with Telegraph. Jonathan did some very good stuff right there, like the event server and the model approach to the channel, but on the whole, I seriously doubt that the MVC approach -- at least in the form implemented by Telegraph -- can successfully be applied to an IVR app. However, I fully agree that a bridge between FreeSWITCH and web applications is needed, but so far they all have pretty big issues (very different issues, but still), and they are all dependent on a particular language or framework (in the case of Telegraph, Ruby on Rails). I am a RoR fan, it's how I earn my living, but I think Jonathan didn't take things far enough. Instead of masquerading socket communication under a new mime type, why not use HTTP altogether? That would make communication completely language-independent. There's also the issue of having to learn the quirks of a new API. Add to that documentation that seems translated from Chinese (no pun intended, I know that J works in Beijing), and you get a big headache over something that's supposed to be very simple. So, I've taken some time and, using copious amounts of Jonathan's code -- for which I am grateful and I am thanking him publicly, as well as mentioning him everywhere in that context -- and wrote a proxy between FreeSWITCH and any web application. I have tried to document it completely, with examples and everything, but I am a little biased so I would appreciate everyone's feedback in terms of how helpful the documentation (or indeed the product) really are to you. The product is Liverpie (a messed-up acronym from Language Independent Voice Response system Proxy, or just a pie with liver) and it's at www.liverpie.com Thank you! Alex From jpalley at gmail.com Wed Jul 23 06:53:19 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Wed, 23 Jul 2008 18:53:19 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> Message-ID: Don't criticize code that you don't understand. From your website and what you say here it is clear to me that you neither understand the use case of Telegraph nor do you understand most of the way FreeSWITCH works. Yes. You are right. The Telegraph approach will NOT work for IVR's. In fact, if you have read ANYTHING that I have written or talked about with Telegraph (Asterisk version) you would have seen that I EXPLICITLY have said this is NOT for writing IVRs. The whole purpose of releasing Telegraph was to push people to think about voice development BEYOND IVR. There is a lot of IVR stuff out there and I seriously would question why you are using RoR to do IVR applications. So, while I am thrilled that you have built off of Telegraph (this is the purpose of Open Source). But... DO NOT say my software "sucks" on your website when you do not understand the purpose for it. I don't want to be patronizing but I don't think you understand the purpose of this sort of hacker OSS software... on your website you say: What is wrong with Telegraph? 1. Its documentation, at least at the time of this writing, sucks. I mean, crucial things are missing from it. It's not documentation, it's only the starting point for days of research. YOU SHOULD: Either say the documentation is incomplete (not that it sucks). Or, I don't know, HELP ME DOCUMENT IT! 2. It's harder to use than an upside-down chair. Ok. So how would you improve it? 3. Its devoted goal is to bring the MVC approach to writing an IVR. That is completely out of whack. Conceptually, IVRs are nothing more but simple state machines and the MVC paradigm simply doesn't fit to them. To repeat. You completely do not understand the point. You are right that IVR doesn't work with MVC. We most certainly do not use telegraph for IVR work. You are comparing apples to oranges. It's like saying FreeSWITCH sucks as a PBX...not understanding it was built to be a SWITCH and what the differences are. I'm not particularly in the mood to help you until you take off the base-less criticism from the web, but you seriously need to look at mod_xml_curl in FS to do a lot of what you are trying to achieve. With FS there is fundamentally a better way for most of what it seems you are doing.. JP On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: > Hi all, > > I've spent over a week entangled with Telegraph. Jonathan did some > very good stuff right there, like the event server and the model > approach to the channel, but on the whole, I seriously doubt that > the MVC approach -- at least in the form implemented by Telegraph -- > can successfully be applied to an IVR app. > > However, I fully agree that a bridge between FreeSWITCH and web > applications is needed, but so far they all have pretty big issues > (very different issues, but still), and they are all dependent on a > particular language or framework (in the case of Telegraph, Ruby on > Rails). > > I am a RoR fan, it's how I earn my living, but I think Jonathan > didn't take things far enough. Instead of masquerading socket > communication under a new mime type, why not use HTTP altogether? > That would make communication completely language-independent. > > There's also the issue of having to learn the quirks of a new API. > Add to that documentation that seems translated from Chinese (no pun > intended, I know that J works in Beijing), and you get a big > headache over something that's supposed to be very simple. > > So, I've taken some time and, using copious amounts of Jonathan's > code -- for which I am grateful and I am thanking him publicly, as > well as mentioning him everywhere in that context -- and wrote a > proxy between FreeSWITCH and any web application. > > I have tried to document it completely, with examples and > everything, but I am a little biased so I would appreciate > everyone's feedback in terms of how helpful the documentation (or > indeed the product) really are to you. > > The product is Liverpie (a messed-up acronym from Language > Independent Voice Response system Proxy, or just a pie with liver) > and it's at www.liverpie.com > > Thank you! > > Alex > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users From alxx at indigenious.ro Wed Jul 23 07:10:34 2008 From: alxx at indigenious.ro (Alex Deva) Date: Wed, 23 Jul 2008 14:10:34 +0300 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> Message-ID: <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> Jonathan, I apologize for my words. I never said that your code sucks, I explicitely referred to the documentation alone. If you'd like, let's have a show of hands for people who agree with me. Moreover, I did praise your code in more ways than one! And I am sure I understand your code entirely. It is well written and quite Ruby-ish. But I was talking about its documentation. However, if the word was offensive (although I disagree, but it's enough to me that you believe it is), I have already removed it and replaced with what you suggested. I DID offer to help -- in fact, of all the traffic in this list, I think I've offered more suggestions, fixes and improvements than anyone else. I am not suggesting that you are positioning Telegraph as an IVR tool, only that it is not fit as one -- so I would say we agree here and your point is moot. Help you document it?! I believe that software documentation is the responsability of the author, not of the community. I always document whatever I make public. I don't think that Telegraph can be much improved because I sincerely believe in the fallacy of MVC in the realm of voice applications -- although, as I repeatedly said, what you do with the Channel model is pretty cool, and the code is quite well written altogether. I've seen mod_xml_curl and read Jonathan Towne's Ruby examples. I believe that Liverpie's approach has some advantages over it when it comes to writing IVRs; for example, when it comes to reading DTMF. Thank you for your feedback, Alex On Jul 23, 2008, at 1:53 PM, Jonathan Palley wrote: > Don't criticize code that you don't understand. From your website > and what you say here it is clear to me that you neither understand > the use case of Telegraph nor do you understand most of the way > FreeSWITCH works. > > Yes. You are right. The Telegraph approach will NOT work for > IVR's. In fact, if you have read ANYTHING that I have written or > talked about with Telegraph (Asterisk version) you would have seen > that I EXPLICITLY have said this is NOT for writing IVRs. The > whole purpose of releasing Telegraph was to push people to think > about voice development BEYOND IVR. There is a lot of IVR stuff > out there and I seriously would question why you are using RoR to > do IVR applications. > > So, while I am thrilled that you have built off of Telegraph (this > is the purpose of Open Source). But... > > DO NOT say my software "sucks" on your website when you do not > understand the purpose for it. I don't want to be patronizing but > I don't think you understand the purpose of this sort of hacker OSS > software... on your website you say: > > What is wrong with Telegraph? > 1. Its documentation, at least at the time of this writing, > sucks. I mean, crucial things are missing from it. It's not > documentation, it's only the starting point for days of research. > > YOU SHOULD: Either say the documentation is incomplete (not that it > sucks). Or, I don't know, HELP ME DOCUMENT IT! > > 2. It's harder to use than an upside-down chair. > > Ok. So how would you improve it? > > 3. Its devoted goal is to bring the MVC approach to writing an > IVR. That is completely out of whack. Conceptually, IVRs are > nothing more but simple state machines and the MVC paradigm simply > doesn't fit to them. > > To repeat. You completely do not understand the point. You are > right that IVR doesn't work with MVC. We most certainly do not use > telegraph for IVR work. You are comparing apples to oranges. It's > like saying FreeSWITCH sucks as a PBX...not understanding it was > built to be a SWITCH and what the differences are. > > I'm not particularly in the mood to help you until you take off the > base-less criticism from the web, but you seriously need to look at > mod_xml_curl in FS to do a lot of what you are trying to achieve. > With FS there is fundamentally a better way for most of what it > seems you are doing.. > > JP > > > On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: > >> Hi all, >> >> I've spent over a week entangled with Telegraph. Jonathan did some >> very good stuff right there, like the event server and the model >> approach to the channel, but on the whole, I seriously doubt that >> the MVC approach -- at least in the form implemented by Telegraph >> -- can successfully be applied to an IVR app. >> >> However, I fully agree that a bridge between FreeSWITCH and web >> applications is needed, but so far they all have pretty big issues >> (very different issues, but still), and they are all dependent on >> a particular language or framework (in the case of Telegraph, Ruby >> on Rails). >> >> I am a RoR fan, it's how I earn my living, but I think Jonathan >> didn't take things far enough. Instead of masquerading socket >> communication under a new mime type, why not use HTTP altogether? >> That would make communication completely language-independent. >> >> There's also the issue of having to learn the quirks of a new API. >> Add to that documentation that seems translated from Chinese (no >> pun intended, I know that J works in Beijing), and you get a big >> headache over something that's supposed to be very simple. >> >> So, I've taken some time and, using copious amounts of Jonathan's >> code -- for which I am grateful and I am thanking him publicly, as >> well as mentioning him everywhere in that context -- and wrote a >> proxy between FreeSWITCH and any web application. >> >> I have tried to document it completely, with examples and >> everything, but I am a little biased so I would appreciate >> everyone's feedback in terms of how helpful the documentation (or >> indeed the product) really are to you. >> >> The product is Liverpie (a messed-up acronym from Language >> Independent Voice Response system Proxy, or just a pie with liver) >> and it's at www.liverpie.com >> >> Thank you! >> >> Alex >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users > From Prometheus001 at gmx.net Wed Jul 23 08:58:36 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Wed, 23 Jul 2008 14:58:36 +0200 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> Message-ID: <48872AFC.7060208@gmx.net> Hello Jonathan, Concerning IVR, I have extensively used the old Telegraph for Asterisk for an IVR project and enhanced it in a way, that for every Telegraph method I created an additional one, which comes back with an event. For example for "play_sound" I added a new "play_sound_link" method with a link parameter that points to a model in the controller (via @request.create_redirect link) For the IVR handling I used a moore/mealy state machine which reacts on an event, based on a current state. Thus setting up IVRs for our purposes were quite easy. So my question: Jonathan, are we (me) able to enhance the Telegraph project the same way? If this is not at least possible (same way as in the old project), I fear that I can not continue with this project. As documentation is concerned, I agree with Alex. Although I know the old Telegraph project quite well, I spent a week in re-engineering and modifying the source code to make some basic functionality running (maybe it's because of Rails 2.1?). We have to start a project with Freeswitch and need a good API for it (we love Ruby and Rails). If we could get this to work, I would be very happy and would like to contribute. But at the current state I am rather frustrated because of the documentation. New Users will at least need to know - some basic concepts how this all works together - how to start - which Rails versions work - which services need to enabled in Freeswitch (and how) - more than one sample and: some more complex samples which also show which output to expect - a sample project to download which shows some basic functionality which we can test more or less out of the box - why not use RDoc? For Developers: - e.g. where new Freeswitch functions should be implemented in the code - how to contribute on documenting this Best regards Peter Alex Deva schrieb: > Jonathan, > > I apologize for my words. I never said that your code sucks, I > explicitely referred to the documentation alone. If you'd like, let's > have a show of hands for people who agree with me. Moreover, I did > praise your code in more ways than one! And I am sure I understand > your code entirely. It is well written and quite Ruby-ish. But I was > talking about its documentation. > > However, if the word was offensive (although I disagree, but it's > enough to me that you believe it is), I have already removed it and > replaced with what you suggested. > > I DID offer to help -- in fact, of all the traffic in this list, I > think I've offered more suggestions, fixes and improvements than > anyone else. > > I am not suggesting that you are positioning Telegraph as an IVR tool, > only that it is not fit as one -- so I would say we agree here and > your point is moot. > > Help you document it?! I believe that software documentation is the > responsability of the author, not of the community. I always document > whatever I make public. > > I don't think that Telegraph can be much improved because I sincerely > believe in the fallacy of MVC in the realm of voice applications -- > although, as I repeatedly said, what you do with the Channel model is > pretty cool, and the code is quite well written altogether. > > I've seen mod_xml_curl and read Jonathan Towne's Ruby examples. I > believe that Liverpie's approach has some advantages over it when it > comes to writing IVRs; for example, when it comes to reading DTMF. > > Thank you for your feedback, > > Alex > > On Jul 23, 2008, at 1:53 PM, Jonathan Palley wrote: > >> Don't criticize code that you don't understand. From your website and >> what you say here it is clear to me that you neither understand the >> use case of Telegraph nor do you understand most of the way >> FreeSWITCH works. >> >> Yes. You are right. The Telegraph approach will NOT work for IVR's. >> In fact, if you have read ANYTHING that I have written or talked >> about with Telegraph (Asterisk version) you would have seen that I >> EXPLICITLY have said this is NOT for writing IVRs. The whole purpose >> of releasing Telegraph was to push people to think about voice >> development BEYOND IVR. There is a lot of IVR stuff out there and I >> seriously would question why you are using RoR to do IVR applications. >> >> So, while I am thrilled that you have built off of Telegraph (this is >> the purpose of Open Source). But... >> >> DO NOT say my software "sucks" on your website when you do not >> understand the purpose for it. I don't want to be patronizing but I >> don't think you understand the purpose of this sort of hacker OSS >> software... on your website you say: >> >> What is wrong with Telegraph? >> 1. Its documentation, at least at the time of this writing, sucks. I >> mean, crucial things are missing from it. It's not documentation, >> it's only the starting point for days of research. >> >> YOU SHOULD: Either say the documentation is incomplete (not that it >> sucks). Or, I don't know, HELP ME DOCUMENT IT! >> >> 2. It's harder to use than an upside-down chair. >> >> Ok. So how would you improve it? >> >> 3. Its devoted goal is to bring the MVC approach to writing an IVR. >> That is completely out of whack. Conceptually, IVRs are nothing more >> but simple state machines and the MVC paradigm simply doesn't fit to >> them. >> >> To repeat. You completely do not understand the point. You are right >> that IVR doesn't work with MVC. We most certainly do not use >> telegraph for IVR work. You are comparing apples to oranges. It's >> like saying FreeSWITCH sucks as a PBX...not understanding it was >> built to be a SWITCH and what the differences are. >> >> I'm not particularly in the mood to help you until you take off the >> base-less criticism from the web, but you seriously need to look at >> mod_xml_curl in FS to do a lot of what you are trying to achieve. >> With FS there is fundamentally a better way for most of what it seems >> you are doing.. >> >> JP >> >> >> On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: >> >>> Hi all, >>> >>> I've spent over a week entangled with Telegraph. Jonathan did some >>> very good stuff right there, like the event server and the model >>> approach to the channel, but on the whole, I seriously doubt that >>> the MVC approach -- at least in the form implemented by Telegraph -- >>> can successfully be applied to an IVR app. >>> >>> However, I fully agree that a bridge between FreeSWITCH and web >>> applications is needed, but so far they all have pretty big issues >>> (very different issues, but still), and they are all dependent on a >>> particular language or framework (in the case of Telegraph, Ruby on >>> Rails). >>> >>> I am a RoR fan, it's how I earn my living, but I think Jonathan >>> didn't take things far enough. Instead of masquerading socket >>> communication under a new mime type, why not use HTTP altogether? >>> That would make communication completely language-independent. >>> >>> There's also the issue of having to learn the quirks of a new API. >>> Add to that documentation that seems translated from Chinese (no pun >>> intended, I know that J works in Beijing), and you get a big >>> headache over something that's supposed to be very simple. >>> >>> So, I've taken some time and, using copious amounts of Jonathan's >>> code -- for which I am grateful and I am thanking him publicly, as >>> well as mentioning him everywhere in that context -- and wrote a >>> proxy between FreeSWITCH and any web application. >>> >>> I have tried to document it completely, with examples and >>> everything, but I am a little biased so I would appreciate >>> everyone's feedback in terms of how helpful the documentation (or >>> indeed the product) really are to you. >>> >>> The product is Liverpie (a messed-up acronym from Language >>> Independent Voice Response system Proxy, or just a pie with liver) >>> and it's at www.liverpie.com >>> >>> Thank you! >>> >>> Alex >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >> > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > From jpalley at gmail.com Wed Jul 23 13:35:51 2008 From: jpalley at gmail.com (Jonathan Palley) Date: Thu, 24 Jul 2008 01:35:51 +0800 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: <48872AFC.7060208@gmx.net> References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> <48872AFC.7060208@gmx.net> Message-ID: Peter, et. al - Thanks for the emails. Here is what I am thinking. Please provide feedback: a) I would very much like to see Telegraph grow and be expanded not just by me but by people using it for different voice applications. We have a stable core, but I simply don't use it for anything IVR like and thus really don't have a use case to build off of. It would be fantastic if everyone built off of it and we got something truly multi- functional. b) I will promise that in the next three weeks I will significantly improve the documentation. I'm going to be talking about it at ClueCon and this was always my plan. I can make that promise if those who are going to use it will help to i) expand Telegraph to properly provide functionality for voice functionality I don't use ii) Help me write the documentation. Even simple things like pointing out what isn't clear is super helpful (when I'm a bit further in the process). How does that sound? I'm really *not* interested in maintaining complete or dictorial control over the code. I'm interested in seeing new innovation come out of it. I think forking it is probably not going to help that. As I've said, when I initially announced telegraph for FS I made it pretty clear that the documentation/samples and other small things were not done nor did I think they are done. If people are going to use it and will help add the functionality they need to make it usable, I will absolutely push forward in documenting things up, I am not in denial about how bad it is :). I'm glad there is enough interest in the code that everyone got upset by the fact its unclear how to use. This is a solvable problem! Jonathan On Jul 23, 2008, at 8:58 PM, Peter P GMX wrote: > Hello Jonathan, > > Concerning IVR, I have extensively used the old Telegraph for > Asterisk for an IVR project and enhanced it in a way, that for every > Telegraph method I created an additional one, which comes back with > an event. > For example for "play_sound" I added a new "play_sound_link" method > with a link parameter that points to a model in the controller (via > @request.create_redirect link) > For the IVR handling I used a moore/mealy state machine which reacts > on an event, based on a current state. Thus setting up IVRs for our > purposes were quite easy. > > So my question: Jonathan, are we (me) able to enhance the Telegraph > project the same way? If this is not at least possible (same way as > in the old project), I fear that I can not continue with this project. > > As documentation is concerned, I agree with Alex. Although I know > the old Telegraph project quite well, I spent a week in re- > engineering and modifying the source code to make some basic > functionality running (maybe it's because of Rails 2.1?). > > We have to start a project with Freeswitch and need a good API for > it (we love Ruby and Rails). If we could get this to work, I would > be very happy and would like to contribute. But at the current state > I am rather frustrated because of the documentation. > New Users will at least need to know > - some basic concepts how this all works together > - how to start > - which Rails versions work > - which services need to enabled in Freeswitch (and how) > - more than one sample and: some more complex samples which also > show which output to expect > - a sample project to download which shows some basic functionality > which we can test more or less out of the box > - why not use RDoc? > > For Developers: > - e.g. where new Freeswitch functions should be implemented in the > code > - how to contribute on documenting this > > Best regards > Peter > > > > > Alex Deva schrieb: >> Jonathan, >> >> I apologize for my words. I never said that your code sucks, I >> explicitely referred to the documentation alone. If you'd like, >> let's have a show of hands for people who agree with me. Moreover, >> I did praise your code in more ways than one! And I am sure I >> understand your code entirely. It is well written and quite Ruby- >> ish. But I was talking about its documentation. >> >> However, if the word was offensive (although I disagree, but it's >> enough to me that you believe it is), I have already removed it and >> replaced with what you suggested. >> >> I DID offer to help -- in fact, of all the traffic in this list, I >> think I've offered more suggestions, fixes and improvements than >> anyone else. >> >> I am not suggesting that you are positioning Telegraph as an IVR >> tool, only that it is not fit as one -- so I would say we agree >> here and your point is moot. >> >> Help you document it?! I believe that software documentation is the >> responsability of the author, not of the community. I always >> document whatever I make public. >> >> I don't think that Telegraph can be much improved because I >> sincerely believe in the fallacy of MVC in the realm of voice >> applications -- although, as I repeatedly said, what you do with >> the Channel model is pretty cool, and the code is quite well >> written altogether. >> >> I've seen mod_xml_curl and read Jonathan Towne's Ruby examples. I >> believe that Liverpie's approach has some advantages over it when >> it comes to writing IVRs; for example, when it comes to reading DTMF. >> >> Thank you for your feedback, >> >> Alex >> >> On Jul 23, 2008, at 1:53 PM, Jonathan Palley wrote: >> >>> Don't criticize code that you don't understand. From your website >>> and what you say here it is clear to me that you neither >>> understand the use case of Telegraph nor do you understand most of >>> the way FreeSWITCH works. >>> >>> Yes. You are right. The Telegraph approach will NOT work for >>> IVR's. In fact, if you have read ANYTHING that I have written or >>> talked about with Telegraph (Asterisk version) you would have seen >>> that I EXPLICITLY have said this is NOT for writing IVRs. The >>> whole purpose of releasing Telegraph was to push people to think >>> about voice development BEYOND IVR. There is a lot of IVR stuff >>> out there and I seriously would question why you are using RoR to >>> do IVR applications. >>> >>> So, while I am thrilled that you have built off of Telegraph (this >>> is the purpose of Open Source). But... >>> >>> DO NOT say my software "sucks" on your website when you do not >>> understand the purpose for it. I don't want to be patronizing but >>> I don't think you understand the purpose of this sort of hacker >>> OSS software... on your website you say: >>> >>> What is wrong with Telegraph? >>> 1. Its documentation, at least at the time of this writing, sucks. >>> I mean, crucial things are missing from it. It's not >>> documentation, it's only the starting point for days of research. >>> >>> YOU SHOULD: Either say the documentation is incomplete (not that >>> it sucks). Or, I don't know, HELP ME DOCUMENT IT! >>> >>> 2. It's harder to use than an upside-down chair. >>> >>> Ok. So how would you improve it? >>> >>> 3. Its devoted goal is to bring the MVC approach to writing an >>> IVR. That is completely out of whack. Conceptually, IVRs are >>> nothing more but simple state machines and the MVC paradigm simply >>> doesn't fit to them. >>> >>> To repeat. You completely do not understand the point. You are >>> right that IVR doesn't work with MVC. We most certainly do not use >>> telegraph for IVR work. You are comparing apples to oranges. It's >>> like saying FreeSWITCH sucks as a PBX...not understanding it was >>> built to be a SWITCH and what the differences are. >>> >>> I'm not particularly in the mood to help you until you take off >>> the base-less criticism from the web, but you seriously need to >>> look at mod_xml_curl in FS to do a lot of what you are trying to >>> achieve. With FS there is fundamentally a better way for most of >>> what it seems you are doing.. >>> >>> JP >>> >>> >>> On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: >>> >>>> Hi all, >>>> >>>> I've spent over a week entangled with Telegraph. Jonathan did >>>> some very good stuff right there, like the event server and the >>>> model approach to the channel, but on the whole, I seriously >>>> doubt that the MVC approach -- at least in the form implemented >>>> by Telegraph -- can successfully be applied to an IVR app. >>>> >>>> However, I fully agree that a bridge between FreeSWITCH and web >>>> applications is needed, but so far they all have pretty big >>>> issues (very different issues, but still), and they are all >>>> dependent on a particular language or framework (in the case of >>>> Telegraph, Ruby on Rails). >>>> >>>> I am a RoR fan, it's how I earn my living, but I think Jonathan >>>> didn't take things far enough. Instead of masquerading socket >>>> communication under a new mime type, why not use HTTP altogether? >>>> That would make communication completely language-independent. >>>> >>>> There's also the issue of having to learn the quirks of a new >>>> API. Add to that documentation that seems translated from Chinese >>>> (no pun intended, I know that J works in Beijing), and you get a >>>> big headache over something that's supposed to be very simple. >>>> >>>> So, I've taken some time and, using copious amounts of Jonathan's >>>> code -- for which I am grateful and I am thanking him publicly, >>>> as well as mentioning him everywhere in that context -- and wrote >>>> a proxy between FreeSWITCH and any web application. >>>> >>>> I have tried to document it completely, with examples and >>>> everything, but I am a little biased so I would appreciate >>>> everyone's feedback in terms of how helpful the documentation (or >>>> indeed the product) really are to you. >>>> >>>> The product is Liverpie (a messed-up acronym from Language >>>> Independent Voice Response system Proxy, or just a pie with >>>> liver) and it's at www.liverpie.com >>>> >>>> Thank you! >>>> >>>> Alex >>>> _______________________________________________ >>>> Telegraph-users mailing list >>>> Telegraph-users at rubyforge.org >>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> >> >> _______________________________________________ >> Telegraph-users mailing list >> Telegraph-users at rubyforge.org >> http://rubyforge.org/mailman/listinfo/telegraph-users >> From Prometheus001 at gmx.net Wed Jul 23 14:43:47 2008 From: Prometheus001 at gmx.net (Peter P GMX) Date: Wed, 23 Jul 2008 20:43:47 +0200 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> <48872AFC.7060208@gmx.net> Message-ID: <48877BE3.4080600@gmx.net> That sounds good, how can we participate in documenting and coding? Best regards Peter Jonathan Palley schrieb: > Peter, et. al - > Thanks for the emails. Here is what I am thinking. Please provide > feedback: > > a) I would very much like to see Telegraph grow and be expanded not > just by me but by people using it for different voice applications. We > have a stable core, but I simply don't use it for anything IVR like > and thus really don't have a use case to build off of. It would be > fantastic if everyone built off of it and we got something truly > multi-functional. > > b) I will promise that in the next three weeks I will significantly > improve the documentation. I'm going to be talking about it at ClueCon > and this was always my plan. I can make that promise if those who are > going to use it will help to > i) expand Telegraph to properly provide functionality for voice > functionality I don't use > ii) Help me write the documentation. Even simple things like pointing > out what isn't clear is super helpful (when I'm a bit further in the > process). > > How does that sound? > > I'm really *not* interested in maintaining complete or dictorial > control over the code. I'm interested in seeing new innovation come > out of it. I think forking it is probably not going to help that. > > As I've said, when I initially announced telegraph for FS I made it > pretty clear that the documentation/samples and other small things > were not done nor did I think they are done. If people are going to > use it and will help add the functionality they need to make it > usable, I will absolutely push forward in documenting things up, I am > not in denial about how bad it is :). I'm glad there is enough > interest in the code that everyone got upset by the fact its unclear > how to use. This is a solvable problem! > > Jonathan > > > > On Jul 23, 2008, at 8:58 PM, Peter P GMX wrote: > >> Hello Jonathan, >> >> Concerning IVR, I have extensively used the old Telegraph for >> Asterisk for an IVR project and enhanced it in a way, that for every >> Telegraph method I created an additional one, which comes back with >> an event. >> For example for "play_sound" I added a new "play_sound_link" method >> with a link parameter that points to a model in the controller (via >> @request.create_redirect link) >> For the IVR handling I used a moore/mealy state machine which reacts >> on an event, based on a current state. Thus setting up IVRs for our >> purposes were quite easy. >> >> So my question: Jonathan, are we (me) able to enhance the Telegraph >> project the same way? If this is not at least possible (same way as >> in the old project), I fear that I can not continue with this project. >> >> As documentation is concerned, I agree with Alex. Although I know the >> old Telegraph project quite well, I spent a week in re-engineering >> and modifying the source code to make some basic functionality >> running (maybe it's because of Rails 2.1?). >> >> We have to start a project with Freeswitch and need a good API for it >> (we love Ruby and Rails). If we could get this to work, I would be >> very happy and would like to contribute. But at the current state I >> am rather frustrated because of the documentation. >> New Users will at least need to know >> - some basic concepts how this all works together >> - how to start >> - which Rails versions work >> - which services need to enabled in Freeswitch (and how) >> - more than one sample and: some more complex samples which also show >> which output to expect >> - a sample project to download which shows some basic functionality >> which we can test more or less out of the box >> - why not use RDoc? >> >> For Developers: >> - e.g. where new Freeswitch functions should be implemented in the code >> - how to contribute on documenting this >> >> Best regards >> Peter >> >> >> >> >> Alex Deva schrieb: >>> Jonathan, >>> >>> I apologize for my words. I never said that your code sucks, I >>> explicitely referred to the documentation alone. If you'd like, >>> let's have a show of hands for people who agree with me. Moreover, I >>> did praise your code in more ways than one! And I am sure I >>> understand your code entirely. It is well written and quite >>> Ruby-ish. But I was talking about its documentation. >>> >>> However, if the word was offensive (although I disagree, but it's >>> enough to me that you believe it is), I have already removed it and >>> replaced with what you suggested. >>> >>> I DID offer to help -- in fact, of all the traffic in this list, I >>> think I've offered more suggestions, fixes and improvements than >>> anyone else. >>> >>> I am not suggesting that you are positioning Telegraph as an IVR >>> tool, only that it is not fit as one -- so I would say we agree here >>> and your point is moot. >>> >>> Help you document it?! I believe that software documentation is the >>> responsability of the author, not of the community. I always >>> document whatever I make public. >>> >>> I don't think that Telegraph can be much improved because I >>> sincerely believe in the fallacy of MVC in the realm of voice >>> applications -- although, as I repeatedly said, what you do with the >>> Channel model is pretty cool, and the code is quite well written >>> altogether. >>> >>> I've seen mod_xml_curl and read Jonathan Towne's Ruby examples. I >>> believe that Liverpie's approach has some advantages over it when it >>> comes to writing IVRs; for example, when it comes to reading DTMF. >>> >>> Thank you for your feedback, >>> >>> Alex >>> >>> On Jul 23, 2008, at 1:53 PM, Jonathan Palley wrote: >>> >>>> Don't criticize code that you don't understand. From your website >>>> and what you say here it is clear to me that you neither understand >>>> the use case of Telegraph nor do you understand most of the way >>>> FreeSWITCH works. >>>> >>>> Yes. You are right. The Telegraph approach will NOT work for IVR's. >>>> In fact, if you have read ANYTHING that I have written or talked >>>> about with Telegraph (Asterisk version) you would have seen that I >>>> EXPLICITLY have said this is NOT for writing IVRs. The whole >>>> purpose of releasing Telegraph was to push people to think about >>>> voice development BEYOND IVR. There is a lot of IVR stuff out there >>>> and I seriously would question why you are using RoR to do IVR >>>> applications. >>>> >>>> So, while I am thrilled that you have built off of Telegraph (this >>>> is the purpose of Open Source). But... >>>> >>>> DO NOT say my software "sucks" on your website when you do not >>>> understand the purpose for it. I don't want to be patronizing but I >>>> don't think you understand the purpose of this sort of hacker OSS >>>> software... on your website you say: >>>> >>>> What is wrong with Telegraph? >>>> 1. Its documentation, at least at the time of this writing, sucks. >>>> I mean, crucial things are missing from it. It's not documentation, >>>> it's only the starting point for days of research. >>>> >>>> YOU SHOULD: Either say the documentation is incomplete (not that it >>>> sucks). Or, I don't know, HELP ME DOCUMENT IT! >>>> >>>> 2. It's harder to use than an upside-down chair. >>>> >>>> Ok. So how would you improve it? >>>> >>>> 3. Its devoted goal is to bring the MVC approach to writing an IVR. >>>> That is completely out of whack. Conceptually, IVRs are nothing >>>> more but simple state machines and the MVC paradigm simply doesn't >>>> fit to them. >>>> >>>> To repeat. You completely do not understand the point. You are >>>> right that IVR doesn't work with MVC. We most certainly do not use >>>> telegraph for IVR work. You are comparing apples to oranges. It's >>>> like saying FreeSWITCH sucks as a PBX...not understanding it was >>>> built to be a SWITCH and what the differences are. >>>> >>>> I'm not particularly in the mood to help you until you take off the >>>> base-less criticism from the web, but you seriously need to look at >>>> mod_xml_curl in FS to do a lot of what you are trying to achieve. >>>> With FS there is fundamentally a better way for most of what it >>>> seems you are doing.. >>>> >>>> JP >>>> >>>> >>>> On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: >>>> >>>>> Hi all, >>>>> >>>>> I've spent over a week entangled with Telegraph. Jonathan did some >>>>> very good stuff right there, like the event server and the model >>>>> approach to the channel, but on the whole, I seriously doubt that >>>>> the MVC approach -- at least in the form implemented by Telegraph >>>>> -- can successfully be applied to an IVR app. >>>>> >>>>> However, I fully agree that a bridge between FreeSWITCH and web >>>>> applications is needed, but so far they all have pretty big issues >>>>> (very different issues, but still), and they are all dependent on >>>>> a particular language or framework (in the case of Telegraph, Ruby >>>>> on Rails). >>>>> >>>>> I am a RoR fan, it's how I earn my living, but I think Jonathan >>>>> didn't take things far enough. Instead of masquerading socket >>>>> communication under a new mime type, why not use HTTP altogether? >>>>> That would make communication completely language-independent. >>>>> >>>>> There's also the issue of having to learn the quirks of a new API. >>>>> Add to that documentation that seems translated from Chinese (no >>>>> pun intended, I know that J works in Beijing), and you get a big >>>>> headache over something that's supposed to be very simple. >>>>> >>>>> So, I've taken some time and, using copious amounts of Jonathan's >>>>> code -- for which I am grateful and I am thanking him publicly, as >>>>> well as mentioning him everywhere in that context -- and wrote a >>>>> proxy between FreeSWITCH and any web application. >>>>> >>>>> I have tried to document it completely, with examples and >>>>> everything, but I am a little biased so I would appreciate >>>>> everyone's feedback in terms of how helpful the documentation (or >>>>> indeed the product) really are to you. >>>>> >>>>> The product is Liverpie (a messed-up acronym from Language >>>>> Independent Voice Response system Proxy, or just a pie with liver) >>>>> and it's at www.liverpie.com >>>>> >>>>> Thank you! >>>>> >>>>> Alex >>>>> _______________________________________________ >>>>> Telegraph-users mailing list >>>>> Telegraph-users at rubyforge.org >>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>> >>> >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users > From mmangino at elevatedrails.com Wed Jul 23 16:14:57 2008 From: mmangino at elevatedrails.com (Mike Mangino) Date: Wed, 23 Jul 2008 16:14:57 -0400 Subject: [Telegraph-users] Telegraph for FreeSWITCH - Error in voice_channel_model In-Reply-To: References: <2d8777c00807150927k4988e1ai92d7b494f2578768@mail.gmail.com> <487FCFCD.8080106@gmx.net> <9D0DB1B6-648E-4BBC-9F93-DF5EC8E43475@indigenious.ro> <4880A0D2.8040503@gmx.net> <95FB0415-1960-45C2-A3C9-FFCFC32ECC51@indigenious.ro> <9dc4a1670807180820r58e7fc5g76a3a2e771281bad@mail.gmail.com> <5F3EE0D7-CF51-4E26-A36F-9CAAEA371935@gmail.com> <48863266.7050503@gmx.net> <18AE3BAA-4DDF-4F9C-BCB9-D1931B1BD836@indigenious.ro> <48872AFC.7060208@gmx.net> Message-ID: <95024ED1-9B8E-4E4C-B056-F35A687481E2@elevatedrails.com> I think that would be great. I did some hacking on Telegraph about a year ago and lost interest due to the lack of tests. I found the code hard to refactor and work with because of the combination of little documentation and testing. Improving one or more of these areas would make me more likely to contribute more in the future. Mike On Jul 23, 2008, at 1:35 PM, Jonathan Palley wrote: > Peter, et. al - > Thanks for the emails. Here is what I am thinking. Please provide > feedback: > > a) I would very much like to see Telegraph grow and be expanded not > just by me but by people using it for different voice applications. > We have a stable core, but I simply don't use it for anything IVR > like and thus really don't have a use case to build off of. It > would be fantastic if everyone built off of it and we got something > truly multi-functional. > > b) I will promise that in the next three weeks I will significantly > improve the documentation. I'm going to be talking about it at > ClueCon and this was always my plan. I can make that promise if > those who are going to use it will help to > i) expand Telegraph to properly provide functionality for voice > functionality I don't use > ii) Help me write the documentation. Even simple things like > pointing out what isn't clear is super helpful (when I'm a bit > further in the process). > > How does that sound? > > I'm really *not* interested in maintaining complete or dictorial > control over the code. I'm interested in seeing new innovation come > out of it. I think forking it is probably not going to help that. > > As I've said, when I initially announced telegraph for FS I made it > pretty clear that the documentation/samples and other small things > were not done nor did I think they are done. If people are going to > use it and will help add the functionality they need to make it > usable, I will absolutely push forward in documenting things up, I > am not in denial about how bad it is :). I'm glad there is enough > interest in the code that everyone got upset by the fact its unclear > how to use. This is a solvable problem! > > Jonathan > > > > On Jul 23, 2008, at 8:58 PM, Peter P GMX wrote: > >> Hello Jonathan, >> >> Concerning IVR, I have extensively used the old Telegraph for >> Asterisk for an IVR project and enhanced it in a way, that for >> every Telegraph method I created an additional one, which comes >> back with an event. >> For example for "play_sound" I added a new "play_sound_link" method >> with a link parameter that points to a model in the controller (via >> @request.create_redirect link) >> For the IVR handling I used a moore/mealy state machine which >> reacts on an event, based on a current state. Thus setting up IVRs >> for our purposes were quite easy. >> >> So my question: Jonathan, are we (me) able to enhance the Telegraph >> project the same way? If this is not at least possible (same way as >> in the old project), I fear that I can not continue with this >> project. >> >> As documentation is concerned, I agree with Alex. Although I know >> the old Telegraph project quite well, I spent a week in re- >> engineering and modifying the source code to make some basic >> functionality running (maybe it's because of Rails 2.1?). >> >> We have to start a project with Freeswitch and need a good API for >> it (we love Ruby and Rails). If we could get this to work, I would >> be very happy and would like to contribute. But at the current >> state I am rather frustrated because of the documentation. >> New Users will at least need to know >> - some basic concepts how this all works together >> - how to start >> - which Rails versions work >> - which services need to enabled in Freeswitch (and how) >> - more than one sample and: some more complex samples which also >> show which output to expect >> - a sample project to download which shows some basic functionality >> which we can test more or less out of the box >> - why not use RDoc? >> >> For Developers: >> - e.g. where new Freeswitch functions should be implemented in the >> code >> - how to contribute on documenting this >> >> Best regards >> Peter >> >> >> >> >> Alex Deva schrieb: >>> Jonathan, >>> >>> I apologize for my words. I never said that your code sucks, I >>> explicitely referred to the documentation alone. If you'd like, >>> let's have a show of hands for people who agree with me. Moreover, >>> I did praise your code in more ways than one! And I am sure I >>> understand your code entirely. It is well written and quite Ruby- >>> ish. But I was talking about its documentation. >>> >>> However, if the word was offensive (although I disagree, but it's >>> enough to me that you believe it is), I have already removed it >>> and replaced with what you suggested. >>> >>> I DID offer to help -- in fact, of all the traffic in this list, I >>> think I've offered more suggestions, fixes and improvements than >>> anyone else. >>> >>> I am not suggesting that you are positioning Telegraph as an IVR >>> tool, only that it is not fit as one -- so I would say we agree >>> here and your point is moot. >>> >>> Help you document it?! I believe that software documentation is >>> the responsability of the author, not of the community. I always >>> document whatever I make public. >>> >>> I don't think that Telegraph can be much improved because I >>> sincerely believe in the fallacy of MVC in the realm of voice >>> applications -- although, as I repeatedly said, what you do with >>> the Channel model is pretty cool, and the code is quite well >>> written altogether. >>> >>> I've seen mod_xml_curl and read Jonathan Towne's Ruby examples. I >>> believe that Liverpie's approach has some advantages over it when >>> it comes to writing IVRs; for example, when it comes to reading >>> DTMF. >>> >>> Thank you for your feedback, >>> >>> Alex >>> >>> On Jul 23, 2008, at 1:53 PM, Jonathan Palley wrote: >>> >>>> Don't criticize code that you don't understand. From your website >>>> and what you say here it is clear to me that you neither >>>> understand the use case of Telegraph nor do you understand most >>>> of the way FreeSWITCH works. >>>> >>>> Yes. You are right. The Telegraph approach will NOT work for >>>> IVR's. In fact, if you have read ANYTHING that I have written or >>>> talked about with Telegraph (Asterisk version) you would have >>>> seen that I EXPLICITLY have said this is NOT for writing IVRs. >>>> The whole purpose of releasing Telegraph was to push people to >>>> think about voice development BEYOND IVR. There is a lot of IVR >>>> stuff out there and I seriously would question why you are using >>>> RoR to do IVR applications. >>>> >>>> So, while I am thrilled that you have built off of Telegraph >>>> (this is the purpose of Open Source). But... >>>> >>>> DO NOT say my software "sucks" on your website when you do not >>>> understand the purpose for it. I don't want to be patronizing but >>>> I don't think you understand the purpose of this sort of hacker >>>> OSS software... on your website you say: >>>> >>>> What is wrong with Telegraph? >>>> 1. Its documentation, at least at the time of this writing, >>>> sucks. I mean, crucial things are missing from it. It's not >>>> documentation, it's only the starting point for days of research. >>>> >>>> YOU SHOULD: Either say the documentation is incomplete (not that >>>> it sucks). Or, I don't know, HELP ME DOCUMENT IT! >>>> >>>> 2. It's harder to use than an upside-down chair. >>>> >>>> Ok. So how would you improve it? >>>> >>>> 3. Its devoted goal is to bring the MVC approach to writing an >>>> IVR. That is completely out of whack. Conceptually, IVRs are >>>> nothing more but simple state machines and the MVC paradigm >>>> simply doesn't fit to them. >>>> >>>> To repeat. You completely do not understand the point. You are >>>> right that IVR doesn't work with MVC. We most certainly do not >>>> use telegraph for IVR work. You are comparing apples to oranges. >>>> It's like saying FreeSWITCH sucks as a PBX...not understanding it >>>> was built to be a SWITCH and what the differences are. >>>> >>>> I'm not particularly in the mood to help you until you take off >>>> the base-less criticism from the web, but you seriously need to >>>> look at mod_xml_curl in FS to do a lot of what you are trying to >>>> achieve. With FS there is fundamentally a better way for most of >>>> what it seems you are doing.. >>>> >>>> JP >>>> >>>> >>>> On Jul 23, 2008, at 5:53 PM, Alex Deva wrote: >>>> >>>>> Hi all, >>>>> >>>>> I've spent over a week entangled with Telegraph. Jonathan did >>>>> some very good stuff right there, like the event server and the >>>>> model approach to the channel, but on the whole, I seriously >>>>> doubt that the MVC approach -- at least in the form implemented >>>>> by Telegraph -- can successfully be applied to an IVR app. >>>>> >>>>> However, I fully agree that a bridge between FreeSWITCH and web >>>>> applications is needed, but so far they all have pretty big >>>>> issues (very different issues, but still), and they are all >>>>> dependent on a particular language or framework (in the case of >>>>> Telegraph, Ruby on Rails). >>>>> >>>>> I am a RoR fan, it's how I earn my living, but I think Jonathan >>>>> didn't take things far enough. Instead of masquerading socket >>>>> communication under a new mime type, why not use HTTP >>>>> altogether? That would make communication completely language- >>>>> independent. >>>>> >>>>> There's also the issue of having to learn the quirks of a new >>>>> API. Add to that documentation that seems translated from >>>>> Chinese (no pun intended, I know that J works in Beijing), and >>>>> you get a big headache over something that's supposed to be very >>>>> simple. >>>>> >>>>> So, I've taken some time and, using copious amounts of >>>>> Jonathan's code -- for which I am grateful and I am thanking him >>>>> publicly, as well as mentioning him everywhere in that context >>>>> -- and wrote a proxy between FreeSWITCH and any web application. >>>>> >>>>> I have tried to document it completely, with examples and >>>>> everything, but I am a little biased so I would appreciate >>>>> everyone's feedback in terms of how helpful the documentation >>>>> (or indeed the product) really are to you. >>>>> >>>>> The product is Liverpie (a messed-up acronym from Language >>>>> Independent Voice Response system Proxy, or just a pie with >>>>> liver) and it's at www.liverpie.com >>>>> >>>>> Thank you! >>>>> >>>>> Alex >>>>> _______________________________________________ >>>>> Telegraph-users mailing list >>>>> Telegraph-users at rubyforge.org >>>>> http://rubyforge.org/mailman/listinfo/telegraph-users >>>> >>> >>> _______________________________________________ >>> Telegraph-users mailing list >>> Telegraph-users at rubyforge.org >>> http://rubyforge.org/mailman/listinfo/telegraph-users >>> > > _______________________________________________ > Telegraph-users mailing list > Telegraph-users at rubyforge.org > http://rubyforge.org/mailman/listinfo/telegraph-users -- Mike Mangino http://www.elevatedrails.com