2011-06-25 8 views
1

Jain sipを使用してアンドロイドでSIPクライアントを開発しています。そして、私はそれをjain-sip-presence-proxyに登録したいと思います。jain-sipレジスタに「via header ID expected」というエラーメッセージが表示される

マイコード:

public void register (String to) throws SipException, ParseException, InvalidArgumentException{ 

    //create From header 
    //from sip URL and name adds 
    SipURI from = addressFactory.createSipURI(sipProperties.getSipName(), sipProperties.getSipDomain()); 
    Address fromNameAddress = addressFactory.createAddress(from); 
    fromNameAddress.setDisplayName(sipProperties.getDisplayName()); 


    FromHeader fromHeader = headerFactory.createFromHeader(fromNameAddress, "sipstag");//address & tag "Bob" sips:[email protected] ;tag=a48s 


    //create To header 
    String username = "Server"; 
    String ID="server"; 
    String address = "10.0.2.2"; 


    SipURI toAddress = addressFactory.createSipURI(username, address); 
    Address toNameAddress = addressFactory.createAddress(toAddress); 
    toNameAddress.setDisplayName(username);//now display name is user name 
    ToHeader toHeader = headerFactory.createToHeader(toNameAddress, null); 

    SipURI requestURI = addressFactory.createSipURI(username, address); 
    requestURI.setTransportParam("udp"); 

    //via header 
    ArrayList<ViaHeader> viaHeaders = new ArrayList<ViaHeader>(); 
    ViaHeader viaHeader = headerFactory.createViaHeader(sipProperties.getHostIp(), sipProperties.getISipPort(), "udp", null); 
    viaHeaders.add(viaHeader); 

    //create call id 
    CallIdHeader callIdHeader = sipProvider.getNewCallId(); 
    //Cseq 
    CSeqHeader cSeqHeader = headerFactory.createCSeqHeader(1l, Request.REGISTER); 
    //MaxForwards 
    MaxForwardsHeader maxForwards = headerFactory.createMaxForwardsHeader(70); 

    Request request = messageFactory.createRequest(requestURI, Request.REGISTER, callIdHeader, cSeqHeader, fromHeader, toHeader, viaHeaders, maxForwards); 

    SipURI contactURI = addressFactory.createSipURI(sipProperties.getSipName(), sipProperties.getSipDomain()); 
    contactURI.setPort(sipProperties.getISipPort()); 
    Address contactAddress = addressFactory.createAddress(contactURI); 
    contactAddress.setDisplayName(sipProperties.getDisplayName()); 
    ContactHeader contactHeader = headerFactory.createContactHeader(contactAddress); 
    request.addHeader(contactHeader); 


    sipProvider.sendRequest(request); 
    log.logMessage("send request is OK"); 

} 

エラーメッセージは次のとおりです。

DEBUG - gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:241) [error message Via: SIP/2.0/UDP 10.0.2.15:8888;branch=sipstag:[email protected]:1:register:10.0.2.15:8888 

ID expected] 
ERROR - Via: SIP/2.0/UDP 10.0.2.15:8888;branch=sipstag:[email protected]:1:register:10.0.2.15:8888 

ID expected 
java.text.ParseException: Via: SIP/2.0/UDP 10.0.2.15:8888;branch=sipstag:[email protected]:1:register:10.0.2.15:8888 

ID expected 
    at gov.nist.core.LexerCore.match(LexerCore.java:190) 
    at gov.nist.javax.sip.parser.ViaParser.parseVia(ViaParser.java:32) 
    at gov.nist.javax.sip.parser.ViaParser.parse(ViaParser.java:186) 
    at gov.nist.javax.sip.parser.StringMsgParser.parseMessage(StringMsgParser.java:555) 
    at gov.nist.javax.sip.parser.StringMsgParser.parseSIPMessage(StringMsgParser.java:327) 
    at gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:234) 
    at java.lang.Thread.run(Thread.java:662) 
DEBUG - gov.nist.javax.sip.stack.UDPMessageChannel.run(UDPMessageChannel.java:247) [REGISTER sip:[email protected];transport=udp SIP/2.0 
Call-ID: [email protected] 
CSeq: 1 REGISTER 
From: "cy" <sip:[email protected]>;tag=sipstag 
To: "Server" <sip:[email protected]> 
Via: SIP/2.0/UDP 10.0.2.15:8888;branch=sipstag:[email protected]:1:register:10.0.2.15:8888 
Max-Forwards: 70 
Contact: "cy" <sip:[email protected]:8888> 
Content-Length: 0 

] 

あなたは私を助けることができますか?

答えて

1

問題は解決しました。

ブランチは"z9hG4bKbranch1"に設定され、クライアントはプロキシサーバーに正常に登録できます。

ViaHeader viaHeader = headerFactory.createViaHeader(sipProperties.getHostIp(), sipProperties.getISipPort(), "udp", "z9hG4bKbranch1"); 
関連する問題