def enter(self): """ start recording. Asterisk stopps and saves the recording automatically on hangup. """ self._watch_channel_hangup() event = None self.call.call_state.set_caller(self.call.phone_number) if self._is_blocked(self.call.phone_number): event = Event.CALLER_REFUSED self.call.client.channels.setChannelVar(channelId=self.call.channel_incoming.id, variable='CDR(blocked)', value='1') self.call.channel_incoming.answer() self.call.set_telewall_call_state('refused') self.call.call_state.refuse() else: phonebook.lookup(phone_number=self.call.phone_number) # set caller again after name lookup self.call.call_state.set_caller(self.call.phone_number) event = Event.CALLER_ALLOWED self.call.client.channels.setChannelVar(channelId=self.call.channel_incoming.id, variable='CDR(blocked)', value='0') self.call.set_telewall_call_state('allowed') self.call.call_state.permit() self.cleanup() self.call.state_machine.change_state(event)
def test_wrong_number_notfound_online(): if run_online_tests: n = TelephoneNumber('033 999 99 99') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_false(result.success)
def test_companynumber_correction_online(): if run_online_tests: n = TelephoneNumber('032 321 64 63') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_true(result.success) assert_equals('Berner Fachhochschule, Technik und Informatik', result.name) assert_true(result.is_corrected)
def test_existing_number_found_online(): if run_online_tests: n = TelephoneNumber('032 321 61 11') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_true(result.success) assert_equals('Berner Fachhochschule, Technik & Informatik', result.name) assert_false(result.is_corrected)
def test_wrong_number_notfound(): def _query_mock(number): return read_xml('tel_search_ch-noresult.xml') _query_orginal = phonebook._query try: phonebook._query = _query_mock n = TelephoneNumber('031 000 11 22') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_false(result.success) finally: phonebook._query = _query_orginal
def test_existing_number_found(): def _query_mock(number): return read_xml('tel_search_ch-success.xml') _query_orginal = phonebook._query phonebook._query = _query_mock try: n = TelephoneNumber('032 321 61 11') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_true(result.success) assert_equals('Berner Fachhochschule, Technik & Informatik', result.name) assert_false(result.is_corrected) finally: phonebook._query = _query_orginal
def test_companynumber_correction(): mockresults = [read_xml('tel_search_ch-correction.xml'), read_xml('tel_search_ch-correction-result.xml')] mockresults.reverse() def _query_mock(number): return mockresults.pop() _query_orginal = phonebook._query phonebook._query = _query_mock try: n = TelephoneNumber('032 321 64 63') result = phonebook.lookup(n) print(result) assert_is_not_none(result) assert_true(result.success) assert_equals('Berner Fachhochschule, Technik und Informatik', result.name) assert_true(result.is_corrected) finally: phonebook._query = _query_orginal