如何在Flutter中通过getstream.io设置音频房间的结束时长?
设置Stream音频房间结束时间的方法
要设置音频房间的结束时间,必须通过服务端实现,客户端(比如你当前的Flutter代码)无法直接配置这个参数,具体操作如下:
- 在服务端调用Stream的创建通话API时,添加
ends_at参数,传入RFC3339格式的时间字符串(例如2024-12-31T23:59:59Z),以此指定房间的结束时间。 - 当到达设定的结束时间后,Stream会自动终止该通话,所有参会者会被移出房间。
你当前的客户端代码无需修改,因为结束时间是在创建通话阶段由服务端定义的,客户端仅需加入已创建好的通话即可。如果需要在客户端展示结束时间,可以通过call.state.call?.endsAt获取该时间值,再在UI上呈现。
以下是服务端(Node.js)的示例代码:
const stream = require('getstream').connect('YOUR_API_KEY', 'YOUR_SECRET_KEY'); async function createScheduledCall() { const call = await stream.video.calls.create({ type: 'default', id: '345', members: ['testing'], ends_at: '2024-12-31T23:59:59Z' // 指定结束时间 }); console.log('创建的通话结束时间:', call.ends_at); }
注意:已创建完成的通话无法通过API修改结束时间,必须在创建时就明确指定。
内容的提问来源于stack exchange,提问作者Kerby Elpenord
相关产品推荐
相关产品推荐

