亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? messengermanager.java

?? 是一個用java實現的
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
        } catch (SipException ex) {
            System.out.println(
            "An error occurred while sending invite request " + ex);
        }
    }
    
    /**
     * Send a MESSAGE to notify the proxy that a mail must be send to the callee
     */
    public void sendMessage(String emailBody, String calleeURI) {
        //Store the callee in the call status
        calleeURI = calleeURI.trim();
        //call.setCallee(calleeURI);
        //Listening Point
        ListeningPoint listeningPoint =
        messageListener.sipProvider.getListeningPoint();
        SipURI requestURI = null;
        try {
            requestURI =
            MessageListener.addressFactory.createSipURI(
            null,
            messageListener.getConfiguration().outboundProxy);
            requestURI.setPort(messageListener.getConfiguration().proxyPort);
            requestURI.setTransportParam(
            messageListener.getConfiguration().signalingTransport);
        } catch (ParseException ex) {
            ex.printStackTrace();
        } catch (NullPointerException ex) {
            ex.printStackTrace();
            return;
        }
        //Call ID
        CallIdHeader callIdHeader = messageListener.sipProvider.getNewCallId();
        //CSeq
        CSeqHeader cSeqHeader = null;
        try {
            cSeqHeader =
            MessageListener.headerFactory.createCSeqHeader(
            1,
            Request.MESSAGE);
        } catch (ParseException ex) {
            //Shouldn't happen
            ex.printStackTrace();
        } catch (InvalidArgumentException ex) {
            //Shouldn't happen
            System.out.println(
            "An unexpected error occurred while"
            + "constructing the CSeqHeader "
            + ex);
        }
        FromHeader fromHeader = null;
        //From
        try {
            fromHeader =
            MessageListener.headerFactory.createFromHeader(
            MessageListener.addressFactory.createAddress(userSipURI),
            generateTag());
        } catch (ParseException ex) {
            ex.printStackTrace();
        }
        //To Header
        SipURI ToURI = null;
        try {
            //Create the SIP URI for the user URI
            String user = calleeURI.substring(0, calleeURI.indexOf("@"));
            String host =
            calleeURI.substring(
            calleeURI.indexOf("@") + 1,
            calleeURI.length());
            ToURI = MessageListener.addressFactory.createSipURI(user, host);
            ToURI.setTransportParam(
            messageListener.getConfiguration().signalingTransport);
        } catch (ParseException ex) {
            System.out.println(calleeURI + " is not a legal SIP uri! " + ex);
        }
        Address toAddress = MessageListener.addressFactory.createAddress(ToURI);
        ToHeader toHeader = null;
        try {
            toHeader =
            MessageListener.headerFactory.createToHeader(toAddress, null);
        } catch (ParseException ex) {
            //Shouldn't happen
            System.out.println(
            "Null is not an allowed tag for the to header! " + ex);
        }
        //ViaHeader
        ArrayList viaHeaders = null;
        viaHeaders = new ArrayList();
        try {
            ViaHeader viaHeader =
            MessageListener.headerFactory.createViaHeader(
            messageListener.getConfiguration().contactIPAddress,
            listeningPoint.getPort(),
            listeningPoint.getTransport(),
            null);
            viaHeaders.add(viaHeader);
        } catch (ParseException ex) {
            //Shouldn't happen
            ex.printStackTrace();
        } catch (InvalidArgumentException ex) {
            //Should never happen
            System.out.println("The application is corrupt");
        }
        //Max Forward Header
        MaxForwardsHeader maxForwardsHeader = null;
        try {
            maxForwardsHeader =
            MessageListener.headerFactory.createMaxForwardsHeader(70);
        } catch (InvalidArgumentException ex) {
            //Should never happen
            System.out.println("The application is corrupt");
        }
        Request message = null;
        try {
            message =
            MessageListener.messageFactory.createRequest(
            requestURI,
            Request.MESSAGE,
            callIdHeader,
            cSeqHeader,
            fromHeader,
            toHeader,
            viaHeaders,
            maxForwardsHeader);
        } catch (ParseException ex) {
            System.out.println("Failed to create message Request! ");
            ex.printStackTrace();
        }
        //Contact Header
        try {
            SipURI contactURI =
            MessageListener.addressFactory.createSipURI(
            userSipURI.getUser(),
            messageListener.getConfiguration().contactIPAddress);
            contactURI.setTransportParam(
            messageListener.getConfiguration().signalingTransport);
            ContactHeader contactHeader =
            MessageListener.headerFactory.createContactHeader(
            MessageListener.addressFactory.createAddress(contactURI));
            contactURI.setPort(listeningPoint.getPort());
            message.addHeader(contactHeader);
        } catch (ParseException ex) {
            System.out.println("Could not create the message request! " + ex);
        }
        //Content
        ContentTypeHeader contentTypeHeader = null;
        try {
            contentTypeHeader =
            MessageListener.headerFactory.createContentTypeHeader(
            "text",
            "plain;charset=UTF-8");
        } catch (ParseException ex) {
            //Shouldn't happen
            System.out.println(
            "Failed to create a content type header for the MESSAGE request "
            + ex);
        }
        try {
            message.setContent(emailBody, contentTypeHeader);
        } catch (ParseException ex) {
            System.out.println(
            "Failed to parse sdp data while creating message request! "
            + ex);
        }
        //Transaction
        //Send the message with the sip Provider
        //So that he doesn't retransmit the message even if he doesn't receive
        //an OK (the drawback is that we don't know if the other end ever
        //received the message)
        //TODO : send the message in an invite transaction
        //to know more about delivery
        //ClientTransaction inviteTransaction=null;
        try {
            //inviteTransaction =
            messageListener.sipProvider.sendRequest(message);
        } catch (SipException ex) {
            System.out.println(
            "An error occurred while sending message request " + ex);
            ex.printStackTrace();
        }
        System.out.println("request sent :\n" + message);
                /*try {
                        inviteTransaction.sendRequest();
                        call.setDialog(inviteTransaction.getDialog());
                }
                catch (SipException ex) {
                        System.out.println(
                                "An error occurred while sending invite request "+ ex);
                } */
    }
    
    /**
     *
     * @param contactAddress
     * @param voiceMessage
     */
    public void sendVoiceMessage(String contactAddress, byte[] voiceMessage) {
        Request messageRequest = null;
        String contact = contactAddress.trim();
        //Try to find if we have an existing transaction for this one
        
        AudioCall call = callManager.findAudioCall(contact);
        javax.sip.Dialog dialog = null;
        
        if (call != null)  {
            dialog = call.getDialog();
	    if (dialog == null 				   || 
		dialog.getState() == null 		   || 
		dialog.getState() == javax.sip.DialogState.COMPLETED ||
		dialog.getState() == javax.sip.DialogState.TERMINATED)  {
		System.out.println("Cannot send message on terminated or un-established dialog!");
		// stop the audio stuff 
                messageListener.messageProcessor.stopVoiceMessagingSchedule();
		callManager.removeAudioCall(call);
		return;
	    }
            
            try {
                messageRequest = dialog.createRequest(Request.MESSAGE);
                System.out.println(
                "SEND VOICE MESSAGE: " + messageRequest.toString());
            } catch (SipException se) {
                se.printStackTrace();
                return;
            }
            
        } else {
            return;
        }
        
        
        System.out.println("voice messaging session found!!");
        //Content
        ContentTypeHeader contentTypeHeader = null;
        try {
            contentTypeHeader =
            MessageListener.headerFactory.createContentTypeHeader(
            "audio",
            "x-gsm");
        } catch (ParseException ex) {
            //Shouldn't happen
            System.out.println(
            "Failed to create a content type header for the MESSAGE request "
            + ex);
        }


        try {
            messageRequest.setContent(voiceMessage, contentTypeHeader);
        } catch (ParseException ex) {
            System.out.println(
            "Failed to parse sdp data while creating message request! "
            + ex);
        }
        try {
            ListeningPoint listeningPoint =
            messageListener.sipProvider.getListeningPoint();
            SipURI contactURI =
            MessageListener.addressFactory.createSipURI(
            userSipURI.getUser(),
            messageListener.getConfiguration().contactIPAddress);
            contactURI.setTransportParam(
            messageListener.getConfiguration().signalingTransport);
            ContactHeader contactHeader =
            MessageListener.headerFactory.createContactHeader(
            MessageListener.addressFactory.createAddress(
            contactURI));
            contactURI.setPort(listeningPoint.getPort());
            messageRequest.addHeader(contactHeader);
            SipURI routeURI =
            MessageListener.addressFactory.createSipURI(
            null,
            messageListener.getConfiguration().outboundProxy);
            
        } catch (ParseException ex) {
            System.out.println(
            "Could not create the message request! " + ex);
        }
        //Transaction
        ClientTransaction messageTransaction = null;
        
        try {
            messageTransaction =
            messageListener.sipProvider.getNewClientTransaction(
            messageRequest);
            dialog.sendRequest(messageTransaction);
        } catch (Exception ex) {
            System.out.println(
            "Failed to create Message Transaction.\n"
            + "This is most probably a network connection error. ");
            ex.printStackTrace();
            return;
        }
        
        
    }
    
    /**
     * Send a MESSAGE to the contact we want to chat with
     * @param contactAddress - the contact to send the message to
     * @parma message - message to be sent
     */
    public void sendInstantMessage(String contactAddress, String message) {
        Request messageRequest = null;
       
        //Try to find if we have an existing transaction for this one
        SipURI callee = null;
        try {
              callee = (SipURI) MessageListener.addressFactory.createURI(contactAddress);
        } catch (ParseException ex) {
                ex.printStackTrace();
                return;
        }
        String contact = callee.getUser()+"@"+callee.getHost();
        IMCall call = callManager.findIMCall(contact);
        javax.sip.Dialog dialog = null;
        
        
        // If we have a call record for this IM session then use the dialog.
        if (call != null)  {
            dialog = call.getDialog();
            System.out.println("im session found!!");
            
            try {
                messageRequest = dialog.createRequest(Request.MESSAGE);
                System.out.println(
                "SEND VOICE MESSAGE: " + messageRequest.toString());
            } catch (SipException se) {
		// The dialog must be dead so get rid of it.
		// proceed on bravely and re-establish the dialog.
		callManager.removeIMCall(contact);
		System.out.println("dialog is dead!");
                // Signal that the dialog is dead.
                dialog = null;
            }
            
        } 


	if (messageRequest == null)  {
	    System.out.println("could not find IM session for " + contact);
            try{
                messageRequest = createRequest(Request.MESSAGE, callee, userSipURI);
                ((FromHeader)messageRequest.getHeader(FromHeader.NAME)).setTag(generateTag());
            } catch (ParseException pe) {
		// should not happen.
                pe.printStackTrace();
            }
        }

        //Content
        ContentTypeHeader contentTypeHeader = null;
        try {
            contentTypeHeader =
            MessageListener.headerFactory.createContentTypeHeader(

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产三级精品视频| 国产天堂亚洲国产碰碰| 日韩成人午夜电影| 国产精品久久久久久一区二区三区 | 欧美激情在线免费观看| 欧美系列在线观看| 成人精品在线视频观看| 日本最新不卡在线| 亚洲免费观看高清完整版在线| 欧美一区二区三区免费观看视频 | 91精品国产福利在线观看| 国产suv一区二区三区88区| 亚洲福利一区二区| 国产精品九色蝌蚪自拍| 久久一留热品黄| 欧美一区二区三区四区在线观看| 99久久精品免费| 国产精品亚洲综合一区在线观看| 首页国产丝袜综合| 国产精品99久久久久久久女警 | 一区二区三区成人| 亚洲国产精品激情在线观看| 精品久久久三级丝袜| 欧美美女bb生活片| 日本伦理一区二区| 99re这里都是精品| 成人精品电影在线观看| 国产精品一色哟哟哟| 精久久久久久久久久久| 日韩av一级片| 免费成人在线播放| 首页亚洲欧美制服丝腿| 午夜精品久久久久久久蜜桃app| 亚洲激情在线播放| 亚洲三级在线看| 亚洲欧美自拍偷拍| 中文字幕在线不卡一区二区三区| 欧美—级在线免费片| 国产欧美日韩在线看| 久久久99免费| 欧美国产成人在线| 国产精品免费av| 国产精品高潮呻吟久久| 1000部国产精品成人观看| 亚洲欧美另类久久久精品2019| 国产精品无遮挡| 国产精品国产三级国产普通话蜜臀| 亚洲国产高清在线观看视频| 亚洲国产高清在线| 亚洲国产精品99久久久久久久久| 亚洲国产精品二十页| 国产精品久久久久久久蜜臀| 亚洲欧洲av在线| 亚洲综合色区另类av| 亚洲午夜av在线| 免费视频最近日韩| 国产成人av资源| 国产精品三级视频| 综合在线观看色| 亚洲h精品动漫在线观看| 日韩 欧美一区二区三区| 久久99精品国产| 成a人片亚洲日本久久| 欧洲精品一区二区| 欧美一级日韩不卡播放免费| 国产午夜精品一区二区| 最新国产成人在线观看| 亚洲成av人在线观看| 久久精品国产亚洲高清剧情介绍| 国产成人在线视频网站| 91视频观看免费| 欧美一区二区三区思思人| www激情久久| 一区二区三区欧美在线观看| 青椒成人免费视频| 粉嫩久久99精品久久久久久夜| 色欧美日韩亚洲| 日韩精品综合一本久道在线视频| 亚洲国产精品成人综合| 亚洲电影一区二区三区| 国产精品一区一区| 欧美综合天天夜夜久久| 久久奇米777| 亚洲精品乱码久久久久久黑人| 日本一不卡视频| 99久久精品情趣| 欧美成人精品福利| 亚洲嫩草精品久久| 九九视频精品免费| 欧美在线不卡视频| 国产女同互慰高潮91漫画| 亚洲国产视频在线| 成人一级视频在线观看| 制服丝袜日韩国产| 亚洲欧美国产三级| 国产精品18久久久久久久久久久久| 欧美系列亚洲系列| 日韩一区在线免费观看| 美女网站色91| 欧美调教femdomvk| 国产精品不卡一区二区三区| 久久精品国产99国产精品| 欧美最新大片在线看| 中文无字幕一区二区三区| 日韩不卡手机在线v区| 色综合一区二区三区| 久久午夜羞羞影院免费观看| 三级欧美在线一区| 在线免费观看日韩欧美| 国产精品色噜噜| 国产成人精品免费看| 日韩欧美色综合| 天堂av在线一区| 欧美性生活一区| 亚洲色图欧美在线| 粉嫩av一区二区三区| 精品国产乱码久久久久久免费| 日日摸夜夜添夜夜添国产精品 | 91在线观看一区二区| 久久综合九色综合97婷婷女人| 日韩电影一区二区三区| 欧美日韩在线播| 亚洲一区二区三区爽爽爽爽爽| 91猫先生在线| 亚洲伦理在线精品| 99久久精品国产毛片| 欧美国产综合一区二区| 成人久久视频在线观看| 国产精品区一区二区三区| 成人性生交大片免费看在线播放| 久久蜜桃av一区二区天堂| 另类人妖一区二区av| 日韩精品一区二区三区四区| 乱一区二区av| 精品欧美乱码久久久久久1区2区| 蜜臀av一区二区| 亚洲精品在线免费观看视频| 精品一区二区国语对白| 久久伊人蜜桃av一区二区| 国产一区二区免费视频| 国产喷白浆一区二区三区| 中文字幕不卡在线观看| 日韩欧美一区二区免费| 99热这里都是精品| 国产欧美综合在线| 国产精品国产a| 狠狠色狠狠色综合| 性欧美大战久久久久久久久| 欧美伊人久久久久久午夜久久久久| 18欧美亚洲精品| 在线国产亚洲欧美| 午夜天堂影视香蕉久久| 日韩一级视频免费观看在线| 久久精品国产一区二区三| 国产欧美日韩视频在线观看| 丁香六月久久综合狠狠色| 成人免费小视频| 欧美无人高清视频在线观看| 日韩精品乱码免费| 精品奇米国产一区二区三区| 成人性色生活片免费看爆迷你毛片| 亚洲三级在线免费| 欧美精品少妇一区二区三区| 九九久久精品视频| 国产精品久久久久国产精品日日| 色综合久久久久网| 秋霞影院一区二区| 国产精品视频一二三| 精品视频1区2区| 国产一区福利在线| 亚洲欧洲综合另类在线| 欧美巨大另类极品videosbest| 激情欧美一区二区| 中文字幕一区免费在线观看| 欧美色视频在线观看| 国内成人免费视频| 一区二区三区精品在线观看| 7777精品伊人久久久大香线蕉 | 视频一区欧美精品| 久久久777精品电影网影网| 91在线视频网址| 奇米四色…亚洲| 亚洲精品国产精华液| 日韩一区二区在线看片| 99国产精品久久久久| 蜜桃精品视频在线观看| 亚洲丝袜另类动漫二区| 精品国产污污免费网站入口 | 五月天丁香久久| 国产精品三级av在线播放| 9191成人精品久久| 99久久99久久综合| 狠狠狠色丁香婷婷综合久久五月| 亚洲色图在线视频| 久久久综合视频| 欧美日韩视频在线一区二区| 风间由美一区二区三区在线观看| 天堂资源在线中文精品| 国产精品久久久久久久久久免费看| 欧美一区二区三区男人的天堂|