第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

【學(xué)習(xí)打卡】第10天 TRTC在線視頻會(huì)議入門

標(biāo)簽:
Java

课程名称: SpringBoot+Vue3 项目实战,打造企业级在线办公系统
课程章节: 第6章 TRTC在线视频会议
主讲老师: 神思者

课程内容

上一章在Web页面上可以创建各种会议申请,然后切换到部门经理或者总经理身份,可以对这些会议申请执行审批。线下会议还好说,到了开会的的时候,参会人都去某个会议室。至于说这些人怎么线下开会,程序不用过多干预。但是线上会议,参会人要用视频方式交流,这就得开辟视频会议室了。

img

视频会议室要依赖于腾讯云的TRTC技术,帮我们把参会人的视频数据复制,然后转发给其他的参会人。这样不会出现因为参会人的增多,导致视频质量下降。如果不使用TRTC技术,仅凭我们本地的带宽,参会人越多,大家看到的视频质量就越差。

配置后端项目

之前已经开通了腾讯云TRTC服务,所以我们到后端项目上配置一下。前端页面想要连接上TRTC服务器上面的视频会议室,首先需要创建TrtcClient对象,创建这个对象需要用到3个参数,分别是TRTC的AppID,用户UserId,还有用户签名。用户签名是用TRTC的AppID、密钥和UserId生成的。如果用户签名在前端页面计算生成,势必我们要在前端页面保存TRTC的AppID和密钥,任意开发者查看HTML源代码都能看到这些信息,所以决不能在前端页面生成用户签名。

img

正确的做法是在后端项目生成用户签名,我们在config包里面创建tencent包,然后创建一个TrtcUtil工具类,用来生成用户签名。

然后在MeetingController.java类中定义获取用户签名的Web方法。

查询视频会议室RoomID

每个视频会议室都有RoomID,这个RoomID是保存在Redis里面的,我们可以通过会议的UUID查找到RoomID。但是只有在会议开始前20分钟,工作流项目的定时器才会生成这个RoomID。

用户在前端页面进入到meeting_video.vue页面之后,需要通过Ajax查询这个会议室的RoomID,然后让TrtcClient连接到视频会议室,所以我们要写后端的Web代码返回RoomID。

1. 编写业务层代码

MeetingService.java接口中,定义抽象方法。

public interface MeetingService {
    ……
    public Long searchRoomIdByUUID(String uuid);
}

MeetingServiceImpl.java类中,实现抽象方法。

public class MeetingServiceImpl implements MeetingService {
    @Autowired
    private RedisTemplate redisTemplate;
    
    ……
    @Override
    public Long searchRoomIdByUUID(String uuid) {
        if (redisTemplate.hasKey(uuid)) {
            Object temp = redisTemplate.opsForValue().get(uuid);
            long roomId = Long.parseLong(temp.toString());
            return roomId;
        }
        return null;
    }
}

2. 编写Web层代码

创建SearchRoomIdByUUIDForm.java类,封装Ajax提交的请求。

@Data
@Schema(description = "查询在线会议室房间ID")
public class SearchRoomIdByUUIDForm {

    @NotBlank(message = "uuid不能为空")
    @Schema(description = "uuid")
    private String uuid;
}

MeetingController.java类中,定义Web方法。

public class MeetingController {
    ……
    @PostMapping("/searchRoomIdByUUID")
    @Operation(summary = "查询会议房间RoomID")
    @SaCheckLogin
    public R searchRoomIdByUUID(@Valid @RequestBody SearchRoomIdByUUIDForm form) {
        Long roomId = meetingService.searchRoomIdByUUID(form.getUuid());
        return R.ok().put("roomId", roomId);
    }
}

课程收获

  • 了解了腾讯的TRTC服务的基本使用方式。
  • 完成了应用于腾讯TRTC服务之间的调用方式。
  • 完成了用户签名的生成。

课程截图

image-20220813163053401

image-20220813163111095

image-20220813163128462

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消