
RTC 邀请接受通话:/mobile/rtcs/invite-accept ( mobile/rtc/invite-accept )
1、请求参数列表
( 1 ) user_name:必填,用户名称
( 2 ) call_mode:必填,通话方式,voice_call:语音通话;video_call:视频通话
2、输入数据验证规则
( 1 ) 必填:user_name、call_mode
( 2 ) 字符串:user_name、call_mode
( 3 ) 范围([voice_call, video_call]):call_mode
( 4 ) 判断房间是否存在,是:响应失败
3、操作数据
( 1 ) 设置RTC 邀请接受通话数据的缓存键
( 2 ) 从缓存中取回RTC 邀请接受通话数据
A、如果不存在,则序列化,将RTC 邀请接受通话数据存放到缓存供下次使用,在缓存中永久保留
B、如果存在,则反序列化,带索引检查计算数组的差集,如果差集不为空,将RTC 邀请接受通话数据存放到缓存供下次使用,在缓存中永久保留
// 设置RTC 邀请接受通话数据的缓存键
$redisCache = Yii::$app->redisCache;
$gisRtcInviteAcceptCacheKey = implode(':', ['gis', 'rtc', 'invite', 'accept', $identity->group_id]);
// 从缓存中取回RTC 邀请接受通话数据
$gisRtcInviteAcceptCacheData = $redisCache[$gisRtcInviteAcceptCacheKey];
$requestGisRtcInviteAccept = [
'user_name' => $user_name,
'call_mode' => $call_mode,
];
if ($gisRtcInviteAcceptCacheData === false) {
// 将RTC 邀请接受通话数据存放到缓存供下次使用,在缓存中永久保留
$redisCache->set($gisRtcInviteAcceptCacheKey, serialize($requestGisRtcInviteAccept));
} else {
$gisRtcInviteAccept = unserialize($gisRtcInviteAcceptCacheData);
// 带索引检查计算数组的差集
$result = array_diff_assoc($gisRtcInviteAccept, $requestGisRtcInviteAccept);
if (!empty($result)) {
// 将RTC 邀请接受通话数据存放到缓存供下次使用,在缓存中永久保留
$redisCache->set($gisRtcInviteAcceptCacheKey, serialize($requestGisRtcInviteAccept));
}
}
$gisRtcInviteAccept
Array
(
[user_name] => huaqiyun
[call_mode] => voice_call
)
{
"user_name": "huaqiyun1",
"call_mode": "voice_call"
}
array(1) {
["user_name"]=>
string(8) "huaqiyun"
}
$gisRtcInviteAccept
Array
(
[user_name] => huaqiyun
[call_mode] => voice_call
)
{
"user_name": "huaqiyun",
"call_mode": "video_call"
}
array(1) {
["call_mode"]=>
string(10) "voice_call"
}
$gisRtcInviteAccept
Array
(
[user_name] => huaqiyun
[call_mode] => voice_call
)
{
"user_name": "huaqiyun2",
"call_mode": "video_call"
}
array(2) {
["user_name"]=>
string(8) "huaqiyun"
["call_mode"]=>
string(10) "voice_call"
}
需要长期技术维护或远程问题排查?
我是拥有 15+ 年经验的 PHP / Go 后端工程师,长期关注已有系统维护、Bug 修复、性能优化、服务器排查、WordPress 网站维护和小功能迭代。
如果你的项目遇到以下情况,可以先从一次小问题排查开始合作:
- ✅ PHP / Laravel / Yii2 老项目无人维护
- ✅ Go / Gin 后端接口需要排查或优化
- ✅ WordPress 网站访问慢、报错或插件冲突
- ✅ Nginx / MySQL / Redis / Linux 服务器异常
- ✅ CDN / Cloudflare / DNS / HTTPS 配置问题
- ✅ 需要长期远程技术支持或兼职维护
更多介绍请查看:关于我 & 合作
微信:13980074657
邮箱:shuijingwanwq@gmail.com
Telegram:@shuijingwan
GitHub:https://github.com/shuijingwan

发表回复