我在twilio实现中无法启用“ RecordParticipantsOnConnect”,如此处所述:https://www.twilio.com/docs/video/api/recordings-resource,但似乎无法正常运行,我该在哪里将RecordParticipantsOnConnect设置为true?
他们说您在创建房间时需要传递此选项,但是我没有创建任何房间,它是自动完成的,我只是将房间名称作为字符串传递,并且我获得了令牌:>
class TwilioServices
ACCOUNT_SID = ENV['TWILIO_ACCOUNT_SID']
API_KEY_SID = ENV['TWILIO_API_KEY_SID']
API_KEY_SECRET = ENV['TWILIO_API_KEY_SECRET']
def self.get_token(type, room)
# Create an Access Token
token = Twilio::JWT::AccessToken.new ACCOUNT_SID, API_KEY_SID, API_KEY_SECRET, ttl: 7200, identity: type,
# Grant access to Video
grant = Twilio::JWT::AccessToken::VideoGrant.new
grant.room = room
token.add_grant grant
# Serialize the token as a JWT
token.to_jwt
end
end
我该如何解决?
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
如果让SDK在加入时动态创建房间,那么您将无法在代码中设置录制标志。相反,您有两种选择:
您可以configure your room default settings in the Twilio console。在这里,您可以将房间设置为默认为分组房间并打开录音。 (您不能记录对等房间,因为媒体不通过Twilio服务器。)
您可以使用Video Rooms REST API在前面创建房间。自己创建房间时,还可以设置类型以及是否记录。为此,您可以将get_token
方法更新为以下内容:
class TwilioServices
ACCOUNT_SID = ENV['TWILIO_ACCOUNT_SID']
API_KEY_SID = ENV['TWILIO_API_KEY_SID']
API_KEY_SECRET = ENV['TWILIO_API_KEY_SECRET']
def self.get_token(type, room)
# Create an Access Token
token = Twilio::JWT::AccessToken.new ACCOUNT_SID, API_KEY_SID, API_KEY_SECRET, ttl: 7200, identity: type,
client = Twilio::REST::Client.new(API_KEY_SID, API_KEY_SECRET, ACCOUNT_SID)
video_room = client.video.rooms.create(
unique_name: room,
record_participants_on_connect: true,
type: 'group'
)
# Grant access to Video
grant = Twilio::JWT::AccessToken::VideoGrant.new
grant.room = room
token.add_grant grant
# Serialize the token as a JWT
token.to_jwt
end
end
让我知道是否有帮助。