Jolie
|
dcd4634a4d
|
feat(call): 添加通话角色管理和消息传递功能
- 新增 CallRole 枚举定义主叫和被叫角色
- 在 CallController 中添加 callRole 属性并初始化为 caller
- 在 IMManager 中设置被叫角色标识
- 扩展 OverlayController 以支持消息传递
- 更新 VideoCallOverlayWidget 以接收和处理通话消息
- 修改 VideoCallPage 接收并传递消息参数
- 优化通话发起判断逻辑基于角色配置
|
2 months ago |
Jolie
|
f168658e8e
|
feat(video_call): 添加视频通话类型参数并优化邀请弹窗
- 移除不必要的 RTM 订阅操作
- 为 VideoCallInviteDialog 组件添加 callType 参数
- 在 RoseController 中添加 RoomController 余额刷新逻辑
- 为视频通话邀请弹窗添加日志记录功能
|
2 months ago |
王子贤
|
f808a7f6eb
|
优化退出登录流程
|
2 months ago |
Jolie
|
bd63283ab9
|
fix(call): 修复通话冲突处理逻辑
- 修正了通话中提示文案,从"已有通话正在进行中"改为"当前正在通话中"
- 移除了通话记录中未接听状态的显示
- 修改了通话邀请的默认显示文案,明确标识为"我刚刚邀请你视频通话"或"我刚刚邀请你语音通话"
- 在IM管理器中添加了通话冲突检测机制,当有通话正在进行时自动拒绝新通话邀请
- 添加了自动拒绝新通话的日志记录功能
- 优化了通话邀请弹框的触发逻辑,避免重复弹出
|
2 months ago |
Jolie
|
0a7d02adc3
|
refactor(call): 移除RTM消息处理改为使用onMessageContentChanged
- 移除RTMManager相关依赖和消息监听器注册
- 移除RTM频道订阅和取消订阅逻辑
- 移除RTM消息发送(accept、reject、hangup)相关代码
- 添加handleCallStatusChange方法处理通话状态变化
- 修改接听通话逻辑改为通过onMessageContentChanged接收通知
- 更新RTCManager中CallController实例获取方式
- 优化代码结构和错误处理机制
|
2 months ago |
Jolie
|
95cdc047b4
|
feat(im): 添加活跃聊天用户ID获取功能并优化消息已读状态处理
- 实现了获取当前正在聊天的用户ID列表的方法
- 在接收消息时检查发送者是否为当前聊天用户
- 自动将当前聊天会话的消息标记为已读状态
- 使用微任务异步处理消息已读标记以优化性能
|
2 months ago |
Jolie
|
4e2c3b15a8
|
feat(call): 添加通话状态结束类型并优化通话消息更新机制
- 添加 terminated 通话状态类型
- 在通话消息中添加日志记录功能
- 实现通话消息状态变更时的实时更新机制
- 支持通过 channelId 匹配通话消息进行更新
- 优化消息属性初始化逻辑
- 添加通话消息错误处理和日志记录
|
2 months ago |
Jolie
|
5977d99462
|
fix(call): 修复通话挂断和邀请弹框处理逻辑
- 在收到hangup消息时取消频道订阅并关闭视频通话邀请弹框
- 修复通话发起时频道ID和UID的赋值时机问题
- 移除已废弃的取消通话相关代码
- 在挂断通话时根据发起方身份调用相应的取消接口
- 优化挂断消息处理逻辑,确保弹框正确关闭和音频停止
- 在IM管理器中添加频道订阅逻辑,完善通话邀请处理
- 修复接收方收到挂断消息时的弹框关闭和音频停止逻辑
|
3 months ago |
Jolie
|
b1cb74f23c
|
refactor(call): 重构通话功能实现并优化视频通话页面
- 修正音频和视频通话类型参数,音频改为type:2,视频改为type:3
- 在通话信息中添加uid字段并传递给通话控制器
- 移除通话状态更新相关代码,不再修改消息状态
- 从IMManager中移除modifyMessage方法实现
- 重构视频通话页面背景构建逻辑,优化远端用户UID监听机制
- 添加key确保remoteUid变化时视频视图正确重建
|
3 months ago |
Jolie
|
9ab0dc65c5
|
feat(call): 添加远端用户UID管理和视频通话页面优化
- 在CallController中添加remoteUid用于跟踪远端用户
- 在通话开始和结束时清空远端用户UID状态
- 修改IMManager中通话状态判断逻辑,支持waitCalling状态
- 在RTCManager中集成CallController的remoteUid更新机制
- 重构VideoCallPage使用Obx监听远端用户变化
- 实现远端视频视图显示和本地视频视图切换逻辑
- 添加视频通话中的调试日志输出
|
3 months ago |
Jolie
|
0297aec6c9
|
feat(call): 实现通话接听和RTC频道加入功能
- 集成permission_handler处理摄像头和麦克风权限
- 实现根据通话类型设置视频状态(语音通话关闭摄像头,视频通话开启摄像头)
- 添加channelId验证和RTC频道加入逻辑
- 实现joinChannel和_joinRtcChannel方法处理RTC连接
- 添加权限检查和设置功能
- 优化VideoCallPage中通话消息处理逻辑
- 修复通话接听和拒绝时的消息传递问题
|
3 months ago |
Jolie
|
3b5879284f
|
feat(call): 添加频道ID支持并更新通话状态
- 在通话控制器中将初始状态从'missed'更改为'waitCalling'
- 在IM管理器中添加channelId字段解析和传递
- 在视频通话邀请对话框中添加channelId参数
- 在视频通话页面中添加channelId参数支持
- 更新通话消息发送时包含频道ID信息
|
3 months ago |
Jolie
|
0ec1631eee
|
feat(call): 支持语音通话邀请弹框显示
- 扩展通话类型支持,同时处理视频和语音通话
- 添加通话类型参数传递到邀请弹框组件
- 根据通话类型动态显示相应的邀请文案
- 优化通话页面中邀请文字的判断逻辑
|
3 months ago |
Jolie
|
a4118ffba1
|
feat(call): 将通话管理功能从CallManager迁移到CallController
- 实现语音和视频通话的发起、接听、拒绝、取消和结束功能
- 添加通话状态管理包括等待接通、通话中、未接听、已取消和已拒绝
- 集成音频播放器实现来电铃声的循环播放功能
- 实现通话计时器功能记录通话时长
- 完成通话消息的发送和状态更新机制
- 迁移通话相关枚举和数据模型到CallController
- 更新聊天页面和IM管理器使用新的CallController实例
- 移除独立的CallManager文件并整合到CallController中
|
3 months ago |
Jolie
|
a4d06f8435
|
feat(rtc): 添加一对一RTC频道功能
- 在api_urls.dart中新增createOneOnOneRtcChannel API路径
- 创建新的CallController用于管理通话相关逻辑
- 实现createOneOnOneRtcChannel方法支持音频视频通话
- 将call_manager.dart从message目录移动到rtc目录
- 在CallManager中集成RTC频道创建流程
- 更新通话消息发送逻辑包含频道ID信息
- 调整相关页面和组件的导入路径以适配目录变更
- 修复user_api.g.dart中的API路径格式问题
|
3 months ago |
王子贤
|
b78910fbaf
|
优化
|
3 months ago |
Jolie
|
917316d76a
|
feat(notification): 添加本地通知功能支持
- 在 AndroidManifest.xml 中添加 RECEIVE_BOOT_COMPLETED 权限和启动器徽章权限
- 为应用启动器 Activity 添加 showWhenLocked 和 turnScreenOn 属性
- 集成 flutter_local_notifications 插件并配置 Android 和 iOS 平台设置
- 创建 LocalNotificationService 服务处理本地通知的初始化和显示
- 实现消息类型判断和内容解析功能
- 添加视频通话通知的特殊处理逻辑
- 支持通知点击跳转到对应聊天页面
- 在 IMManager 中集成本地通知服务
- 优化 iOS 平台通知权限申请
- 配置 Podfile 依赖并更新原生项目设置
|
3 months ago |
Jolie
|
c66b7bcd21
|
feat(notification): 添加应用角标未读数显示功能
- 在 AndroidManifest.xml 中添加各厂商桌面角标权限配置
- 集成 app_badge_plus 插件实现角标更新功能
- 在 ConversationController 中监听未读数变化并同步更新应用角标
- 优化消息通知逻辑,仅在 APP 前台时显示通知弹框
- 添加角标更新的错误处理和日志记录
|
3 months ago |
Jolie
|
414ec255aa
|
feat(live): 实现直播房间输入对话框功能
- 添加输入对话框组件,支持消息输入和发送
- 在LiveRoomActionBar中添加输入点击事件回调
- 实现输入对话框的显示/隐藏逻辑和焦点管理
- 添加键盘状态监听,自动调整UI布局
- 在IMManager中添加在线状态检查过滤消息
- 集成flutter_local_notifications和app_badge_plus依赖
- 优化消息发送流程和界面交互体验
|
3 months ago |
Jolie
|
b6915f264d
|
feat(call): 实现通话功能并优化消息处理
- 添加音频播放器支持来电铃声循环播放
- 实现通话消息状态更新和消息修改功能
- 优化会话列表加载和刷新防抖机制
- 支持自定义通话消息格式替换旧文本格式
- 添加通话音频播放和停止控制
- 优化直播间小窗口显示和隐藏逻辑
- 实现通话邀请弹框和消息解析功能
- 添加资产文件支持音频资源
- 优化消息通知对话框支持emoji显示
- 移除旧格式消息处理逻辑简化代码结构
|
3 months ago |
Jolie
|
17c482b507
|
feat(im): 添加消息修改功能并修复GIFT消息处理
- 添加modifyMessage方法支持同时修改消息体和扩展属性
- 实现_notifyMessageModified方法通知ChatController更新消息
- 修复GIFT消息检查时content可能为空的潜在问题
- 在直播间页面中延迟执行overlay隐藏避免build过程中触发setState
- 移除ota_update依赖包
- 实现用户协议只在第一次安装时显示的逻辑
- 添加mounted检查确保组件存在时才更新状态
|
3 months ago |
Jolie
|
268e32bf02
|
feat(chat): 添加敏感词错误提示功能
- 添加敏感词错误提示状态管理集合
- 实现敏感词错误消息ID的添加和检查方法
- 在消息加载时从attributes恢复敏感词错误状态
- 在聊天页面显示敏感词错误提示信息
- 在IM管理器中处理敏感词错误码E0001
- 防止敏感词错误消息显示重发按钮
- 在直播房间中处理玫瑰不足时的充值提示
|
3 months ago |
Jolie
|
03545aeb1c
|
feat(im): 添加视频通话邀请弹框功能
- 在IMManager中添加视频通话消息处理逻辑
- 解析CALL类型消息并显示视频通话邀请弹框
- 实现通话邀请的接听、拒绝和跳转功能
- 添加VideoCallInviteDialog组件用于显示通话邀请
- 优化消息通知弹框的边距样式
- 在pubspec.yaml中添加必要的资源文件路径配置
|
3 months ago |
Jolie
|
adf838e773
|
feat(video-call): 添加视频通话小窗功能
- 在OverlayController中添加视频通话overlay显示控制
- 实现VideoCallOverlayWidget组件用于视频通话小窗显示
- 在视频通话页面添加最小化到小窗功能
- 添加PopScope防止手势返回中断通话
- 优化IMManager中的空值检查和日志输出
- 改进直播房间邀请消息的头像URL处理
- 更新房间项目的封面图片获取逻辑和占位符样式
|
3 months ago |
Jolie
|
5315e75ae6
|
fix(gift): 修复礼物弹窗和直播间相关功能问题
- 修复聊天礼物弹窗底部安全区域适配问题
- 修复直播间礼物弹窗底部安全区域适配问题
- 修复直播间礼物弹窗用户选择验证逻辑
- 移除直播间礼物弹窗多余标签组件
- 修复直播间礼物弹窗赠送按钮状态管理
- 修复直播间邀请消息解析和显示问题
- 修复直播间封面图片URL清理逻辑
- 修复直播间邀请消息点击跳转逻辑
- 修复直播间消息列表退出时清空逻辑
- 修复直播间底部栏组件格式问题
|
3 months ago |
Jolie
|
4ad54dc3b3
|
feat(chat): 添加视频通话功能
- 添加视频通话页面实现视频通话界面和功能
- 在聊天页面中启用视频通话按钮并实现通话发起逻辑
- 添加通话管理器处理视频通话状态和时长
- 更新资源文件添加视频通话相关图标
- 实现通话消息解析显示视频通话状态
- 添加通话时长计时和用户信息显示功能
|
3 months ago |
Jolie
|
9b13ca0e00
|
更新IM逻辑
|
3 months ago |
Jolie
|
e3dffe6b34
|
修改扩展参数
|
3 months ago |
Jolie
|
8cc6668b13
|
优化IM,开发需求
|
3 months ago |
Jolie
|
d6224ab067
|
feat(im): 启用调试模式并优化消息处理逻辑
- 在初始化时启用 SDK 的 debugMode 选项
- 将 onCmdMessagesReceived 回调替换为 onMessageContentChanged
- 移除对 CMD 消息的处理逻辑及相关废弃代码
- 简化消息内容变更时的日志记录方式
- 删除未使用的消息状态变更通知方法
- 清理冗余的消息已读、已送达及撤回处理函数
|
3 months ago |
Jolie
|
336e4247a3
|
修改bug
|
3 months ago |
Jolie
|
9feded7369
|
聊天优化
|
3 months ago |
Jolie
|
6f0f3beac9
|
fix(im): 处理消息发送失败的日志记录
- 添加注释说明错误码508的含义
- 保留原有错误日志输出格式
- 维持对发送成功情况的日志记录
|
3 months ago |
Jolie
|
3f0a6c7c47
|
fix(android): 指定可用的NDK版本以避免编译错误
- 在build.gradle.kts中硬编码NDK版本为27.0.12077973
- 添加注释说明覆盖flutter.ndkVersion的原因
- 确保项目使用系统上实际存在的NDK版本进行构建
feat(im): 增加消息发送成功与失败的日志记录
- 在IMManager中注册ChatMessageEvent监听器
- 记录发送消息成功的日志信息
- 记录发送消息失败时的错误详情和描述
fix(ui): 页面返回时关闭SmartDialog提示框
- 在LiveRoomPage的onPopInvokedWithResult回调中调用SmartDialog.dismiss()
- 防止页面切换时残留对话框影响用户体验
|
3 months ago |
Jolie
|
eba522dc81
|
feat(message): 实现好友列表从IM获取并展示
- 引入 GetX 和 FriendController 管理好友数据
- 使用 EMContact 替代模拟数据展示好友列表
- 添加加载状态与错误重试机制
- 新增 _buildFriendItemFromContact 方法构建好友项
- 废弃原有模拟数据列表
- IMManager 中新增 getAllContacts 方法获取联系人列表
- 优化聊天室页面
|
4 months ago |
Jolie
|
a0e66a2675
|
feat(im): 优化消息处理与界面展示
- 修改 ExtendedUserInfo 构造函数,移除 userId 默认空字符串赋值
- 新增对自定义消息类型的解析,支持识别直播房间邀请消息
- 移除 sendCustomMessage 方法参数末尾多余逗号
- 在获取会话列表后增加日志输出,便于调试用户信息获取
- 简化 joinChannel 方法异常处理逻辑,提升代码可读性
- 更新 RoomItem 组件点击事件为异步方法,确保频道加入完成后再跳转页面
- 调整消息气泡布局和尺寸限制,优化显示效果
- 将底部信息栏改为绝对定位,并调整头像和昵称样式以适配新布局
|
4 months ago |
Jolie
|
0ca289ee22
|
feat(im): 添加自定义消息发送功能并完善直播互动逻辑
- 在 IMManager 中新增 sendCustomMessage 方法用于发送自定义消息
- 实现直播间嘉宾邀请功能,通过自定义消息传递房间信息
- 完善礼物赠送后的公屏消息展示逻辑
- 优化直播间关闭后 overlay controller 的显示时机
- 增强消息处理逻辑以兼容不同的数据类型和异常情况
|
4 months ago |
Jolie
|
3a0f593b17
|
1. 完善聊天,添加礼物
|
4 months ago |
Jolie
|
0d3ef4cc56
|
优化聊天板块
|
4 months ago |
Jolie
|
1639eb67f7
|
feat(message): 实现会话删除功能并优化UI交互
- 在ConversationController中新增deleteConversation方法,支持删除指定会话
- 在IMManager中实现deleteConversation底层逻辑,调用环信SDK删除会话
- 在会话列表页面添加侧滑删除功能,使用TDSwipeCell组件实现
-优化会话项布局和代码结构,提高可读性和维护性
- 更新依赖源为国内镜像地址,提升包加载速度
- 移除不必要的导入模块,精简代码体积
- 调整部分UI间距和样式,改善视觉效果
|
4 months ago |
Jolie
|
7b5cd32e18
|
1. 修改首页分页逻辑。
2. 修改好友列表。
3. 修改IM整体逻辑
|
4 months ago |
Jolie
|
e22ae8e683
|
开发聊天设置页面
|
4 months ago |
Jolie
|
60399119d9
|
优化视频消息
|
4 months ago |
Jolie
|
3a7a780846
|
feat(im): 实现聊天控制器注册与消息通知机制
- 在 IMManager 中添加 ChatController 的注册与注销功能- 实现消息接收时自动通知对应 ChatController 更新消息列表
- 为 ChatController 添加接收消息处理逻辑,避免重复消息插入
- 完善消息处理流程,确保新消息能及时刷新会话列表
- 添加日志记录以方便调试和追踪控制器状态变化- 优化消息通知逻辑,只处理接收到的消息并按发送者分发
|
4 months ago |
Jolie
|
ececa536a4
|
feat(im): 实现消息发送后自动刷新会话列表功能
- 在 ChatController 中添加 _refreshConversationList 方法
- 在 IMManager 中添加 _refreshConversationList 方法
- 消息发送成功后调用会话列表刷新逻辑
- 收到新消息时自动刷新会话列表
- 使用 Get.find 获取 ConversationController 实例
- 添加异常处理避免控制器未注册时的错误
|
4 months ago |
Jolie
|
d8c9a4ce4f
|
添加发送视频,点击视频查看,点击图片查看
|
4 months ago |
Jolie
|
be2e7de461
|
feat(message): 更新消息页面并优化图片展示逻辑
- 在获取会话列表后添加发送文本消息功能
- 移除图像项中的网络缩略图显示逻辑
- 修改图像项优先显示本地路径图片- 移除图像加载进度构建器- 调整消息页面Tab内容区域布局结构
- 移除不必要的日志打印语句
- 导入retrofit/http包用于图像项组件
|
4 months ago |
Jolie
|
23c5316d18
|
feat(message): 实现图片消息展示功能- 新增 ImageItem 组件用于展示图片消息
- 支持网络图片加载与错误处理
- 添加图片尺寸自适应逻辑- 优化消息气泡样式与布局
- 移除模拟推荐用户列表代码- 删除 IM 登录后的测试消息发送逻辑
|
4 months ago |
Jolie
|
e9b21b5bf3
|
feat(message): 实现消息页面UI优化与文本消息组件
- 在聊天控制器中添加update()调用以通知UI更新- 调整聊天页面背景颜色并增加列表内边距- 修复消息方向判断逻辑,正确显示发送/接收状态
- 完善IM管理器中的连接事件处理器代码格式
- 移除消息类型处理中的空实现块
-优化发送文本消息的返回逻辑
- 格式化用户信息获取方法参数
- 修正消息气泡圆角样式,统一底部圆角- 新增独立的文本消息展示组件TextItem- 实现带时间戳和头像的文本消息渲染
- 支持根据发送方调整消息布局和样式
|
4 months ago |
Jolie
|
b150d62d92
|
feat(message): 实现聊天页面基础UI与输入栏组件
-组件ChatInputBar 添加聊天输入栏
- 重构聊天页面布局,使用Column替代Container
- 设置聊天背景色为#F5F5F5
- 添加消息列表展示区域,包含头像与消息气泡
- 实现消息时间戳展示
- 添加IM管理器用户信息获取方法
- 优化ChatPage构造函数为常量构造函数
- 导入聊天输入栏组件文件
|
4 months ago |