Open baldvinhansson opened 10 years ago
Please try the following minimal reproduction and paste the output:
require 'ruby_speech'
grammar = RubySpeech::GRXML::Builtins.digits length: 1
matcher = RubySpeech::GRXML::Matcher.new grammar
p matcher.match('1')
Also, you did not mention details of your OS. Please provide the output of uname -a
.
Output of the minimal reproduction is:
#<RubySpeech::GRXML::MaxMatch:0x9691bcc @mode=:dtmf, @confidence=1, @utterance="1", @interpretation="dtmf-1">
and uname -a
gives
Linux mycomputername 3.8.0-29-generic #42~precise1-Ubuntu SMP Wed Aug 14 15:31:16 UTC 2013 i686 i686 i386 GNU/Linux
Did you execute that minimal repro stand-alone or from the Adhearsion console? If the former, please try the latter. I would have expected it to fail in the same way.
First attempt was a separate testspeech.rb file run with "ruby testspeech.rb". Now I put this code into my call controller and execute it upon answering a call. It does not fail. I'm very new to all of this so I'm writing the output to Asterisk via verbose and get:
RubySpeech::GRXML::MaxMatch:0xb4e2c8cc
It does not crash. If I subsequently, during the same call, use ask and press # directly, it crashes as before.
In that case, please try cloning and running the test suites of ruby_speech and punchblock. Basically I'm looking for something that does not depend on making real calls to reproduce the problem to narrow things down.
Spent a good number of hours looking (googling) for ways not to ask, but can you point me in the direction of how I might go about running these test suites you mention?
I'm well versed in Asterisk but a total beginner with Ruby and Adhearsion but picking this up rather fast now and would like to see what I can do to either help track this down if it's a bug, or correct my line of thinking if I'm abusing the system somehow.
The reason I started with Adhearsion is a specific app I need to have for Asterisk. I've implemented it more or less now, but this thing here is a complete showstopper for me because obviously user input can not be avoided with IVR.
I'm prepared to go to great lengths figuring this out and appreciate your help very much!
Also wondering if it's perhaps language related. Thinking how do I change config.adhearsion_asr.input_language = "en-US"
to is-IS and tried some things like
@result = ask 'CallRouter_EnterPIN', interdigitTimeout: 5.seconds, timeout: 5.seconds, terminator: '#', limit: 9, input_options: { mode: :dtmf }
Just a thought.
It's not language related, it'll be some problem with how ruby or the ruby_speech C extension was compiled. Segfaults are not normal occurrences in Ruby, and indicate a serious problem. I can assure you, however, you are alone in experiencing this particular one.
In terms of running test suites, you simply need to clone the repositories (adhearsion/punchblock and this one) and run bundle install && rake
on each of them. If you see the tests complete successfully, report that, otherwise provide stdout.
Thank you for this. Running it for ruby_speech gives me:
...
Pending:
RubySpeech::GRXML::Rule#id without an id
# No reason given
# ./spec/ruby_speech/grxml/rule_spec.rb:43
RubySpeech::GRXML::Rule#id with a non-unique id this should probably go into the grammar spec
# No reason given
# ./spec/ruby_speech/grxml/rule_spec.rb:47
RubySpeech::GRXML#draw should raise error if given an empty rule
# Reject empty rules -- http://www.w3.org/TR/2002/CR-speech-grammar-20020626/#S3.1 http://www.w3.org/Voice/2003/srgs-ir/test/rule-no-empty.grxml
# ./spec/ruby_speech/grxml_spec.rb:87
Finished in 0.53026 seconds
861 examples, 0 failures, 3 pending
And for punchblock
Pending:
Punchblock::Connection::XMPP looking up original command by command ID
# No reason given
# ./spec/punchblock/connection/xmpp_spec.rb:72
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in true if output fails to start should return the error returned by output
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:101
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in true receiving dtmf during output should stop the output
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:105
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in true receiving dtmf during output should contribute to the input result
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:107
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in true receiving dtmf during output should return a match complete event
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:109
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in true when not receiving any DTMF input at all should not start the initial timer until output completes
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:113
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in false receiving dtmf during output should not stop the output
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:140
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in false receiving dtmf during output should not contribute to the input result
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:142
Punchblock::Translator::Asterisk::Component::ComposedPrompt#execute #barge_in false when not receiving any DTMF input at all should not start the initial timer until output completes
# Not yet implemented
# ./spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb:177
Punchblock::Translator::Asterisk::Component::Input#execute recognizer
# No reason given
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:331
Punchblock::Translator::Asterisk::Component::Input#execute sensitivity
# No reason given
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:504
Punchblock::Translator::Asterisk::Component::Input#execute min-confidence
# No reason given
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:508
Punchblock::Translator::Asterisk::Component::Input#execute max-silence
# No reason given
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:512
Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Input#mode
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:551
Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Input#recognizer
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:575
Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Input#max-silence
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:619
Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Input#match-content-type
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:623
Punchblock::Translator::Asterisk::Component::MRCPPrompt Input#mode
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_prompt_spec.rb:543
Punchblock::Translator::Asterisk::Component::MRCPPrompt Input#recognizer
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_prompt_spec.rb:567
Punchblock::Translator::Asterisk::Component::MRCPPrompt Input#max-silence
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_prompt_spec.rb:611
Punchblock::Translator::Asterisk::Component::MRCPPrompt Input#match-content-type
# No reason given
# ./spec/punchblock/translator/asterisk/component/mrcp_prompt_spec.rb:615
Punchblock::Translator::Freeswitch::Component::Input#execute terminator
# No reason given
# ./spec/punchblock/translator/freeswitch/component/input_spec.rb:230
Punchblock::Translator::Freeswitch::Component::Input#execute recognizer
# No reason given
# ./spec/punchblock/translator/freeswitch/component/input_spec.rb:234
Punchblock::Translator::Freeswitch::Component::Input#execute sensitivity
# No reason given
# ./spec/punchblock/translator/freeswitch/component/input_spec.rb:340
Punchblock::Translator::Freeswitch::Component::Input#execute min-confidence
# No reason given
# ./spec/punchblock/translator/freeswitch/component/input_spec.rb:344
Punchblock::Translator::Freeswitch::Component::Input#execute max-silence
# No reason given
# ./spec/punchblock/translator/freeswitch/component/input_spec.rb:348
Punchblock::Translator::Freeswitch::Component::Record#execute_command with a Pause command sets the command response to true
# No reason given
# ./spec/punchblock/translator/freeswitch/component/record_spec.rb:377
Punchblock::Translator::Freeswitch::Component::Record#execute_command with a Pause command pauses the recording via AMI
# No reason given
# ./spec/punchblock/translator/freeswitch/component/record_spec.rb:382
Punchblock::Translator::Freeswitch::Component::Record#execute_command with a Resume command sets the command response to true
# No reason given
# ./spec/punchblock/translator/freeswitch/component/record_spec.rb:399
Punchblock::Translator::Freeswitch::Component::Record#execute_command with a Resume command resumes the recording via AMI
# No reason given
# ./spec/punchblock/translator/freeswitch/component/record_spec.rb:404
Failures:
1) Punchblock::Translator::Asterisk::Component::Input#execute inter-digit-timeout a positive number with a trailing range repeat when the buffer matches the grammar should fire a match on timeout
Failure/Error: end.root
NoMethodError:
undefined method `root' for #<RubySpeech::NLSML::Document:0xb6f6f70>
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:434:in `block (7 levels) in <module:Component>'
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:445:in `block (7 levels) in <module:Component>'
2) Punchblock::Translator::Asterisk::Component::Input#execute inter-digit-timeout a positive number with a trailing range repeat when the buffer matches the grammar on the first keypress should fire a match on timeout
Failure/Error: end.root
NoMethodError:
undefined method `root' for #<RubySpeech::NLSML::Document:0xc91b674>
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:434:in `block (7 levels) in <module:Component>'
# ./spec/punchblock/translator/asterisk/component/input_spec.rb:467:in `block (8 levels) in <module:Component>'
3) Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Output#renderer when MRCPRecog completes with a match should send a match complete event
Failure/Error: end.root
NoMethodError:
undefined method `root' for #<RubySpeech::NLSML::Document:0xc91bd7c>
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:192:in `block (7 levels) in <module:Component>'
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:196:in `block (7 levels) in <module:Component>'
4) Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Output#renderer asterisk when MRCPRecog completes with a match should send a match complete event
Failure/Error: end.root
NoMethodError:
undefined method `root' for #<RubySpeech::NLSML::Document:0xd2b60f8>
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:192:in `block (7 levels) in <module:Component>'
# ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:196:in `block (7 levels) in <module:Component>'
Finished in 1 minute 6.17 seconds
1659 examples, 4 failures, 30 pending
Failed examples:
rspec ./spec/punchblock/translator/asterisk/component/input_spec.rb:437 # Punchblock::Translator::Asterisk::Component::Input#execute inter-digit-timeout a positive number with a trailing range repeat when the buffer matches the grammar should fire a match on timeout
rspec ./spec/punchblock/translator/asterisk/component/input_spec.rb:459 # Punchblock::Translator::Asterisk::Component::Input#execute inter-digit-timeout a positive number with a trailing range repeat when the buffer matches the grammar on the first keypress should fire a match on timeout
rspec ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:195 # Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Output#renderer when MRCPRecog completes with a match should send a match complete event
rspec ./spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb:195 # Punchblock::Translator::Asterisk::Component::MRCPNativePrompt Output#renderer asterisk when MRCPRecog completes with a match should send a match complete event
[Coveralls] Outside the Travis environment, not sending data.
D, [2014-04-30T11:10:24.177023 #5828] DEBUG -- : Terminating 4 actors...
/home/rogg/.rvm/rubies/ruby-2.1.0/bin/ruby -S rspec spec/punchblock/client/component_registry_spec.rb spec/punchblock/client_spec.rb spec/punchblock/command/accept_spec.rb spec/punchblock/command/answer_spec.rb spec/punchblock/command/dial_spec.rb spec/punchblock/command/hangup_spec.rb spec/punchblock/command/join_spec.rb spec/punchblock/command/mute_spec.rb spec/punchblock/command/redirect_spec.rb spec/punchblock/command/reject_spec.rb spec/punchblock/command/unjoin_spec.rb spec/punchblock/command/unmute_spec.rb spec/punchblock/command_node_spec.rb spec/punchblock/component/asterisk/agi/command_spec.rb spec/punchblock/component/asterisk/ami/action_spec.rb spec/punchblock/component/component_node_spec.rb spec/punchblock/component/input_spec.rb spec/punchblock/component/output_spec.rb spec/punchblock/component/prompt_spec.rb spec/punchblock/component/receive_fax_spec.rb spec/punchblock/component/record_spec.rb spec/punchblock/component/send_fax_spec.rb spec/punchblock/connection/asterisk_spec.rb spec/punchblock/connection/freeswitch_spec.rb spec/punchblock/connection/xmpp_spec.rb spec/punchblock/event/answered_spec.rb spec/punchblock/event/asterisk/ami/event_spec.rb spec/punchblock/event/complete_spec.rb spec/punchblock/event/dtmf_spec.rb spec/punchblock/event/end_spec.rb spec/punchblock/event/input_timers_started_spec.rb spec/punchblock/event/joined_spec.rb spec/punchblock/event/offer_spec.rb spec/punchblock/event/ringing_spec.rb spec/punchblock/event/started_speaking_spec.rb spec/punchblock/event/stopped_speaking_spec.rb spec/punchblock/event/unjoined_spec.rb spec/punchblock/protocol_error_spec.rb spec/punchblock/ref_spec.rb spec/punchblock/translator/asterisk/call_spec.rb spec/punchblock/translator/asterisk/component/asterisk/agi_command_spec.rb spec/punchblock/translator/asterisk/component/asterisk/ami_action_spec.rb spec/punchblock/translator/asterisk/component/composed_prompt_spec.rb spec/punchblock/translator/asterisk/component/input_spec.rb spec/punchblock/translator/asterisk/component/mrcp_native_prompt_spec.rb spec/punchblock/translator/asterisk/component/mrcp_prompt_spec.rb spec/punchblock/translator/asterisk/component/output_spec.rb spec/punchblock/translator/asterisk/component/record_spec.rb spec/punchblock/translator/asterisk/component/stop_by_redirect_spec.rb spec/punchblock/translator/asterisk/component_spec.rb spec/punchblock/translator/asterisk_spec.rb spec/punchblock/translator/freeswitch/call_spec.rb spec/punchblock/translator/freeswitch/component/flite_output_spec.rb spec/punchblock/translator/freeswitch/component/input_spec.rb spec/punchblock/translator/freeswitch/component/output_spec.rb spec/punchblock/translator/freeswitch/component/record_spec.rb spec/punchblock/translator/freeswitch/component/tts_output_spec.rb spec/punchblock/translator/freeswitch/component_spec.rb spec/punchblock/translator/freeswitch_spec.rb spec/punchblock/uri_list_spec.rb spec/punchblock_spec.rb --color failed
Hopefully this information can help us in the right direction?
Sincerely, Baldvin
Unfortunately that doesn't help, no. That basically says everything is fine. Are you able to try this on another machine to confirm it can be reproduced? If so, we'll be able to look for commonalities at least.
I just installed a completely fresh machine with Ubuntu 12.04.3 LTS followed up by installing Asterisk 11.9.0 from source and rvm, rails 2.1.0 and adhearsion. After going through this, I get the exact same error on this fresh install.
The only thing I was not sure about during the setup process was if I should install ruby_speech before adhearsion or have adhearsion install it as a dependency. I opted to install ruby_speech before adhearsion.
I've tried leaving out adhearsion-asr which leaves me with no crash but the ask
terminates on the first digit and in general I think I'm just heading in a wrong direction when I start to consider such things.
So this leaves me with a reproducible error on Ubuntu 12.04.3 LTS but I'm not sure what steps to take now to go forward. My current gem list
in case it matters:
*** LOCAL GEMS ***
activemodel (4.1.0, 3.2.17)
activerecord (4.1.0, 3.2.17)
activerecord-sqlserver-adapter (3.2.12, 2.3.8)
activesupport (4.1.0, 3.2.17)
adhearsion (2.5.3)
adhearsion-activerecord (0.2.0)
adhearsion-asr (1.2.0)
adhearsion-asterisk (1.5.1)
adhearsion-loquacious (1.9.3)
arel (5.0.1.20140414130214, 3.0.3)
axiom-types (0.1.1)
bigdecimal (1.2.3)
blather (1.0.0)
builder (3.2.2, 3.0.4)
bundler (1.5.0)
bundler-unload (1.0.2)
celluloid (0.16.0.pre, 0.15.2)
celluloid-io (0.16.0.pre, 0.15.0)
coderay (1.1.0, 1.0.9)
coercible (1.0.0)
connection_pool (1.2.0)
countdownlatch (1.0.0)
deep_merge (1.0.1)
descendants_tracker (0.0.4)
diff-lcs (1.2.5)
equalizer (0.0.9)
eventmachine (1.0.3)
executable-hooks (1.2.6)
ffi (1.9.3)
future-resource (1.1.0)
gem-wrappers (1.2.4, 1.2.1)
girl_friday (0.11.2)
has-guarded-handlers (1.6.0)
hitimes (1.2.1)
i18n (0.6.9)
ice_nine (0.11.0)
io-console (0.4.2)
json (1.8.1)
little-plugger (1.1.3)
logging (1.8.2)
method_source (0.8.2)
mini_portile (0.5.3)
minitest (5.3.3, 4.7.5)
multi_json (1.9.3)
niceogiri (1.1.2)
nio4r (1.0.0)
nokogiri (1.6.2.rc2, 1.6.1)
pry (1.0.0.pre1, 0.9.12.6)
psych (2.0.2)
punchblock (2.5.2)
rake (10.3.1, 10.1.0)
rdoc (4.1.0)
rspec (2.14.1)
rspec-core (2.14.8)
rspec-expectations (2.14.5)
rspec-mocks (2.14.6)
rubinius-actor (0.0.2)
rubinius-core-api (0.0.1)
ruby_ami (2.2.0)
ruby_fs (1.1.1)
ruby_jid (1.0.0)
ruby_speech (2.3.2)
rubygems-bundler (1.4.2)
rvm (1.11.3.8)
slop (3.5.0)
state_machine (1.2.0)
test-unit (2.1.0.0)
thor (0.18.1)
thread_safe (0.3.3)
timers (2.0.0, 1.1.0)
tiny_tds (0.6.1)
tzinfo (1.1.0, 0.3.39)
virtus (1.0.2)
Are you using any particularly interesting hardware? Is it something I could reproduce all the way to the hardware, for example EC2?
I'll try to reproduce this when I get some spare time, hopefully this week.
I'm afraid this is running on very uninteresting hardware. Intel Intel(R) Core(TM) i5-4440 CPU @ 3.10GHz with 4GB memory and a GIGABYTE mother board called GA-B85M-HD3.
Some more details:
Architecture: i686 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 60 Stepping: 3 CPU MHz: 1900.000 BogoMIPS: 6185.72 Virtualization: VT-x L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 6144K
and
total used free shared buffers cached
Mem: 8161216 1149100 7012116 0 142096 860504 -/+ buffers/cache: 146500 8014716 Swap: 8261628 0 8261628
That's about it.
Just for adding to the information on this. Re-installed a new machine. Different (older) hardware but same operating system. Exact same problem.
@baldvinhansson You mentioned above "rvm and rails 2.1.0" but I think that's a typo. I think you meant 'Ruby 2.1.0', but can you confirm the exact version of Ruby you have installed?
I'll try to reproduce this on a 32-but Ubuntu Hardy VM. If you have any specific steps you can share for how you installed everything, that would be appreciated.
Edit, not Hardy, but Precise (12.04).
Yes, I meant Ruby 2.1.0.
ruby -v
gives me ruby 2.1.0p0 (2013-12-25 revision 44422) [i686-linux]
This is I think more or less what I did to get things from zero to hero:
Ubuntu 12.04.3 installed pretty basic, not LAMP but ssh ... don't think there's much more interesting going on there. Then (not necessarily every single step ... but gives the big picture at least)
sudo apt-get update sudo apt-get -y install gcc sudo apt-get -y install doxygen sudo apt-get -y install libsqlite3-dev sudo apt-get -y install linux-source sudo apt-get -y install kernel-package ncurses-dev sudo apt-get -y install bison flex sox libncurses5-dev libnewt-dev mpg123 sudo apt-get -y install libxml2-dev sudo apt-get -y install gtk+-2.0 sudo apt-get -y install libssl-dev sudo apt-get -y install curl sudo apt-get -y install libcurl4-openssl-dev sudo apt-get -y install freetds-dev freetds-bin tdsodbc
sudo apt-get -y install curl libmysqlclient-dev sudo apt-get install samba
\curl -sSL https://get.rvm.io | bash source ~/.rvm/scripts/rvm # OR you can log out and in again before continuing and then don't execute this line rvm requirements rvm install 2.1.0 rvm --default use 2.1.0
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/dahdi-linux/dahdi-linux-current.tar.gz wget http://downloads.asterisk.org/pub/telephony/dahdi-tools/dahdi-tools-current.tar.gz
and unpack, compile and install all of this Asterisk stuff.
Then just running a basic adhearsion app (set it up and did a bundle install in the folder and that was all) and it comes crashing down as soon as I hit # without any digits. If I press 1# no problem. Any digit or string of digits works. But don't dare to hit # without entering some digit first.
And the bundle install log shows (in case it makes things more clear)
Gem files will remain installed in /home/mycomputer/.rvm/gems/ruby-2.1.0/gems/tiny_tds-0.6.1 for inspection.
Results logged to /home/mycomputer/.rvm/gems/ruby-2.1.0/extensions/x86-linux/2.1.0/tiny_tds-0.6.1/gem_make.out
/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:89:in `run' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/ext_conf_builder.rb:38:in `block in build' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/tempfile.rb:324:in `open' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/ext_conf_builder.rb:17:in `build' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:161:in `block (2 levels) in build_extension' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:160:in `chdir' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:160:in `block in build_extension' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:159:in `synchronize' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:159:in `build_extension' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:198:in `block in build_extensions' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:195:in `each' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/ext/builder.rb:195:in `build_extensions' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/installer.rb:677:in `build_extensions' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/installer.rb:232:in `install' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/source/rubygems.rb:101:in `block in install' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/rubygems_integration.rb:118:in `preserve_paths' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/source/rubygems.rb:94:in `install' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:111:in `block in install_gem_from_spec' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/rubygems_integration.rb:150:in `with_build_args' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:110:in `install_gem_from_spec' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:295:in `block in install_sequentially' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/forwardable.rb:183:in `each' \n/home/mycomputer/.rvm/rubies/ruby-2.1.0/lib/ruby/2.1.0/forwardable.rb:183:in `each' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:294:in `install_sequentially' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:97:in `run' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/installer.rb:15:in `install' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/cli.rb:257:in `install' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/vendor/thor/command.rb:27:in `run' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_command' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/vendor/thor.rb:363:in `dispatch' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/vendor/thor/base.rb:438:in `start' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/cli.rb:10:in `start' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/bin/bundle:22:in `block in <top (required)>' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/lib/bundler/friendly_errors.rb:5:in `with_friendly_errors' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/gems/bundler-1.5.0/bin/bundle:22:in `<top (required)>' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/bin/bundle:23:in `load' \n/home/mycomputer/.rvm/gems/ruby-2.1.0@global/bin/bundle:23:in `<main>' \n/home/mycomputer/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `eval' \n/home/mycomputer/.rvm/gems/ruby-2.1.0/bin/ruby_executable_hooks:15:in `<main>'
I, [2014-05-08T15:54:23.756208 #15892] INFO -- : 0: rake (10.3.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rake-10.3.1.gemspec
I, [2014-05-08T15:54:23.757084 #15892] INFO -- : 0: i18n (0.6.9) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/i18n-0.6.9.gemspec
I, [2014-05-08T15:54:23.757855 #15892] INFO -- : 0: multi_json (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/multi_json-1.9.3.gemspec
I, [2014-05-08T15:54:23.758599 #15892] INFO -- : 0: activesupport (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activesupport-3.2.17.gemspec
I, [2014-05-08T15:54:23.759320 #15892] INFO -- : 0: builder (3.0.4) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/builder-3.0.4.gemspec
I, [2014-05-08T15:54:23.760139 #15892] INFO -- : 0: activemodel (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activemodel-3.2.17.gemspec
I, [2014-05-08T15:54:23.760906 #15892] INFO -- : 0: arel (3.0.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/arel-3.0.3.gemspec
I, [2014-05-08T15:54:23.761605 #15892] INFO -- : 0: tzinfo (0.3.39) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/tzinfo-0.3.39.gemspec
I, [2014-05-08T15:54:23.762366 #15892] INFO -- : 0: activerecord (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activerecord-3.2.17.gemspec
I, [2014-05-08T15:54:23.763093 #15892] INFO -- : 0: activerecord-sqlserver-adapter (3.2.12) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activerecord-sqlserver-adapter-3.2.12.gemspec
I, [2014-05-08T15:54:23.763840 #15892] INFO -- : 0: adhearsion-loquacious (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-loquacious-1.9.3.gemspec
I, [2014-05-08T15:54:23.764555 #15892] INFO -- : 0: bundler (1.5.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0@global/specifications/bundler-1.5.0.gemspec
I, [2014-05-08T15:54:23.765300 #15892] INFO -- : 0: timers (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/timers-1.1.0.gemspec
I, [2014-05-08T15:54:23.765996 #15892] INFO -- : 0: celluloid (0.15.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/celluloid-0.15.2.gemspec
I, [2014-05-08T15:54:23.766744 #15892] INFO -- : 0: countdownlatch (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/countdownlatch-1.0.0.gemspec
I, [2014-05-08T15:54:23.767468 #15892] INFO -- : 0: deep_merge (1.0.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/deep_merge-1.0.1.gemspec
I, [2014-05-08T15:54:23.768228 #15892] INFO -- : 0: ffi (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ffi-1.9.3.gemspec
I, [2014-05-08T15:54:23.768991 #15892] INFO -- : 0: connection_pool (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/connection_pool-1.2.0.gemspec
I, [2014-05-08T15:54:23.769717 #15892] INFO -- : 0: rubinius-core-api (0.0.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rubinius-core-api-0.0.1.gemspec
I, [2014-05-08T15:54:23.770436 #15892] INFO -- : 0: rubinius-actor (0.0.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rubinius-actor-0.0.2.gemspec
I, [2014-05-08T15:54:23.771157 #15892] INFO -- : 0: girl_friday (0.11.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/girl_friday-0.11.2.gemspec
I, [2014-05-08T15:54:23.771941 #15892] INFO -- : 0: has-guarded-handlers (1.6.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/has-guarded-handlers-1.6.0.gemspec
I, [2014-05-08T15:54:23.772665 #15892] INFO -- : 0: little-plugger (1.1.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/little-plugger-1.1.3.gemspec
I, [2014-05-08T15:54:23.773387 #15892] INFO -- : 0: logging (1.8.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/logging-1.8.2.gemspec
I, [2014-05-08T15:54:23.774120 #15892] INFO -- : 0: coderay (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/coderay-1.1.0.gemspec
I, [2014-05-08T15:54:23.774877 #15892] INFO -- : 0: method_source (0.8.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/method_source-0.8.2.gemspec
I, [2014-05-08T15:54:23.775624 #15892] INFO -- : 0: slop (3.5.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/slop-3.5.0.gemspec
I, [2014-05-08T15:54:23.776315 #15892] INFO -- : 0: pry (0.9.12.6) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/pry-0.9.12.6.gemspec
I, [2014-05-08T15:54:23.777073 #15892] INFO -- : 0: eventmachine (1.0.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/eventmachine-1.0.3.gemspec
I, [2014-05-08T15:54:23.777830 #15892] INFO -- : 0: mini_portile (0.5.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/mini_portile-0.5.3.gemspec
I, [2014-05-08T15:54:23.778524 #15892] INFO -- : 0: nokogiri (1.6.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/nokogiri-1.6.1.gemspec
I, [2014-05-08T15:54:23.779244 #15892] INFO -- : 0: niceogiri (1.1.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/niceogiri-1.1.2.gemspec
I, [2014-05-08T15:54:23.780021 #15892] INFO -- : 0: blather (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/blather-1.0.0.gemspec
I, [2014-05-08T15:54:23.780772 #15892] INFO -- : 0: future-resource (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/future-resource-1.1.0.gemspec
I, [2014-05-08T15:54:23.781471 #15892] INFO -- : 0: nio4r (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/nio4r-1.0.0.gemspec
I, [2014-05-08T15:54:23.782223 #15892] INFO -- : 0: celluloid-io (0.15.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/celluloid-io-0.15.0.gemspec
I, [2014-05-08T15:54:23.782954 #15892] INFO -- : 0: ruby_ami (2.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_ami-2.2.0.gemspec
I, [2014-05-08T15:54:23.783751 #15892] INFO -- : 0: ruby_fs (1.1.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_fs-1.1.1.gemspec
I, [2014-05-08T15:54:23.784488 #15892] INFO -- : 0: ruby_jid (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_jid-1.0.0.gemspec
I, [2014-05-08T15:54:23.785208 #15892] INFO -- : 0: ruby_speech (2.3.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_speech-2.3.2.gemspec
I, [2014-05-08T15:54:23.785942 #15892] INFO -- : 0: state_machine (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/state_machine-1.2.0.gemspec
I, [2014-05-08T15:54:23.786690 #15892] INFO -- : 0: thread_safe (0.3.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/thread_safe-0.3.3.gemspec
I, [2014-05-08T15:54:23.787432 #15892] INFO -- : 0: descendants_tracker (0.0.4) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/descendants_tracker-0.0.4.gemspec
I, [2014-05-08T15:54:23.788151 #15892] INFO -- : 0: ice_nine (0.11.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ice_nine-0.11.0.gemspec
I, [2014-05-08T15:54:23.788909 #15892] INFO -- : 0: axiom-types (0.1.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/axiom-types-0.1.1.gemspec
I, [2014-05-08T15:54:23.789620 #15892] INFO -- : 0: coercible (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/coercible-1.0.0.gemspec
I, [2014-05-08T15:54:23.790356 #15892] INFO -- : 0: equalizer (0.0.9) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/equalizer-0.0.9.gemspec
I, [2014-05-08T15:54:23.791073 #15892] INFO -- : 0: virtus (1.0.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/virtus-1.0.2.gemspec
I, [2014-05-08T15:54:23.791854 #15892] INFO -- : 0: punchblock (2.5.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/punchblock-2.5.2.gemspec
I, [2014-05-08T15:54:23.792578 #15892] INFO -- : 0: thor (0.18.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/thor-0.18.1.gemspec
I, [2014-05-08T15:54:23.793353 #15892] INFO -- : 0: adhearsion (2.5.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-2.5.3.gemspec
I, [2014-05-08T15:54:23.794058 #15892] INFO -- : 0: adhearsion-asr (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-asr-1.2.0.gemspec
I, [2014-05-08T15:54:23.794798 #15892] INFO -- : 0: adhearsion-asterisk (1.5.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-asterisk-1.5.1.gemspec
I, [2014-05-08T15:54:23.795557 #15892] INFO -- : 0: diff-lcs (1.2.5) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/diff-lcs-1.2.5.gemspec
I, [2014-05-08T15:54:23.796275 #15892] INFO -- : 0: rspec-core (2.14.8) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-core-2.14.8.gemspec
I, [2014-05-08T15:54:23.797021 #15892] INFO -- : 0: rspec-expectations (2.14.5) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-expectations-2.14.5.gemspec
I, [2014-05-08T15:54:23.797769 #15892] INFO -- : 0: rspec-mocks (2.14.6) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-mocks-2.14.6.gemspec
I, [2014-05-08T15:54:23.798492 #15892] INFO -- : 0: rspec (2.14.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-2.14.1.gemspec
I, [2014-05-08T15:54:26.317438 #15892] INFO -- : 0: tiny_tds (0.6.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/tiny_tds-0.6.1.gemspec
Your output from bundle install looks like you've not provided all of it, and looks like a gem with native extensions failed to install...
Here is what I have done:
sudo apt-get install curl libpcre3-dev git-core asterisk
\curl -sSL https://get.rvm.io | bash -s stable --ruby=2.1.0
gem install adhearsion
ahn create testapp
testapp/app/call_controllers/default_controller.rb
:class DefaultController < Adhearsion::CallController
def run
answer
result = ask 'WhatMonth', timeout: 3.seconds, terminator: '#', limit: 4
end
end
gem install json
bundle && ahn -
The app worked fine for me, no segfault at all.
Yes, sorry about that. Did not provide the whole file because the log file wasn't clean when I started it because I copied it accidentally with the app from the other computer and then it got appended to.
Below is a complete log file after doing bundle install (though all the required gems were already installed at the time I did this now I think it should be relevant?). As far as I can tell there are no gems missing or errors of any kind that should affect the adhearsion app?
# Logfile created on 2014-05-08 16:48:09 +0000 by logger.rb/44203
I, [2014-05-08T16:48:09.605213 #18891] INFO -- : 0: rake (10.3.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rake-10.3.1.gemspec
I, [2014-05-08T16:48:09.606172 #18891] INFO -- : 0: i18n (0.6.9) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/i18n-0.6.9.gemspec
I, [2014-05-08T16:48:09.606991 #18891] INFO -- : 0: multi_json (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/multi_json-1.9.3.gemspec
I, [2014-05-08T16:48:09.607816 #18891] INFO -- : 0: activesupport (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activesupport-3.2.17.gemspec
I, [2014-05-08T16:48:09.608636 #18891] INFO -- : 0: builder (3.0.4) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/builder-3.0.4.gemspec
I, [2014-05-08T16:48:09.609468 #18891] INFO -- : 0: activemodel (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activemodel-3.2.17.gemspec
I, [2014-05-08T16:48:09.610293 #18891] INFO -- : 0: arel (3.0.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/arel-3.0.3.gemspec
I, [2014-05-08T16:48:09.611003 #18891] INFO -- : 0: tzinfo (0.3.39) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/tzinfo-0.3.39.gemspec
I, [2014-05-08T16:48:09.611820 #18891] INFO -- : 0: activerecord (3.2.17) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activerecord-3.2.17.gemspec
I, [2014-05-08T16:48:09.612653 #18891] INFO -- : 0: activerecord-sqlserver-adapter (3.2.12) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/activerecord-sqlserver-adapter-3.2.12.gemspec
I, [2014-05-08T16:48:09.613488 #18891] INFO -- : 0: adhearsion-loquacious (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-loquacious-1.9.3.gemspec
I, [2014-05-08T16:48:09.614298 #18891] INFO -- : 0: bundler (1.5.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0@global/specifications/bundler-1.5.0.gemspec
I, [2014-05-08T16:48:09.615060 #18891] INFO -- : 0: timers (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/timers-1.1.0.gemspec
I, [2014-05-08T16:48:09.615930 #18891] INFO -- : 0: celluloid (0.15.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/celluloid-0.15.2.gemspec
I, [2014-05-08T16:48:09.616815 #18891] INFO -- : 0: countdownlatch (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/countdownlatch-1.0.0.gemspec
I, [2014-05-08T16:48:09.617658 #18891] INFO -- : 0: deep_merge (1.0.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/deep_merge-1.0.1.gemspec
I, [2014-05-08T16:48:09.618445 #18891] INFO -- : 0: ffi (1.9.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ffi-1.9.3.gemspec
I, [2014-05-08T16:48:09.619253 #18891] INFO -- : 0: connection_pool (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/connection_pool-1.2.0.gemspec
I, [2014-05-08T16:48:09.620017 #18891] INFO -- : 0: rubinius-core-api (0.0.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rubinius-core-api-0.0.1.gemspec
I, [2014-05-08T16:48:09.620801 #18891] INFO -- : 0: rubinius-actor (0.0.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rubinius-actor-0.0.2.gemspec
I, [2014-05-08T16:48:09.621640 #18891] INFO -- : 0: girl_friday (0.11.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/girl_friday-0.11.2.gemspec
I, [2014-05-08T16:48:09.625702 #18891] INFO -- : 0: has-guarded-handlers (1.6.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/has-guarded-handlers-1.6.0.gemspec
I, [2014-05-08T16:48:09.626574 #18891] INFO -- : 0: little-plugger (1.1.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/little-plugger-1.1.3.gemspec
I, [2014-05-08T16:48:09.627411 #18891] INFO -- : 0: logging (1.8.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/logging-1.8.2.gemspec
I, [2014-05-08T16:48:09.628248 #18891] INFO -- : 0: coderay (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/coderay-1.1.0.gemspec
I, [2014-05-08T16:48:09.629017 #18891] INFO -- : 0: method_source (0.8.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/method_source-0.8.2.gemspec
I, [2014-05-08T16:48:09.629831 #18891] INFO -- : 0: slop (3.5.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/slop-3.5.0.gemspec
I, [2014-05-08T16:48:09.630652 #18891] INFO -- : 0: pry (0.9.12.6) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/pry-0.9.12.6.gemspec
I, [2014-05-08T16:48:09.631497 #18891] INFO -- : 0: eventmachine (1.0.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/eventmachine-1.0.3.gemspec
I, [2014-05-08T16:48:09.632244 #18891] INFO -- : 0: mini_portile (0.5.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/mini_portile-0.5.3.gemspec
I, [2014-05-08T16:48:09.633010 #18891] INFO -- : 0: nokogiri (1.6.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/nokogiri-1.6.1.gemspec
I, [2014-05-08T16:48:09.633789 #18891] INFO -- : 0: niceogiri (1.1.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/niceogiri-1.1.2.gemspec
I, [2014-05-08T16:48:09.634596 #18891] INFO -- : 0: blather (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/blather-1.0.0.gemspec
I, [2014-05-08T16:48:09.635417 #18891] INFO -- : 0: future-resource (1.1.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/future-resource-1.1.0.gemspec
I, [2014-05-08T16:48:09.636245 #18891] INFO -- : 0: nio4r (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/nio4r-1.0.0.gemspec
I, [2014-05-08T16:48:09.637006 #18891] INFO -- : 0: celluloid-io (0.15.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/celluloid-io-0.15.0.gemspec
I, [2014-05-08T16:48:09.637747 #18891] INFO -- : 0: ruby_ami (2.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_ami-2.2.0.gemspec
I, [2014-05-08T16:48:09.638551 #18891] INFO -- : 0: ruby_fs (1.1.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_fs-1.1.1.gemspec
I, [2014-05-08T16:48:09.639341 #18891] INFO -- : 0: ruby_jid (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_jid-1.0.0.gemspec
I, [2014-05-08T16:48:09.640086 #18891] INFO -- : 0: ruby_speech (2.3.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ruby_speech-2.3.2.gemspec
I, [2014-05-08T16:48:09.640953 #18891] INFO -- : 0: state_machine (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/state_machine-1.2.0.gemspec
I, [2014-05-08T16:48:09.641708 #18891] INFO -- : 0: thread_safe (0.3.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/thread_safe-0.3.3.gemspec
I, [2014-05-08T16:48:09.642526 #18891] INFO -- : 0: descendants_tracker (0.0.4) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/descendants_tracker-0.0.4.gemspec
I, [2014-05-08T16:48:09.643301 #18891] INFO -- : 0: ice_nine (0.11.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/ice_nine-0.11.0.gemspec
I, [2014-05-08T16:48:09.644095 #18891] INFO -- : 0: axiom-types (0.1.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/axiom-types-0.1.1.gemspec
I, [2014-05-08T16:48:09.644980 #18891] INFO -- : 0: coercible (1.0.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/coercible-1.0.0.gemspec
I, [2014-05-08T16:48:09.645754 #18891] INFO -- : 0: equalizer (0.0.9) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/equalizer-0.0.9.gemspec
I, [2014-05-08T16:48:09.646574 #18891] INFO -- : 0: virtus (1.0.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/virtus-1.0.2.gemspec
I, [2014-05-08T16:48:09.647415 #18891] INFO -- : 0: punchblock (2.5.2) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/punchblock-2.5.2.gemspec
I, [2014-05-08T16:48:09.648240 #18891] INFO -- : 0: thor (0.18.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/thor-0.18.1.gemspec
I, [2014-05-08T16:48:09.648953 #18891] INFO -- : 0: adhearsion (2.5.3) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-2.5.3.gemspec
I, [2014-05-08T16:48:09.649744 #18891] INFO -- : 0: adhearsion-asr (1.2.0) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-asr-1.2.0.gemspec
I, [2014-05-08T16:48:09.650537 #18891] INFO -- : 0: adhearsion-asterisk (1.5.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/adhearsion-asterisk-1.5.1.gemspec
I, [2014-05-08T16:48:09.651353 #18891] INFO -- : 0: diff-lcs (1.2.5) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/diff-lcs-1.2.5.gemspec
I, [2014-05-08T16:48:09.652116 #18891] INFO -- : 0: rspec-core (2.14.8) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-core-2.14.8.gemspec
I, [2014-05-08T16:48:09.652898 #18891] INFO -- : 0: rspec-expectations (2.14.5) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-expectations-2.14.5.gemspec
I, [2014-05-08T16:48:09.653706 #18891] INFO -- : 0: rspec-mocks (2.14.6) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-mocks-2.14.6.gemspec
I, [2014-05-08T16:48:09.654520 #18891] INFO -- : 0: rspec (2.14.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/rspec-2.14.1.gemspec
I, [2014-05-08T16:48:09.655299 #18891] INFO -- : 0: tiny_tds (0.6.1) from /home/mycomputer/.rvm/gems/ruby-2.1.0/specifications/tiny_tds-0.6.1.gemspec
@baldvinhansson Could you also post trace level Adhearsion logs so we can see what Asterisk sent to Adhearsion right before the segfault?
Also, for completeness' sake, I compiled and installed Asterisk 11. Still no segfault was observed.
I've now applied your Gemfile.lock (and installed the required freetds-dev
package) and re-run the test. Still no segfaults.
Ok I finally reproduced this. I had missed the detail where you have to press #
before any other key. You are right, this does segfault.
We'll look into it.
Thank you so much for sticking with this long enough to reproduce it. I am used to dealing with this kind of problems from where you are sitting so it is interesting to experience this from the user end this time. I am ready to do whatever I can to help sort this out. I really appreciate your attention to this matter!
Dear sir(s). Realize I'm in no position to push or expect anything here, but I am truly interested in getting my first Adhearsion application up and running and this issue is a bit of a showstopper for that at the moment. I just wonder if there is any chance of giving me any kind of indication about when anyone might look into this? I just ask because I am trying to decide if I wait or if I need to figure out another way of getting the functionality I need implemented. Your help here is very appreciated and please excuse me for sounding as if I am rushing anyone on this. Just trying to evaluate the status of things.
I will take a look before Monday.
So I was unable to reproduce this on OS X. I tried a repro on a Ubuntu VM, but was foiled by lack of internet access. That's what I'm working on now.
If there is anything I can do to help I am ready, able and willing. Though I lack but layman's knowledge compared to you guys I guess. On May 23, 2014 5:42 PM, "Ben Langfeld" notifications@github.com wrote:
So I was unable to reproduce this on OS X. I tried a repro on a Ubuntu VM, but was foiled by lack of internet access. That's what I'm working on now.
— Reply to this email directly or view it on GitHubhttps://github.com/benlangfeld/ruby_speech/issues/30#issuecomment-44039852 .
Confirmed that I cannot reproduce this on a Ubuntu VM (Telephony-Dev-Box) with Ruby 2.0.0-p451 installed via rbenv. I'll try testing 2.1.1 installed via rbenv and then rvm.
Working under Ruby 2.1.1 installed via rbenv. I wonder if this is going to turn out to be yet another rvm problem...
Unable to reproduce using Ruby 2.1.0 or 2.1.1 installed via RVM. I'm lost, I just can't make this segfault. I'm going to put together a full Vagrant project for you to confirm this.
Ok, I got a segfault when I switch to a 32bit VM! Now we're cooking, more details coming soon.
Ok, here's a minimal repro which segfaults on a 32bit Ubuntu VM with Ruby 2.1.0:
require 'ruby_speech'
grammar = RubySpeech::GRXML.draw mode: :dtmf, root: 'digits' do
rule id: 'digits', scope: 'public' do
item repeat: "0-4" do
one_of do
0.upto(9) { |d| item { d.to_s } }
end
end
end
end
matcher = RubySpeech::GRXML::Matcher.new grammar
p matcher.match('1')
p matcher.match('')
The #
character is left off here because it is never matched against the grammar, instead being removed by the recognizer in Punchblock.
If the repeat is changed to 4
rather than the range, the segfault does not occur.
So @baldvinhansson, considering I can only repro this on a 32bit VM, could you try testing on a 64bit kernel and letting me know if it works better? This is a strange edge case, as described above, and your fastest resolution will be 64bit.
It's been great to watch you work on this and I will download and install 64bit Ubuntu 12.04 tomorrow. As soon as I have it up and running I will test and report back here. Again, thank you all so much for your hard work!
I can confirm this works like a charm on 64 bits. That is a very acceptable solution for me at this time and until further notice, this is a closed case as far as my expectations are concerned. I hope catching this contributes to the project in some way but even if not, I thank you for your great work and support which to me is very valuable and builds confidence in Adhearsion and everything that's needed to run apps with Adhearsion. For me it's back to writing code now and looking forward to seeing what can be created using this great framework.
I'll leave this ticket open incase I find time to look at it again, but for now we'll just state that we've got problems on 32bit and it should be avoided. Contributions in this regard are welcome, but for now I have more urgent things to deal with.
Hello.
I want to collect a four digit PIN from the caller for further processing in my application.
Adhearsion 2.5.3, doing:
and then calling in and hitting # (the terminator digit) without any other DTMF input before the timeout passes, results in a crash.
Am I doing something wrong or is there a bug that I'm hitting?
Ruby installed roughly by:
I can't see any way to attach log files so I'm posting full details below. Hope this is ok.
****** Output from pcre-config --version 8.12
****** Gemfile.lock contents:
*** Log from running ahn start digilog