NGN堆栈调用者ID /详细信息问题

问题描述 投票:0回答:2

我正在使用android中的Ngn Stack库开发VOIP应用程序。在显示以下两个语句时,显示我自己的电话号码而不是呼叫者的电话号码时,收到呼叫者的电话号码时出现问题。

sipMessage.getSipHeaderValue("f")

sipMessage.getSipHeaderValue("t")

sip:[email protected]:52978

---->which receiver id,not caller id.

下面的代码片段是NgnAVSession.java类的一部分

public static NgnAVSession takeIncomingSession(NgnSipStack sipStack, CallSession session, twrap_media_type_t mediaType, SipMessage sipMessage){
       **Log.e("99", "Inside NgnAVSession sip message ="+sipMessage.getSipHeaderValue("f"));**

        NgnMediaType media = NgnMediaType.ConvertFromNative(mediaType);
        if(media == NgnMediaType.None){
            Log.e(TAG, "Invalid media type");
            return null;
        }
        synchronized (sSessions){
            NgnAVSession avSession = new NgnAVSession(sipStack, session, media, InviteState.INCOMING);
            if (sipMessage != null){
                avSession.setRemotePartyUri(sipMessage.getSipHeaderValue("f"));
            //     avSession.setRemotePartyUri("sip:[email protected]");
            }
            sSessions.put(avSession.getId(), avSession);
            return avSession;
        }
    }

[请任何人帮助我,我将如何解决此问题并获得正确的呼叫者ID /详细信息。在此先感谢。

java android voip
2个回答
2
投票

NgnContact类返回INgnContactService对象以获取远程方的名称。但是它提供了是否将电话号码保存为联系人列表中的名称


0
投票

我制作了一个网络服务来获取呼叫者姓名。

© www.soinside.com 2019 - 2024. All rights reserved.