From 1b560a3806a2ea94a4e37547bac742a5eaed5ddf Mon Sep 17 00:00:00 2001 From: lzl <1239365383@qq.com> Date: Thu, 8 Jan 2026 18:59:20 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=92=E5=90=A7=E4=BA=A4=E5=8F=8B=E6=88=BF?= =?UTF-8?q?=E8=81=8A=E5=A4=A9=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/room/activity/RoomActivity.kt | 27 ++++++++-- .../room/fragment/ChatRoomFragment.java | 50 ++++++++++++++++++- .../activity/room/fragment/RoomPubFragment.kt | 1 - 3 files changed, 72 insertions(+), 6 deletions(-) diff --git a/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt b/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt index 83d5f4ab..60b6277e 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt +++ b/MainModule/src/main/java/com/xscm/modulemain/activity/room/activity/RoomActivity.kt @@ -2682,7 +2682,14 @@ class RoomActivity : BaseMvpActivity(), emotionPickerDialog.setOnEmotionSelectedListener { emotion -> // 处理选中的表情 if (publicScreenFragment != null) { - publicScreenFragment!!.sendChatEmoji(emotion) + val typeId = mRoomInfoResp?.room_info?.type_id + val labelId = mRoomInfoResp?.room_info?.label_id + //TODO 酒吧交友房 公开聊天时 + if (typeId.equals("6") && labelId.equals("11") && mBinding?.ivPrivateSet?.tag == "0") { + publicScreenFragment?.sendPriMsg(2,null,emotion,AgoraManager.getInstance().lastRoomId) + }else{ + publicScreenFragment!!.sendChatEmoji(emotion) + } } } emotionPickerDialog.show() @@ -4479,7 +4486,14 @@ class RoomActivity : BaseMvpActivity(), return@OnClickListener } if (publicScreenFragment != null) { - publicScreenFragment!!.fasong(RoomInputEvent(text)) + val typeId = mRoomInfoResp?.room_info?.type_id + val labelId = mRoomInfoResp?.room_info?.label_id + //TODO 酒吧交友房 公开聊天时 + if (typeId.equals("6") && labelId.equals("11") && mBinding?.ivPrivateSet?.tag == "0") { + publicScreenFragment?.sendPriMsg(1,RoomInputEvent(text),null,AgoraManager.getInstance().lastRoomId) + }else{ + publicScreenFragment!!.fasong(RoomInputEvent(text)) + } } etContent.setText("") countDownTimer() @@ -4530,7 +4544,14 @@ class RoomActivity : BaseMvpActivity(), fun dialogMessage(event: RoomInputEvent) { if (publicScreenFragment != null) { - publicScreenFragment!!.fasong(event) + val typeId = mRoomInfoResp?.room_info?.type_id + val labelId = mRoomInfoResp?.room_info?.label_id + //TODO 酒吧交友房 公开聊天时 + if (typeId.equals("6") && labelId.equals("11") && mBinding?.ivPrivateSet?.tag == "0") { + publicScreenFragment?.sendPriMsg(1,event,null,AgoraManager.getInstance().lastRoomId) + }else{ + publicScreenFragment!!.fasong(event) + } } } diff --git a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/ChatRoomFragment.java b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/ChatRoomFragment.java index e58c076e..ccbec441 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/ChatRoomFragment.java +++ b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/ChatRoomFragment.java @@ -263,9 +263,8 @@ public class ChatRoomFragment extends BaseMvpFragment 0) { + int position = new Random().nextInt(emotionDeatils.getChildren().size()); + Children children = emotionDeatils.getChildren().get(position); + event.setImage(children.getImage()); + event.setAnimate_image(emotionDeatils.getAnimate_image()); + } else { + event = emotionDeatils; + } + t.setFromUserInfo(SpUtil.getUserInfo()); + t.setEmoji(event); + }else { + String message = roomInputEvent.text; + t.setText(message); + t.setFromUserInfo(SpUtil.getUserInfo()); + } + RoomMessageEvent roomMessageEvent = new RoomMessageEvent(status, roomId, t); + handleRoomMessage(roomMessageEvent); + String json = GsonUtils.toJson(roomMessageEvent); + // 转换为 byte[] + byte[] binaryData = json.getBytes(StandardCharsets.UTF_8); + // 创建自定义消息 + V2TIMMessage v2TIMMessage = V2TIMManager.getMessageManager().createCustomMessage(binaryData); + // 发送消息 + V2TIMManager.getMessageManager().sendMessage(v2TIMMessage, null, "room" + roomId, V2TIMMessage.V2TIM_PRIORITY_NORMAL, false, null, new V2TIMSendCallback() { + @Override + public void onProgress(int progress) { + // 自定义消息不会回调进度 + } + + @Override + public void onSuccess(V2TIMMessage message) { + // 发送群聊自定义消息成功 + EventBus.getDefault().post(new RoomTaskEvent()); + } + + @Override + public void onError(int code, String desc) { + // 发送群聊自定义消息失败 + } + }); + } + public void handleRoomMessage(RoomMessageEvent message) { if (message == null) return; diff --git a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomPubFragment.kt b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomPubFragment.kt index 73655d1e..e283bfe0 100644 --- a/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomPubFragment.kt +++ b/MainModule/src/main/java/com/xscm/modulemain/activity/room/fragment/RoomPubFragment.kt @@ -446,7 +446,6 @@ class RoomPubFragment(var mRoomInfoResp: RoomInfoResp?) : if (view.userId.isNotEmpty()) { for (userInfo in messageEvent.text.toUserInfos) { if (view.userId == userInfo.user_id.toString()) { -// view.setData(view.pitBean) view.setPitGift(messageEvent.text.giftInfo.play_image) } }