Using adhearsion-asr 1.5.0, I noticed that hanging up during an #ask prompt does not trigger the expected Adhearsion::Call::Hangup. Rather, it returns an AdhearsionASR::Result with the following state:
This is true, despite other welcome fixes like dfc03b9, which raise Hangup for expired call conditions.
Suggestion
If a telephony engine supports returning partial interpretation in the midst of hang-up, I could see status=:hangup being potentially useful. I am not aware of such a case (if someone is, then please do mention!). In lieu of info on usefulness for status=:hangup, I recommend that adhearsion-asr raise Adhearsion::Call::Hangup instead.
Workaround
For the time being, those who wish to have the traditional Hangup exception behavior can do the following:
result = ask
raise Adhearsion::Call::Hangup if result.status.eql? :hangup
Thanks for the suggestion, @sfgeorge. I agree entirely. I'd definitely accept this against adhearsion/adhearsion. I'd have to review more carefully the backward compatibility arguments in this project.
Issue
Using adhearsion-asr 1.5.0, I noticed that hanging up during an
#ask
prompt does not trigger the expectedAdhearsion::Call::Hangup
. Rather, it returns anAdhearsionASR::Result
with the following state:This is true, despite other welcome fixes like dfc03b9, which raise Hangup for expired call conditions.
Suggestion
If a telephony engine supports returning partial interpretation in the midst of hang-up, I could see status=:hangup being potentially useful. I am not aware of such a case (if someone is, then please do mention!). In lieu of info on usefulness for status=:hangup, I recommend that adhearsion-asr raise
Adhearsion::Call::Hangup
instead.Workaround
For the time being, those who wish to have the traditional Hangup exception behavior can do the following: