2016-07-24 13 views
0

私はSipTransprts でポートを変更して、デフォルトのポートを変更しようとしましたが、それでもまだ5060でのUDPとTCPのデフォルトポートを変更する方法既定値 私の質問Linphone lib Python?Linphoneは(パイソン)の変更ポート番号

core = linphone.Core.new(callbacks, None, None) 
address = linphone.Address.new("sip:"+username+"@"+domain) 
address.username = username 
address.port =random.randint(5063,6060) 
print address.port 
proxy_cfg = core.create_proxy_config() 
proxy_cfg.identity_address = address 
proxy_cfg.server_addr = "<sip:"+domain+">" 
authInfo = core.create_auth_info(username, None, password, None, None, domain); 
core.add_auth_info(authInfo) 
proxy_cfg.register_enabled = True 
core.add_proxy_config(proxy_cfg) 
tp = core.sip_transports 
tp.tcp_port=1011 
tp.tls_port=1012 
tp.udp_port=1013 
print '0000000000000000000000000000000000000000' 
print core.sip_transports.udp_port 
print '0000000000000000000000000000000000000000' 
#print 5060 

答えて

0
tp = core.sip_transports 
tp.tcp_port=1011 
tp.tls_port=1012 
tp.udp_port=1013 
core.sip_transports = tp 

基本的には、 "ポインタの問題" です。たとえば、tp = core.sip_transportsなどでは、core.sip_transport(つまり5060)のデフォルト値を割り当てています。次に、コピーを作成して値を再割り当てします。 sip_transportの値を直接変更することはできません。

このコードの最後を参照してください:https://github.com/BelledonneCommunications/linphone/blob/master/tools/python/unittests/test_register.py

関連する問題