-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.js
More file actions
95 lines (76 loc) · 3.45 KB
/
app.js
File metadata and controls
95 lines (76 loc) · 3.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
//import { AccessToken } from 'livekit-server-sdk';
const {AccessToken} = require('livekit-server-sdk')
const express = require('express');
const http = require('http');
const { listen } = require('express/lib/application');
// const roomName = 'srp room';
// const participantIdentity = '1234';
// const participantName = 'Anant7';
// const expireTime = "1000";
const appID = 'APILdoF5BeTTyBZ';
const appCertificate = 'qPo0MfakALaaMtbtwr6NXlqOTCcU8LX3T4KJiWmsT2L';
const app2 = express();
const PORT = 5000;
const generateToken = function(req, resp) {
let _participantIdentity = req.query.participantIdentity;
let _participantName = req.query.participantName;
let _expireTime = req.query.expireTime;
let _roomCreate = req.query.roomCreate;
let _roomJoin = req.query.roomJoin;
let _roomAdmin = req.query.roomAdmin;
let _roomName = req.query.roomName;
let _userCanPublish = req.query.userCanPublish;
let _userCanSubscribe = req.query.userCanSubscribe;
let _canPublishData = req.query.userCanPublishData;
const at = new AccessToken(appID, appCertificate, {
identity: _participantIdentity,
name: _participantName,
ttl: _expireTime,
});
at.addGrant({
roomCreate: setBooleanValue(_roomCreate),roomJoin: setBooleanValue(_roomJoin), roomAdmin: setBooleanValue(_roomAdmin), room: _roomName,
canPublish: setBooleanValue(_userCanPublish), canSubscribe: setBooleanValue(_userCanSubscribe), canPublishData: setBooleanValue(_canPublishData)
});
//console.log('canSubscribeTest2:- ' + typeof(setBooleanValue(_userCanSubscribe)));
//console.log('canSubscribeTest2:- ' + setBooleanValue(_userCanSubscribe));
const token = at.toJwt();
console.log('participantIdentity', _participantIdentity);
console.log('participantName', _participantName);
console.log('expireTime', _expireTime);
console.log('roomCreate', setBooleanValue(_roomCreate));
console.log('roomJoin', setBooleanValue(_roomJoin));
console.log('roomAdmin', setBooleanValue(_roomAdmin));
console.log('roomName', _roomName);
console.log('userCanPublish', setBooleanValue(_userCanPublish));
console.log('userCanSubscribe', setBooleanValue(_userCanSubscribe));
console.log('canPublishData', setBooleanValue(_canPublishData));
// console.log('participantIdentity', _participantIdentity);
// console.log('participantName', _participantName);
// console.log('expireTime', _expireTime);
// console.log('roomCreate', _roomCreate);
// console.log('roomJoin', _roomJoin);
// console.log('roomAdmin', _roomAdmin);
// console.log('roomName', _roomName);
// console.log('userCanPublish', _userCanPublish);
// console.log('userCanSubscribe', _userCanSubscribe);
// console.log('canPublishData', _canPublishData);
// console.log('access token:-', token);
resp.header("Access-Control-Allow-Origin", "http://192.168.29.4:" + PORT)
return resp.json({'token' : token}).send()
}
function setBooleanValue(data) {
if(data == null || data == ""){
//console.log('testtest1', typeof(JSON.parse(data)) +'||' + (data) +'||' + typeof(data))
return false
} else {
console.log('testtest2', typeof(JSON.parse(data)) +'||' + (data) +'||' + typeof(data))
return JSON.parse(data)
}
}
app2.get('/generateToken', generateToken);
http.createServer(app2),listen(app2.get('port'), function(){
console.log('LiveUs Token Generate Server starts at' + app2.get('port'))
})
app2.listen(PORT, () => {
console.log(`Server is up and running on ${PORT} ...`);
});