Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
chat
fairchat.ReactNative
Commits
f5796416
Unverified
Commit
f5796416
authored
Feb 22, 2021
by
Diego Mello
Committed by
GitHub
Feb 22, 2021
Browse files
[FIX] Support Jitsi_URL_Room_Hash (#2905)
parent
3532cb34
Changes
7
Hide whitespace changes
Inline
Side-by-side
app/constants/settings.js
View file @
f5796416
...
@@ -101,6 +101,9 @@ export default {
...
@@ -101,6 +101,9 @@ export default {
Jitsi_Enabled_TokenAuth
:
{
Jitsi_Enabled_TokenAuth
:
{
type
:
'
valueAsBoolean
'
type
:
'
valueAsBoolean
'
},
},
Jitsi_URL_Room_Hash
:
{
type
:
'
valueAsBoolean
'
},
Jitsi_URL_Room_Prefix
:
{
Jitsi_URL_Room_Prefix
:
{
type
:
'
valueAsString
'
type
:
'
valueAsString
'
},
},
...
...
app/lib/methods/callJitsi.js
View file @
f5796416
...
@@ -2,7 +2,7 @@ import reduxStore from '../createStore';
...
@@ -2,7 +2,7 @@ import reduxStore from '../createStore';
import
Navigation
from
'
../Navigation
'
;
import
Navigation
from
'
../Navigation
'
;
import
{
logEvent
,
events
}
from
'
../../utils/log
'
;
import
{
logEvent
,
events
}
from
'
../../utils/log
'
;
async
function
jitsiURL
({
r
id
})
{
async
function
jitsiURL
({
r
oom
})
{
const
{
settings
}
=
reduxStore
.
getState
();
const
{
settings
}
=
reduxStore
.
getState
();
const
{
Jitsi_Enabled
}
=
settings
;
const
{
Jitsi_Enabled
}
=
settings
;
...
@@ -11,31 +11,37 @@ async function jitsiURL({ rid }) {
...
@@ -11,31 +11,37 @@ async function jitsiURL({ rid }) {
}
}
const
{
const
{
Jitsi_Domain
,
Jitsi_URL_Room_Prefix
,
Jitsi_SSL
,
Jitsi_Enabled_TokenAuth
,
uniqueID
Jitsi_Domain
,
Jitsi_URL_Room_Prefix
,
Jitsi_SSL
,
Jitsi_Enabled_TokenAuth
,
uniqueID
,
Jitsi_URL_Room_Hash
}
=
settings
;
}
=
settings
;
const
domain
=
`
${
Jitsi_Domain
}
/`
;
const
domain
=
`
${
Jitsi_Domain
}
/`
;
const
prefix
=
Jitsi_URL_Room_Prefix
;
const
prefix
=
Jitsi_URL_Room_Prefix
;
const
uniqueIdentifier
=
uniqueID
||
'
undefined
'
;
const
protocol
=
Jitsi_SSL
?
'
https://
'
:
'
http://
'
;
const
protocol
=
Jitsi_SSL
?
'
https://
'
:
'
http://
'
;
let
queryString
=
''
;
let
queryString
=
''
;
if
(
Jitsi_Enabled_TokenAuth
)
{
if
(
Jitsi_Enabled_TokenAuth
)
{
try
{
try
{
const
accessToken
=
await
this
.
methodCallWrapper
(
'
jitsi:generateAccessToken
'
,
rid
);
const
accessToken
=
await
this
.
methodCallWrapper
(
'
jitsi:generateAccessToken
'
,
room
?.
rid
);
queryString
=
`?jwt=
${
accessToken
}
`
;
queryString
=
`?jwt=
${
accessToken
}
`
;
}
catch
{
}
catch
{
logEvent
(
events
.
RA_JITSI_F
);
logEvent
(
events
.
RA_JITSI_F
);
}
}
}
}
return
`
${
protocol
}${
domain
}${
prefix
}${
uniqueIdentifier
}${
rid
}${
queryString
}
`
;
let
rname
;
if
(
Jitsi_URL_Room_Hash
)
{
rname
=
uniqueID
+
room
?.
rid
;
}
else
{
rname
=
encodeURIComponent
(
room
.
t
===
'
d
'
?
room
?.
usernames
?.
join
?.(
'
x
'
)
:
room
?.
name
);
}
return
`
${
protocol
}${
domain
}${
prefix
}${
rname
}${
queryString
}
`
;
}
}
async
function
callJitsi
(
r
id
,
onlyAudio
=
false
)
{
async
function
callJitsi
(
r
oom
,
onlyAudio
=
false
)
{
logEvent
(
onlyAudio
?
events
.
RA_JITSI_AUDIO
:
events
.
RA_JITSI_VIDEO
);
logEvent
(
onlyAudio
?
events
.
RA_JITSI_AUDIO
:
events
.
RA_JITSI_VIDEO
);
const
url
=
await
jitsiURL
.
call
(
this
,
{
r
id
});
const
url
=
await
jitsiURL
.
call
(
this
,
{
r
oom
});
Navigation
.
navigate
(
'
JitsiMeetView
'
,
{
url
,
onlyAudio
,
rid
});
Navigation
.
navigate
(
'
JitsiMeetView
'
,
{
url
,
onlyAudio
,
rid
:
room
?.
rid
});
}
}
export
default
callJitsi
;
export
default
callJitsi
;
app/lib/methods/canOpenRoom.js
View file @
f5796416
...
@@ -75,7 +75,8 @@ export default async function canOpenRoom({ rid, path, isCall }) {
...
@@ -75,7 +75,8 @@ export default async function canOpenRoom({ rid, path, isCall }) {
name
:
room
.
name
,
name
:
room
.
name
,
fname
:
room
.
fname
,
fname
:
room
.
fname
,
prid
:
room
.
prid
,
prid
:
room
.
prid
,
uids
:
room
.
uids
uids
:
room
.
uids
,
usernames
:
room
.
usernames
};
};
}
catch
(
e
)
{
}
catch
(
e
)
{
// Do nothing
// Do nothing
...
...
app/sagas/deepLinking.js
View file @
f5796416
...
@@ -53,7 +53,7 @@ const navigate = function* navigate({ params }) {
...
@@ -53,7 +53,7 @@ const navigate = function* navigate({ params }) {
yield
goRoom
({
item
,
isMasterDetail
});
yield
goRoom
({
item
,
isMasterDetail
});
if
(
params
.
isCall
)
{
if
(
params
.
isCall
)
{
RocketChat
.
callJitsi
(
item
.
rid
);
RocketChat
.
callJitsi
(
item
);
}
}
}
}
}
else
{
}
else
{
...
...
app/views/RoomActionsView/index.js
View file @
f5796416
...
@@ -482,7 +482,7 @@ class RoomActionsView extends React.Component {
...
@@ -482,7 +482,7 @@ class RoomActionsView extends React.Component {
<
List
.
Separator
/>
<
List
.
Separator
/>
<
List
.
Item
<
List
.
Item
title
=
'
Voice_call
'
title
=
'
Voice_call
'
onPress
=
{()
=>
RocketChat
.
callJitsi
(
room
?.
rid
,
true
)}
onPress
=
{()
=>
RocketChat
.
callJitsi
(
room
,
true
)}
testID
=
'
room-actions-voice
'
testID
=
'
room-actions-voice
'
left
=
{()
=>
<
List
.
Icon
name
=
'
phone
'
/>
}
left
=
{()
=>
<
List
.
Icon
name
=
'
phone
'
/>
}
showActionIndicator
showActionIndicator
...
@@ -490,7 +490,7 @@ class RoomActionsView extends React.Component {
...
@@ -490,7 +490,7 @@ class RoomActionsView extends React.Component {
<
List
.
Separator
/>
<
List
.
Separator
/>
<
List
.
Item
<
List
.
Item
title
=
'
Video_call
'
title
=
'
Video_call
'
onPress
=
{()
=>
RocketChat
.
callJitsi
(
room
?.
rid
)}
onPress
=
{()
=>
RocketChat
.
callJitsi
(
room
)}
testID
=
'
room-actions-video
'
testID
=
'
room-actions-video
'
left
=
{()
=>
<
List
.
Icon
name
=
'
camera
'
/>
}
left
=
{()
=>
<
List
.
Icon
name
=
'
camera
'
/>
}
showActionIndicator
showActionIndicator
...
...
app/views/RoomInfoView/index.js
View file @
f5796416
...
@@ -276,7 +276,7 @@ class RoomInfoView extends React.Component {
...
@@ -276,7 +276,7 @@ class RoomInfoView extends React.Component {
videoCall
=
()
=>
{
videoCall
=
()
=>
{
const
{
room
}
=
this
.
state
;
const
{
room
}
=
this
.
state
;
RocketChat
.
callJitsi
(
room
.
rid
);
RocketChat
.
callJitsi
(
room
);
}
}
renderAvatar
=
(
room
,
roomUser
)
=>
{
renderAvatar
=
(
room
,
roomUser
)
=>
{
...
...
app/views/RoomView/index.js
View file @
f5796416
...
@@ -817,7 +817,7 @@ class RoomView extends React.Component {
...
@@ -817,7 +817,7 @@ class RoomView extends React.Component {
if
(
jitsiTimeout
<
Date
.
now
())
{
if
(
jitsiTimeout
<
Date
.
now
())
{
showErrorAlert
(
I18n
.
t
(
'
Call_already_ended
'
));
showErrorAlert
(
I18n
.
t
(
'
Call_already_ended
'
));
}
else
{
}
else
{
RocketChat
.
callJitsi
(
this
.
rid
);
RocketChat
.
callJitsi
(
room
);
}
}
};
};
...
...
Write
Preview
Supports
Markdown
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