Skip to content

Commit 2427b4d

Browse files
author
yutingzeng
committed
修改函数名和注释
1 parent 902686f commit 2427b4d

File tree

1 file changed

+38
-12
lines changed

1 file changed

+38
-12
lines changed

TLSSigAPIv2.py

Lines changed: 38 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -135,26 +135,52 @@ def __gen_sig(self, identifier, expire=180*86400, userbuf=None):
135135
base64_sig = base64_encode_url(sig_cmpressed)
136136
return base64_sig
137137

138-
def gen_sig(self, identifier, expire=180*86400):
138+
##
139+
#【功能说明】用于签发 TRTC 和 IM 服务中必须要使用的 UserSig 鉴权票据
140+
#
141+
#【参数说明】
142+
# userid - 用户id,限制长度为32字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。
143+
# expire - UserSig 票据的过期时间,单位是秒,比如 86400 代表生成的 UserSig 票据在一天后就无法再使用了。
144+
#/
145+
def genUserSig(self, userid, expire=180*86400):
139146
""" 用户可以采用默认的有效期生成 sig """
140-
return self.__gen_sig(identifier, expire, None)
141-
# @brief 生成带userbuf的sig
142-
# @param identifier 用户名
143-
# @param roomnum 数字房间号
144-
# @param expire 过期时间:该权限加密串的过期时间,实际过期时间:当前时间+expire
145-
# @param privilege 用户权限,255表示所有权限
146-
def gen_sig_with_userbuf(self, identifier, expire, roomnum, privilege):
147+
return self.__gen_sig(userid, expire, None)
148+
##
149+
#【功能说明】
150+
# 用于签发 TRTC 进房参数中可选的 PrivateMapKey 权限票据。
151+
# PrivateMapKey 需要跟 UserSig 一起使用,但比 UserSig 有更强的权限控制能力:
152+
# - UserSig 只能控制某个 UserID 有无使用 TRTC 服务的权限,只要 UserSig 正确,其对应的 UserID 可以进出任意房间。
153+
# - PrivateMapKey 则是将 UserID 的权限控制的更加严格,包括能不能进入某个房间,能不能在该房间里上行音视频等等。
154+
# 如果要开启 PrivateMapKey 严格权限位校验,需要在【实时音视频控制台】=>【应用管理】=>【应用信息】中“启动权限密钥”。
155+
#
156+
#【参数说明】
157+
# userid - 用户id,限制长度为32字节,只允许包含大小写英文字母(a-zA-Z)、数字(0-9)及下划线和连词符。
158+
# expire - PrivateMapKey 票据的过期时间,单位是秒,比如 86400 生成的 PrivateMapKey 票据在一天后就无法再使用了。
159+
# roomid - 房间号,用于指定该 userid 可以进入的房间号
160+
# privilegeMap - 权限位,使用了一个字节中的 8 个比特位,分别代表八个具体的功能权限:
161+
# - 第 1 位:0000 0001 = 1,创建房间的权限
162+
# - 第 2 位:0000 0010 = 2,加入房间的权限
163+
# - 第 3 位:0000 0100 = 4,发送语音的权限
164+
# - 第 4 位:0000 1000 = 8,接收语音的权限
165+
# - 第 5 位:0001 0000 = 16,发送视频的权限
166+
# - 第 6 位:0010 0000 = 32,接收视频的权限
167+
# - 第 7 位:0100 0000 = 64,发送辅路(也就是屏幕分享)视频的权限
168+
# - 第 8 位:1000 0000 = 200,接收辅路(也就是屏幕分享)视频的权限
169+
# - privilegeMap == 1111 1111 == 255 代表该 userid 在该 roomid 房间内的所有功能权限。
170+
# - privilegeMap == 0010 1010 == 42 代表该 userid 拥有加入房间和接收音视频数据的权限,但不具备其他权限。
171+
#/
172+
def genPrivateMapKey(self, userid, expire, roomid, privilegeMap):
147173
""" 带 userbuf 生成签名 """
148-
userbuf = self._gen_userbuf("xiaojun",roomnum,expire,privilege,0)
174+
userbuf = self._gen_userbuf(userid,roomid,expire,privilegeMap,0)
149175
print(userbuf)
150-
return self.__gen_sig(identifier, expire, userbuf)
176+
return self.__gen_sig(userid, expire, userbuf)
151177

152178

153179
def main():
154180
api = TLSSigAPIv2(1400000000, '5bd2850fff3ecb11d7c805251c51ee463a25727bddc2385f3fa8bfee1bb93b5e')
155-
sig = api.gen_sig("xiaojun")
181+
sig = api.genUserSig("xiaojun")
156182
print(sig)
157-
sig = api.gen_sig_with_userbuf("xiaojun", 86400*180,10000,255)
183+
sig = api.genPrivateMapKey("xiaojun", 86400*180,10000,255)
158184
print(sig)
159185

160186

0 commit comments

Comments
 (0)