From 848cbfebefab08cc49b0285155edb84463aed862 Mon Sep 17 00:00:00 2001 From: panlili2024 <14743743+panlili2024@user.noreply.gitee.com> Date: 星期三, 13 十一月 2024 17:19:53 +0800 Subject: [PATCH] 提交home项目所用可视对讲sdk --- HDLLinphoneSDKDemoNew/HDLLinphoneSDK/src/main/java/com/hdl/hdllinphonesdk/HDLLinphoneKit.java | 48 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 35 insertions(+), 13 deletions(-) diff --git a/HDLLinphoneSDKDemoNew/HDLLinphoneSDK/src/main/java/com/hdl/hdllinphonesdk/HDLLinphoneKit.java b/HDLLinphoneSDKDemoNew/HDLLinphoneSDK/src/main/java/com/hdl/hdllinphonesdk/HDLLinphoneKit.java index efd4222..4410e57 100644 --- a/HDLLinphoneSDKDemoNew/HDLLinphoneSDK/src/main/java/com/hdl/hdllinphonesdk/HDLLinphoneKit.java +++ b/HDLLinphoneSDKDemoNew/HDLLinphoneSDK/src/main/java/com/hdl/hdllinphonesdk/HDLLinphoneKit.java @@ -1,17 +1,17 @@ package com.hdl.hdllinphonesdk; +import static java.lang.Thread.sleep; + import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.ServiceConnection; -import android.os.Build; import android.os.IBinder; import android.util.Log; import android.view.TextureView; import android.widget.Toast; import com.hdl.hdllinphonesdk.activity.HDLLinphoneIntercomActivity; -import com.hdl.hdllinphonesdk.activity.HDLLinphoneReverseCallActivity; import com.hdl.hdllinphonesdk.callback.OnHDLLinphoneCallListener; import com.hdl.hdllinphonesdk.callback.OnLPOpenDoorCallBack; import com.hdl.hdllinphonesdk.core.callback.PhoneCallback; @@ -25,16 +25,13 @@ import org.linphone.core.AuthInfo; import org.linphone.core.Call; import org.linphone.core.CallParams; +import org.linphone.core.ChatMessage; +import org.linphone.core.ChatRoom; import org.linphone.core.Core; import org.linphone.core.CoreException; import org.linphone.core.Factory; import org.linphone.core.ProxyConfig; import org.linphone.core.TransportType; - -import java.io.FileOutputStream; -import java.io.InputStream; - -import static java.lang.Thread.sleep; /** * Created by jlchen on 2021/8/4. @@ -64,6 +61,7 @@ public static final String KEY_TITLE_NAME = "lpTitleName"; public static final String KEY_SIP_ACCOUNT = "lpSipAccount"; public static final String HDLLinphoneKitNAME = "HDLLinphoneKit"; + public static final String KEY_CALL_ALL_REJECTION = "callAllRejection"; private volatile static HDLLinphoneKit instance; private Context viewContext; private ServiceWaitThread mServiceWaitThread; @@ -411,7 +409,7 @@ mAccountCreator.setUsername(name); mAccountCreator.setDomain(host); mAccountCreator.setPassword(password); - mAccountCreator.setTransport(TransportType.Udp); + mAccountCreator.setTransport(TransportType.Tcp); ProxyConfig prxCfg = mAccountCreator.createProxyConfig(); prxCfg.enableQualityReporting(false); @@ -446,7 +444,7 @@ prxCfg.setQualityReportingInterval(0); prxCfg.enableRegister(true); //鍏ㄨ閫氶渶瑕佽缃浐瀹氫唬鐞嗘湇鍔″櫒ip - prxCfg.setServerAddr("sip:139.159.157.75:46000;transport=udp"); + prxCfg.setServerAddr("sip:" + domain + ";transport=udp"); mLinphoneCore.addProxyConfig(prxCfg);//娣诲姞浠g悊閰嶇疆銆傚鏋滃惎鐢ㄤ簡娉ㄥ唽锛岃繖灏嗗紑濮嬪湪浠g悊涓婃敞鍐屻�� mLinphoneCore.addAuthInfo(authInfo);//娣诲姞璁よ瘉淇℃伅鍒�,璇ヤ俊鎭墖娈靛皢鍦ㄦ墍鏈夐渶瑕佺殑SIP浜嬪姟涓娇鐢ㄨ韩浠介獙璇� @@ -478,10 +476,12 @@ if (addressToCall != null) { call = core.inviteAddressWithParams(addressToCall, params); - // 璁剧疆澶栨斁 - for (AudioDevice audioDevice : HDLLinphoneService.getCore().getAudioDevices()) { - if (audioDevice.getType() == AudioDevice.Type.Speaker) { - call.setOutputAudioDevice(audioDevice); + if (call != null) { + // 璁剧疆澶栨斁 + for (AudioDevice audioDevice : HDLLinphoneService.getCore().getAudioDevices()) { + if (audioDevice.getType() == AudioDevice.Type.Speaker) { + call.setOutputAudioDevice(audioDevice); + } } } } @@ -555,6 +555,28 @@ } } + public void sendSipMessage(String sipAccount, String sipAddress, String message) { + try { + Core mLinphoneCore = HDLLinphoneService.getCore(); + if (mLinphoneCore == null) return; + + //瀵规柟鐨剆ip鍦板潃,sipAddress:"sip:瀵规柟璐﹀彿@鏈嶅姟鍣ㄥ湴鍧�" + Address address = mLinphoneCore.interpretUrl("sip:" + sipAccount + "@" + sipAddress); + + //寤虹珛瀵硅瘽 + ChatRoom chatRoom = mLinphoneCore.getChatRoom(address); + + //鍒涘缓娑堟伅 + ChatMessage chatMessage = chatRoom.createMessageFromUtf8(message); + + //鍙戦�佹秷鎭� + chatMessage.send(); + + } catch (Exception e) { + e.printStackTrace(); + } + } + /** * 鏄惁闈欓煶 * -- Gitblit v1.8.0