Recieve real-time Asterisk AMI events on rails app Outside of Adhearsion -


i have rails application i'am trying real time events asterisk through ami.

i created script originate calls adhearsion source code without creating new adhearsion project.

i created class extending adhearsion's managerinterface class , overriding event_message_received method. rails cli if calls , press enter 2 or 3 times event have intervene it.

here code :

 class astercall < adhearsion::voip::asterisk::manager::managerinterface def initialize super(:host => "host", :username => "username", :password => "password", :events => true) connect! end def self.click_call(number, exten, name) # asterisk = connect() originate(:channel => "sip/#{exten}", :context => "from-internal", :exten => number, :priority => "1", :caller_id => "calling #{name}") end def event_message_received(event) if(event.kind_of? adhearsion::voip::asterisk::manager::managerinterfaceevent ) puts event.inspect end end end 

do have run background process that. if do, how going it????

thanks in advance

while possible use adhearsion ami classes outside of adhearsion app, it's not supported use. part of adhearsion app provides daemonization , eventing subsystems needed process events received asterisk, neither of necessary origination doing before. if insist on using library outside of adhearsion app need more subclass managerinterface. careful: not want (mostly performance reasons) cause new ami connection created/torn down each rails web request.

i suggest use adhearsion app process events ami , use drb handle communication between rails , adhearsion. approach has worked in several situations needed asterisk events accessible in rails (for example, displaying call queue statistics).


Comments

Popular posts from this blog

javascript - backbone.js Collection.add() doesn't `construct` (`initialize`) an object -

php - Get uncommon values from two or more arrays -

Adding duplicate array rows in Php -