--- contrib/scripts/sip_to_pjsip/sip_to_pjsip.py (Asterisk 13.10.0) +++ contrib/scripts/sip_to_pjsip/sip_to_pjsip.py (working copy) @@ -909,2 +926,13 @@ """ + self.peer = '' + self.protocol = 'udp' + protocols = ['udp', 'tcp', 'tls'] + for protocol in protocols: + position = user_part.find(protocol + '://') + if -1 < position: + post_transport = user_part[position + 6:] + self.peer, sep, self.protocol = user_part[:position + 3].rpartition('?') + user_part = post_transport + break + colons = user_part.count(':') @@ -929,7 +957,3 @@ - pre_domain, sep, self.domain = pre_auth.partition('@') - self.peer, sep, post_peer = pre_domain.rpartition('?') - transport, sep, self.user = post_peer.rpartition('://') - - self.protocol = transport if transport else 'udp' + self.user, sep, self.domain = pre_auth.partition('@')