# File lib/adhearsion/voip/dial_plan.rb, line 81 def handle(call) if call.failed_call? environment = ExecutionEnvironment.new(call) call.extract_failed_reason_from(environment) raise FailedExtensionCallException.new(environment) end starting_entry_point = entry_point_for call raise NoContextError, "No dialplan entry point for call context '#{call.context}' -- Ignoring call!" unless starting_entry_point @context = ExecutionEnvironment.new(call, starting_entry_point) inject_context_names_into_environment(@context) @context.run end