Exemple #1
0
    def call_destination(self, connection, auth_token, user_id, url_or_exten):
        if DestinationFactory.is_destination_url(url_or_exten):
            exten = DestinationFactory.make_from(url_or_exten).to_exten()
        elif caller_id.is_complete_caller_id(url_or_exten):
            exten = caller_id.extract_number(url_or_exten)
        else:
            exten = url_or_exten

        self.call_exten(connection, auth_token, user_id, exten)
    def test_parse_url_exten(self):
        exten = '+12 34'
        ipbxid = 'xivo'
        exten_url = 'exten:{0}/{1}'.format(ipbxid, exten)

        expected = ('exten', ipbxid, exten)

        assert_that(DestinationFactory._parse(exten_url), equal_to(expected), 'Parsed exten URL')
    def test_is_destination_url(self):
        url = 'voicemail:xivo/1234'

        assert_that(DestinationFactory.is_destination_url(url), equal_to(True),
                    'Is a valid URL')
    def test_make_consult_voicemail(self):
        url = 'vm_consult:xivo/666'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, ConsultVoicemailDestination),
                    'Instance type is ConsultVoicemailDestination')
    def test_make_voicemail(self):
        url = 'voicemail:xivo/12'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, VoicemailDestination),
                    'Instance type is VoicemailDestination')
    def test_make_exten(self):
        url = 'exten:xivo/1234'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, ExtensionDestination),
                    'Instance type is ExtensionDestination')
    def test_is_destination_url(self):
        url = 'voicemail:xivo/1234'

        assert_that(DestinationFactory.is_destination_url(url), equal_to(True), 'Is a valid URL')
    def test_make_consult_voicemail(self):
        url = 'vm_consult:xivo/666'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, ConsultVoicemailDestination), 'Instance type is ConsultVoicemailDestination')
    def test_make_voicemail(self):
        url = 'voicemail:xivo/12'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, VoicemailDestination), 'Instance type is VoicemailDestination')
    def test_make_exten(self):
        url = 'exten:xivo/1234'
        d = DestinationFactory.make_from(url)

        assert_that(isinstance(d, ExtensionDestination), 'Instance type is ExtensionDestination')