Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hilo-common
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hujiebin
hilo-common
Commits
5e8647a5
Commit
5e8647a5
authored
Mar 30, 2023
by
chenweijian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
trtc
parent
bfbd73fb
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
447 additions
and
9 deletions
+447
-9
base64url.go
sdk/trtc/base64url.go
+21
-0
tencentyun.go
sdk/trtc/tencentyun.go
+414
-0
trtc.go
sdk/trtc/trtc.go
+12
-9
No files found.
sdk/trtc/base64url.go
0 → 100644
View file @
5e8647a5
package
trtc
import
(
"encoding/base64"
"strings"
)
func
base64urlEncode
(
data
[]
byte
)
string
{
str
:=
base64
.
StdEncoding
.
EncodeToString
(
data
)
str
=
strings
.
Replace
(
str
,
"+"
,
"*"
,
-
1
)
str
=
strings
.
Replace
(
str
,
"/"
,
"-"
,
-
1
)
str
=
strings
.
Replace
(
str
,
"="
,
"_"
,
-
1
)
return
str
}
func
base64urlDecode
(
str
string
)
([]
byte
,
error
)
{
str
=
strings
.
Replace
(
str
,
"_"
,
"="
,
-
1
)
str
=
strings
.
Replace
(
str
,
"-"
,
"/"
,
-
1
)
str
=
strings
.
Replace
(
str
,
"*"
,
"+"
,
-
1
)
return
base64
.
StdEncoding
.
DecodeString
(
str
)
}
sdk/trtc/tencentyun.go
0 → 100644
View file @
5e8647a5
This diff is collapsed.
Click to expand it.
sdk/trtc/trtc.go
View file @
5e8647a5
...
@@ -3,24 +3,27 @@ package trtc
...
@@ -3,24 +3,27 @@ package trtc
import
(
import
(
"crypto/hmac"
"crypto/hmac"
"crypto/sha256"
"crypto/sha256"
"encoding/base64"
"encoding/hex"
"encoding/hex"
"fmt"
"fmt"
"git.hilo.cn/hilo-common/mylogrus"
"git.hilo.cn/hilo-common/mylogrus"
"time"
)
)
//创建群组的TRTC通道,token有效时长:一个星期
//创建群组的TRTC通道,token有效时长:一个星期
func
CreateGroupTRTCUserSig
(
uid
uint64
)
string
{
func
CreateGroupTRTCUserSig
(
uid
uint64
)
string
{
appId
:=
"1400548270"
appId
:=
1400548270
appSecret
:=
"321bd60f73096b059c7350f1cd97d51028850b34fa58c5c0d26bb4a19e783de8"
appSecret
:=
"321bd60f73096b059c7350f1cd97d51028850b34fa58c5c0d26bb4a19e783de8"
expireTimeInSeconds
:=
uint32
(
60
*
60
*
24
*
7
)
//一个星期
expireTimeInSeconds
:=
60
*
60
*
24
*
7
//一个星期
nowTime
:=
time
.
Now
()
//nowTime := time.Now()
base64Str
:=
base64
.
StdEncoding
.
EncodeToString
([]
byte
(
fmt
.
Sprintf
(
"%d
\n
%v
\n
%v
\n
%v"
,
uid
,
appId
,
nowTime
.
Unix
(),
expireTimeInSeconds
)))
//base64Str := base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("%d\n%v\n%v\n%v", uid, appId, nowTime.Unix(), expireTimeInSeconds)))
userSig
:=
hmacSha256
(
fmt
.
Sprintf
(
"%d
\n
%v
\n
%v
\n
%v
\n
%v"
,
uid
,
appId
,
nowTime
.
Unix
(),
expireTimeInSeconds
,
base64Str
),
appSecret
)
//userSig := hmacSha256(fmt.Sprintf("%d\n%v\n%v\n%v\n%v", uid, appId, nowTime.Unix(), expireTimeInSeconds, base64Str), appSecret)
mylogrus
.
MyLog
.
Infof
(
"CreateGroupTRTCUserSig uid:%d, token:%s"
,
uid
,
userSig
)
return
userSig
sig
,
err
:=
GenUserSig
(
appId
,
appSecret
,
fmt
.
Sprintf
(
"%s"
,
uid
),
expireTimeInSeconds
)
if
err
!=
nil
{
mylogrus
.
MyLog
.
Errorf
(
"CreateGroupTRTCUserSig uid:%d, err:%v"
,
uid
,
err
)
}
mylogrus
.
MyLog
.
Infof
(
"CreateGroupTRTCUserSig uid:%d, token:%s"
,
uid
,
sig
)
return
sig
}
}
func
hmacSha256
(
data
string
,
secret
string
)
string
{
func
hmacSha256
(
data
string
,
secret
string
)
string
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment