Jolie
|
5977d99462
|
fix(call): 修复通话挂断和邀请弹框处理逻辑
- 在收到hangup消息时取消频道订阅并关闭视频通话邀请弹框
- 修复通话发起时频道ID和UID的赋值时机问题
- 移除已废弃的取消通话相关代码
- 在挂断通话时根据发起方身份调用相应的取消接口
- 优化挂断消息处理逻辑,确保弹框正确关闭和音频停止
- 在IM管理器中添加频道订阅逻辑,完善通话邀请处理
- 修复接收方收到挂断消息时的弹框关闭和音频停止逻辑
|
3 months ago |
Jolie
|
20938d7421
|
feat(call): 添加RTC通话拒绝和取消功能并优化通话时长计时
- 添加refuseOneOnOneRtcChannel和cancelOneOnOneRtcChannel API接口
- 实现发起方收到accept消息后自动启动通话计时器
- 优化VideoCallPage中的响应式变量监听和UI状态判断
- 移除未使用的IMManager导入
- 更新通话状态显示逻辑,区分呼叫中和已接通状态
|
3 months ago |
Jolie
|
b1cb74f23c
|
refactor(call): 重构通话功能实现并优化视频通话页面
- 修正音频和视频通话类型参数,音频改为type:2,视频改为type:3
- 在通话信息中添加uid字段并传递给通话控制器
- 移除通话状态更新相关代码,不再修改消息状态
- 从IMManager中移除modifyMessage方法实现
- 重构视频通话页面背景构建逻辑,优化远端用户UID监听机制
- 添加key确保remoteUid变化时视频视图正确重建
|
3 months ago |
Jolie
|
b8ff22ab5e
|
feat(call): 添加通话挂断消息处理和频道管理功能
- 添加 RTM 消息监听器处理挂断事件
- 实现 _handleHangupMessage 方法处理对方挂断逻辑
- 添加 _callChannelId 和 _callUid 成员变量管理通话频道信息
- 在发起和接听通话时清空之前的通话信息
- 在挂断通话时发送 RTM 挂断消息并取消订阅频道
- 在结束通话时清理保存的 channelId 和 uid
- 添加 OverlayController 依赖用于关闭通话小窗口
- 优化代码格式和打印日志的换行处理
|
3 months ago |
Jolie
|
35ef3c2c1d
|
feat(call): 集成 RTM 消息处理通话事件
- 添加 dart:typed_data 和 agora_rtm 依赖包
- 实现 RTM 消息监听器注册功能
- 添加处理通话相关 RTM 消息的逻辑
- 支持接收和解析通话接受消息更新远端用户 UID
- 简化发送通话消息的逻辑并移除旧的 IMManager 方式
|
3 months ago |
Jolie
|
ecc8a5ee3c
|
refactor(call): 重构通话控制器并集成RTM功能
- 移除所有try-catch异常处理块,简化代码逻辑
- 添加RTMManager导入并实现RTM频道订阅功能
- 在加入RTC频道后自动订阅对应的RTM频道
- 通过RTM消息传递通话接受事件和用户UID信息
- 优化通话音频播放逻辑,移除循环播放异常处理
- 简化通话创建、接听、拒绝、取消和结束流程
- 在视频通话页面移除用户信息加载的异常处理
- 改进通话状态管理和错误处理机制
|
3 months ago |
Jolie
|
656f9d81cb
|
feat(video-call): 实现通话控制功能和界面优化
- 添加麦克风静音和扬声器开关状态管理
- 实现toggleMic和toggleSpeaker方法控制音频设备
- 添加hangUpCall方法处理挂断通话逻辑
- 优化视频通话页面控制按钮显示逻辑
- 实现通话接通后5秒自动隐藏控制按钮功能
- 添加点击屏幕切换控制按钮显示/隐藏功能
- 重构通话状态管理使用响应式变量
- 更新RTCManager添加扬声器控制接口
|
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
|
476ef2f848
|
feat(call): 实现通话功能集成声网SDK和通话控制
- 集成 agora_rtc_engine 依赖并实现 RTCManager 管理音视频通话
- 添加 RTCType 枚举区分通话和直播类型,实现类型化频道管理
- 在 CallController 中实现语音/视频通话的摄像头状态控制逻辑
- 实现通话中加入 RTC 频道的真实通话功能,支持语音和视频通话
- 在 VideoCallPage 中添加本地视频视图显示和通话状态控制界面
- 实现通话页面的接听/拒绝按钮和通话邀请状态显示功能
- 添加通话消息查找和处理机制,支持通话邀请的接收和响应
|
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 |