Compare commits
239 Commits
6787
...
rm-dead-co
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
38068b33e5 | ||
|
|
22ded30b61 | ||
|
|
533deea5fd | ||
|
|
46c6d1057d | ||
|
|
45aa53b1a6 | ||
|
|
7d65123495 | ||
|
|
e1ac000cd1 | ||
|
|
f98036efa1 | ||
|
|
23aeafcc93 | ||
|
|
0ffe2c2c87 | ||
|
|
dec58afe46 | ||
|
|
2aa770e532 | ||
|
|
1a113ba733 | ||
|
|
3a5833829c | ||
|
|
e6d1f039d2 | ||
|
|
fef78152e1 | ||
|
|
84221c5c13 | ||
|
|
3e59359563 | ||
|
|
e69db9b878 | ||
|
|
ae7e441e21 | ||
|
|
6b8afbcceb | ||
|
|
d712a565f8 | ||
|
|
36bfbeb81d | ||
|
|
e7b16b0daf | ||
|
|
92a891e7d3 | ||
|
|
09e4696c60 | ||
|
|
a594aac078 | ||
|
|
9409e64066 | ||
|
|
12318db4c7 | ||
|
|
749c26b74c | ||
|
|
babe62eb6d | ||
|
|
fbc0a502e7 | ||
|
|
ab262ec8b1 | ||
|
|
cced41665d | ||
|
|
f95e167779 | ||
|
|
bf1b7cc856 | ||
|
|
091e3f69dc | ||
|
|
42868c9ec2 | ||
|
|
0d5dae7ab9 | ||
|
|
992bf47850 | ||
|
|
4f34a576d0 | ||
|
|
921f3ee8cd | ||
|
|
42838e756c | ||
|
|
e6eba3536a | ||
|
|
74bdb7bc3f | ||
|
|
192187db32 | ||
|
|
5dce74e21d | ||
|
|
fd7b6f457e | ||
|
|
2bf3089dbf | ||
|
|
d396727e39 | ||
|
|
3e58cd8af3 | ||
|
|
cf7e692186 | ||
|
|
5e90e72562 | ||
|
|
cbae997eda | ||
|
|
6bd9a6bd15 | ||
|
|
e8bd75b2d1 | ||
|
|
46f1cb7b4b | ||
|
|
60dd26c13b | ||
|
|
8e1d96cc48 | ||
|
|
e3166e6faa | ||
|
|
6de306e46e | ||
|
|
8e91851a2f | ||
|
|
0251201e93 | ||
|
|
9775ad25ca | ||
|
|
da5e19fa98 | ||
|
|
a5ddcab084 | ||
|
|
2c59b44df5 | ||
|
|
507d883503 | ||
|
|
a7b25d6d7b | ||
|
|
43b91b16da | ||
|
|
726fd3f8a1 | ||
|
|
817a05cf7b | ||
|
|
6048279eb2 | ||
|
|
43b3db11e0 | ||
|
|
77e75815dc | ||
|
|
e1485fc253 | ||
|
|
d6d71ab412 | ||
|
|
59c47a0575 | ||
|
|
8793d67f0b | ||
|
|
d6888fa2d8 | ||
|
|
222021f3bc | ||
|
|
14c24a8851 | ||
|
|
246a2d6bbf | ||
|
|
838b26f770 | ||
|
|
bc88ebe443 | ||
|
|
7f54fa4ed8 | ||
|
|
361428d245 | ||
|
|
7ad57e6baf | ||
|
|
a59ab3b0d9 | ||
|
|
c50111a57d | ||
|
|
9422f48536 | ||
|
|
122e80dcf1 | ||
|
|
2dbb3c10e2 | ||
|
|
265d8c4b29 | ||
|
|
e8e05c21ab | ||
|
|
b0591ed968 | ||
|
|
84fe52491f | ||
|
|
450da1a6df | ||
|
|
720d4555ab | ||
|
|
c764397994 | ||
|
|
0ad7b3db55 | ||
|
|
7e30053d51 | ||
|
|
0ad52a06ce | ||
|
|
82fd465819 | ||
|
|
561d0c9a10 | ||
|
|
3b8ad78a62 | ||
|
|
77e02a0994 | ||
|
|
965e7dc41d | ||
|
|
ad0ad31df9 | ||
|
|
2bb2a68e01 | ||
|
|
c441e8abca | ||
|
|
27754c8874 | ||
|
|
580f56010a | ||
|
|
4bad63e484 | ||
|
|
9cc41469d2 | ||
|
|
5077a33fcb | ||
|
|
e7078786e6 | ||
|
|
291370a263 | ||
|
|
32dbdf2e5c | ||
|
|
17b5009e63 | ||
|
|
d91f49ec88 | ||
|
|
7187530430 | ||
|
|
d3d442e4d2 | ||
|
|
294d2c9f6e | ||
|
|
12c002e015 | ||
|
|
9720b4858c | ||
|
|
9fae488070 | ||
|
|
0e47f72b5f | ||
|
|
298c4bd1e3 | ||
|
|
955367a157 | ||
|
|
c30d1e7479 | ||
|
|
cbbe58a1ec | ||
|
|
aef5328aeb | ||
|
|
f5ac1b6271 | ||
|
|
ca9f0a6788 | ||
|
|
e7c5ae5936 | ||
|
|
c43a319576 | ||
|
|
585c9aa0d2 | ||
|
|
768f10d966 | ||
|
|
704740969b | ||
|
|
d444a45f00 | ||
|
|
9fbbe05d6c | ||
|
|
3445c513ba | ||
|
|
6a4276b4c8 | ||
|
|
338b02a6b6 | ||
|
|
ef2631e95a | ||
|
|
226ef9f33d | ||
|
|
91ec5307ab | ||
|
|
fe0b7d3acc | ||
|
|
9533650594 | ||
|
|
d7bedb2e07 | ||
|
|
33e4da32e2 | ||
|
|
9a8a8ef7ad | ||
|
|
703ed731c8 | ||
|
|
83dfb67f23 | ||
|
|
51bdf67cf2 | ||
|
|
3adbda791c | ||
|
|
924bb0e7ff | ||
|
|
4c9bfe3d4d | ||
|
|
1139311809 | ||
|
|
2ad2e6ff0e | ||
|
|
46cc2e37ae | ||
|
|
0ebac2ac6d | ||
|
|
90e33ee799 | ||
|
|
be982ae996 | ||
|
|
56114fe863 | ||
|
|
a2e8a7f28f | ||
|
|
af072c3070 | ||
|
|
f42772ec5b | ||
|
|
2556a7ab77 | ||
|
|
3cbf160f2b | ||
|
|
744960bb1a | ||
|
|
76471a0ea9 | ||
|
|
0ba033e07d | ||
|
|
cb3fb3ada9 | ||
|
|
48a6472b3b | ||
|
|
691e92b7ec | ||
|
|
6e36340a83 | ||
|
|
ae424c95de | ||
|
|
95b2979eb3 | ||
|
|
a0c130568b | ||
|
|
643cc2db81 | ||
|
|
6bce0bc917 | ||
|
|
93566e313e | ||
|
|
a7c653bc30 | ||
|
|
4b969cf4ab | ||
|
|
3081b41d0d | ||
|
|
30e5d213cb | ||
|
|
752da71387 | ||
|
|
645609974a | ||
|
|
4f2f6df2bb | ||
|
|
e93c480e7c | ||
|
|
a795e0797a | ||
|
|
94ec2c720d | ||
|
|
b11e14ea34 | ||
|
|
f5f55c4f23 | ||
|
|
243a330318 | ||
|
|
98bc87ea18 | ||
|
|
f7926c9cfb | ||
|
|
533501deb6 | ||
|
|
f38c9f5450 | ||
|
|
55b80c948f | ||
|
|
971fe0481f | ||
|
|
1259e54d46 | ||
|
|
0cb95f1dd6 | ||
|
|
5cde9a138b | ||
|
|
867c488e10 | ||
|
|
7d9c13a618 | ||
|
|
48ed3b7dc6 | ||
|
|
04abfe1a3b | ||
|
|
d45decc393 | ||
|
|
88f8f48465 | ||
|
|
8127ea2479 | ||
|
|
b22915c169 | ||
|
|
14fcd153e5 | ||
|
|
48efe36cdf | ||
|
|
0c373e105b | ||
|
|
e57c7f92a8 | ||
|
|
70fa44f85f | ||
|
|
bcc5beb73d | ||
|
|
4ef4e45ee4 | ||
|
|
c9ff0bb75f | ||
|
|
282817db28 | ||
|
|
93ab7725e7 | ||
|
|
53ccb97d34 | ||
|
|
6346d99d0e | ||
|
|
79c4cabbad | ||
|
|
7a9f51b01b | ||
|
|
a884a6b232 | ||
|
|
b00a17c1c3 | ||
|
|
99955df5c8 | ||
|
|
c0f0803f01 | ||
|
|
b2c864cbba | ||
|
|
31957d4085 | ||
|
|
4f83fc2a6d | ||
|
|
4bd27730ce | ||
|
|
817d7f0c0d | ||
|
|
19a9b17425 | ||
|
|
cc33930259 |
15
.devcontainer/devcontainer.json
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "Jitsi Meet Dev Container",
|
||||
"image": "mcr.microsoft.com/devcontainers/universal:2",
|
||||
"features": {
|
||||
"ghcr.io/devcontainers/features/node:1": {
|
||||
"version": "16"
|
||||
}
|
||||
},
|
||||
"hostRequirements": {
|
||||
"cpus": 4,
|
||||
"memory": "8gb",
|
||||
"storage": "32gb"
|
||||
},
|
||||
"postCreateCommand": "bash -i -c 'nvm use && npm install && cp tsconfig.web.json tsconfig.json'"
|
||||
}
|
||||
25
.github/workflows/ci-lua.yml
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
name: Lua CI
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
jobs:
|
||||
luacheck:
|
||||
name: Luacheck
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Install luarocks
|
||||
run: sudo apt-get --install-recommends -y install luarocks
|
||||
|
||||
- name: Install luacheck
|
||||
run: sudo luarocks install luacheck
|
||||
|
||||
- name: Check lua codes
|
||||
run: |
|
||||
set -o pipefail && luacheck . | awk -F: '
|
||||
{
|
||||
print $0
|
||||
printf "::warning file=%s,line=%s,col=%s::%s\n", $1, $2, $3, $4
|
||||
}
|
||||
'
|
||||
7
.github/workflows/ci.yml
vendored
@@ -7,7 +7,7 @@ jobs:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
@@ -20,12 +20,11 @@ jobs:
|
||||
- name: Check if the git repository is clean
|
||||
run: $(exit $(git status --porcelain --untracked-files=no | head -255 | wc -l)) || (echo "Dirty git tree"; git diff; exit 1)
|
||||
- run: npm run lint:ci
|
||||
- run: for file in lang/*.json; do npx --yes jsonlint -q $file || exit 1; done
|
||||
linux-build:
|
||||
name: Build Frontend (Linux)
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
@@ -36,7 +35,7 @@ jobs:
|
||||
name: Build Frontend (macOS)
|
||||
runs-on: macOS-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
|
||||
8
.luacheckrc
Normal file
@@ -0,0 +1,8 @@
|
||||
global = false
|
||||
unused = false
|
||||
redefined = false
|
||||
ignore = { "581" }
|
||||
max_line_length = false
|
||||
color = false
|
||||
formatter = "plain"
|
||||
quiet = 1
|
||||
@@ -141,7 +141,7 @@ react/features/sample/
|
||||
```
|
||||
|
||||
The middleware must be imported in `react/features/app/` specifically
|
||||
in `middlewares.any`, `middlewares.native.js` or `middlewares.web.js` where appropriate.
|
||||
in `middlewares.any.ts`, `middlewares.native.ts` or `middlewares.web.ts` where appropriate.
|
||||
Likewise for the reducer.
|
||||
|
||||
An `index.js` file must not be provided for exporting actions, action types and
|
||||
|
||||
@@ -76,7 +76,7 @@ android {
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
implementation 'androidx.appcompat:appcompat:1.4.1'
|
||||
implementation 'androidx.appcompat:appcompat:1.5.1'
|
||||
|
||||
debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.7'
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 659 B |
|
Before Width: | Height: | Size: 379 B |
|
Before Width: | Height: | Size: 960 B |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 2.4 KiB |
70
android/app/src/main/res/drawable/ic_launcher_monochrome.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="262.91376dp"
|
||||
android:height="262.91376dp"
|
||||
android:viewportWidth="262.91376"
|
||||
android:viewportHeight="262.91376">
|
||||
<group android:scaleX="0.75" android:scaleY="0.75" android:translateX="35" android:translateY="35">
|
||||
<clip-path
|
||||
android:pathData="m0,0 l262.914,-0L262.914,262.914 0,262.914 0,0Z"/>
|
||||
<path
|
||||
android:pathData="m142.646,105.099c0.117,0.026 0.255,0.036 0.406,0.036 3.186,-0 10.297,-4.615 11.617,-6.721l0.1,-0.17 0.153,-0.135c0.451,-0.441 1.746,-2.773 2.374,-4.17 -6.751,-2.023 -7.49,-5.677 -8.153,-8.919 -0.069,-0.376 -0.138,-0.717 -0.204,-1.019 -0.074,-0.397 -0.153,-0.8 -0.226,-1.112C138.668,86.221 135.593,88.094 133.921,89.483 133.056,90.201 132.542,92.251 135.042,97.926 136.323,100.816 140.727,104.733 142.646,105.099"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m115.413,146.042c5.934,-0 18.464,-3.543 26.748,-5.887 1.21,-0.336 2.33,-0.66 3.351,-0.944 0.166,-0.046 0.321,-0.091 0.472,-0.124 -0.463,-0.461 -1.239,-1.159 -2.497,-2.216 -5.521,-3.741 -10.736,-5.484 -16.403,-5.484 -1.237,-0 -2.522,0.071 -3.923,0.231 -4.801,0.55 -8.8,1.69 -10.722,2.237 -0.967,0.284 -1.263,0.366 -1.567,0.366 -0.58,-0 -1.079,-0.341 -1.273,-0.878 -0.194,-0.534 -0.027,-1.121 0.425,-1.507l0.024,-0.011c3.316,-2.784 9.489,-7.951 21.198,-10.256 2.027,-0.401 4.202,-0.605 6.454,-0.605 5.242,-0 10.67,1.086 16.125,3.219 7.436,2.899 12.521,6.625 16.602,9.62 2.199,1.609 4.105,3.007 5.755,3.771 0.421,0.2 0.637,0.255 0.746,0.265 0.074,-0.095 0.23,-0.365 0.474,-1.069 0.066,-0.185 0.529,-2.161 -2.806,-13.374 -1.931,-6.51 -4.264,-13.156 -5.479,-16.104 -2.356,-5.711 -1.778,-9.76 -1.051,-12.125 -1.999,0.735 -4.033,1.87 -6.174,3.446L161.758,98.711C160.694,99.506 159.599,100.404 158.426,101.454 151.517,107.64 146.344,110.864 143.035,111.04l-0.093,0.004 -0.093,-0.009c-2.912,-0.245 -7.324,-4.489 -9.133,-6.634 -0.373,-0.251 -0.8,-0.366 -1.366,-0.366 -0.564,-0 -1.202,0.116 -1.82,0.235C130.086,104.354 129.623,104.441 129.167,104.489 127.708,104.632 125.668,105.106 123.694,105.561 122.746,105.777 121.762,106.005 120.864,106.189 120.851,106.19 120.463,106.272 119.774,106.454 114.903,107.891 111.228,109.55 109.432,111.111 109.414,111.127 109.352,111.174 109.266,111.242 108.048,112.105 105.124,114.567 104.248,118.762L104.237,118.795C102.398,126.516 105.187,136.087 108.892,141.554 110.636,144.125 112.513,145.727 114.048,145.959 114.437,146.015 114.891,146.042 115.413,146.042"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m90.093,173.175c-1.252,-1.472 -1.783,-3.324 -1.574,-5.521 0.884,-10.642 -0.329,-13.215 -0.891,-13.829 -0.131,-0.144 -0.207,-0.144 -0.265,-0.144 -0.022,-0 -0.041,0.003 -0.064,0.003 -1.044,0.248 -8.066,5.002 -9.615,19.171 -0.749,6.845 0.561,15.63 1.679,20.974 0.897,-3.155 2.314,-6.624 5.057,-10.204 2.556,-3.326 5.345,-5.955 8.801,-8.253C92.143,174.93 90.991,174.235 90.093,173.175"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m94.906,156.389c-0.03,2.229 -0.326,4.36 -0.61,6.445 -0.151,1.119 -0.314,2.286 -0.434,3.46 -0.161,2.341 0.346,3.166 0.571,3.406 0.127,0.136 0.326,0.287 0.76,0.287 0.339,-0 0.741,-0.091 1.161,-0.268 4.202,-1.756 8.195,-4.815 10.115,-6.515C103.522,161.892 98.995,159.058 94.906,156.389"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m154.002,81.595c-0.031,0.074 -0.065,0.148 -0.101,0.216 -0.821,2.403 0.306,5.664 2.419,6.898 0.561,0.327 1.106,0.526 1.624,0.596 0.072,0.006 0.148,0.009 0.219,0.009 1.645,-0 2.971,-1.199 3.961,-3.561C162.752,83.959 162.836,81.827 162.37,79.904 162.003,78.409 161.057,76.627 160.453,75.738 159.332,76.509 157.111,78.207 155.585,79.553 154.518,80.582 154.136,81.229 154.002,81.595"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="M148.97,77.699C153.957,73.194 156.988,65.754 158.253,61.334 153.915,65.513 148.633,67.758 145.25,69.198 144.084,69.695 143.08,70.124 142.477,70.476 142.224,70.623 141.965,70.77 141.708,70.919 139.654,72.109 136.55,73.905 136.1,75.011l-0.012,0.036 -0.012,0.034c-1.406,2.956 -2.199,7.401 -2.457,9.95 3.266,-1.99 6.625,-3.322 9.416,-4.42C145.628,79.585 147.863,78.703 148.97,77.699"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m164.464,51.921c-0.84,5.539 -2.205,10.799 -4.751,16.347 2.781,-3.144 4.396,-6.568 4.941,-10.401C164.886,56.275 165.097,54.756 164.464,51.921"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="M148.749,142.639C148.718,142.598 148.684,142.56 148.658,142.519 148.523,142.539 148.307,142.584 147.972,142.683l-0.14,0.04c-1.726,0.644 -4.899,1.708 -8.556,2.946 -4.396,1.479 -9.365,3.154 -13.526,4.649 -5.297,1.975 -7.021,2.755 -7.557,3.024 -0.098,0.266 -0.203,0.599 -0.327,0.965 -1.254,3.816 -4.125,12.541 -18.276,18.653 2.928,2.956 9.289,8.27 21.809,8.27 1.082,-0 2.21,-0.036 3.341,-0.12 9.451,-0.666 18.342,-4.855 25.026,-11.78 6.087,-6.291 9.538,-14.136 9.585,-21.7C157.876,147.509 155.367,147.135 153.043,146.033 153.014,146.02 150.361,144.745 148.749,142.639"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m189.478,117.853c-0.523,9.749 -2.122,18.424 -4.744,25.8 -2.128,5.988 -4.94,11.134 -8.356,15.316 -5.676,6.931 -11.555,9.256 -12.804,9.304 -0.866,-0 -1.313,-0.309 -3.046,-1.528 -0.17,-0.114 -0.37,-0.252 -0.581,-0.4 -3.313,5.953 -8.505,11.097 -15.065,14.959 -7.079,4.144 -15.297,6.423 -23.157,6.423 -9.078,-0 -17.13,-2.924 -23.341,-8.456 -7.467,4.799 -12.31,9.074 -16.267,27.005l-1.363,6.17 -2.971,-5.564c-0.424,-0.786 -1.929,-3.731 -3.332,-8.887 -1.934,-7.104 -2.86,-15.181 -2.758,-24.01 0.117,-10.049 3.154,-16.526 5.68,-20.186 2.98,-4.314 6.837,-6.994 10.076,-6.994 0.216,-0 0.428,0.006 0.616,0.035 5.159,0.575 8.435,2.75 14.396,6.686l1.899,1.252c2.059,1.344 4.481,2.7 5.259,2.989 0.54,-0.284 1.749,-2.3 2.155,-5.271l0.069,-0.451c0.005,-0.045 0.009,-0.091 0.014,-0.131 -0.036,-0.02 -0.065,-0.029 -0.094,-0.041 -4.008,-1.375 -9.539,-7.7 -12.364,-17.134 -2.684,-9.382 -2.129,-17.185 1.644,-23.193 6.12,-9.736 19.198,-11.974 23.466,-12.702 1.331,-0.266 2.716,-0.511 4.041,-0.717 0.255,-0.061 0.469,-0.121 0.642,-0.168 -0.031,-0.126 -0.071,-0.265 -0.114,-0.43 -0.108,-0.417 -0.23,-0.891 -0.354,-1.447 -1.345,-6.035 -0.664,-11.069 0.181,-15.193 0.928,-4.546 1.489,-7.287 3.747,-9.936 3.029,-4.165 8.319,-5.936 11.479,-6.991 0.746,-0.249 1.511,-0.509 1.894,-0.689 8.988,-4.31 11.82,-8.739 12.615,-11.694 0.656,-2.451 1.699,-8.884 1.251,-13.335 -0.085,-0.805 0.129,-1.521 0.621,-2.065 0.45,-0.505 1.101,-0.794 1.778,-0.794 1.515,-0 2.82,-0 7.511,14.598 2.481,7.698 0.645,14.903 -5.45,21.424l-0.226,0.231c0.024,0.044 0.049,0.09 0.08,0.144 2.57,4.236 3.963,9.54 3.553,13.51 -0.099,0.906 -0.265,1.775 -0.419,2.549 -0.003,0.01 -0.003,0.016 -0.004,0.029 0.516,-0.032 1.119,-0.055 1.775,-0.055 3.052,-0 7.435,0.474 10.989,2.735 2.135,1.352 4.845,3.439 6.835,7.615C189.223,102.942 190.076,109.575 189.478,117.853m4.77,-23.191c-2.916,-6.1 -6.989,-9.177 -9.793,-10.96 -2.355,-1.494 -5.064,-2.584 -8.077,-3.24l-0.676,-0.146 -0.111,-0.689c-0.339,-2.119 -0.918,-4.275 -1.715,-6.406l-0.185,-0.49 0.292,-0.434c5.095,-7.594 6.323,-16.17 3.54,-24.802 -2.191,-6.824 -3.895,-11.211 -5.341,-13.799 -2.954,-5.305 -7.006,-6.417 -9.891,-6.417 -2.964,-0 -5.8,1.261 -7.789,3.457 -2.043,2.254 -2.993,5.207 -2.678,8.31 0.316,3.134 -0.494,8.516 -1.014,10.439 -0.04,0.117 -0.975,2.929 -8.201,6.428 -0.162,0.056 -0.512,0.179 -1.053,0.359 -3.729,1.246 -10.666,3.571 -15.258,9.64 -3.465,4.205 -4.332,8.441 -5.338,13.346 -0.586,2.865 -1.236,6.744 -1.079,11.344l0.026,0.841 -0.824,0.188c-11.646,2.585 -20.025,7.835 -24.909,15.605 -5.054,8.04 -5.919,18.055 -2.543,29.853 0.063,0.204 0.126,0.407 0.189,0.615l0.527,1.608 -1.665,-0.286c-0.561,-0.101 -1.135,-0.18 -1.729,-0.241 -0.493,-0.06 -1.001,-0.082 -1.509,-0.082 -5.633,-0 -11.663,3.585 -16.128,9.592 -3.451,4.641 -7.588,12.849 -7.735,25.601 -0.114,9.573 0.906,18.401 3.038,26.228 1.581,5.795 3.326,9.329 4.004,10.577l13.306,24.94 6.096,-27.619c2.454,-11.09 4.864,-15.262 7.725,-18.111l0.561,-0.563 0.679,0.411c6.605,3.977 14.466,6.084 22.73,6.084 9.286,-0 18.965,-2.682 27.259,-7.551 5.38,-3.16 9.974,-7.036 13.649,-11.531l0.45,-0.369 0.85,-0.02c2.156,-0.068 5.16,-1.164 8.222,-3.004 2.6,-1.555 6.543,-4.428 10.501,-9.262 3.997,-4.884 7.274,-10.854 9.716,-17.734 2.876,-8.073 4.625,-17.489 5.204,-28.004 0.689,-9.668 -0.434,-17.641 -3.327,-23.704"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m180.026,98.414c-1.67,-2.596 -3.771,-4.206 -5.475,-4.206 -0.313,-0 -0.613,0.051 -0.895,0.161 -0.911,0.361 -2.356,4.532 -1.714,7.566 0.434,2.066 2.938,9.04 4.151,12.394 0.456,1.281 0.68,1.91 0.754,2.142 0.064,0.183 0.145,0.448 0.256,0.774 0.97,2.971 3.467,10.586 4.206,16.761 1.549,-6.579 2.424,-14.512 2.085,-23.997C183.235,105.662 182.04,101.538 180.026,98.414"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="M168.088,142.604C169.896,142.111 171.33,141.705 172.398,141.395 170.213,139.874 167.689,137.979 164.247,135.304c-8.418,-6.546 -17.449,-9.87 -26.839,-9.87 -5.135,-0 -9.611,0.991 -13.156,2.186 0.882,-0.05 1.779,-0.079 2.7,-0.079 1.1,-0 2.247,0.04 3.411,0.119 3.652,0.246 13.061,1.901 21.565,12.047 1.714,2.039 3.559,3.73 8.794,3.73 1.873,-0 4.051,-0.207 6.662,-0.645C167.544,142.751 167.793,142.678 168.088,142.604"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
<path
|
||||
android:pathData="m164.3,147.583c-0.122,1.563 -0.376,4.509 -0.782,6.76 -0.495,2.719 -1.31,5.02 -1.791,6.226 0.85,0.786 1.694,1.553 2.247,2.043 2.214,-1.447 9.47,-6.96 14.483,-19.474C176.847,144.229 174.59,145.178 171.671,146.018 168.701,146.861 165.82,147.357 164.3,147.583"
|
||||
android:fillColor="#ffffff"
|
||||
android:strokeColor="#00000000"
|
||||
android:fillType="nonZero"/>
|
||||
</group>
|
||||
</vector>
|
||||
@@ -2,4 +2,5 @@
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
||||
@@ -2,4 +2,5 @@
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@color/ic_launcher_background"/>
|
||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome"/>
|
||||
</adaptive-icon>
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<color name="colorPrimary">#17A0DB</color>
|
||||
<color name="colorPrimaryDark">#1081B2</color>
|
||||
<color name="navigationBarColor">#161618</color>
|
||||
</resources>
|
||||
@@ -2,7 +2,7 @@
|
||||
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
|
||||
<item name="android:editTextBackground">@drawable/rn_edit_text_material</item>
|
||||
<item name="android:forceDarkAllowed">false</item>
|
||||
<item name="android:navigationBarColor">@color/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">@color/navigationBarColor</item>
|
||||
<item name="android:windowDisablePreview">true</item>
|
||||
</style>
|
||||
</resources>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
import groovy.json.JsonSlurper
|
||||
import org.apache.tools.ant.taskdefs.condition.Os
|
||||
import org.gradle.util.VersionNumber
|
||||
|
||||
// Top-level build file where you can add configuration options common to all
|
||||
@@ -12,16 +11,16 @@ buildscript {
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.0.4'
|
||||
classpath 'com.google.gms:google-services:4.3.10'
|
||||
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
|
||||
classpath 'com.google.gms:google-services:4.3.14'
|
||||
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
|
||||
}
|
||||
}
|
||||
|
||||
ext {
|
||||
buildToolsVersion = "31.0.0"
|
||||
compileSdkVersion = 31
|
||||
compileSdkVersion = 32
|
||||
minSdkVersion = 23
|
||||
targetSdkVersion = 31
|
||||
targetSdkVersion = 32
|
||||
supportLibVersion = "28.0.0"
|
||||
|
||||
if (System.properties['os.arch'] == "aarch64") {
|
||||
|
||||
@@ -76,7 +76,6 @@ dependencies {
|
||||
implementation project(':react-native-get-random-values')
|
||||
implementation project(':react-native-immersive')
|
||||
implementation project(':react-native-keep-awake')
|
||||
implementation project(':react-native-masked-view_masked-view')
|
||||
implementation project(':react-native-orientation-locker')
|
||||
implementation project(':react-native-pager-view')
|
||||
implementation project(':react-native-performance')
|
||||
|
||||
@@ -81,6 +81,8 @@ public class JitsiMeetView extends FrameLayout {
|
||||
result.putBoolean(key, (Boolean)bValue);
|
||||
} else if (valueType.contentEquals("String")) {
|
||||
result.putString(key, (String)bValue);
|
||||
} else if (valueType.contentEquals("Integer")) {
|
||||
result.putInt(key, (int)bValue);
|
||||
} else if (valueType.contentEquals("Bundle")) {
|
||||
result.putBundle(key, mergeProps((Bundle)aValue, (Bundle)bValue));
|
||||
} else {
|
||||
|
||||
@@ -73,7 +73,6 @@ class ReactInstanceManagerHolder {
|
||||
new SplashScreenModule(reactContext),
|
||||
new PictureInPictureModule(reactContext),
|
||||
new ProximityModule(reactContext),
|
||||
new WiFiStatsModule(reactContext),
|
||||
new org.jitsi.meet.sdk.net.NAT64AddrInfoModule(reactContext)));
|
||||
|
||||
if (AudioModeModule.useConnectionService()) {
|
||||
@@ -120,11 +119,10 @@ class ReactInstanceManagerHolder {
|
||||
new com.oblador.performance.PerformancePackage(),
|
||||
new com.reactnativecommunity.slider.ReactSliderPackage(),
|
||||
new com.brentvatne.react.ReactVideoPackage(),
|
||||
new org.reactnative.maskedview.RNCMaskedViewPackage(),
|
||||
new com.reactnativecommunity.webview.RNCWebViewPackage(),
|
||||
new com.kevinresol.react_native_default_preference.RNDefaultPreferencePackage(),
|
||||
new com.learnium.RNDeviceInfo.RNDeviceInfo(),
|
||||
new com.swmansion.gesturehandler.react.RNGestureHandlerPackage(),
|
||||
new com.swmansion.gesturehandler.RNGestureHandlerPackage(),
|
||||
new org.linusu.RNGetRandomValuesPackage(),
|
||||
new com.rnimmersive.RNImmersivePackage(),
|
||||
new com.swmansion.rnscreens.RNScreensPackage(),
|
||||
|
||||
@@ -42,10 +42,10 @@ public class WebRTCVideoDecoderFactory implements VideoDecoderFactory {
|
||||
public VideoCodecInfo[] getSupportedCodecs() {
|
||||
List<VideoCodecInfo> codecs = new ArrayList<>();
|
||||
|
||||
codecs.add(H264Utils.DEFAULT_H264_BASELINE_PROFILE_CODEC);
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.VP8.name(), new HashMap<>()));
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.VP9.name(), new HashMap<>()));
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.AV1.name(), new HashMap<>()));
|
||||
codecs.add(H264Utils.DEFAULT_H264_BASELINE_PROFILE_CODEC);
|
||||
|
||||
return codecs.toArray(new VideoCodecInfo[codecs.size()]);
|
||||
}
|
||||
|
||||
@@ -43,10 +43,10 @@ public class WebRTCVideoEncoderFactory implements VideoEncoderFactory {
|
||||
public VideoCodecInfo[] getSupportedCodecs() {
|
||||
List<VideoCodecInfo> codecs = new ArrayList<>();
|
||||
|
||||
codecs.add(H264Utils.DEFAULT_H264_BASELINE_PROFILE_CODEC);
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.VP8.name(), new HashMap<>()));
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.VP9.name(), new HashMap<>()));
|
||||
codecs.add(new VideoCodecInfo(VideoCodecMimeType.AV1.name(), new HashMap<>()));
|
||||
codecs.add(H264Utils.DEFAULT_H264_BASELINE_PROFILE_CODEC);
|
||||
|
||||
return codecs.toArray(new VideoCodecInfo[codecs.size()]);
|
||||
}
|
||||
|
||||
@@ -1,203 +0,0 @@
|
||||
/*
|
||||
* Copyright @ 2017-present Atlassian Pty Ltd
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.jitsi.meet.sdk;
|
||||
|
||||
import android.content.Context;
|
||||
import android.net.wifi.WifiInfo;
|
||||
import android.net.wifi.WifiManager;
|
||||
|
||||
import com.facebook.react.bridge.Promise;
|
||||
import com.facebook.react.bridge.ReactApplicationContext;
|
||||
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
||||
import com.facebook.react.bridge.ReactMethod;
|
||||
import com.facebook.react.module.annotations.ReactModule;
|
||||
|
||||
import org.jitsi.meet.sdk.log.JitsiMeetLogger;
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.net.InetAddress;
|
||||
import java.net.NetworkInterface;
|
||||
import java.net.SocketException;
|
||||
import java.net.UnknownHostException;
|
||||
import java.util.Enumeration;
|
||||
import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
|
||||
/**
|
||||
* Module exposing WiFi statistics.
|
||||
*
|
||||
* Gathers rssi, signal in percentage, timestamp and the addresses of the wifi
|
||||
* device.
|
||||
*/
|
||||
@ReactModule(name = WiFiStatsModule.NAME)
|
||||
class WiFiStatsModule
|
||||
extends ReactContextBaseJavaModule {
|
||||
|
||||
public static final String NAME = "WiFiStats";
|
||||
|
||||
/**
|
||||
* The {@code Log} tag {@code WiFiStatsModule} is to log messages with.
|
||||
*/
|
||||
static final String TAG = NAME;
|
||||
|
||||
/**
|
||||
* The scale used for the signal value. A level of the signal, given in the
|
||||
* range of 0 to SIGNAL_LEVEL_SCALE-1 (both inclusive).
|
||||
*/
|
||||
public final static int SIGNAL_LEVEL_SCALE = 101;
|
||||
|
||||
/**
|
||||
* {@link ExecutorService} for running all operations on a dedicated thread.
|
||||
*/
|
||||
private static final ExecutorService executor
|
||||
= Executors.newSingleThreadExecutor();
|
||||
|
||||
/**
|
||||
* Initializes a new module instance. There shall be a single instance of
|
||||
* this module throughout the lifetime of the application.
|
||||
*
|
||||
* @param reactContext the {@link ReactApplicationContext} where this module
|
||||
* is created.
|
||||
*/
|
||||
public WiFiStatsModule(ReactApplicationContext reactContext) {
|
||||
super(reactContext);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the name for this module to be used in the React Native bridge.
|
||||
*
|
||||
* @return a string with the module name.
|
||||
*/
|
||||
@Override
|
||||
public String getName() {
|
||||
return NAME;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the {@link InetAddress} represented by this int.
|
||||
*
|
||||
* @param value the int representation of the ip address.
|
||||
* @return the {@link InetAddress}.
|
||||
* @throws UnknownHostException - if IP address is of illegal length.
|
||||
*/
|
||||
public static InetAddress toInetAddress(int value)
|
||||
throws UnknownHostException {
|
||||
return InetAddress.getByAddress(
|
||||
new byte[] {
|
||||
(byte) value,
|
||||
(byte) (value >> 8),
|
||||
(byte) (value >> 16),
|
||||
(byte) (value >> 24)
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Public method to retrieve WiFi stats.
|
||||
*
|
||||
* @param promise a {@link Promise} which will be resolved if WiFi stats are
|
||||
* retrieved successfully, and it will be rejected otherwise.
|
||||
*/
|
||||
@ReactMethod
|
||||
public void getWiFiStats(final Promise promise) {
|
||||
Runnable r = new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
Context context
|
||||
= getReactApplicationContext().getApplicationContext();
|
||||
WifiManager wifiManager
|
||||
= (WifiManager) context
|
||||
.getSystemService(Context.WIFI_SERVICE);
|
||||
|
||||
if (!wifiManager.isWifiEnabled()) {
|
||||
promise.reject(new Exception("Wifi not enabled"));
|
||||
return;
|
||||
}
|
||||
|
||||
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
|
||||
|
||||
if (wifiInfo.getNetworkId() == -1) {
|
||||
promise.reject(new Exception("Wifi not connected"));
|
||||
return;
|
||||
}
|
||||
|
||||
int rssi = wifiInfo.getRssi();
|
||||
int signalLevel
|
||||
= WifiManager.calculateSignalLevel(
|
||||
rssi, SIGNAL_LEVEL_SCALE);
|
||||
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("rssi", rssi)
|
||||
.put("signal", signalLevel)
|
||||
.put("timestamp", System.currentTimeMillis());
|
||||
|
||||
JSONArray addresses = new JSONArray();
|
||||
|
||||
InetAddress wifiAddress
|
||||
= toInetAddress(wifiInfo.getIpAddress());
|
||||
|
||||
try {
|
||||
Enumeration<NetworkInterface> e
|
||||
= NetworkInterface.getNetworkInterfaces();
|
||||
while (e.hasMoreElements()) {
|
||||
NetworkInterface networkInterface = e.nextElement();
|
||||
boolean found = false;
|
||||
|
||||
// first check whether this is the desired interface
|
||||
Enumeration<InetAddress> as
|
||||
= networkInterface.getInetAddresses();
|
||||
while (as.hasMoreElements()) {
|
||||
InetAddress a = as.nextElement();
|
||||
if(a.equals(wifiAddress)) {
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (found) {
|
||||
// interface found let's put addresses
|
||||
// to the result object
|
||||
as = networkInterface.getInetAddresses();
|
||||
while (as.hasMoreElements()) {
|
||||
InetAddress a = as.nextElement();
|
||||
if (a.isLinkLocalAddress())
|
||||
continue;
|
||||
|
||||
addresses.put(a.getHostAddress());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
} catch (SocketException e) {
|
||||
JitsiMeetLogger.e(e, TAG + " Unable to NetworkInterface.getNetworkInterfaces()");
|
||||
}
|
||||
|
||||
result.put("addresses", addresses);
|
||||
promise.resolve(result.toString());
|
||||
|
||||
JitsiMeetLogger.d(TAG + " WiFi stats: " + result.toString());
|
||||
} catch (Throwable e) {
|
||||
JitsiMeetLogger.e(e, TAG + " Failed to obtain wifi stats");
|
||||
promise.reject(
|
||||
new Exception("Failed to obtain wifi stats"));
|
||||
}
|
||||
}
|
||||
};
|
||||
executor.execute(r);
|
||||
}
|
||||
}
|
||||
BIN
android/sdk/src/main/res/drawable-hdpi/ic_notification.png
Normal file
|
After Width: | Height: | Size: 699 B |
BIN
android/sdk/src/main/res/drawable-mdpi/ic_notification.png
Normal file
|
After Width: | Height: | Size: 406 B |
BIN
android/sdk/src/main/res/drawable-xhdpi/ic_notification.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
android/sdk/src/main/res/drawable-xxhdpi/ic_notification.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
android/sdk/src/main/res/drawable-xxxhdpi/ic_notification.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
@@ -31,8 +31,6 @@ include ':react-native-immersive'
|
||||
project(':react-native-immersive').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-immersive/android')
|
||||
include ':react-native-keep-awake'
|
||||
project(':react-native-keep-awake').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-keep-awake/android')
|
||||
include ':react-native-masked-view_masked-view'
|
||||
project(':react-native-masked-view_masked-view').projectDir = new File(rootProject.projectDir, '../node_modules/@react-native-masked-view/masked-view/android')
|
||||
include ':react-native-orientation-locker'
|
||||
project(':react-native-orientation-locker').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-orientation-locker/android')
|
||||
include ':react-native-pager-view'
|
||||
|
||||
237
conference.js
@@ -44,8 +44,10 @@ import {
|
||||
conferenceUniqueIdSet,
|
||||
conferenceWillJoin,
|
||||
conferenceWillLeave,
|
||||
dataChannelClosed,
|
||||
dataChannelOpened,
|
||||
e2eRttChanged,
|
||||
generateVisitorConfig,
|
||||
getConferenceOptions,
|
||||
kickedOut,
|
||||
lockStateChanged,
|
||||
@@ -54,10 +56,7 @@ import {
|
||||
p2pStatusChanged,
|
||||
sendLocalParticipant
|
||||
} from './react/features/base/conference';
|
||||
import {
|
||||
getMultipleVideoSendingSupportFeatureFlag,
|
||||
getReplaceParticipant
|
||||
} from './react/features/base/config/functions';
|
||||
import { getReplaceParticipant } from './react/features/base/config/functions';
|
||||
import {
|
||||
checkAndNotifyForNewDevice,
|
||||
getAvailableDevices,
|
||||
@@ -104,6 +103,7 @@ import {
|
||||
participantMutedUs,
|
||||
participantPresenceChanged,
|
||||
participantRoleChanged,
|
||||
participantSourcesUpdated,
|
||||
participantUpdated,
|
||||
screenshareParticipantDisplayNameChanged,
|
||||
updateRemoteParticipantFeatures
|
||||
@@ -134,9 +134,12 @@ import {
|
||||
import { maybeSetLobbyChatMessageListener } from './react/features/lobby/actions.any';
|
||||
import { setNoiseSuppressionEnabled } from './react/features/noise-suppression/actions';
|
||||
import {
|
||||
DATA_CHANNEL_CLOSED_NOTIFICATION_ID,
|
||||
NOTIFICATION_TIMEOUT_TYPE,
|
||||
hideNotification,
|
||||
isModerationNotificationDisplayed,
|
||||
showNotification
|
||||
showNotification,
|
||||
showWarningNotification
|
||||
} from './react/features/notifications';
|
||||
import { mediaPermissionPromptVisibilityChanged } from './react/features/overlay';
|
||||
import { suspendDetected } from './react/features/power-monitor';
|
||||
@@ -276,7 +279,8 @@ class ConferenceConnector {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
constructor(resolve, reject) {
|
||||
constructor(resolve, reject, conference) {
|
||||
this._conference = conference;
|
||||
this._resolve = resolve;
|
||||
this._reject = reject;
|
||||
this.reconnectTimeout = null;
|
||||
@@ -335,6 +339,26 @@ class ConferenceConnector {
|
||||
break;
|
||||
}
|
||||
|
||||
case JitsiConferenceErrors.REDIRECTED: {
|
||||
generateVisitorConfig(APP.store.getState(), params);
|
||||
|
||||
connection.disconnect().then(() => {
|
||||
connect(this._conference.roomName).then(con => {
|
||||
const localTracks = getLocalTracks(APP.store.getState()['features/base/tracks']);
|
||||
|
||||
const jitsiTracks = localTracks.map(t => t.jitsiTrack);
|
||||
|
||||
// visitors connect muted
|
||||
jitsiTracks.forEach(t => t.mute());
|
||||
|
||||
// TODO disable option to unmute audio or video
|
||||
this._conference.startConference(con, jitsiTracks);
|
||||
});
|
||||
});
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case JitsiConferenceErrors.GRACEFUL_SHUTDOWN:
|
||||
APP.UI.notifyGracefulShutdown();
|
||||
break;
|
||||
@@ -458,6 +482,11 @@ export default {
|
||||
*/
|
||||
_localTracksInitialized: false,
|
||||
|
||||
/**
|
||||
* Flag used to prevent the creation of another local video track in this.muteVideo if one is already in progress.
|
||||
*/
|
||||
isCreatingLocalTrack: false,
|
||||
|
||||
isSharingScreen: false,
|
||||
|
||||
/**
|
||||
@@ -726,7 +755,7 @@ export default {
|
||||
// XXX The API will take care of disconnecting from the XMPP
|
||||
// server (and, thus, leaving the room) on unload.
|
||||
return new Promise((resolve, reject) => {
|
||||
new ConferenceConnector(resolve, reject).connect();
|
||||
new ConferenceConnector(resolve, reject, this).connect();
|
||||
});
|
||||
},
|
||||
|
||||
@@ -1027,11 +1056,13 @@ export default {
|
||||
|
||||
const localVideo = getLocalJitsiVideoTrack(APP.store.getState());
|
||||
|
||||
if (!localVideo && !mute) {
|
||||
if (!localVideo && !mute && !this.isCreatingLocalTrack) {
|
||||
const maybeShowErrorDialog = error => {
|
||||
showUI && APP.store.dispatch(notifyCameraError(error));
|
||||
};
|
||||
|
||||
this.isCreatingLocalTrack = true;
|
||||
|
||||
// Try to create local video if there wasn't any.
|
||||
// This handles the case when user joined with no video
|
||||
// (dismissed screen sharing screen or in audio only mode), but
|
||||
@@ -1053,6 +1084,9 @@ export default {
|
||||
logger.debug(`muteVideo: calling useVideoStream for track: ${videoTrack}`);
|
||||
|
||||
return this.useVideoStream(videoTrack);
|
||||
})
|
||||
.finally(() => {
|
||||
this.isCreatingLocalTrack = false;
|
||||
});
|
||||
} else {
|
||||
// FIXME show error dialog if it fails (should be handled by react)
|
||||
@@ -1338,7 +1372,7 @@ export default {
|
||||
this._createRoom(localTracks);
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
new ConferenceConnector(resolve, reject).connect();
|
||||
new ConferenceConnector(resolve, reject, this).connect();
|
||||
});
|
||||
},
|
||||
|
||||
@@ -1418,30 +1452,13 @@ export default {
|
||||
return;
|
||||
}
|
||||
|
||||
// In the multi-stream mode, add the track to the conference if there is no existing track, replace it
|
||||
// otherwise.
|
||||
if (getMultipleVideoSendingSupportFeatureFlag(state)) {
|
||||
const trackAction = oldTrack
|
||||
? replaceLocalTrack(oldTrack, newTrack, room)
|
||||
: addLocalTrack(newTrack);
|
||||
// Add the track to the conference if there is no existing track, replace it otherwise.
|
||||
const trackAction = oldTrack
|
||||
? replaceLocalTrack(oldTrack, newTrack, room)
|
||||
: addLocalTrack(newTrack);
|
||||
|
||||
APP.store.dispatch(trackAction)
|
||||
.then(() => {
|
||||
this.setVideoMuteStatus();
|
||||
})
|
||||
.then(resolve)
|
||||
.catch(error => {
|
||||
logger.error(`useVideoStream failed: ${error}`);
|
||||
reject(error);
|
||||
})
|
||||
.then(onFinish);
|
||||
|
||||
return;
|
||||
}
|
||||
APP.store.dispatch(
|
||||
replaceLocalTrack(oldTrack, newTrack, room))
|
||||
APP.store.dispatch(trackAction)
|
||||
.then(() => {
|
||||
this._setSharingScreen(newTrack);
|
||||
this.setVideoMuteStatus();
|
||||
})
|
||||
.then(resolve)
|
||||
@@ -1971,6 +1988,11 @@ export default {
|
||||
APP.store.dispatch(participantKicked(kicker, kicked));
|
||||
});
|
||||
|
||||
room.on(JitsiConferenceEvents.PARTICIPANT_SOURCE_UPDATED,
|
||||
jitsiParticipant => {
|
||||
APP.store.dispatch(participantSourcesUpdated(jitsiParticipant));
|
||||
});
|
||||
|
||||
room.on(JitsiConferenceEvents.SUSPEND_DETECTED, () => {
|
||||
APP.store.dispatch(suspendDetected());
|
||||
});
|
||||
@@ -2067,6 +2089,18 @@ export default {
|
||||
room.on(
|
||||
JitsiConferenceEvents.DATA_CHANNEL_OPENED, () => {
|
||||
APP.store.dispatch(dataChannelOpened());
|
||||
APP.store.dispatch(hideNotification(DATA_CHANNEL_CLOSED_NOTIFICATION_ID));
|
||||
}
|
||||
);
|
||||
|
||||
room.on(
|
||||
JitsiConferenceEvents.DATA_CHANNEL_CLOSED, ev => {
|
||||
APP.store.dispatch(dataChannelClosed(ev.code, ev.reason));
|
||||
APP.store.dispatch(showWarningNotification({
|
||||
descriptionKey: 'notify.dataChannelClosedDescription',
|
||||
titleKey: 'notify.dataChannelClosed',
|
||||
uid: DATA_CHANNEL_CLOSED_NOTIFICATION_ID
|
||||
}, NOTIFICATION_TIMEOUT_TYPE.STICKY));
|
||||
}
|
||||
);
|
||||
|
||||
@@ -2314,7 +2348,7 @@ export default {
|
||||
* @param {MediaDeviceInfo[]} devices
|
||||
* @returns {Promise}
|
||||
*/
|
||||
_onDeviceListChanged(devices) {
|
||||
async _onDeviceListChanged(devices) {
|
||||
const oldDevices = APP.store.getState()['features/base/devices'].availableDevices;
|
||||
const localAudio = getLocalJitsiAudioTrack(APP.store.getState());
|
||||
const localVideo = getLocalJitsiVideoTrack(APP.store.getState());
|
||||
@@ -2328,13 +2362,10 @@ export default {
|
||||
const newDevices
|
||||
= mediaDeviceHelper.getNewMediaDevicesAfterDeviceListChanged(
|
||||
devices,
|
||||
this.isSharingScreen,
|
||||
localVideo,
|
||||
localAudio,
|
||||
newLabelsOnly);
|
||||
const promises = [];
|
||||
const audioWasMuted = this.isLocalAudioMuted();
|
||||
const videoWasMuted = this.isLocalVideoMuted();
|
||||
const requestedInput = {
|
||||
audio: Boolean(newDevices.audioinput),
|
||||
video: Boolean(newDevices.videoinput)
|
||||
@@ -2346,7 +2377,6 @@ export default {
|
||||
= setAudioOutputDeviceId(newDevices.audiooutput, dispatch)
|
||||
.catch(); // Just ignore any errors in catch block.
|
||||
|
||||
|
||||
promises.push(setAudioOutputPromise);
|
||||
}
|
||||
|
||||
@@ -2363,8 +2393,7 @@ export default {
|
||||
}
|
||||
|
||||
// Let's handle unknown/non-preferred devices
|
||||
const newAvailDevices
|
||||
= APP.store.getState()['features/base/devices'].availableDevices;
|
||||
const newAvailDevices = APP.store.getState()['features/base/devices'].availableDevices;
|
||||
let newAudioDevices = [];
|
||||
let oldAudioDevices = [];
|
||||
|
||||
@@ -2380,103 +2409,85 @@ export default {
|
||||
|
||||
// check for audio
|
||||
if (newAudioDevices.length > 0) {
|
||||
APP.store.dispatch(
|
||||
checkAndNotifyForNewDevice(newAudioDevices, oldAudioDevices));
|
||||
APP.store.dispatch(checkAndNotifyForNewDevice(newAudioDevices, oldAudioDevices));
|
||||
}
|
||||
|
||||
// check for video
|
||||
if (!requestedInput.video) {
|
||||
APP.store.dispatch(
|
||||
checkAndNotifyForNewDevice(newAvailDevices.videoInput, oldDevices.videoInput));
|
||||
APP.store.dispatch(checkAndNotifyForNewDevice(newAvailDevices.videoInput, oldDevices.videoInput));
|
||||
}
|
||||
|
||||
// When the 'default' mic needs to be selected, we need to
|
||||
// pass the real device id to gUM instead of 'default' in order
|
||||
// to get the correct MediaStreamTrack from chrome because of the
|
||||
// following bug.
|
||||
// When the 'default' mic needs to be selected, we need to pass the real device id to gUM instead of 'default'
|
||||
// in order to get the correct MediaStreamTrack from chrome because of the following bug.
|
||||
// https://bugs.chromium.org/p/chromium/issues/detail?id=997689
|
||||
const hasDefaultMicChanged = newDevices.audioinput === 'default';
|
||||
|
||||
// This is the case when the local video is muted and a preferred device is connected.
|
||||
// When the local video is muted and a preferred device is connected, update the settings and remove the track
|
||||
// from the conference. A new track will be created and replaced when the user unmutes their camera.
|
||||
if (requestedInput.video && this.isLocalVideoMuted()) {
|
||||
// We want to avoid creating a new video track in order to prevent turning on the camera.
|
||||
requestedInput.video = false;
|
||||
APP.store.dispatch(updateSettings({ // Update the current selected camera for the device selection dialog.
|
||||
APP.store.dispatch(updateSettings({
|
||||
cameraDeviceId: newDevices.videoinput
|
||||
}));
|
||||
requestedInput.video = false;
|
||||
delete newDevices.videoinput;
|
||||
|
||||
// Removing the current video track in order to force the unmute to select the preferred device.
|
||||
logger.debug('_onDeviceListChanged: Removing the current video track.');
|
||||
this.useVideoStream(null);
|
||||
|
||||
// Remove the track from the conference.
|
||||
if (localVideo) {
|
||||
await this.useVideoStream(null);
|
||||
logger.debug('_onDeviceListChanged: Removed the current video track.');
|
||||
}
|
||||
}
|
||||
|
||||
promises.push(
|
||||
mediaDeviceHelper.createLocalTracksAfterDeviceListChanged(
|
||||
// When the local audio is muted and a preferred device is connected, update the settings and remove the track
|
||||
// from the conference. A new track will be created and replaced when the user unmutes their mic.
|
||||
if (requestedInput.audio && this.isLocalAudioMuted()) {
|
||||
APP.store.dispatch(updateSettings({
|
||||
micDeviceId: newDevices.audioinput
|
||||
}));
|
||||
requestedInput.audio = false;
|
||||
delete newDevices.audioinput;
|
||||
|
||||
// Remove the track from the conference.
|
||||
if (localAudio) {
|
||||
await this.useAudioStream(null);
|
||||
logger.debug('_onDeviceListChanged: Removed the current audio track.');
|
||||
}
|
||||
}
|
||||
|
||||
// Create the tracks and replace them only if the user is unmuted.
|
||||
if (requestedInput.audio || requestedInput.video) {
|
||||
let tracks = [];
|
||||
|
||||
try {
|
||||
tracks = await mediaDeviceHelper.createLocalTracksAfterDeviceListChanged(
|
||||
createLocalTracksF,
|
||||
newDevices.videoinput,
|
||||
hasDefaultMicChanged
|
||||
? getDefaultDeviceId(APP.store.getState(), 'audioInput')
|
||||
: newDevices.audioinput)
|
||||
.then(tracks => {
|
||||
// If audio or video muted before, or we unplugged current
|
||||
// device and selected new one, then mute new track.
|
||||
const muteSyncPromises = tracks.map(track => {
|
||||
if ((track.isVideoTrack() && videoWasMuted)
|
||||
|| (track.isAudioTrack() && audioWasMuted)) {
|
||||
return track.mute();
|
||||
}
|
||||
: newDevices.audioinput);
|
||||
} catch (error) {
|
||||
logger.error(`Track creation failed on device change, ${error}`);
|
||||
|
||||
return Promise.resolve();
|
||||
});
|
||||
return Promise.reject(error);
|
||||
}
|
||||
|
||||
return Promise.all(muteSyncPromises)
|
||||
.then(() =>
|
||||
Promise.all(Object.keys(requestedInput).map(mediaType => {
|
||||
if (requestedInput[mediaType]) {
|
||||
const useStream
|
||||
= mediaType === 'audio'
|
||||
? this.useAudioStream.bind(this)
|
||||
: this.useVideoStream.bind(this);
|
||||
const track = tracks.find(t => t.getType() === mediaType) || null;
|
||||
|
||||
// Use the new stream or null if we failed to obtain it.
|
||||
return useStream(track)
|
||||
.then(() => {
|
||||
if (track?.isAudioTrack() && hasDefaultMicChanged) {
|
||||
// workaround for the default device to be shown as selected in the
|
||||
// settings even when the real device id was passed to gUM because of
|
||||
// the above mentioned chrome bug.
|
||||
track._realDeviceId = track.deviceId = 'default';
|
||||
}
|
||||
mediaType === 'audio'
|
||||
? this._updateAudioDeviceId()
|
||||
: this._updateVideoDeviceId();
|
||||
});
|
||||
}
|
||||
|
||||
return Promise.resolve();
|
||||
})));
|
||||
})
|
||||
.then(() => {
|
||||
// Log and sync known mute state.
|
||||
if (audioWasMuted) {
|
||||
sendAnalytics(createTrackMutedEvent(
|
||||
'audio',
|
||||
'device list changed'));
|
||||
logger.log('Audio mute: device list changed');
|
||||
muteLocalAudio(true);
|
||||
}
|
||||
|
||||
if (!this.isSharingScreen && videoWasMuted) {
|
||||
sendAnalytics(createTrackMutedEvent(
|
||||
'video',
|
||||
'device list changed'));
|
||||
logger.log('Video mute: device list changed');
|
||||
muteLocalVideo(true);
|
||||
}
|
||||
}));
|
||||
for (const track of tracks) {
|
||||
if (track.isAudioTrack()) {
|
||||
promises.push(
|
||||
this.useAudioStream(track)
|
||||
.then(() => {
|
||||
hasDefaultMicChanged && (track._realDeviceId = track.deviceId = 'default');
|
||||
this._updateAudioDeviceId();
|
||||
}));
|
||||
} else {
|
||||
promises.push(
|
||||
this.useVideoStream(track)
|
||||
.then(() => {
|
||||
this._updateVideoDeviceId();
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return Promise.all(promises)
|
||||
.then(() => {
|
||||
|
||||
138
config.js
@@ -79,11 +79,6 @@ var config = {
|
||||
// This is useful when the client runs on a host with limited resources.
|
||||
// noAutoPlayVideo: false,
|
||||
|
||||
// Whether to use fake constraints (height: 99999, width: 99999) when calling getDisplayMedia on
|
||||
// Chromium based browsers. This is intended as a workaround for
|
||||
// https://bugs.chromium.org/p/chromium/issues/detail?id=1056311
|
||||
// setScreenSharingResolutionConstraints: true,
|
||||
|
||||
// Enable callstats only for a percentage of users.
|
||||
// This takes a value between 0 and 100 which determines the probability for
|
||||
// the callstats to be enabled.
|
||||
@@ -262,17 +257,6 @@ var config = {
|
||||
// applied locally. FIXME: having these 2 options is confusing.
|
||||
// startWithVideoMuted: false,
|
||||
|
||||
// If set to true, prefer to use the H.264 video codec (if supported).
|
||||
// Note that it's not recommended to do this because simulcast is not
|
||||
// supported when using H.264. For 1-to-1 calls this setting is enabled by
|
||||
// default and can be toggled in the p2p section.
|
||||
// This option has been deprecated, use preferredCodec under videoQuality section instead.
|
||||
// preferH264: true,
|
||||
|
||||
// If set to true, disable H.264 video codec by stripping it out of the
|
||||
// SDP.
|
||||
// disableH264: false,
|
||||
|
||||
// Desktop sharing
|
||||
|
||||
// Optional desktop sharing frame rate options. Default value: min:5, max:5.
|
||||
@@ -434,12 +418,6 @@ var config = {
|
||||
// 90: 2,
|
||||
// },
|
||||
|
||||
// Provides a way to translate the legacy bridge signaling messages, 'LastNChangedEvent',
|
||||
// 'SelectedEndpointsChangedEvent' and 'ReceiverVideoConstraint' into the new 'ReceiverVideoConstraints' message
|
||||
// that invokes the new bandwidth allocation algorithm in the bridge which is described here
|
||||
// - https://github.com/jitsi/jitsi-videobridge/blob/master/doc/allocation.md.
|
||||
// useNewBandwidthAllocationStrategy: false,
|
||||
|
||||
// Specify the settings for video quality optimizations on the client.
|
||||
// videoQuality: {
|
||||
// // Provides a way to prevent a video codec from being negotiated on the JVB connection. The codec specified
|
||||
@@ -564,12 +542,15 @@ var config = {
|
||||
// Disables responsive tiles.
|
||||
// disableResponsiveTiles: false,
|
||||
|
||||
// Hides lobby button
|
||||
// DEPRECATED. Please use `securityUi?.hideLobbyButton` instead.
|
||||
// Hides lobby button.
|
||||
// hideLobbyButton: false,
|
||||
|
||||
// DEPRECATED. Please use `lobby?.autoKnock` instead.
|
||||
// If Lobby is enabled starts knocking automatically.
|
||||
// autoKnockLobby: false,
|
||||
|
||||
// DEPRECATED. Please use `lobby?.enableChat` instead.
|
||||
// Enable lobby chat.
|
||||
// enableLobbyChat: true,
|
||||
|
||||
@@ -580,9 +561,35 @@ var config = {
|
||||
// Require users to always specify a display name.
|
||||
// requireDisplayName: true,
|
||||
|
||||
// DEPRECATED! Use 'welcomePage.disabled' instead.
|
||||
// Whether to use a welcome page or not. In case it's false a random room
|
||||
// will be joined when no room is specified.
|
||||
enableWelcomePage: true,
|
||||
// enableWelcomePage: true,
|
||||
|
||||
// Configs for welcome page.
|
||||
// welcomePage: {
|
||||
// // Whether to disable welcome page. In case it's disabled a random room
|
||||
// // will be joined when no room is specified.
|
||||
// disabled: false,
|
||||
// // If set,landing page will redirect to this URL.
|
||||
// customUrl: ''
|
||||
// },
|
||||
|
||||
// Configs for the lobby screen.
|
||||
// lobby {
|
||||
// // If Lobby is enabled, it starts knocking automatically. Replaces `autoKnockLobby`.
|
||||
// autoKnock: false,
|
||||
// // Enables the lobby chat. Replaces `enableLobbyChat`.
|
||||
// enableChat: true,
|
||||
// },
|
||||
|
||||
// Configs for the security related UI elements.
|
||||
// securityUi: {
|
||||
// // Hides the lobby button. Replaces `hideLobbyButton`.
|
||||
// hideLobbyButton: false,
|
||||
// // Hides the possibility to set and enter a lobby password.
|
||||
// disableLobbyPassword: false,
|
||||
// },
|
||||
|
||||
// Disable app shortcuts that are registered upon joining a conference
|
||||
// disableShortcuts: false,
|
||||
@@ -701,7 +708,6 @@ var config = {
|
||||
// 'chat',
|
||||
// 'closedcaptions',
|
||||
// 'desktop',
|
||||
// 'dock-iframe',
|
||||
// 'download',
|
||||
// 'embedmeeting',
|
||||
// 'etherpad',
|
||||
@@ -729,7 +735,6 @@ var config = {
|
||||
// 'stats',
|
||||
// 'tileview',
|
||||
// 'toggle-camera',
|
||||
// 'undock-iframe',
|
||||
// 'videoquality',
|
||||
// 'whiteboard',
|
||||
// ],
|
||||
@@ -767,11 +772,13 @@ var config = {
|
||||
// 'desktop',
|
||||
// 'download',
|
||||
// 'embedmeeting',
|
||||
// 'end-meeting',
|
||||
// 'etherpad',
|
||||
// 'feedback',
|
||||
// 'filmstrip',
|
||||
// 'fullscreen',
|
||||
// 'hangup',
|
||||
// 'hangup-menu',
|
||||
// 'help',
|
||||
// {
|
||||
// key: 'invite',
|
||||
@@ -811,6 +818,14 @@ var config = {
|
||||
// 'microphone', 'camera', 'select-background', 'invite', 'settings'
|
||||
// hiddenPremeetingButtons: [],
|
||||
|
||||
// An array with custom option buttons for the participant context menu
|
||||
// type: Array<{ icon: string; id: string; text: string; }>
|
||||
// customParticipantMenuButtons: [],
|
||||
|
||||
// An array with custom option buttons for the toolbar
|
||||
// type: Array<{ icon: string; id: string; text: string; }>
|
||||
// customToolbarButtons: [],
|
||||
|
||||
// Stats
|
||||
//
|
||||
|
||||
@@ -913,18 +928,10 @@ var config = {
|
||||
// If not set, the effective value is 'all'.
|
||||
// iceTransportPolicy: 'all',
|
||||
|
||||
// If set to true, it will prefer to use H.264 for P2P calls (if H.264
|
||||
// is supported). This setting is deprecated, use preferredCodec instead.
|
||||
// preferH264: true,
|
||||
|
||||
// Provides a way to set the video codec preference on the p2p connection. Acceptable
|
||||
// codec values are 'VP8', 'VP9' and 'H264'.
|
||||
// preferredCodec: 'H264',
|
||||
|
||||
// If set to true, disable H.264 video codec by stripping it out of the
|
||||
// SDP. This setting is deprecated, use disabledCodec instead.
|
||||
// disableH264: false,
|
||||
|
||||
// Provides a way to prevent a video codec from being negotiated on the p2p connection.
|
||||
// disabledCodec: '',
|
||||
|
||||
@@ -1081,10 +1088,64 @@ var config = {
|
||||
// use only.
|
||||
// _desktopSharingSourceDevice: 'sample-id-or-label',
|
||||
|
||||
// DEPRECATED! Use deeplinking.disabled instead.
|
||||
// If true, any checks to handoff to another application will be prevented
|
||||
// and instead the app will continue to display in the current browser.
|
||||
// disableDeepLinking: false,
|
||||
|
||||
// The deeplinking config.
|
||||
// For information about the properties of
|
||||
// deeplinking.[ios/android].dynamicLink check:
|
||||
// https://firebase.google.com/docs/dynamic-links/create-manually
|
||||
// deeplinking: {
|
||||
//
|
||||
// // The desktop deeplinking config.
|
||||
// desktop: {
|
||||
// appName: 'Jitsi Meet'
|
||||
// },
|
||||
// // If true, any checks to handoff to another application will be prevented
|
||||
// // and instead the app will continue to display in the current browser.
|
||||
// disabled: false,
|
||||
|
||||
// // whether to hide the logo on the deep linking pages.
|
||||
// hideLogo: false,
|
||||
|
||||
// // The ios deeplinking config.
|
||||
// ios: {
|
||||
// appName: 'Jitsi Meet',
|
||||
// // Specify mobile app scheme for opening the app from the mobile browser.
|
||||
// appScheme: 'org.jitsi.meet',
|
||||
// // Custom URL for downloading ios mobile app.
|
||||
// downloadLink: 'https://itunes.apple.com/us/app/jitsi-meet/id1165103905',
|
||||
// dynamicLink: {
|
||||
// apn: 'org.jitsi.meet',
|
||||
// appCode: 'w2atb',
|
||||
// customDomain: undefined,
|
||||
// ibi: 'com.atlassian.JitsiMeet.ios',
|
||||
// isi: '1165103905'
|
||||
// }
|
||||
// },
|
||||
|
||||
// // The android deeplinking config.
|
||||
// android: {
|
||||
// appName: 'Jitsi Meet',
|
||||
// // Specify mobile app scheme for opening the app from the mobile browser.
|
||||
// appScheme: 'org.jitsi.meet',
|
||||
// // Custom URL for downloading android mobile app.
|
||||
// downloadLink: 'https://play.google.com/store/apps/details?id=org.jitsi.meet',
|
||||
// // Android app package name.
|
||||
// appPackage: 'org.jitsi.meet',
|
||||
// fDroidUrl: 'https://f-droid.org/en/packages/org.jitsi.meet/',
|
||||
// dynamicLink: {
|
||||
// apn: 'org.jitsi.meet',
|
||||
// appCode: 'w2atb',
|
||||
// customDomain: undefined,
|
||||
// ibi: 'com.atlassian.JitsiMeet.ios',
|
||||
// isi: '1165103905'
|
||||
// }
|
||||
// }
|
||||
// },
|
||||
|
||||
// A property to disable the right click context menu for localVideo
|
||||
// the menu has option to flip the locally seen video for local presentations
|
||||
// disableLocalVideoFlip: false,
|
||||
@@ -1301,6 +1362,7 @@ var config = {
|
||||
deploymentInfo
|
||||
dialOutAuthUrl
|
||||
dialOutCodesUrl
|
||||
dialOutRegionUrl
|
||||
disableRemoteControl
|
||||
displayJids
|
||||
externalConnectUrl
|
||||
@@ -1481,6 +1543,8 @@ var config = {
|
||||
// tileTime: 5000,
|
||||
// // Limit results by rating: g, pg, pg-13, r. Default value: g.
|
||||
// rating: 'pg',
|
||||
// // The proxy server url for giphy requests in the web app.
|
||||
// proxyUrl: 'https://giphy-proxy.example.com',
|
||||
// },
|
||||
|
||||
// Logging
|
||||
@@ -1510,6 +1574,12 @@ var config = {
|
||||
// },
|
||||
};
|
||||
|
||||
// Temporary backwards compatibility with old mobile clients.
|
||||
config.flags = config.flags || {};
|
||||
config.flags.sourceNameSignaling = true;
|
||||
config.flags.sendMultipleVideoStreams = true;
|
||||
config.flags.receiveMultipleVideoStreams = true;
|
||||
|
||||
// Set the default values for JaaS customers
|
||||
if (enableJaaS) {
|
||||
config.dialInNumbersUrl = 'https://conference-mapper.jitsi.net/v1/access/dids';
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
display: inline-block;
|
||||
|
||||
&-content {
|
||||
background: $menuBG;
|
||||
border-radius: 3px;
|
||||
font-size: 14px;
|
||||
line-height: 24px;
|
||||
position: relative;
|
||||
right: auto;
|
||||
margin-bottom: 8px;
|
||||
max-height: 456px;
|
||||
overflow: auto;
|
||||
width: 300px;
|
||||
|
||||
&-ul {
|
||||
margin:0;
|
||||
padding:0;
|
||||
@@ -16,90 +16,37 @@
|
||||
}
|
||||
}
|
||||
|
||||
&-header {
|
||||
color: #fff;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
margin-top: 8px;
|
||||
padding: 8px 16px;
|
||||
|
||||
&-icon {
|
||||
display: inline-block;
|
||||
|
||||
svg {
|
||||
fill: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
&--bordered {
|
||||
border-bottom: 1px solid #4C4D50;
|
||||
}
|
||||
|
||||
&-text {
|
||||
margin-left: 12px;
|
||||
}
|
||||
&-header:hover {
|
||||
background-color: initial;
|
||||
cursor: initial;
|
||||
}
|
||||
|
||||
&-entry {
|
||||
align-items: center;
|
||||
color: #fff;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
padding: 8px 0;
|
||||
margin-left: 48px;
|
||||
&-entry-text {
|
||||
display: inline-block;
|
||||
text-overflow: ellipsis;
|
||||
max-width: 213px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
|
||||
&--selected {
|
||||
background: #131519;
|
||||
cursor: initial;
|
||||
margin-left: 0;
|
||||
padding-left: 18px;
|
||||
}
|
||||
|
||||
&-text {
|
||||
color: #fff;
|
||||
display: inline-block;
|
||||
line-height: 24px;
|
||||
text-overflow: ellipsis;
|
||||
max-width: 213px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
&.left-margin {
|
||||
margin-left: 36px;
|
||||
}
|
||||
}
|
||||
|
||||
&-speaker {
|
||||
position: relative;
|
||||
|
||||
&-ul {
|
||||
margin:0;
|
||||
padding:0;
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
&:hover, &:focus-within, &:focus {
|
||||
.audio-preview-entry {
|
||||
background: #36383C;
|
||||
margin-left: 0;
|
||||
padding-left: 48px;
|
||||
|
||||
&--selected {
|
||||
padding-left: 18px;
|
||||
background: $newToolbarBackgroundColor;
|
||||
}
|
||||
}
|
||||
|
||||
.audio-preview-test-button {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.audio-preview-entry-text {
|
||||
max-width: 178px;
|
||||
margin-right: 0;
|
||||
}
|
||||
}
|
||||
|
||||
&:last-child {
|
||||
padding-bottom: 8px;
|
||||
}
|
||||
|
||||
.audio-preview-entry-text {
|
||||
max-width: 238px;
|
||||
}
|
||||
@@ -108,19 +55,6 @@
|
||||
&-microphone {
|
||||
position: relative;
|
||||
|
||||
&:hover {
|
||||
.audio-preview-entry {
|
||||
background: #36383C;
|
||||
margin-left: 0;
|
||||
padding-left: 48px;
|
||||
|
||||
&--selected {
|
||||
background: $newToolbarBackgroundColor;
|
||||
padding-left: 18px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&--nometer {
|
||||
.audio-preview-entry-text {
|
||||
max-width: 238px;
|
||||
@@ -140,42 +74,21 @@
|
||||
display: inline-block;
|
||||
width: 14px;
|
||||
|
||||
& svg {
|
||||
fill: #1C2025;
|
||||
}
|
||||
|
||||
&--check {
|
||||
background: #31B76A;
|
||||
margin-right: 16px;
|
||||
}
|
||||
|
||||
&--exclamation {
|
||||
margin-left: 6px;
|
||||
|
||||
& svg {
|
||||
fill: #E54B4B;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&-hr {
|
||||
border-top: 1px solid #4C4D50;
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
&-test-button {
|
||||
display: none;
|
||||
background: #FFF;
|
||||
border: 1px solid #D1DBE8;
|
||||
border-radius: 3px;
|
||||
color: #1C2025;
|
||||
cursor: pointer;
|
||||
font-weight: 600;
|
||||
font-size: 0.8rem;
|
||||
line-height: 24px;
|
||||
padding: 2px 8px;
|
||||
padding: 4px 10px;
|
||||
position: absolute;
|
||||
right: 16px;
|
||||
top: 5px;
|
||||
top: 6px;
|
||||
}
|
||||
|
||||
&-meter-mic {
|
||||
@@ -184,9 +97,7 @@
|
||||
top: 14px;
|
||||
}
|
||||
|
||||
// Override @atlaskit/InlineDialog container which is made with styled components
|
||||
& > div:nth-child(2) {
|
||||
outline: none;
|
||||
padding: 0;
|
||||
&-checkbox-container {
|
||||
padding: 10px 16px;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -126,6 +126,12 @@ form {
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.leftwatermarknomargin {
|
||||
background-position: center left;
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
|
||||
.rightwatermark {
|
||||
right: 32px;
|
||||
top: 32px;
|
||||
|
||||
126
css/_chat.scss
@@ -32,7 +32,7 @@
|
||||
|
||||
#chat-conversation-container {
|
||||
// extract message input height
|
||||
height: calc(100% - 68px);
|
||||
height: calc(100% - 64px);
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
@@ -76,32 +76,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
#chat-recipient {
|
||||
align-items: center;
|
||||
background-color: $chatPrivateMessageBackgroundColor;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
font-weight: 100;
|
||||
padding: 10px;
|
||||
|
||||
span {
|
||||
color: white;
|
||||
display: flex;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
div {
|
||||
svg {
|
||||
cursor: pointer;
|
||||
fill: white;
|
||||
}
|
||||
}
|
||||
|
||||
&.lobby-chat-recipient {
|
||||
background-color: $chatLobbyMessageBackgroundColor;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.chat-header {
|
||||
height: 70px;
|
||||
@@ -124,13 +98,12 @@
|
||||
}
|
||||
|
||||
.chat-input-container {
|
||||
padding: 0 16px 16px;
|
||||
padding: 0 16px 24px;
|
||||
}
|
||||
|
||||
#chat-input {
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
padding: 4px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
@@ -263,15 +236,6 @@
|
||||
-webkit-user-select: text;
|
||||
user-select: text;
|
||||
}
|
||||
|
||||
.display-name {
|
||||
font-size: 12px;
|
||||
font-weight: 600;
|
||||
margin-bottom: 5px;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.sr-only {
|
||||
@@ -288,24 +252,11 @@
|
||||
}
|
||||
|
||||
.chatmessage {
|
||||
background-color: $chatRemoteMessageBackgroundColor;
|
||||
border-radius: 0px 6px 6px 6px;
|
||||
box-sizing: border-box;
|
||||
color: white;
|
||||
margin-top: 3px;
|
||||
max-width: 100%;
|
||||
position: relative;
|
||||
|
||||
&.localuser {
|
||||
background-color: $chatLocalMessageBackgroundColor;
|
||||
border-radius: 6px 0px 6px 6px;
|
||||
}
|
||||
|
||||
.usermessage {
|
||||
white-space: pre-wrap;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
&.error {
|
||||
border-radius: 0px;
|
||||
|
||||
@@ -320,22 +271,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
.privatemessagenotice {
|
||||
font-size: 11px;
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
.messagecontent {
|
||||
margin: 8px;
|
||||
max-width: 100%;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.timestamp {
|
||||
color: #757575;
|
||||
}
|
||||
|
||||
#smileys {
|
||||
font-size: 20pt;
|
||||
margin: auto;
|
||||
@@ -409,24 +350,9 @@
|
||||
}
|
||||
|
||||
.chat-message-group {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
&.local {
|
||||
align-items: flex-end;
|
||||
|
||||
.chatmessage {
|
||||
background-color: $chatLocalMessageBackgroundColor;
|
||||
border-radius: 6px 0px 6px 6px;
|
||||
|
||||
&.privatemessage {
|
||||
background-color: $chatPrivateMessageBackgroundColor;
|
||||
}
|
||||
&.lobbymessage {
|
||||
background-color: $chatLobbyMessageBackgroundColor;
|
||||
}
|
||||
}
|
||||
|
||||
.display-name {
|
||||
display: none;
|
||||
}
|
||||
@@ -437,58 +363,10 @@
|
||||
}
|
||||
|
||||
&.error {
|
||||
.chatmessage {
|
||||
background-color: $defaultWarningColor;
|
||||
border-radius: 0px;
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
.display-name {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.chatmessage-wrapper {
|
||||
max-width: 100%;
|
||||
|
||||
.replywrapper {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
|
||||
.messageactions {
|
||||
align-self: stretch;
|
||||
border-left: 1px solid $chatActionsSeparatorColor;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
padding: 5px;
|
||||
|
||||
&.lobbychatmessageactions {
|
||||
border-left-color: $chatLobbyActionsSeparatorColor;
|
||||
}
|
||||
|
||||
.toolbox-icon {
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.chatmessage {
|
||||
background-color: $chatRemoteMessageBackgroundColor;
|
||||
border-radius: 0px 6px 6px 6px;
|
||||
display: inline-block;
|
||||
margin-top: 3px;
|
||||
color: white;
|
||||
|
||||
&.privatemessage {
|
||||
background-color: $chatPrivateMessageBackgroundColor;
|
||||
}
|
||||
&.lobbymessage {
|
||||
background-color: $chatLobbyMessageBackgroundColor;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.chat-dialog {
|
||||
|
||||
@@ -3,28 +3,28 @@
|
||||
display: inline-block;
|
||||
|
||||
& > svg {
|
||||
fill: #4E5E6C;
|
||||
fill: #525252;
|
||||
width: 38px;
|
||||
}
|
||||
}
|
||||
|
||||
&.metr--disabled {
|
||||
& > svg {
|
||||
fill: #4E5E6C;
|
||||
fill: #525252;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.metr-l-0 {
|
||||
rect:first-child {
|
||||
fill: #31B76A;
|
||||
fill: #1EC26A;
|
||||
}
|
||||
}
|
||||
|
||||
@for $i from 1 through 7 {
|
||||
.metr-l-#{$i} {
|
||||
rect:nth-child(-n+#{$i+1}) {
|
||||
fill: #31B76A;
|
||||
fill: #1EC26A;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
357
css/_polls.scss
@@ -1,360 +1,3 @@
|
||||
.poll-dialog {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
line-height: 20px;
|
||||
|
||||
h1, span, li, strong {
|
||||
color: #bce;
|
||||
}
|
||||
ol {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.poll-question-field {
|
||||
padding: 8px 16px;
|
||||
padding-bottom: 24px;
|
||||
border-bottom: 1px solid #525252;
|
||||
}
|
||||
|
||||
.poll-header {
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
|
||||
.poll-creator {
|
||||
color: #C2C2C2;
|
||||
font-weight: 600;
|
||||
margin: 4px 0 16px 0;
|
||||
}
|
||||
|
||||
.poll-answer-container {
|
||||
display: flex;
|
||||
padding: 4px;
|
||||
background: #3D3D3D;
|
||||
border-radius: 3px;
|
||||
margin-bottom: 8px;
|
||||
|
||||
@media (max-width: 580px) {
|
||||
&> span {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
svg {
|
||||
margin-top: 6px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.poll-answer-field-list, .poll-answer-list, .poll-result-list {
|
||||
list-style-type: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.poll-answer-field-list {
|
||||
padding: 0 16px;
|
||||
}
|
||||
|
||||
ol.poll-result-list {
|
||||
margin-bottom: 1.5em;
|
||||
}
|
||||
|
||||
.poll-result-list > li {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
|
||||
.poll-answer-field {
|
||||
flex-direction: column;
|
||||
align-items: stretch;
|
||||
margin-bottom: 16;
|
||||
|
||||
}
|
||||
|
||||
.poll-answer-field:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.poll-create-option-row {
|
||||
display: flex;
|
||||
margin-bottom: 4;
|
||||
}
|
||||
|
||||
// Needed to override atlaskit default blue color
|
||||
.poll-create-container .jsYMHu {
|
||||
background: #292929;
|
||||
border-color: #808090;
|
||||
color: #fff // #808090
|
||||
}
|
||||
|
||||
.poll-add-button {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 8px 16px;
|
||||
}
|
||||
|
||||
.poll-remove-option-button {
|
||||
background: 0 0;
|
||||
border: none;
|
||||
color: #E04757;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
.poll-create-add-option {
|
||||
border: none;
|
||||
background-color: #292929;
|
||||
padding: 3px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.poll-icon-button, .poll-drag-handle {
|
||||
.jitsi-icon svg {
|
||||
fill: #929292;
|
||||
}
|
||||
}
|
||||
|
||||
.poll-drag-handle {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
cursor: grab;
|
||||
padding-left: 8;
|
||||
padding-top: 8px;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.poll-dragged {
|
||||
opacity: 0.5;
|
||||
* {
|
||||
cursor: grabbing !important;
|
||||
}
|
||||
}
|
||||
|
||||
.poll-question {
|
||||
font-size: 16px;
|
||||
font-weight: 600;
|
||||
line-height: 26px;
|
||||
}
|
||||
|
||||
.poll-answer-voters {
|
||||
font-weight: lighter;
|
||||
list-style-type: none;
|
||||
border: #616161 solid 1px;
|
||||
border-radius: 3px;
|
||||
padding: 2px 6px;
|
||||
margin: 4px 0px 12px;
|
||||
background-color: #616161;
|
||||
}
|
||||
|
||||
.poll-answer-header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.poll-answer-vote-name {
|
||||
flex-shrink: 1;
|
||||
overflow-wrap: anywhere
|
||||
}
|
||||
|
||||
.poll-answer-vote-count-container{
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.poll-answer-vote-count {
|
||||
margin-left: 10px;
|
||||
white-space: nowrap;
|
||||
flex: 1;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.poll-answer-short-results{
|
||||
display: flex;
|
||||
min-width: 10em;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.poll-bar-container, .poll-bar {
|
||||
border-radius: 3px;
|
||||
height: 6px;
|
||||
}
|
||||
|
||||
.poll-bar-container {
|
||||
background-color: #616161;
|
||||
max-width: 160px;
|
||||
margin-top: 3px;
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.poll-bar {
|
||||
background-color: #246FE5;
|
||||
}
|
||||
|
||||
.poll-message-footer {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
font-size: 12px;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
.poll-notice {
|
||||
font-weight: 100;
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.poll-show-details {
|
||||
background-color: transparent;
|
||||
border: none;
|
||||
|
||||
&:hover {
|
||||
text-decoration: underline;
|
||||
}
|
||||
}
|
||||
|
||||
.poll-result-links {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
justify-content: space-between;
|
||||
|
||||
a.poll-detail-link, a.poll-change-vote-link {
|
||||
color: #669AEC;
|
||||
cursor: pointer;
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
|
||||
&:hover {
|
||||
color: #669AEC;
|
||||
}
|
||||
|
||||
&:visited {
|
||||
color: #669AEC;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
.polls-pane-content {
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.pane-content{
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: 100%;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.empty-pane-icon {
|
||||
width: 50%;
|
||||
padding: 24px;
|
||||
}
|
||||
|
||||
.empty-pane-icon svg {
|
||||
fill: #3D3D3D;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
.empty-pane-message {
|
||||
color: #fff;
|
||||
padding: 0 16px;
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
.poll-results, .poll-answer {
|
||||
background: #292929;
|
||||
border-radius: 8px;
|
||||
border: 1px solid #666666;
|
||||
margin: 16px;
|
||||
padding: 16px;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.poll-results {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.poll-answer {
|
||||
|
||||
h1, strong ,span {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
button > span {
|
||||
color: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
.poll-create-label {
|
||||
color: #C2C2C2;
|
||||
display: flex;
|
||||
font-weight: 400;
|
||||
margin-bottom: 4;
|
||||
}
|
||||
|
||||
.expandable-input{
|
||||
line-height: 18px;
|
||||
resize: none;
|
||||
width: 100%;
|
||||
height: 40px;
|
||||
box-sizing: border-box;
|
||||
overflow: hidden;
|
||||
border: 1px solid #666666;
|
||||
background-color: #141414;
|
||||
color: #FFF;
|
||||
border-radius: 6px;
|
||||
padding: 10px 16px;
|
||||
}
|
||||
|
||||
#polls-panel {
|
||||
height: calc(100% - 119px);
|
||||
}
|
||||
|
||||
.poll-container {
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
height: calc(100% - 88px);
|
||||
line-height: 20px;
|
||||
overflow-y: auto;
|
||||
position: relative;
|
||||
|
||||
& > * + *:not(.ignore-child) {
|
||||
margin-top: 16px;
|
||||
}
|
||||
|
||||
@media (max-width: 580px) {
|
||||
height: calc(100% - 102px);
|
||||
}
|
||||
}
|
||||
|
||||
.poll-create-header {
|
||||
color: #fff;
|
||||
font-size: 20px;
|
||||
line-height: 28px;
|
||||
margin: 20px 16px;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.poll-create-container {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.poll-create-footer {
|
||||
background-color: #141414;
|
||||
bottom: 0;
|
||||
position: absolute;
|
||||
width: calc(100% - 32px);
|
||||
}
|
||||
|
||||
.poll-footer {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 0 16px 16px 16px;
|
||||
}
|
||||
|
||||
.poll-answer-footer {
|
||||
padding: 8px 0 0 0;
|
||||
}
|
||||
|
||||
@@ -5,15 +5,15 @@
|
||||
.popupmenu__contents {
|
||||
.popupmenu__volume-slider {
|
||||
&::-webkit-slider-runnable-track {
|
||||
background-color: $popupSliderColor;
|
||||
background-color: #246FE5;
|
||||
}
|
||||
|
||||
&::-moz-range-track {
|
||||
background-color: $popupSliderColor;
|
||||
background-color: #246FE5;
|
||||
}
|
||||
|
||||
&::-ms-fill-lower {
|
||||
background-color: $popupSliderColor;
|
||||
background-color: #246FE5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
margin-left: 16px;
|
||||
max-width: 70%;
|
||||
}
|
||||
|
||||
&.space-top {
|
||||
@@ -82,7 +83,7 @@
|
||||
background-color: #FFFFFF;
|
||||
border-radius: 4px;
|
||||
height: 40px;
|
||||
width: 56px;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
.jitsi-content-recording-icon-container-without-switch {
|
||||
|
||||
@@ -31,10 +31,6 @@
|
||||
}
|
||||
}
|
||||
|
||||
.welcome-tabs {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.header-text-title {
|
||||
text-align: center;
|
||||
}
|
||||
@@ -56,13 +52,6 @@
|
||||
.welcome-footer-row-block {
|
||||
display: block;
|
||||
}
|
||||
.welcome-badge {
|
||||
margin-right: 16px;
|
||||
}
|
||||
|
||||
.welcome-footer {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -30,24 +30,24 @@
|
||||
right: -4px;
|
||||
top: -3px;
|
||||
|
||||
&:hover {
|
||||
&:hover {
|
||||
background: #F2F3F4;
|
||||
box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25), 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
|
||||
|
||||
&> svg {
|
||||
fill: #000;
|
||||
& > svg {
|
||||
fill: #040404;
|
||||
}
|
||||
|
||||
&.settings-button-small-icon--disabled {
|
||||
background: #36383C;
|
||||
|
||||
&> svg {
|
||||
fill: #929292;
|
||||
}
|
||||
fill: #929292;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
&> svg {
|
||||
& > svg {
|
||||
fill: #fff;
|
||||
}
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
&#autoHide.with-always-on {
|
||||
overflow: hidden;
|
||||
animation: hideSubject forwards .6s ease-out;
|
||||
margin-left: 4px;
|
||||
|
||||
& > .subject-info-container {
|
||||
justify-content: flex-start;
|
||||
@@ -43,42 +42,6 @@
|
||||
height: 28px;
|
||||
}
|
||||
|
||||
.subject-text {
|
||||
background: rgba(0, 0, 0, 0.6);
|
||||
border-radius: 3px 0px 0px 3px;
|
||||
box-sizing: border-box;
|
||||
font-size: 14px;
|
||||
line-height: 28px;
|
||||
padding: 0 16px;
|
||||
height: 28px;
|
||||
max-width: 324px;
|
||||
|
||||
@media (max-width: 300px) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
&--content {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
|
||||
.subject-timer {
|
||||
background: rgba(0, 0, 0, 0.8);
|
||||
border-radius: 0px 3px 3px 0px;
|
||||
box-sizing: border-box;
|
||||
font-size: 12px;
|
||||
line-height: 28px;
|
||||
min-width: 34px;
|
||||
padding: 0 8px;
|
||||
height: 28px;
|
||||
|
||||
@media (max-width: 300px) {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.details-container {
|
||||
width: 100%;
|
||||
display: flex;
|
||||
|
||||
@@ -120,12 +120,16 @@
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.hangup-button {
|
||||
background-color: $hangupColor;
|
||||
div.hangup-button {
|
||||
background-color: #CB2233;
|
||||
|
||||
@media (hover: hover) and (pointer: fine) {
|
||||
&:hover {
|
||||
background-color: $hangupHoverColor;
|
||||
background-color: #E04757;
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: #A21B29;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -134,12 +138,16 @@
|
||||
}
|
||||
}
|
||||
|
||||
.hangup-menu-button {
|
||||
background-color: $hangupMenuButtonColor;
|
||||
div.hangup-menu-button {
|
||||
background-color: #CB2233;
|
||||
|
||||
@media (hover: hover) and (pointer: fine) {
|
||||
&:hover {
|
||||
background-color: $hangupMenuButtonHoverColor;
|
||||
background-color: #E04757;
|
||||
}
|
||||
|
||||
&:active {
|
||||
background-color: #A21B29;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,10 +4,6 @@
|
||||
* Style variables
|
||||
*/
|
||||
$baseFontFamily: -apple-system, BlinkMacSystemFont, 'open_sanslight', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
$hangupColor:#DD3849;
|
||||
$hangupHoverColor: #F25363;
|
||||
$hangupMenuButtonColor:#0056E0;;
|
||||
$hangupMenuButtonHoverColor: #246FE5;
|
||||
|
||||
/**
|
||||
* Size variables.
|
||||
@@ -79,7 +75,6 @@ $modalTextColor: #333;
|
||||
$chatActionsSeparatorColor: rgb(173, 105, 112);
|
||||
$chatBackgroundColor: #131519;
|
||||
$chatInputSeparatorColor: #A4B8D1;
|
||||
$chatLobbyMessageBackgroundColor: #6A50D3;
|
||||
$chatLobbyActionsSeparatorColor: #6A50D3;
|
||||
$chatLocalMessageBackgroundColor: #484A4F;
|
||||
$chatPrivateMessageBackgroundColor: rgb(153, 69, 77);
|
||||
@@ -170,8 +165,9 @@ $welcomePageHeaderPaddingBottom: 0px;
|
||||
$welcomePageHeaderTitleMaxWidth: initial;
|
||||
$welcomePageHeaderTextAlign: center;
|
||||
|
||||
$welcomePageHeaderContainerMarginTop: 104px;
|
||||
$welcomePageHeaderContainerDisplay: flex;
|
||||
$welcomePageHeaderContainerMargin: 104px 32px 0 32px;
|
||||
$welcomePageHeaderContainerMargin: $welcomePageHeaderContainerMarginTop auto 0;
|
||||
|
||||
$welcomePageHeaderTextTitleMarginBottom: 0;
|
||||
$welcomePageHeaderTextTitleFontSize: 42px;
|
||||
|
||||
@@ -29,6 +29,16 @@ body.welcome-page {
|
||||
flex-direction: column;
|
||||
margin: $welcomePageHeaderContainerMargin;
|
||||
z-index: $zindex2;
|
||||
align-items: center;
|
||||
position: relative;
|
||||
max-width: 688px;
|
||||
}
|
||||
|
||||
.header-watermark-container {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
margin-top: calc(20px - #{$welcomePageHeaderContainerMarginTop});
|
||||
}
|
||||
|
||||
.header-text-title {
|
||||
@@ -123,16 +133,11 @@ body.welcome-page {
|
||||
max-width: calc(100% - 40px);
|
||||
padding: 16px 0 39px 0;
|
||||
width: $welcomePageEnterRoomWidth;
|
||||
text-align: center;
|
||||
|
||||
p {
|
||||
color: $welcomePageDescriptionColor;
|
||||
float: left;
|
||||
text-align: $welcomePageHeaderTextAlign;
|
||||
|
||||
a {
|
||||
color: inherit;
|
||||
font-weight: 600;
|
||||
}
|
||||
a {
|
||||
color: inherit;
|
||||
font-weight: 600;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -200,8 +205,8 @@ body.welcome-page {
|
||||
color: $welcomePageDescriptionColor;
|
||||
padding: 4px;
|
||||
position: absolute;
|
||||
top: 32px;
|
||||
right: 32px;
|
||||
top: calc(35px - #{$welcomePageHeaderContainerMarginTop});
|
||||
right: 0;
|
||||
z-index: $zindex2;
|
||||
|
||||
* {
|
||||
@@ -224,6 +229,11 @@ body.welcome-page {
|
||||
width: $welcomePageWatermarkWidth;
|
||||
height: $welcomePageWatermarkHeight;
|
||||
}
|
||||
|
||||
.watermark.leftwatermarknomargin {
|
||||
width: $welcomePageWatermarkWidth;
|
||||
height: $welcomePageWatermarkHeight;
|
||||
}
|
||||
}
|
||||
|
||||
&.without-content {
|
||||
@@ -242,10 +252,17 @@ body.welcome-page {
|
||||
padding-top: 40px;
|
||||
}
|
||||
|
||||
.welcome-card-row {
|
||||
.welcome-card-column {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 0 32px;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
max-width: 688px;
|
||||
margin: auto;
|
||||
|
||||
> div {
|
||||
margin-bottom: 16px;
|
||||
}
|
||||
}
|
||||
|
||||
.welcome-card-text {
|
||||
@@ -253,7 +270,7 @@ body.welcome-page {
|
||||
}
|
||||
|
||||
.welcome-card {
|
||||
width: 49%;
|
||||
width: 100%;
|
||||
border-radius: 8px;
|
||||
|
||||
&--dark {
|
||||
@@ -268,10 +285,6 @@ body.welcome-page {
|
||||
&--grey {
|
||||
background: #F2F3F4;
|
||||
}
|
||||
|
||||
&--shadow {
|
||||
box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
}
|
||||
|
||||
.welcome-footer {
|
||||
|
||||
@@ -2,7 +2,8 @@ $sidePanelWidth: 300px;
|
||||
|
||||
.prejoin-third-party {
|
||||
flex-direction: column-reverse;
|
||||
|
||||
z-index: auto;
|
||||
|
||||
.content {
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
|
||||
@@ -41,20 +41,27 @@
|
||||
&-dropdown-btns {
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
|
||||
&-dropdown-container {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
|
||||
|
||||
/**
|
||||
* Override default InlineDialog behaviour, since it does not play nicely with relative widths
|
||||
*/
|
||||
& > div:nth-child(2) {
|
||||
background: #fff;
|
||||
background: #E0E0E0;
|
||||
padding: 0;
|
||||
position: absolute !important;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.prejoin-input {
|
||||
margin-bottom: 16px;
|
||||
|
||||
& input {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,4 @@
|
||||
.premeeting-screen {
|
||||
background: #292929;
|
||||
bottom: 0;
|
||||
display: flex;
|
||||
font-size: 1.3em;
|
||||
left: 0;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
z-index: $toolbarZ + 2;
|
||||
|
||||
.premeeting-screen {
|
||||
.action-btn {
|
||||
border-radius: 6px;
|
||||
box-sizing: border-box;
|
||||
@@ -75,139 +65,44 @@
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
align-items: center;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex-shrink: 0;
|
||||
height: 100%;
|
||||
margin: 0 30px;
|
||||
padding: 24px 0 16px;
|
||||
#new-toolbox {
|
||||
bottom: 0;
|
||||
position: relative;
|
||||
width: $prejoinDefaultContentWidth;
|
||||
z-index: $toolbarZ + 2;
|
||||
transition: none;
|
||||
|
||||
&-controls {
|
||||
align-items: center;
|
||||
.toolbox-content {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.toolbox-content-items {
|
||||
@include ltr;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin: auto;
|
||||
justify-content: space-between;
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.toolbox-content,
|
||||
.toolbox-content-wrapper,
|
||||
.toolbox-content-items {
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
|
||||
.title {
|
||||
color: #fff;
|
||||
font-size: 28px;
|
||||
font-weight: 600;
|
||||
letter-spacing: -0.015;
|
||||
line-height: 36px;
|
||||
margin-bottom: 16px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
input.field {
|
||||
background-color: white;
|
||||
border: none;
|
||||
outline: none;
|
||||
border-radius: 6px;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
margin-bottom: 16px;
|
||||
color: #1C2025;
|
||||
padding: 10px 16px;
|
||||
text-align: center;
|
||||
width: 100%;
|
||||
|
||||
&.error {
|
||||
border: 1px solid #E04757;
|
||||
}
|
||||
|
||||
&.focused {
|
||||
box-shadow: 0px 0px 1px 1.5px black, 0px 0px 1.3px 4px white;
|
||||
}
|
||||
}
|
||||
|
||||
#new-toolbox {
|
||||
bottom: 0;
|
||||
position: relative;
|
||||
transition: none;
|
||||
|
||||
.toolbox-content {
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.toolbox-content-items {
|
||||
@include ltr;
|
||||
background: transparent;
|
||||
box-shadow: none;
|
||||
display: flex;
|
||||
justify-content: space-evenly;
|
||||
padding: 8px 0;
|
||||
}
|
||||
|
||||
.toolbox-content,
|
||||
.toolbox-content-wrapper,
|
||||
.toolbox-content-items {
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 720px) {
|
||||
flex-direction: column-reverse;
|
||||
|
||||
.content {
|
||||
height: auto;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
// mobile phone landscape
|
||||
@media (max-height: 420px) {
|
||||
div.content {
|
||||
padding: 16px 16px 0 16px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 400px) {
|
||||
.content {
|
||||
padding: 16px;
|
||||
width: 100%;
|
||||
|
||||
&-controls {
|
||||
input.field {
|
||||
font-size: 16px;
|
||||
padding: 14px 16px;
|
||||
}
|
||||
}
|
||||
|
||||
.title {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
.device-status-error {
|
||||
border-radius: 0;
|
||||
margin: 0 -16px;
|
||||
}
|
||||
|
||||
input.field {
|
||||
font-size: 16px;
|
||||
padding: 14px 16px;
|
||||
}
|
||||
|
||||
.action-btn {
|
||||
font-size: 16px;
|
||||
margin-bottom: 8px;
|
||||
padding: 11px 16px;
|
||||
}
|
||||
}
|
||||
|
||||
input::placeholder {
|
||||
color: #040404;
|
||||
}
|
||||
}
|
||||
|
||||
#preview {
|
||||
|
||||
@@ -65,7 +65,6 @@ $errorColor: #c61600;
|
||||
|
||||
// Popover colors
|
||||
$popoverFontColor: #ffffff !important;
|
||||
$popupSliderColor: #0376da;
|
||||
|
||||
// Toolbar
|
||||
$toolbarBackground: rgba(0, 0, 0, 0.5);
|
||||
|
||||
7
debian/jitsi-meet-prosody.postinst
vendored
@@ -44,12 +44,7 @@ case "$1" in
|
||||
fi
|
||||
JVB_SECRET="$RET"
|
||||
|
||||
db_get jicofo/jicofo-authuser
|
||||
if [ -z "$RET" ] ; then
|
||||
db_input critical jicofo/jicofo-authuser || true
|
||||
db_go
|
||||
fi
|
||||
JICOFO_AUTH_USER="$RET"
|
||||
JICOFO_AUTH_USER="focus"
|
||||
|
||||
db_get jicofo/jicofo-authpassword
|
||||
if [ -z "$RET" ] ; then
|
||||
|
||||
6
debian/jitsi-meet-prosody.templates
vendored
@@ -13,12 +13,6 @@ Type: password
|
||||
_Description: Jitsi Videobridge Component secret:
|
||||
The secret used by Jitsi Videobridge to connect to xmpp server as component.
|
||||
|
||||
Template: jicofo/jicofo-authuser
|
||||
Type: string
|
||||
Default: focus
|
||||
_Description: Jicofo username:
|
||||
The jicofo needs an authenticated admin user to connect to xmpp server.
|
||||
|
||||
Template: jicofo/jicofo-authpassword
|
||||
Type: password
|
||||
_Description: Jicofo user password:
|
||||
|
||||
5
debian/jitsi-meet-web-config.postinst
vendored
@@ -176,6 +176,11 @@ case "$1" in
|
||||
fi
|
||||
|
||||
# Fixes multi-stream flags to workaround problem with mobile joining a multi-stream call with multi-stream disabled
|
||||
FIX_MSG="// Temporary backwards compatibility with old mobile clients."
|
||||
if ! grep -q "^${FIX_MSG}" $JITSI_MEET_CONFIG; then
|
||||
echo $FIX_MSG >> $JITSI_MEET_CONFIG
|
||||
echo "config.flags = config.flags || {};" >> $JITSI_MEET_CONFIG
|
||||
fi
|
||||
if ! grep -q "^config.flags.sourceNameSignaling*" $JITSI_MEET_CONFIG; then
|
||||
echo "config.flags.sourceNameSignaling = true;" >> $JITSI_MEET_CONFIG
|
||||
fi
|
||||
|
||||
@@ -15,6 +15,17 @@ upstream jvb1 {
|
||||
server 127.0.0.1:9090;
|
||||
keepalive 2;
|
||||
}
|
||||
map $arg_vnode $prosody_node {
|
||||
default prosody;
|
||||
v1 v1;
|
||||
v2 v2;
|
||||
v3 v3;
|
||||
v4 v4;
|
||||
v5 v5;
|
||||
v6 v6;
|
||||
v7 v7;
|
||||
v8 v8;
|
||||
}
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
@@ -95,7 +106,7 @@ server {
|
||||
|
||||
# BOSH
|
||||
location = /http-bind {
|
||||
proxy_pass http://prosody/http-bind?prefix=$prefix&$args;
|
||||
proxy_pass http://$prosody_node/http-bind?prefix=$prefix&$args;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header X-Forwarded-For $remote_addr;
|
||||
proxy_set_header Host $http_host;
|
||||
@@ -104,7 +115,7 @@ server {
|
||||
|
||||
# xmpp websockets
|
||||
location = /xmpp-websocket {
|
||||
proxy_pass http://prosody/xmpp-websocket?prefix=$prefix&$args;
|
||||
proxy_pass http://$prosody_node/xmpp-websocket?prefix=$prefix&$args;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
|
||||
|
Before Width: | Height: | Size: 114 KiB |
3
globals.d.ts
vendored
@@ -13,6 +13,8 @@ declare global {
|
||||
keyboardshortcut: {
|
||||
registerShortcut: Function;
|
||||
unregisterShortcut: Function;
|
||||
openDialog: Function;
|
||||
enable: Function;
|
||||
}
|
||||
};
|
||||
const interfaceConfig: any;
|
||||
@@ -22,6 +24,7 @@ declare global {
|
||||
JITSI_MEET_LITE_SDK?: boolean;
|
||||
interfaceConfig?: any;
|
||||
JitsiMeetJS?: any;
|
||||
JitsiMeetElectron?: any;
|
||||
}
|
||||
|
||||
const config: IConfig;
|
||||
|
||||
3
globals.native.d.ts
vendored
@@ -23,10 +23,13 @@ interface IWindow {
|
||||
onerror: (event: string, source: any, lineno: any, colno: any, e: Error) => void;
|
||||
onunhandledrejection: (event: any) => void;
|
||||
|
||||
setInterval: typeof setInterval;
|
||||
clearInterval: typeof clearInterval;
|
||||
setTimeout: typeof setTimeout;
|
||||
clearTimeout: typeof clearTimeout;
|
||||
setImmediate: typeof setImmediate;
|
||||
clearImmediate: typeof clearImmediate;
|
||||
addEventListener: Function;
|
||||
}
|
||||
|
||||
interface INavigator {
|
||||
|
||||
@@ -76,11 +76,6 @@ var interfaceConfig = {
|
||||
|
||||
GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,
|
||||
|
||||
/**
|
||||
* Hide the logo on the deep linking pages.
|
||||
*/
|
||||
HIDE_DEEP_LINKING_LOGO: false,
|
||||
|
||||
/**
|
||||
* Hide the invite prompt in the header when alone in the meeting.
|
||||
*/
|
||||
@@ -108,23 +103,6 @@ var interfaceConfig = {
|
||||
*/
|
||||
MOBILE_APP_PROMO: true,
|
||||
|
||||
/**
|
||||
* Specify custom URL for downloading android mobile app.
|
||||
*/
|
||||
MOBILE_DOWNLOAD_LINK_ANDROID: 'https://play.google.com/store/apps/details?id=org.jitsi.meet',
|
||||
|
||||
/**
|
||||
* Specify custom URL for downloading f droid app.
|
||||
*/
|
||||
MOBILE_DOWNLOAD_LINK_F_DROID: 'https://f-droid.org/en/packages/org.jitsi.meet/',
|
||||
|
||||
/**
|
||||
* Specify URL for downloading ios mobile app.
|
||||
*/
|
||||
MOBILE_DOWNLOAD_LINK_IOS: 'https://itunes.apple.com/us/app/jitsi-meet/id1165103905',
|
||||
|
||||
NATIVE_APP_NAME: 'Jitsi Meet',
|
||||
|
||||
// Names of browsers which should show a warning stating the current browser
|
||||
// has a suboptimal experience. Browsers which are not listed as optimal or
|
||||
// unsupported are considered suboptimal. Valid values are:
|
||||
@@ -159,7 +137,6 @@ var interfaceConfig = {
|
||||
*/
|
||||
SHOW_CHROME_EXTENSION_BANNER: false,
|
||||
|
||||
SHOW_DEEP_LINKING_IMAGE: false,
|
||||
SHOW_JITSI_WATERMARK: true,
|
||||
SHOW_POWERED_BY: false,
|
||||
SHOW_PROMOTIONAL_CLOSE_PAGE: false,
|
||||
@@ -200,6 +177,31 @@ var interfaceConfig = {
|
||||
*/
|
||||
// TILE_VIEW_MAX_COLUMNS: 5,
|
||||
|
||||
// List of undocumented settings
|
||||
/**
|
||||
INDICATOR_FONT_SIZES
|
||||
PHONE_NUMBER_REGEX
|
||||
*/
|
||||
|
||||
// -----------------DEPRECATED CONFIGS BELOW THIS LINE-----------------------------
|
||||
|
||||
/**
|
||||
* Specify URL for downloading ios mobile app.
|
||||
*/
|
||||
// MOBILE_DOWNLOAD_LINK_IOS: 'https://itunes.apple.com/us/app/jitsi-meet/id1165103905',
|
||||
|
||||
/**
|
||||
* Specify custom URL for downloading android mobile app.
|
||||
*/
|
||||
// MOBILE_DOWNLOAD_LINK_ANDROID: 'https://play.google.com/store/apps/details?id=org.jitsi.meet',
|
||||
|
||||
/**
|
||||
* Specify mobile app scheme for opening the app from the mobile browser.
|
||||
*/
|
||||
// APP_SCHEME: 'org.jitsi.meet',
|
||||
|
||||
// NATIVE_APP_NAME: 'Jitsi Meet',
|
||||
|
||||
/**
|
||||
* Specify Firebase dynamic link properties for the mobile apps.
|
||||
*/
|
||||
@@ -212,22 +214,19 @@ var interfaceConfig = {
|
||||
// },
|
||||
|
||||
/**
|
||||
* Specify mobile app scheme for opening the app from the mobile browser.
|
||||
* Hide the logo on the deep linking pages.
|
||||
*/
|
||||
// APP_SCHEME: 'org.jitsi.meet',
|
||||
// HIDE_DEEP_LINKING_LOGO: false,
|
||||
|
||||
/**
|
||||
* Specify the Android app package name.
|
||||
*/
|
||||
// ANDROID_APP_PACKAGE: 'org.jitsi.meet',
|
||||
|
||||
// List of undocumented settings
|
||||
/**
|
||||
INDICATOR_FONT_SIZES
|
||||
PHONE_NUMBER_REGEX
|
||||
*/
|
||||
|
||||
// -----------------DEPRECATED CONFIGS BELOW THIS LINE-----------------------------
|
||||
* Specify custom URL for downloading f droid app.
|
||||
*/
|
||||
// MOBILE_DOWNLOAD_LINK_F_DROID: 'https://f-droid.org/en/packages/org.jitsi.meet/',
|
||||
|
||||
// Connection indicators (
|
||||
// CONNECTION_INDICATOR_AUTO_HIDE_ENABLED,
|
||||
|
||||
452
ios/Podfile.lock
@@ -13,14 +13,14 @@ PODS:
|
||||
- CocoaLumberjack/Core (= 3.7.2)
|
||||
- CocoaLumberjack/Core (3.7.2)
|
||||
- DoubleConversion (1.1.6)
|
||||
- FBLazyVector (0.68.4)
|
||||
- FBReactNativeSpec (0.68.4):
|
||||
- FBLazyVector (0.68.5)
|
||||
- FBReactNativeSpec (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTRequired (= 0.68.4)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Core (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- RCTRequired (= 0.68.5)
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Core (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- Firebase/Analytics (8.15.0):
|
||||
- Firebase/Core
|
||||
- Firebase/Core (8.15.0):
|
||||
@@ -163,201 +163,201 @@ PODS:
|
||||
- DoubleConversion
|
||||
- fmt (~> 6.2.1)
|
||||
- glog
|
||||
- RCTRequired (0.68.4)
|
||||
- RCTTypeSafety (0.68.4):
|
||||
- FBLazyVector (= 0.68.4)
|
||||
- RCTRequired (0.68.5)
|
||||
- RCTTypeSafety (0.68.5):
|
||||
- FBLazyVector (= 0.68.5)
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTRequired (= 0.68.4)
|
||||
- React-Core (= 0.68.4)
|
||||
- React (0.68.4):
|
||||
- React-Core (= 0.68.4)
|
||||
- React-Core/DevSupport (= 0.68.4)
|
||||
- React-Core/RCTWebSocket (= 0.68.4)
|
||||
- React-RCTActionSheet (= 0.68.4)
|
||||
- React-RCTAnimation (= 0.68.4)
|
||||
- React-RCTBlob (= 0.68.4)
|
||||
- React-RCTImage (= 0.68.4)
|
||||
- React-RCTLinking (= 0.68.4)
|
||||
- React-RCTNetwork (= 0.68.4)
|
||||
- React-RCTSettings (= 0.68.4)
|
||||
- React-RCTText (= 0.68.4)
|
||||
- React-RCTVibration (= 0.68.4)
|
||||
- React-callinvoker (0.68.4)
|
||||
- React-Codegen (0.68.4):
|
||||
- FBReactNativeSpec (= 0.68.4)
|
||||
- RCTRequired (= 0.68.5)
|
||||
- React-Core (= 0.68.5)
|
||||
- React (0.68.5):
|
||||
- React-Core (= 0.68.5)
|
||||
- React-Core/DevSupport (= 0.68.5)
|
||||
- React-Core/RCTWebSocket (= 0.68.5)
|
||||
- React-RCTActionSheet (= 0.68.5)
|
||||
- React-RCTAnimation (= 0.68.5)
|
||||
- React-RCTBlob (= 0.68.5)
|
||||
- React-RCTImage (= 0.68.5)
|
||||
- React-RCTLinking (= 0.68.5)
|
||||
- React-RCTNetwork (= 0.68.5)
|
||||
- React-RCTSettings (= 0.68.5)
|
||||
- React-RCTText (= 0.68.5)
|
||||
- React-RCTVibration (= 0.68.5)
|
||||
- React-callinvoker (0.68.5)
|
||||
- React-Codegen (0.68.5):
|
||||
- FBReactNativeSpec (= 0.68.5)
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTRequired (= 0.68.4)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Core (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-Core (0.68.4):
|
||||
- RCTRequired (= 0.68.5)
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Core (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-Core (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-Core/Default (= 0.68.5)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/CoreModulesHeaders (0.68.4):
|
||||
- React-Core/CoreModulesHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/Default (0.68.4):
|
||||
- React-Core/Default (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/DevSupport (0.68.4):
|
||||
- React-Core/DevSupport (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default (= 0.68.4)
|
||||
- React-Core/RCTWebSocket (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-jsinspector (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-Core/Default (= 0.68.5)
|
||||
- React-Core/RCTWebSocket (= 0.68.5)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-jsinspector (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTActionSheetHeaders (0.68.4):
|
||||
- React-Core/RCTActionSheetHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTAnimationHeaders (0.68.4):
|
||||
- React-Core/RCTAnimationHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTBlobHeaders (0.68.4):
|
||||
- React-Core/RCTBlobHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTImageHeaders (0.68.4):
|
||||
- React-Core/RCTImageHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTLinkingHeaders (0.68.4):
|
||||
- React-Core/RCTLinkingHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTNetworkHeaders (0.68.4):
|
||||
- React-Core/RCTNetworkHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTSettingsHeaders (0.68.4):
|
||||
- React-Core/RCTSettingsHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTTextHeaders (0.68.4):
|
||||
- React-Core/RCTTextHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTVibrationHeaders (0.68.4):
|
||||
- React-Core/RCTVibrationHeaders (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-Core/RCTWebSocket (0.68.4):
|
||||
- React-Core/RCTWebSocket (0.68.5):
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Core/Default (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsiexecutor (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-Core/Default (= 0.68.5)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsiexecutor (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- Yoga
|
||||
- React-CoreModules (0.68.4):
|
||||
- React-CoreModules (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/CoreModulesHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-RCTImage (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-cxxreact (0.68.4):
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/CoreModulesHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-RCTImage (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-cxxreact (0.68.5):
|
||||
- boost (= 1.76.0)
|
||||
- DoubleConversion
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-callinvoker (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-jsinspector (= 0.68.4)
|
||||
- React-logger (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-runtimeexecutor (= 0.68.4)
|
||||
- React-jsi (0.68.4):
|
||||
- React-callinvoker (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-jsinspector (= 0.68.5)
|
||||
- React-logger (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- React-runtimeexecutor (= 0.68.5)
|
||||
- React-jsi (0.68.5):
|
||||
- boost (= 1.76.0)
|
||||
- DoubleConversion
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-jsi/Default (= 0.68.4)
|
||||
- React-jsi/Default (0.68.4):
|
||||
- React-jsi/Default (= 0.68.5)
|
||||
- React-jsi/Default (0.68.5):
|
||||
- boost (= 1.76.0)
|
||||
- DoubleConversion
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-jsiexecutor (0.68.4):
|
||||
- React-jsiexecutor (0.68.5):
|
||||
- DoubleConversion
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-jsinspector (0.68.4)
|
||||
- React-logger (0.68.4):
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- React-jsinspector (0.68.5)
|
||||
- React-logger (0.68.5):
|
||||
- glog
|
||||
- react-native-background-timer (2.4.1):
|
||||
- React-Core
|
||||
@@ -373,8 +373,12 @@ PODS:
|
||||
- React-Core
|
||||
- react-native-performance (2.1.0):
|
||||
- React-Core
|
||||
- react-native-safe-area-context (3.3.2):
|
||||
- react-native-safe-area-context (4.4.1):
|
||||
- RCT-Folly
|
||||
- RCTRequired
|
||||
- RCTTypeSafety
|
||||
- React-Core
|
||||
- ReactCommon/turbomodule/core
|
||||
- react-native-slider (4.1.12):
|
||||
- React-Core
|
||||
- react-native-splash-screen (3.3.0):
|
||||
@@ -385,89 +389,87 @@ PODS:
|
||||
- react-native-video/Video (6.0.0-alpha.1):
|
||||
- PromisesSwift
|
||||
- React-Core
|
||||
- react-native-webrtc (1.106.1):
|
||||
- react-native-webrtc (106.0.5):
|
||||
- JitsiWebRTC (~> 106.0.0)
|
||||
- React-Core
|
||||
- react-native-webview (11.15.1):
|
||||
- React-Core
|
||||
- React-perflogger (0.68.4)
|
||||
- React-RCTActionSheet (0.68.4):
|
||||
- React-Core/RCTActionSheetHeaders (= 0.68.4)
|
||||
- React-RCTAnimation (0.68.4):
|
||||
- React-perflogger (0.68.5)
|
||||
- React-RCTActionSheet (0.68.5):
|
||||
- React-Core/RCTActionSheetHeaders (= 0.68.5)
|
||||
- React-RCTAnimation (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTAnimationHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTBlob (0.68.4):
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTAnimationHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTBlob (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTBlobHeaders (= 0.68.4)
|
||||
- React-Core/RCTWebSocket (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-RCTNetwork (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTImage (0.68.4):
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTBlobHeaders (= 0.68.5)
|
||||
- React-Core/RCTWebSocket (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-RCTNetwork (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTImage (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTImageHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-RCTNetwork (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTLinking (0.68.4):
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTLinkingHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTNetwork (0.68.4):
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTImageHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-RCTNetwork (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTLinking (0.68.5):
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTLinkingHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTNetwork (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTNetworkHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTSettings (0.68.4):
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTNetworkHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTSettings (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- RCTTypeSafety (= 0.68.4)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTSettingsHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-RCTText (0.68.4):
|
||||
- React-Core/RCTTextHeaders (= 0.68.4)
|
||||
- React-RCTVibration (0.68.4):
|
||||
- RCTTypeSafety (= 0.68.5)
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTSettingsHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-RCTText (0.68.5):
|
||||
- React-Core/RCTTextHeaders (= 0.68.5)
|
||||
- React-RCTVibration (0.68.5):
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-Codegen (= 0.68.4)
|
||||
- React-Core/RCTVibrationHeaders (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (= 0.68.4)
|
||||
- React-runtimeexecutor (0.68.4):
|
||||
- React-jsi (= 0.68.4)
|
||||
- ReactCommon/turbomodule/core (0.68.4):
|
||||
- React-Codegen (= 0.68.5)
|
||||
- React-Core/RCTVibrationHeaders (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (= 0.68.5)
|
||||
- React-runtimeexecutor (0.68.5):
|
||||
- React-jsi (= 0.68.5)
|
||||
- ReactCommon/turbomodule/core (0.68.5):
|
||||
- DoubleConversion
|
||||
- glog
|
||||
- RCT-Folly (= 2021.06.28.00-v2)
|
||||
- React-callinvoker (= 0.68.4)
|
||||
- React-Core (= 0.68.4)
|
||||
- React-cxxreact (= 0.68.4)
|
||||
- React-jsi (= 0.68.4)
|
||||
- React-logger (= 0.68.4)
|
||||
- React-perflogger (= 0.68.4)
|
||||
- React-callinvoker (= 0.68.5)
|
||||
- React-Core (= 0.68.5)
|
||||
- React-cxxreact (= 0.68.5)
|
||||
- React-jsi (= 0.68.5)
|
||||
- React-logger (= 0.68.5)
|
||||
- React-perflogger (= 0.68.5)
|
||||
- RNCalendarEvents (2.2.0):
|
||||
- React
|
||||
- RNCAsyncStorage (1.17.3):
|
||||
- React-Core
|
||||
- RNCClipboard (1.5.1):
|
||||
- React-Core
|
||||
- RNCMaskedView (0.2.6):
|
||||
- React-Core
|
||||
- RNDefaultPreference (1.4.4):
|
||||
- React-Core
|
||||
- RNDeviceInfo (8.4.8):
|
||||
- React-Core
|
||||
- RNGestureHandler (2.1.0):
|
||||
- RNGestureHandler (2.9.0):
|
||||
- React-Core
|
||||
- RNGoogleSignin (7.0.4):
|
||||
- GoogleSignIn (~> 6.0.0)
|
||||
@@ -543,7 +545,6 @@ DEPENDENCIES:
|
||||
- RNCalendarEvents (from `../node_modules/react-native-calendar-events`)
|
||||
- "RNCAsyncStorage (from `../node_modules/@react-native-async-storage/async-storage`)"
|
||||
- "RNCClipboard (from `../node_modules/@react-native-community/clipboard`)"
|
||||
- "RNCMaskedView (from `../node_modules/@react-native-masked-view/masked-view`)"
|
||||
- RNDefaultPreference (from `../node_modules/react-native-default-preference`)
|
||||
- RNDeviceInfo (from `../node_modules/react-native-device-info`)
|
||||
- RNGestureHandler (from `../node_modules/react-native-gesture-handler`)
|
||||
@@ -678,8 +679,6 @@ EXTERNAL SOURCES:
|
||||
:path: "../node_modules/@react-native-async-storage/async-storage"
|
||||
RNCClipboard:
|
||||
:path: "../node_modules/@react-native-community/clipboard"
|
||||
RNCMaskedView:
|
||||
:path: "../node_modules/@react-native-masked-view/masked-view"
|
||||
RNDefaultPreference:
|
||||
:path: "../node_modules/react-native-default-preference"
|
||||
RNDeviceInfo:
|
||||
@@ -706,8 +705,8 @@ SPEC CHECKSUMS:
|
||||
boost: a7c83b31436843459a1961bfd74b96033dc77234
|
||||
CocoaLumberjack: b7e05132ff94f6ae4dfa9d5bce9141893a21d9da
|
||||
DoubleConversion: 831926d9b8bf8166fd87886c4abab286c2422662
|
||||
FBLazyVector: 023a2028f218d648b588348bfa9261b4914b93db
|
||||
FBReactNativeSpec: 9f4902cc009389d3704ff75de2aa513dee34d5c2
|
||||
FBLazyVector: 2b47ff52037bd9ae07cc9b051c9975797814b736
|
||||
FBReactNativeSpec: 0e0d384ef17a33b385f13f0c7f97702c7cd17858
|
||||
Firebase: 5f8193dff4b5b7c5d5ef72ae54bb76c08e2b841d
|
||||
FirebaseAnalytics: 7761cbadb00a717d8d0939363eb46041526474fa
|
||||
FirebaseCore: 5743c5785c074a794d35f2fff7ecc254a91e08b1
|
||||
@@ -732,18 +731,18 @@ SPEC CHECKSUMS:
|
||||
PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb
|
||||
PromisesSwift: 99fddfe4a0ec88a56486644c0da106694c92a604
|
||||
RCT-Folly: 4d8508a426467c48885f1151029bc15fa5d7b3b8
|
||||
RCTRequired: e6003505912d056f21f64465063cf4b79418f2b9
|
||||
RCTTypeSafety: d7ef4745c8d9c9faa65c26b4b6230fc5cd4c4424
|
||||
React: 6692c30fb74ab29078b25c31c9841d863e08cdd9
|
||||
React-callinvoker: fe2b234fa518d8bb7600707c536ab0a3e1f5edba
|
||||
React-Codegen: 9964bb2422c7014894182ac50068caae05f68551
|
||||
React-Core: a07bcd2f15ff93cddc9ceb07eddeec3d2ff8d990
|
||||
React-CoreModules: 7fb4ee0fc35ad2b7daf775f0ef6309efdd8d3d82
|
||||
React-cxxreact: 51a8058a35a2f02ad4175334a7cd24aa5558ced4
|
||||
React-jsi: 69b974b418d2658a3f1799903be7cbcb8ac59755
|
||||
React-jsiexecutor: 4f35a29798ba9d0d892a84001d11f626688dbb8e
|
||||
React-jsinspector: 6f75220cd4b6020976d340ab21c63458dd3cad9e
|
||||
React-logger: 7013d2499df6346e6a72802d4084badaaa82543b
|
||||
RCTRequired: 0f06b6068f530932d10e1a01a5352fad4eaacb74
|
||||
RCTTypeSafety: b0ee81f10ef1b7d977605a2b266823dabd565e65
|
||||
React: 3becd12bd51ea8a43bdde7e09d0f40fba7820e03
|
||||
React-callinvoker: 11abfff50e6bf7a55b3a90b4dc2187f71f224593
|
||||
React-Codegen: f8946ce0768fb8e92e092e30944489c4b2955b2d
|
||||
React-Core: 203cdb6ee2657b198d97d41031c249161060e6ca
|
||||
React-CoreModules: 6eb0c06a4a223fde2cb6a8d0f44f58b67e808942
|
||||
React-cxxreact: afb0c6c07d19adbd850747fedeac20c6832d40b9
|
||||
React-jsi: 14d37a6db2af2c1a49f6f5c2e4ee667c364ae45c
|
||||
React-jsiexecutor: 45c0496ca8cef6b02d9fa0274c25cf458fe91a56
|
||||
React-jsinspector: eb202e43b3879aba9a14f3f65788aec85d4e1ea9
|
||||
React-logger: 98f663b292a60967ebbc6d803ae96c1381183b6d
|
||||
react-native-background-timer: 17ea5e06803401a379ebf1f20505b793ac44d0fe
|
||||
react-native-get-random-values: 30b3f74ca34e30e2e480de48e4add2706a40ac8f
|
||||
react-native-keep-awake: afad8a51dfef9fe9655a6344771be32c8596d774
|
||||
@@ -751,37 +750,36 @@ SPEC CHECKSUMS:
|
||||
react-native-orientation-locker: 851f6510d8046ea2f14aa169b1e01fcd309a94ba
|
||||
react-native-pager-view: 3ee7d4c7697fb3ef788346e834a60cca97ed8540
|
||||
react-native-performance: f4b6604a9d5a8a7407e34a82fab6c641d9a3ec12
|
||||
react-native-safe-area-context: 584dc04881deb49474363f3be89e4ca0e854c057
|
||||
react-native-safe-area-context: 99b24a0c5acd0d5dcac2b1a7f18c49ea317be99a
|
||||
react-native-slider: 6e9b86e76cce4b9e35b3403193a6432ed07e0c81
|
||||
react-native-splash-screen: 4312f786b13a81b5169ef346d76d33bc0c6dc457
|
||||
react-native-video: bb6f12a7198db53b261fefb5d609dc77417acc8b
|
||||
react-native-webrtc: 4a4c31be61f88d1d3356526eebce72f462a6760e
|
||||
react-native-webrtc: ef315d8adb68e78298b22100377d12ef168efdb5
|
||||
react-native-webview: ea4899a1056c782afa96dd082179a66cbebf5504
|
||||
React-perflogger: 0b0500685176e53ea582c45179a653aa82e4ae49
|
||||
React-RCTActionSheet: 38469be9d20242f9c717e43c2983e8e3e6c640c4
|
||||
React-RCTAnimation: 93774f3e8857e7c3c1cbbd277056d02be4496be1
|
||||
React-RCTBlob: 6d0567d7a6561b62feb8c3b1cc33b3c591ba85ab
|
||||
React-RCTImage: 1006a91318a6181a0256b89d2e321b6ea0e2e6e3
|
||||
React-RCTLinking: 0b2300493c879c3bcac2d4c6b0178e8d0e5e2202
|
||||
React-RCTNetwork: b9a33a95703651abed92490e50396d54b7270a17
|
||||
React-RCTSettings: e6464123e5b5062fc23bb5adb51188a6061e9601
|
||||
React-RCTText: 188d6f0ae20cd28891f59ecad41028ee2f793757
|
||||
React-RCTVibration: a67beb7d2f3c73e9b74c4124ef61b84c601be649
|
||||
React-runtimeexecutor: 088723cf020113e64736a709f52719dbb359c73e
|
||||
ReactCommon: 1a4f19f3b4366feec03a98bdbb200b6085c5000f
|
||||
React-perflogger: 0458a87ea9a7342079e7a31b0d32b3734fb8415f
|
||||
React-RCTActionSheet: 22538001ea2926dea001111dd2846c13a0730bc9
|
||||
React-RCTAnimation: 732ce66878d4aa151d56a0d142b1105aa12fd313
|
||||
React-RCTBlob: 9cb9e3e9a41d27be34aaf89b0e0f52c7ca415d57
|
||||
React-RCTImage: 6bd16627eb9c4bb79903c4cdec7c551266ee1a5b
|
||||
React-RCTLinking: e9edfc8919c8fa9a3f3c7b34362811f58a2ebba4
|
||||
React-RCTNetwork: 880eccd21bbe2660a0b63da5ccba75c46eceeaa6
|
||||
React-RCTSettings: 8c85d8188c97d6c6bd470af6631a6c4555b79bb3
|
||||
React-RCTText: bbd275ee287730c5acbab1aadc0db39c25c5c64e
|
||||
React-RCTVibration: 9819a3bf6230e4b2a99877c21268b0b2416157a1
|
||||
React-runtimeexecutor: b1f1995089b90696dbc2a7ffe0059a80db5c8eb1
|
||||
ReactCommon: 149e2c0acab9bac61378da0db5b2880a1b5ff59b
|
||||
RNCalendarEvents: 7e65eb4a94f53c1744d1e275f7fafcfaa619f7a3
|
||||
RNCAsyncStorage: 005c0e2f09575360f142d0d1f1f15e4ec575b1af
|
||||
RNCClipboard: 41d8d918092ae8e676f18adada19104fa3e68495
|
||||
RNCMaskedView: c298b644a10c0c142055b3ae24d83879ecb13ccd
|
||||
RNDefaultPreference: 08bdb06cfa9188d5da97d4642dac745218d7fb31
|
||||
RNDeviceInfo: 0400a6d0c94186d1120c3cbd97b23abc022187a9
|
||||
RNGestureHandler: e5c7cab5f214503dcefd6b2b0cefb050e1f51c4a
|
||||
RNGestureHandler: 071d7a9ad81e8b83fe7663b303d132406a7d8f39
|
||||
RNGoogleSignin: c4381751eefd73c552b923ba347a9bfc6f18771c
|
||||
RNScreens: 40a2cb40a02a609938137a1e0acfbf8fc9eebf19
|
||||
RNSound: 27e8268bdb0a1f191f219a33267f7e0445e8d62f
|
||||
RNSVG: f3b60aeeaa81960e2e0536c3a9eef50b667ef3a9
|
||||
RNWatch: dae6c858a2051dbdcfb00b9a86cf4d90400263b4
|
||||
Yoga: c926c8eec5c78a788b51e6c8a604825d00d694d7
|
||||
Yoga: c4d61225a466f250c35c1ee78d2d0b3d41fe661c
|
||||
|
||||
PODFILE CHECKSUM: e671cdcdb80fab67e305861c36bfae8ed5a5b0ef
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@ platform :ios do
|
||||
export_xcargs: "-allowProvisioningUpdates"
|
||||
)
|
||||
|
||||
# Upload the build to TestFlight (but don't distribute it)
|
||||
# Upload the build to TestFlight
|
||||
upload_to_testflight(
|
||||
beta_app_description: ENV["JITSI_CHANGELOG"],
|
||||
beta_app_feedback_email: ENV["JITSI_REVIEW_EMAIL"],
|
||||
@@ -102,24 +102,10 @@ platform :ios do
|
||||
uses_non_exempt_encryption: false
|
||||
)
|
||||
|
||||
upload_symbols_to_crashlytics
|
||||
|
||||
# Cleanup
|
||||
clean_build_artifacts
|
||||
reset_git_repo(skip_clean: true)
|
||||
end
|
||||
|
||||
lane :refresh_dsyms do
|
||||
# Connect to Apple Store Connect
|
||||
app_store_connect_api_key(
|
||||
key_id: ENV["ASC_KEY_ID"],
|
||||
issuer_id: ENV["ASC_ISSUER_ID"],
|
||||
key_content: ENV["ASC_KEY_CONTENT"],
|
||||
duration: 1200,
|
||||
in_house: false
|
||||
)
|
||||
|
||||
# Upload dSYMs to Crashlytics
|
||||
download_dsyms(min_version: ENV["DSYMS_MIN_VERSION"]) # Download dSYM files from iTC
|
||||
upload_symbols_to_crashlytics # Upload them to Crashlytics
|
||||
clean_build_artifacts # Delete the local dSYM files
|
||||
end
|
||||
end
|
||||
|
||||
@@ -57,8 +57,8 @@
|
||||
openURL:(NSURL *_Nonnull)url
|
||||
options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *_Nonnull)options;
|
||||
|
||||
- (UIInterfaceOrientationMask)application:(UIApplication *)application
|
||||
supportedInterfaceOrientationsForWindow:(UIWindow *)window;
|
||||
- (UIInterfaceOrientationMask)application:(UIApplication *_Nonnull)application
|
||||
supportedInterfaceOrientationsForWindow:(UIWindow *_Nonnull)window;
|
||||
|
||||
#pragma mark - Utility methods
|
||||
|
||||
|
||||
@@ -40,19 +40,10 @@ static NSString *const PiPEnabledFeatureFlag = @"pip.enabled";
|
||||
|
||||
#pragma mark Initializers
|
||||
|
||||
- (instancetype)init {
|
||||
self = [super init];
|
||||
if (self) {
|
||||
[self initWithXXX];
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
- (instancetype)initWithCoder:(NSCoder *)coder {
|
||||
self = [super initWithCoder:coder];
|
||||
if (self) {
|
||||
[self initWithXXX];
|
||||
[self doInitialize];
|
||||
}
|
||||
|
||||
return self;
|
||||
@@ -61,7 +52,7 @@ static NSString *const PiPEnabledFeatureFlag = @"pip.enabled";
|
||||
- (instancetype)initWithFrame:(CGRect)frame {
|
||||
self = [super initWithFrame:frame];
|
||||
if (self) {
|
||||
[self initWithXXX];
|
||||
[self doInitialize];
|
||||
}
|
||||
|
||||
return self;
|
||||
@@ -71,9 +62,9 @@ static NSString *const PiPEnabledFeatureFlag = @"pip.enabled";
|
||||
* Internal initialization:
|
||||
*
|
||||
* - sets the background color
|
||||
* - initializes the external API scope
|
||||
* - registers necessary observers
|
||||
*/
|
||||
- (void)initWithXXX {
|
||||
- (void)doInitialize {
|
||||
// Set a background color which is in accord with the JavaScript and Android
|
||||
// parts of the application and causes less perceived visual flicker than
|
||||
// the default background color.
|
||||
|
||||
@@ -46,7 +46,7 @@ public class PiPViewCoordinator {
|
||||
}
|
||||
}
|
||||
|
||||
public let initialPositionInSuperView: Position = .lowerRightCorner
|
||||
public var initialPositionInSuperView: Position = .lowerRightCorner
|
||||
|
||||
// Unused. Remove on the next major release.
|
||||
@available(*, deprecated, message: "The PiP window size is now fixed to 150px.")
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
"hsb": "Hornjoserbšćina",
|
||||
"hu": "Magyar",
|
||||
"hy": "Հայերեն",
|
||||
"id": "Bahasa Indonesia",
|
||||
"is": "Íslenska",
|
||||
"it": "Italiano",
|
||||
"ja": "日本語",
|
||||
@@ -37,7 +36,6 @@
|
||||
"ml": "മലയാളം",
|
||||
"mn": "Монгол",
|
||||
"mr": "मराठी",
|
||||
"nb": "Norsk Bokmål",
|
||||
"nl": "Nederlands",
|
||||
"oc": "Occitan",
|
||||
"pl": "Polski",
|
||||
|
||||
@@ -1061,7 +1061,6 @@
|
||||
"chat": "اظهِر/اخفِ نافذة الدردشة",
|
||||
"clap": "تصفيق",
|
||||
"collapse": "قلّص",
|
||||
"dock": "إرساء في النافذة الرئيسية",
|
||||
"document": "اظهِر/اخفِ الملف المشارك",
|
||||
"download": "نزِّل التطبيق",
|
||||
"embedMeeting": "ضمِّن المُلتقى",
|
||||
@@ -1115,7 +1114,6 @@
|
||||
"tileView": "اظهِر/اخفِ عرض العنوان",
|
||||
"toggleCamera": "بدِّل الكاميرا",
|
||||
"toggleFilmstrip": "بدِّل وضع الشريط السينمائي (filmstrip)",
|
||||
"undock": "فك في نافذة منفصلة",
|
||||
"videoblur": "استعمل/اخرج من وضع تغبيش خلفية الفيديو",
|
||||
"videomute": "بدِّل وضع اخفاء الفيديو"
|
||||
},
|
||||
@@ -1133,7 +1131,6 @@
|
||||
"closeReactionsMenu": "إغلاق قائمة ردود الفعل",
|
||||
"disableNoiseSuppression": "قم بتعطيل خاصية منع الضوضاء",
|
||||
"disableReactionSounds": "يمكنك تعطيل أصوات ردود الفعل لهذا المُلتقى",
|
||||
"dock": "إرساء في النافذة الرئيسية",
|
||||
"documentClose": "أغلق الملف المشارك",
|
||||
"documentOpen": "افتح الملف المشارك",
|
||||
"download": "نزِّل التطبيق",
|
||||
@@ -1205,7 +1202,6 @@
|
||||
"talkWhileMutedPopup": "أتحاول التحدث؟ الميكروفون لديك مكتوم.",
|
||||
"tileViewToggle": "بدِّل عنوان العرض",
|
||||
"toggleCamera": "بدِّل الكاميرا",
|
||||
"undock": "فك في نافذة منفصلة",
|
||||
"videoSettings": "اعدادات الفيديو",
|
||||
"videomute": "استعمل / أوقف الكاميرا"
|
||||
},
|
||||
|
||||
@@ -1027,7 +1027,6 @@
|
||||
"chat": "Obre o tanca el xat",
|
||||
"clap": "Picament de mans",
|
||||
"collapse": "Col·lapsa",
|
||||
"dock": "Acobla a la finestra principal",
|
||||
"document": "Activa o desactiva el document compartit",
|
||||
"download": "Baixeu les nostres aplicacions",
|
||||
"embedMeeting": "Insereix la reunió",
|
||||
@@ -1079,7 +1078,6 @@
|
||||
"tileView": "Activa o desactiva el mode mosaic",
|
||||
"toggleCamera": "Activa o desactiva la càmera",
|
||||
"toggleFilmstrip": "Mostra o amaga la cinta",
|
||||
"undock": "Desacobla en una finestra separada",
|
||||
"videoblur": "Activa o desactiva el desenfocament del vídeo",
|
||||
"videomute": "Activa o desactiva la càmera"
|
||||
},
|
||||
@@ -1096,7 +1094,6 @@
|
||||
"closeChat": "Tanca el xat",
|
||||
"closeReactionsMenu": "Tanca el menú de reaccions",
|
||||
"disableReactionSounds": "Podeu desactivar els sons de reacció per a aquesta reunió",
|
||||
"dock": "Acobla en la finestra principal",
|
||||
"documentClose": "Tanca el document compartit",
|
||||
"documentOpen": "Obre el document compartit",
|
||||
"download": "Baixeu les nostres aplicacions",
|
||||
@@ -1166,7 +1163,6 @@
|
||||
"talkWhileMutedPopup": "Intenteu parlar? Esteu silenciat.",
|
||||
"tileViewToggle": "Activa o desactiva el mode mosaic",
|
||||
"toggleCamera": "Activa o desactiva la càmera",
|
||||
"undock": "Desacobla en una finestra principal",
|
||||
"videoSettings": "Paràmetres de vídeo",
|
||||
"videomute": "Inicia o atura la càmera"
|
||||
},
|
||||
|
||||
@@ -1060,7 +1060,6 @@
|
||||
"chat": "Přepnout okno zpráv",
|
||||
"clap": "Tleskat",
|
||||
"collapse": "Zabalit",
|
||||
"dock": "Dokovat v hlavním okně",
|
||||
"document": "Přepnout sdílený dokument",
|
||||
"download": "Stáhnout naše aplikace",
|
||||
"embedMeeting": "Vložit setkání",
|
||||
@@ -1114,7 +1113,6 @@
|
||||
"tileView": "Přepnout dlaždicové zobrazení",
|
||||
"toggleCamera": "Přepnout kameru",
|
||||
"toggleFilmstrip": "Přepnout video náhledy",
|
||||
"undock": "Oddokovat do samostatného okna",
|
||||
"videoblur": "Přepnout rozmazání videa",
|
||||
"videomute": "Přepnout ztišení videa"
|
||||
},
|
||||
@@ -1132,7 +1130,6 @@
|
||||
"closeReactionsMenu": "Zavrít menu reakcí",
|
||||
"disableNoiseSuppression": "Vypnout potlačení šumu",
|
||||
"disableReactionSounds": "Vypnout zvuky reakcí",
|
||||
"dock": "Dokovat v hlavním okně",
|
||||
"documentClose": "Zavřít sdílený dokument",
|
||||
"documentOpen": "Otevřít sdílený dokument",
|
||||
"download": "Stáhnout naše aplikace",
|
||||
@@ -1204,7 +1201,6 @@
|
||||
"talkWhileMutedPopup": "Snažíte se mluvit? Máte ztišený mikrofon.",
|
||||
"tileViewToggle": "Přepnout dlaždicové zobrazení",
|
||||
"toggleCamera": "Přepnout kameru",
|
||||
"undock": "",
|
||||
"videoSettings": "",
|
||||
"videomute": "Zapnout / Vypnout kameru"
|
||||
},
|
||||
|
||||
@@ -147,6 +147,7 @@
|
||||
"bridgeCount": "Serverzahl: ",
|
||||
"codecs": "Codecs (A/V): ",
|
||||
"connectedTo": "Verbunden mit:",
|
||||
"e2eeVerified": "E2EE verifiziert:",
|
||||
"framerate": "Bildwiederholrate:",
|
||||
"less": "Weniger anzeigen",
|
||||
"localaddress": "Lokale Adresse:",
|
||||
@@ -408,6 +409,10 @@
|
||||
"user": "Anmeldename",
|
||||
"userIdentifier": "Benutzername",
|
||||
"userPassword": "Passwort",
|
||||
"verifyParticipantConfirm": "Sie stimmen überein",
|
||||
"verifyParticipantDismiss": "Sie stimmen nicht überein",
|
||||
"verifyParticipantQuestion": "EXPERIMENTELL: Frage Person {{participantName}} ob sie den selben Inhalt in der selben Reihenfolge sieht.",
|
||||
"verifyParticipantTitle": "Personsverifikation",
|
||||
"videoLink": "Video-Link",
|
||||
"viewUpgradeOptions": "Upgradeoptionen anzeigen",
|
||||
"viewUpgradeOptionsContent": "Sie müssen Ihren Tarif erweitern, um Premium-Features wie Aufnahme, Transkription, RTMP-Streaming und mehr zu nutzen.",
|
||||
@@ -437,9 +442,6 @@
|
||||
"noResults": "Keine Ergebnisse :(",
|
||||
"search": "GIPHY durchsuchen"
|
||||
},
|
||||
"helpView": {
|
||||
"title": "Hilfecenter"
|
||||
},
|
||||
"incomingCall": {
|
||||
"answer": "Antworten",
|
||||
"audioCallTitle": "Eingehender Anruf",
|
||||
@@ -563,7 +565,6 @@
|
||||
"lobby": {
|
||||
"admit": "Zulassen",
|
||||
"admitAll": "Alle zulassen",
|
||||
"allow": "Annehmen",
|
||||
"backToKnockModeButton": "Kein Passwort, stattdessen Beitritt anfragen",
|
||||
"chat": "Chat",
|
||||
"dialogTitle": "Lobbymodus",
|
||||
@@ -649,6 +650,8 @@
|
||||
"connectedOneMember": "{{name}} nimmt am Meeting teil",
|
||||
"connectedThreePlusMembers": "{{name}} und {{count}} andere Personen nehmen am Meeting teil",
|
||||
"connectedTwoMembers": "{{first}} und {{second}} nehmen am Meeting teil",
|
||||
"dataChannelClosed": "Schlechte Videoqualität",
|
||||
"dataChannelClosedDescription": "Die Steuerungsverbindung (Bridge Channel) wurde unterbrochen, daher ist die Videoqulität auf die schlechteste Stufe limitiert.",
|
||||
"disconnected": "getrennt",
|
||||
"displayNotifications": "Benachrichtigungen anzeigen für",
|
||||
"focus": "Konferenzleitung",
|
||||
@@ -709,6 +712,8 @@
|
||||
"reactionSoundsForAll": "Interaktionstöne für alle deaktivieren",
|
||||
"screenShareNoAudio": "Die Option \"Audio freigeben\" wurde bei der Auswahl des Fensters nicht ausgewählt.",
|
||||
"screenShareNoAudioTitle": "Share audio was not checked",
|
||||
"screenSharingAudioOnlyDescription": "Durch die Bildschirmfreigabe wird der Modus \"Beste Leistung\" beeinflusst und daher mehr Datenrate benötigt.",
|
||||
"screenSharingAudioOnlyTitle": "Modus \"Beste Leistung\"",
|
||||
"selfViewTitle": "Sie können die eigene Ansicht immer in den Einstellungen reaktivieren",
|
||||
"somebody": "Jemand",
|
||||
"startSilentDescription": "Treten Sie dem Meeting noch einmal bei, um Ihr Audio zu aktivieren",
|
||||
@@ -858,9 +863,6 @@
|
||||
"rejected": "Abgelehnt",
|
||||
"ringing": "Es klingelt …"
|
||||
},
|
||||
"privacyView": {
|
||||
"title": "Datenschutz"
|
||||
},
|
||||
"profile": {
|
||||
"avatar": "Benutzerbild",
|
||||
"setDisplayNameLabel": "Anzeigename festlegen",
|
||||
@@ -1003,6 +1005,7 @@
|
||||
"displayName": "Anzeigename",
|
||||
"displayNamePlaceholderText": "z.B. Erika Musterfrau",
|
||||
"email": "E-Mail",
|
||||
"emailPlaceholderText": "email@beispiel.de",
|
||||
"goTo": "Gehe zu",
|
||||
"header": "Einstellungen",
|
||||
"help": "Hilfe",
|
||||
@@ -1011,6 +1014,7 @@
|
||||
"profileSection": "Profil",
|
||||
"serverURL": "Server-URL",
|
||||
"showAdvanced": "Erweiterte Einstellungen anzeigen",
|
||||
"startCarModeInLowBandwidthMode": "Automodus mit Datensparmodus starten",
|
||||
"startWithAudioMuted": "Stumm beitreten",
|
||||
"startWithVideoMuted": "Ohne Video beitreten",
|
||||
"terms": "Nutzungsbedingungen",
|
||||
@@ -1066,7 +1070,6 @@
|
||||
"chat": "Chatfenster öffnen / schließen",
|
||||
"clap": "Klatschen",
|
||||
"collapse": "Einklappen",
|
||||
"dock": "In Hauptfenster einbinden",
|
||||
"document": "Geteiltes Dokument schließen",
|
||||
"download": "Unsere Apps herunterladen",
|
||||
"embedMeeting": "Konferenz einbetten",
|
||||
@@ -1120,7 +1123,6 @@
|
||||
"tileView": "Kachelansicht ein-/ausschalten",
|
||||
"toggleCamera": "Kamera wechseln",
|
||||
"toggleFilmstrip": "Miniaturansichten ein-/ausschalten",
|
||||
"undock": "In eigenem Fenster anzeigen",
|
||||
"videoblur": "Unscharfer Hintergrund ein-/ausschalten",
|
||||
"videomute": "„Video stummschalten“ ein-/ausschalten",
|
||||
"whiteboard": "Whiteboard ein-/ausschalten"
|
||||
@@ -1139,7 +1141,6 @@
|
||||
"closeReactionsMenu": "Interaktionsmenü schließen",
|
||||
"disableNoiseSuppression": "Rauschunterdrückung deaktivieren",
|
||||
"disableReactionSounds": "Sie können die Interaktionstöne für diese Konferenz deaktivieren",
|
||||
"dock": "In Hauptfenster einbinden",
|
||||
"documentClose": "Geteiltes Dokument schließen",
|
||||
"documentOpen": "Geteiltes Dokument öffnen",
|
||||
"download": "Unsere Apps herunterladen",
|
||||
@@ -1213,7 +1214,6 @@
|
||||
"talkWhileMutedPopup": "Versuchen Sie zu sprechen? Ihr Mikrofon ist stummgeschaltet.",
|
||||
"tileViewToggle": "Kachelansicht ein-/ausschalten",
|
||||
"toggleCamera": "Kamera wechseln",
|
||||
"undock": "In eigenem Fenster anzeigen",
|
||||
"videoSettings": "Kameraeinstellungen",
|
||||
"videomute": "Kamera starten / stoppen"
|
||||
},
|
||||
@@ -1294,6 +1294,7 @@
|
||||
"show": "Im Vordergrund anzeigen",
|
||||
"showSelfView": "Eigene Ansicht anzeigen",
|
||||
"unpinFromStage": "Lösen",
|
||||
"verify": "Person verifizieren",
|
||||
"videoMuted": "Kamera ausgeschaltet",
|
||||
"videomute": "Person hat die Kamera angehalten"
|
||||
},
|
||||
@@ -1361,6 +1362,7 @@
|
||||
"recentList": "Verlauf",
|
||||
"recentListDelete": "Eintrag löschen",
|
||||
"recentListEmpty": "Ihr Konferenzverlauf ist derzeit leer. Reden Sie mit Ihrem Team und Ihre vergangenen Konferenzen landen hier.",
|
||||
"recentMeetings": "Ihre letzten Konferenzen",
|
||||
"reducedUIText": "Willkommen bei {{app}}!",
|
||||
"roomNameAllowedChars": "Der Konferenzname sollte keines der folgenden Zeichen enthalten: ?, &, :, ', \", %, #.",
|
||||
"roomname": "Konferenzname eingeben",
|
||||
@@ -1369,6 +1371,7 @@
|
||||
"settings": "Einstellungen",
|
||||
"startMeeting": "Meeting starten",
|
||||
"terms": "AGB",
|
||||
"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen"
|
||||
"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen",
|
||||
"upcomingMeetings": "Ihre zukünftigen Konferenzen"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
"titleWithPolls": "Εισάγετε ένα ψευδώνυμο για τη χρήση της συνομιλίας"
|
||||
},
|
||||
"noMessagesMessage": "Δεν υπάρχουν μηνύματα στη συνάντηση ακόμα. Ξεκινήστε μια συζήτηση εδώ!",
|
||||
"privateNotice": "Ιδιωτικό μηνύμα στον / στην {recipient}}",
|
||||
"privateNotice": "Ιδιωτικό μηνύμα στον / στην {{recipient}}",
|
||||
"sendButton": "Στείλτε",
|
||||
"title": "Συνομιλία",
|
||||
"titleWithPolls": "Συνομιλία",
|
||||
@@ -517,7 +517,7 @@
|
||||
"oldElectronClientDescription3": " τώρα!",
|
||||
"passwordRemovedRemotely": "Το $t(lockRoomPasswordUppercase) αφαιρέθηκε από έναν άλλον συμμετέχοντα",
|
||||
"passwordSetRemotely": "Το $t(lockRoomPasswordUppercase) ορίστηκε από άλλον συμμετέχοντα",
|
||||
"raisedHand": "Ο/Η {{name}} θα ήθελε να μιλήσει.",
|
||||
"raisedHand": "Ο/Η {{participantDisplayName}} θα ήθελε να μιλήσει.",
|
||||
"somebody": "Κάποιος",
|
||||
"startSilentDescription": "Ξαναμπείτε στη συνάντηση για να ενεργοποιήσετε τον ήχο",
|
||||
"startSilentTitle": "Μπήκες χωρίς συσκευή εξόδου ήχου!",
|
||||
|
||||
@@ -365,7 +365,7 @@
|
||||
"mute": "Mute or unmute your microphone",
|
||||
"pushToTalk": "Press to transmit",
|
||||
"raiseHand": "Raise or lower your hand",
|
||||
"showSpeakerStats": "Show speaker stats",
|
||||
"showSpeakerStats": "Show participants stats",
|
||||
"toggleChat": "Open or close the chat",
|
||||
"toggleFilmstrip": "Show or hide video thumbnails",
|
||||
"toggleScreensharing": "Switch between camera and screen sharing",
|
||||
@@ -579,7 +579,7 @@
|
||||
"minutes": "{{count}}m",
|
||||
"name": "Name",
|
||||
"seconds": "{{count}}s",
|
||||
"speakerStats": "Speaker Stats",
|
||||
"speakerStats": "Participants Stats",
|
||||
"speakerTime": "Speaker Time"
|
||||
},
|
||||
"startupoverlay": {
|
||||
@@ -626,7 +626,7 @@
|
||||
"sharedvideo": "Toggle video sharing",
|
||||
"shortcuts": "Toggle shortcuts",
|
||||
"show": "Show on stage",
|
||||
"speakerStats": "Toggle speaker statistics",
|
||||
"speakerStats": "Toggle participants statistics",
|
||||
"tileView": "Toggle tile view",
|
||||
"toggleCamera": "Toggle camera",
|
||||
"videoblur": "",
|
||||
@@ -662,7 +662,7 @@
|
||||
"shareRoom": "Invite someone",
|
||||
"sharedvideo": "Share video",
|
||||
"shortcuts": "View shortcuts",
|
||||
"speakerStats": "Speaker stats",
|
||||
"speakerStats": "Participants stats",
|
||||
"startScreenSharing": "Start screen sharing",
|
||||
"startSubtitles": "Start subtitles",
|
||||
"startvideoblur": "",
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "Otvori/Zatvori chat",
|
||||
"clap": "Plješći",
|
||||
"collapse": "Sklopi",
|
||||
"dock": "Prikvači u glavni prozor",
|
||||
"document": "Uključi/Isključi dijeljeni dokument",
|
||||
"download": "Preuzmi naše aplikacije",
|
||||
"embedMeeting": "Ugradi sastanak",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "Uključi/Isključi pločasti prikaz",
|
||||
"toggleCamera": "Uključi/Isključi kameru",
|
||||
"toggleFilmstrip": "Uključi/Isključi slike videa",
|
||||
"undock": "Odspoji u zasebni prozor",
|
||||
"videoblur": "Uključi/Isključi zamućenje videa",
|
||||
"videomute": "Pokreni/Prekini kameru",
|
||||
"whiteboard": "Pokaži/Sakrij ploču za prezentacije"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "Zatvori izbornik reakcija",
|
||||
"disableNoiseSuppression": "Isključi suzbijanje šumova",
|
||||
"disableReactionSounds": "Za ovaj sastanak možeš isključiti zvukove reakcija",
|
||||
"dock": "Prikvači u glavni prozor",
|
||||
"documentClose": "Zatvori dijeljeni dokument",
|
||||
"documentOpen": "Otvori dijeljeni dokument",
|
||||
"download": "Preuzmi naše aplikacije",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "Pokušavaš govoriti? Tvoj zvuk je isključen.",
|
||||
"tileViewToggle": "Uključi/Isključi pločasti prikaz",
|
||||
"toggleCamera": "Uključi/Isključi kameru",
|
||||
"undock": "Odspoji u zasebni prozor",
|
||||
"videoSettings": "Videopostavke",
|
||||
"videomute": "Pokreni/Prekini kameru"
|
||||
},
|
||||
|
||||
@@ -1033,7 +1033,6 @@
|
||||
"chat": "chat-woknješko pokazać/schować",
|
||||
"clap": "placać",
|
||||
"collapse": "pomjeńšić",
|
||||
"dock": "we hłownej wobrazowce fiksěrować",
|
||||
"document": "dźěleny dokument začinić",
|
||||
"download": "naše aplikacije downloadować ",
|
||||
"embedMeeting": "konferencu integrować",
|
||||
@@ -1085,7 +1084,6 @@
|
||||
"tileView": "kachlicowy napohlad zapnyć/hasnyć",
|
||||
"toggleCamera": "kameru měnić",
|
||||
"toggleFilmstrip": "miniaturowy napohlad zapnyć/hasnyć ",
|
||||
"undock": "rozwjazać",
|
||||
"videoblur": "njejasny widejo zapnyć/hasnyć ",
|
||||
"videomute": "„něme šaltowanje wideja zapnyć/hasnyć "
|
||||
},
|
||||
@@ -1102,7 +1100,6 @@
|
||||
"closeChat": "chat začinić",
|
||||
"closeReactionsMenu": "meni za interakcije začinić",
|
||||
"disableReactionSounds": "Móžeće zwuki za interakcije za tutu konferencu deaktiwěrować.",
|
||||
"dock": "fiksěrować",
|
||||
"documentClose": "dźěleny dokument začinić",
|
||||
"documentOpen": "dźěleny dokument wočinić",
|
||||
"download": "naše aplikacije downloadować",
|
||||
@@ -1172,7 +1169,6 @@
|
||||
"talkWhileMutedPopup": "Spytaće Wy rěčeć? Waš mikrofon je němy.",
|
||||
"tileViewToggle": " kachlicowy napohlad zapnyć/hasnyć ",
|
||||
"toggleCamera": "kameru měnić",
|
||||
"undock": "rozwjazać",
|
||||
"videoSettings": "nastajenja za widejo",
|
||||
"videomute": "kameru startować/hasnyć"
|
||||
},
|
||||
|
||||
@@ -27,6 +27,25 @@
|
||||
"audioOnly": {
|
||||
"audioOnly": "Alacsony sávszélesség"
|
||||
},
|
||||
"breakoutRooms": {
|
||||
"actions": {
|
||||
"add": "Pihenőszoba hozzáadása",
|
||||
"autoAssign": "Automatikus hozzárendelés a pihenőszobákhoz",
|
||||
"close": "Bezárás",
|
||||
"join": "Csatlakozás",
|
||||
"leaveBreakoutRoom": "Pihenőszoba elhagyása",
|
||||
"more": "Bővebben",
|
||||
"remove": "Eltávolítás",
|
||||
"sendToBreakoutRoom": "Résztvevő áthelyezése ide:"
|
||||
},
|
||||
"defaultName": "Pihenőszoba #{{index}}",
|
||||
"mainRoom": "Fő szoba",
|
||||
"notifications": {
|
||||
"joined": "Csatlakozva a \"{{name}}\" pihenőszobához",
|
||||
"joinedMainRoom": "Csatlakozva a fő szobához",
|
||||
"joinedTitle": "Pihenőszobák"
|
||||
}
|
||||
},
|
||||
"calendarSync": {
|
||||
"addMeetingURL": "Értekezlet hivatkozásának hozzáadása",
|
||||
"confirmAddLink": "Hozzáadható egy Jitsi hivatkozás az eseményhez?",
|
||||
@@ -46,6 +65,7 @@
|
||||
"today": "Ma"
|
||||
},
|
||||
"chat": {
|
||||
"enter": "Belépés a szobába",
|
||||
"error": "Hiba: az üzenetet nem sikerült elküldeni. Hiba oka: {{error}}",
|
||||
"fieldPlaceHolder": "Írja ide az üzenetét",
|
||||
"messageTo": "Privát üzenet a felhasználónak: {{recipient}}",
|
||||
@@ -58,14 +78,21 @@
|
||||
"noMessagesMessage": "A találkozón még nincsenek üzenetek. Itt kezdhet beszélgetést!",
|
||||
"privateNotice": "Privát üzenet a felhasználónak: {{recipient}}",
|
||||
"sendButton": "Küldés",
|
||||
"tabs": {
|
||||
"chat": "Csevegés",
|
||||
"polls": "Szavazás"
|
||||
},
|
||||
"title": "Csevegés",
|
||||
"titleWithPolls": "Csevegés",
|
||||
"you": "neked"
|
||||
"titleWithPolls": "Csevegés és szavazás",
|
||||
"you": "te"
|
||||
},
|
||||
"chromeExtensionBanner": {
|
||||
"buttonText": "Chrome kiterjesztés telepítése",
|
||||
"dontShowAgain": "Ne jelenjen meg újra",
|
||||
"installExtensionText": "Kiterjesztés telepítése a Google Calendar és az Office 365 integrációjához"
|
||||
"installExtensionText": "Kiterjesztés telepítése a Google Calendar és az Office 365 integrációjához",
|
||||
"raiseHandAction": "Kéz felemelése",
|
||||
"reactionSounds": "Hangok kikapcsolása",
|
||||
"reactionSoundsForAll": "Hangok kikapcsolása mindenkinek"
|
||||
},
|
||||
"connectingOverlay": {
|
||||
"joiningRoom": "Kapcsolódás az értekezlethez…"
|
||||
@@ -189,12 +216,18 @@
|
||||
"dismiss": "Elutasítás",
|
||||
"displayNameRequired": "Helló! Mi a neve?",
|
||||
"done": "Kész",
|
||||
"enterDisplayName": "Adja meg itt a nevét",
|
||||
"e2eeDescription": "A végpontok közötti titkosítás jelenleg KÍSÉRLETES. Ne feledje, hogy a végpontok közötti titkosítás bekapcsolása hatékonyan letiltja a szerveroldali szolgáltatásokat, például: telefonos részvételt. Ne feledje azt is, hogy az értekezlet csak olyan felhasználók számára működik, akik olyan böngészőkből csatlakoznak, amelyek támogatják a beilleszthető adatfolyamokat.",
|
||||
"e2eeLabel": "Végpontok közötti titkosítás engedélyezése",
|
||||
"embedMeeting": "Meeting beágyazása",
|
||||
"enterDisplayName": "Adja meg a nevét",
|
||||
"error": "Hiba",
|
||||
"externalInstallationMsg": "Telepíteni kell a munkaasztal megosztására való kiterjesztést.",
|
||||
"externalInstallationTitle": "Kiterjesztésre van szükség",
|
||||
"goToStore": "Ugrás az alkalmazásbolthoz",
|
||||
"gracefulShutdown": "Jelenleg a szolgáltatás karbantartás miatt nem elérhető. Később próbálja meg ismét.",
|
||||
"grantModeratorDialog": "Biztos, hogy moderátori jogokat kíván adni a következőnek: {{participantName}}?",
|
||||
"grantModeratorTitle": "Moderátori jogok megadása",
|
||||
"hideShareAudioHelper": "Ne mutassa ezt az ablakot többé",
|
||||
"incorrectPassword": "Helytelen felhasználói név és jelszó",
|
||||
"incorrectRoomLockPassword": "Helytelen jelszó",
|
||||
"inlineInstallExtension": "Telepítés azonnal",
|
||||
@@ -217,21 +250,34 @@
|
||||
"maxUsersLimitReached": "A lehetséges résztvevők maximális száma elérve. A konferencia tele van. Lépjen kapcsolatba az értekezlet tulajdonosával vagy próbálkozzon később!",
|
||||
"maxUsersLimitReachedTitle": "A lehetséges résztvevők maximális száma elérve",
|
||||
"micConstraintFailedError": "A mikrofon nem felel meg bizonyos kikötéseknek.",
|
||||
"micNotFoundError": "Nem található mikrofon.",
|
||||
"micNotFoundError": "A mikrofon nem található.",
|
||||
"micNotSendingData": "A számítógép beállításai között kell visszahangosítani a mikrofont vagy beállítani a hangfelvétel szintjét",
|
||||
"micNotSendingDataTitle": "A mikrofon le van némítva a rendszerbeállításokban",
|
||||
"micPermissionDeniedError": "Nem adott engedélyt a mikrofon használatához. Csatlakozhat a beszélgetéshez, de a többiek nem fogják Önt hallani. A címsorban lévő kamera ikonnal lehet ezt helyrehozni.",
|
||||
"micUnknownError": "Ismeretlen ok miatt nem lehet a mikrofont használni.",
|
||||
"moderationAudioLabel": "Engedélyezze a résztvevőknek saját némításuk feloldását",
|
||||
"moderationVideoLabel": "Engedélyezze a résztvevőknek saját kamerájuk elindítását",
|
||||
"muteEveryoneDialog": "Valóban mindenki elnémítható? Nem fogja tudni visszahangosítani, de ő önmagát bármikor vissza tudja majd hangosítani.",
|
||||
"muteEveryoneElseDialog": "Némítás után már nem fogja tudni visszahangosítani, de ő önmagát bármikor vissza tudja hangosítani.",
|
||||
"muteEveryoneElseTitle": "Mindenki elnémítása, kivéve: {{whom}}?",
|
||||
"muteEveryoneElsesVideoDialog": "A kamera letiltása után nem tudja újra bekapcsolni, de ők bármikor újra bekapcsolhatják.",
|
||||
"muteEveryoneElsesVideoTitle": "Mindenki kamerájának tilátsa, kivéve {{whom}}?",
|
||||
"muteEveryoneSelf": "önmagamat",
|
||||
"muteEveryoneStartMuted": "Mindenki elnémítva kezd ezután",
|
||||
"muteEveryoneTitle": "Mindenki elnémítása?",
|
||||
"muteEveryonesVideoDialog": "A résztvevők bármikor be tudják kapcsolni a kamerájukat.",
|
||||
"muteEveryonesVideoDialogModerationOn": "A résztvevők bármikor kérhetik videójuk bekapcsolását.",
|
||||
"muteEveryonesVideoTitle": "Minden résztvevő kameráját leállítja?",
|
||||
"muteParticipantBody": "Nem fogja tudni visszahangosítani, de ő önmagát bármikor vissza tudja majd hangosítani.",
|
||||
"muteParticipantButton": "Némítás",
|
||||
"muteParticipantDialog": "Valóban elnémítható ez a résztvevő? Nem fogja tudni visszahangosítani, de ő önmagát bármikor vissza tudja majd hangosítani.",
|
||||
"muteParticipantTitle": "Elnémítható a résztvevő?",
|
||||
"muteParticipantsVideoBody": "Ön nem tudja újra bekapcsolni a kamerát, de ők bármikor újra bekapcsolhatják.",
|
||||
"muteParticipantsVideoButton": "Kamera leállítása",
|
||||
"muteParticipantsVideoDialog": "Biztosan le akarja tiltani ennek a résztvevőnek a kameráját? Ön nem tudja újra bekapcsolni a kamerát, de ők bármikor újra bekapcsolhatják.",
|
||||
"muteParticipantsVideoDialogModerationOn": "Are you sure you want to turn off this participant's camera? You won't be able to turn the camera back on and neither will they.",
|
||||
"muteParticipantsVideoTitle": "Letiltja ennek a résztvevőnek a kameráját?",
|
||||
"password": "Jelszó",
|
||||
"passwordLabel": "Az értekezletet zárolta egy résztvevő. Csatlakozáshoz adja meg a $t(lockRoomPassword).",
|
||||
"passwordNotSupported": "Az értekezlet $t(lockRoomPassword) beállítása nem támogatott.",
|
||||
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) nem támogatott",
|
||||
@@ -249,6 +295,7 @@
|
||||
"remoteControlShareScreenWarning": "Vegye figyelembe, hogy ha megnyomja az „Engedélyezés” lehetőséget, akkor megosztja a képernyőt!",
|
||||
"remoteControlStopMessage": "A távoli munkamenet irányítása befejeződött!",
|
||||
"remoteControlTitle": "Távoli asztal vezérlése",
|
||||
"remoteUserControls": "{{username}} vezérlői",
|
||||
"removePassword": "$t(lockRoomPassword) eltávolítása",
|
||||
"removeSharedVideoMsg": "Valóban eltávolítható a megosztott videó?",
|
||||
"removeSharedVideoTitle": "Megosztott videó eltávolítása",
|
||||
@@ -267,11 +314,14 @@
|
||||
"sendPrivateMessageTitle": "Privátban legyen elküldve?",
|
||||
"serviceUnavailable": "Szolgáltatás nem elérhető",
|
||||
"sessTerminated": "Hívás megszakadt",
|
||||
"shareAudio": "Tovább",
|
||||
"shareAudioTitle": "Hang megosztása",
|
||||
"shareVideoLinkError": "Adjon meg egy helyes linket.",
|
||||
"shareVideoTitle": "Videó megosztása",
|
||||
"shareYourScreen": "Képernyő megosztása",
|
||||
"shareYourScreenDisabled": "Képernyőmegosztás letiltva.",
|
||||
"shareYourScreenDisabledForGuest": "Vendég nem végezhet képernyőmegosztást.",
|
||||
"sharedVideoLinkPlaceholder": "YouTube link vagy közvetlen videó link",
|
||||
"startLiveStreaming": "Élő közvetítés kezdése",
|
||||
"startRecording": "Felvétel indítása",
|
||||
"startRemoteControlErrorMessage": "Hiba történt a távoli vezérlés munkamenetének indítása közben!",
|
||||
@@ -287,6 +337,7 @@
|
||||
"transcribing": "Átirat készítése",
|
||||
"unlockRoom": "Értekezlet $t(lockRoomPassword) eltávolítása",
|
||||
"userPassword": "felhasználói jelszó",
|
||||
"videoLink": "Videó link",
|
||||
"yourEntireScreen": "A teljes képernyő"
|
||||
},
|
||||
"documentSharing": {
|
||||
@@ -367,11 +418,16 @@
|
||||
"showSpeakerStats": "Beszéd statisztikák megjelenítése",
|
||||
"toggleChat": "Csevegés megnyitása vagy bezárása",
|
||||
"toggleFilmstrip": "Videó bélyegképek megjelenítése vagy elrejtése",
|
||||
"toggleParticipantsPane": "A résztvevők panel megjelenítése vagy elrejtése",
|
||||
"toggleScreensharing": "Váltás kamera és képernyőmegosztás között",
|
||||
"toggleShortcuts": "Gyorsbillentyűk megjelenítése vagy elrejtése",
|
||||
"videoMute": "Kamera elindítása vagy leállítása",
|
||||
"videoQuality": "Hívás minőségének kezelése"
|
||||
},
|
||||
"largeVideo": {
|
||||
"screenIsShared": "Ön megosztja a képernyőjét",
|
||||
"showMeWhatImSharing": "Látni szeretném mit osztok meg"
|
||||
},
|
||||
"liveStreaming": {
|
||||
"busy": "Dolgozunk a közvetítési erőforrások felszabadításán. Kísérelje meg újra néhány perc múlva.",
|
||||
"busyTitle": "Jelenleg minden közvetítő foglalt",
|
||||
@@ -405,6 +461,44 @@
|
||||
"unavailableTitle": "Élő közvetítés elérhetetlen",
|
||||
"youtubeTerms": "YouTube szolgáltatási feltételek"
|
||||
},
|
||||
"lobby": {
|
||||
"admit": "Engedélyezés",
|
||||
"admitAll": "Mindet engedélyez",
|
||||
"allow": "Engedélyez",
|
||||
"backToKnockModeButton": "Csatlakozási kérelem küldése",
|
||||
"chat": "Chat",
|
||||
"dialogTitle": "Lobby mód",
|
||||
"disableDialogContent": "A lobby mód jelenleg elérhető. Lehetőséged van csak azokat behívni a megbeszélésre, akik erre jogosultak általad. Szeretnéd kikapcsolni?",
|
||||
"disableDialogSubmit": "Elutasítás",
|
||||
"emailField": "Írd be az email címed",
|
||||
"enableDialogPasswordField": "Jelszó megadása (választható)",
|
||||
"enableDialogSubmit": "Elfogadás",
|
||||
"enableDialogText": "A Lobby mód lehetővé teszi a megbeszélés védelmét azáltal, hogy csak a moderátor hivatalos jóváhagyása után engedi be az embereket.",
|
||||
"enterPasswordButton": "Adja meg az értekezlet jelszavát",
|
||||
"enterPasswordTitle": "Adja meg a jelszót az értekezlethez való csatlakozáshoz",
|
||||
"errorMissingPassword": "Kérjük, adja meg az értekezlet jelszavát",
|
||||
"invalidPassword": "Helytelen jelszó",
|
||||
"joinRejectedMessage": "Csatlakozási kérelmét egy moderátor elutasította.",
|
||||
"joinRejectedTitle": "Csatlakozási kérelem elutasítva.",
|
||||
"joinTitle": "Csatlakozás az értekezlethez",
|
||||
"joinWithPasswordMessage": "Csatlakozás jelszóval, kérjük várjon...",
|
||||
"joiningMessage": "Amint valaki elfogadja kérését, csatlakoztatjuk az értekezlethez",
|
||||
"joiningTitle": "Értekezlethez csatlakozás kérése...",
|
||||
"joiningWithPasswordTitle": "Csatlakozás jelszóval...",
|
||||
"knockButton": "Csatlakozási kérelem küldése",
|
||||
"knockTitle": "Valaki szeretne csatlakozni az értekezlethez",
|
||||
"nameField": "Adja meg a nevét",
|
||||
"notificationLobbyAccessDenied": "{{targetParticipantName}} elutasításra került a csatlakozásod {{originParticipantName}} által",
|
||||
"notificationLobbyAccessGranted": "{{targetParticipantName}} a csatlakozozásod elfogadva lett {{originParticipantName}} által",
|
||||
"notificationLobbyDisabled": "Lobby tiltva lett {{originParticipantName}} által.",
|
||||
"notificationLobbyEnabled": "Lobby engedélyezve lett {{originParticipantName}} által.",
|
||||
"notificationTitle": "Lobby",
|
||||
"passwordField": "Adja meg az értekezlet jelszavát",
|
||||
"passwordJoinButton": "Csatlakozás",
|
||||
"reject": "Elutasít",
|
||||
"rejectAll": "Mindet elutasít",
|
||||
"toggleLabel": "Lobby engedélyezése"
|
||||
},
|
||||
"localRecording": {
|
||||
"clientState": {
|
||||
"off": "Kikapcsolva",
|
||||
@@ -449,11 +543,18 @@
|
||||
"focus": "Konferencia fókusza",
|
||||
"focusFail": "{{component}} nem elérhető – újrapróbálkozás {{ms}} másodperc múlva",
|
||||
"grantedTo": "Moderátori jogok biztosítva {{to}} számára!",
|
||||
"hostAskedUnmute": "Kérlek hangosítsd vissza a mikrofonod.",
|
||||
"invitedOneMember": "{{name}} meg lett hívva",
|
||||
"invitedThreePlusMembers": "{{name}} és {{count}} másik felhasználó meg lett hívva",
|
||||
"invitedTwoMembers": "{{first}} és {{second}} lett meghívva",
|
||||
"kickParticipant": "{{kicked}} résztvevőt kirúgta {{kicker}}",
|
||||
"leftOneMember": "{{name}} elhagyta az értekezletet",
|
||||
"leftThreePlusMembers": "{{name}} és mások elhagyták az értekezletet",
|
||||
"leftTwoMembers": "{{first}} és {{second}} elhagyták az értekezletet",
|
||||
"localRecordingStarted": "{{name}} elkezdte rögzíteni az értekezletet.",
|
||||
"localRecordingStopped": "{{name}} leállította a rögzítést.",
|
||||
"me": "Én",
|
||||
"moderationInEffectTitle": "A moderátor elnémította a mikrofonját",
|
||||
"moderator": "Moderátori jogok biztosítva!",
|
||||
"muted": "A beszélgetést elnémítva kezdte meg.",
|
||||
"mutedRemotelyDescription": "Bármikor visszahangosíthatja magát, ha készen áll a beszédre. Némítsa le magát ismét, ha a felesleges zajoktól meg kívánja védeni az értekezletet.",
|
||||
@@ -462,6 +563,10 @@
|
||||
"newDeviceAction": "Alkalmaz",
|
||||
"newDeviceAudioTitle": "Új hangeszköz észlelve",
|
||||
"newDeviceCameraTitle": "Új kamera észlelve",
|
||||
"noiseSuppressionFailedTitle": "Nem sikerült elindítani a zajcsökkentést",
|
||||
"noiseSuppressionNoTrackDescription": "Kérjük, először kapcsolja ki a mikrofon némítását.",
|
||||
"noiseSuppressionStereoDescription": "A sztereó zajcsökkentés jelenleg nem támogatott.",
|
||||
"participantWantsToJoin": "Csatlakozni szeretne az értekezlethez",
|
||||
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) egy másik résztvevő által eltávolítva",
|
||||
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) egy másik résztvevő által beállítva",
|
||||
"raisedHand": "{{name}} beszélni szeretne.",
|
||||
@@ -472,9 +577,115 @@
|
||||
"suboptimalExperienceTitle": "Böngészőhiba",
|
||||
"unmute": "Visszahangosítás"
|
||||
},
|
||||
"participantsPane": {
|
||||
"actions": {
|
||||
"allow": "Engedélyezés a résztvevőknek, hogy:",
|
||||
"allowVideo": "Videó engedélyezése",
|
||||
"askUnmute": "Kérje a némítás feloldását",
|
||||
"audioModeration": "A némítást feloldhassák",
|
||||
"blockEveryoneMicCamera": "Block everyone's mic and camera",
|
||||
"invite": "Meghívás",
|
||||
"moreModerationActions": "További moderálási opciók",
|
||||
"moreModerationControls": "További moderálási vezérlők",
|
||||
"moreParticipantOptions": "Résztvevő további beállításai",
|
||||
"mute": "Némítás",
|
||||
"muteAll": "Mindenkit elnémít",
|
||||
"muteEveryoneElse": "Mute everyone else",
|
||||
"stopEveryonesVideo": "Mindenki videójának leállítása",
|
||||
"stopVideo": "Videó leállítása",
|
||||
"unblockEveryoneMicCamera": "Unblock everyone's mic and camera",
|
||||
"videoModeration": "Elindíthassák a videójukat"
|
||||
},
|
||||
"close": "Bezár",
|
||||
"header": "Résztvevők",
|
||||
"headings": {
|
||||
"lobby": "Lobby ({{count}})",
|
||||
"participantsList": "Résztvevők ({{count}})",
|
||||
"waitingLobby": "Lobby-ban várakozók ({{count}})"
|
||||
},
|
||||
"search": "Résztvevők keresése"
|
||||
},
|
||||
"passwordDigitsOnly": "Legfeljebb {{number}} szám",
|
||||
"passwordSetRemotely": "egy másik résztvevő által beállítva",
|
||||
"polls": {
|
||||
"answer": {
|
||||
"skip": "Kihagyás",
|
||||
"submit": "Küldés"
|
||||
},
|
||||
"by": "Létrehozta: {{ name }}",
|
||||
"create": {
|
||||
"addOption": "Opció hozzáadása",
|
||||
"answerPlaceholder": "Opció {{index}}",
|
||||
"cancel": "Mégsem",
|
||||
"create": "Szavazás létrehozása",
|
||||
"pollOption": "Opció {{index}}",
|
||||
"pollQuestion": "Szavazás kérdése",
|
||||
"questionPlaceholder": "Írja le a kérdést",
|
||||
"removeOption": "Opció eltávolítása",
|
||||
"send": "Küldés"
|
||||
},
|
||||
"notification": {
|
||||
"description": "Szavazás megnyitása",
|
||||
"title": "Új szavazás létrehozva"
|
||||
},
|
||||
"results": {
|
||||
"changeVote": "Módosítás",
|
||||
"empty": "Még nincsenek szavazások. Indítson szavazást itt!",
|
||||
"hideDetailedResults": "Részletek elrejtése",
|
||||
"showDetailedResults": "Részletek",
|
||||
"vote": "Szavazás"
|
||||
}
|
||||
},
|
||||
"poweredby": "Működteti a",
|
||||
"prejoin": {
|
||||
"audioAndVideoError": "Hang és videó hiba:",
|
||||
"audioDeviceProblem": "Hiba lépett fel az hangeszközzel",
|
||||
"audioOnlyError": "Hang hiba:",
|
||||
"audioTrackError": "Nem lehet a hangot rögzíteni.",
|
||||
"callMe": "Hívj fel",
|
||||
"callMeAtNumber": "Hívj fel ezen a számon:",
|
||||
"calling": "Hívás",
|
||||
"configuringDevices": "Eszköz beállítás...",
|
||||
"connectedWithAudioQ": "Csak hanggal szeretne csatlakozni?",
|
||||
"connection": {
|
||||
"good": "Az internet kapcsolat jónak tűnik!",
|
||||
"nonOptimal": "Az internet kapcsolat nem optimális",
|
||||
"poor": "Az internet kapcsolat nagyon gyenge!"
|
||||
},
|
||||
"connectionDetails": {
|
||||
"goodQuality": "Fantasztikus! A média minősége kiváló lesz."
|
||||
},
|
||||
"copyAndShare": "Másolom és megosztom az értekezlet linkjét",
|
||||
"dialInMeeting": "Behívás az értekezletbe",
|
||||
"dialInPin": "Behívás az értkezeletbe és megadom a PIN kódot:",
|
||||
"dialing": "Tárcsázás",
|
||||
"doNotShow": "Ne mutassa mégegyszer ezt a képernyőt",
|
||||
"errorDialOut": "Nem sikerült a behívás",
|
||||
"errorDialOutDisconnected": "Nem sikerült a behívás. Kapcsolat bontása",
|
||||
"errorDialOutFailed": "Nem sikerült a behívás. Hiba a hívásban",
|
||||
"errorDialOutStatus": "Hiba a hívás státusz megadásában",
|
||||
"errorMissingName": "Kérlet add meg a neved, hogy csatlakozhass a megbeszéléshez",
|
||||
"errorNoPermissions": "Engedélyeznie kell a mikrofonhoz és a kamerához való hozzáférést",
|
||||
"errorStatusCode": "Hiba a hiváskor, hiba kód: {{status}}",
|
||||
"errorValidation": "Hívószám validációs hiba",
|
||||
"iWantToDialIn": "Hívni szeretném",
|
||||
"initiated": "Hívás felépítés",
|
||||
"joinAudioByPhone": "Csatlakozás telefon beszélgetéssel",
|
||||
"joinMeeting": "Csatlakozás",
|
||||
"joinMeetingInLowBandwidthMode": "Csatlakozás alacsony sávszélességi módban",
|
||||
"joinWithoutAudio": "Csatlakozás hang nélkül",
|
||||
"keyboardShortcuts": "Gyorsbillentyűk engedélyezése",
|
||||
"linkCopied": "A link a vágólapra másolva",
|
||||
"lookGood": "A mikrofon megfelelően működik",
|
||||
"or": "vagy",
|
||||
"premeeting": "Csatlakozás előtt",
|
||||
"screenSharingError": "Képernyő megosztás hiba:",
|
||||
"showScreen": "Csatlakozás előtti kamerakép",
|
||||
"startWithPhone": "Kezdés telefonhanggal",
|
||||
"videoOnlyError": "Videó hiba:",
|
||||
"videoTrackError": "Nem sikerült a videó megjelenítés.",
|
||||
"viewAllNumbers": "Összes szám megjelenítése"
|
||||
},
|
||||
"presenceStatus": {
|
||||
"busy": "Foglalt",
|
||||
"calling": "Hívás…",
|
||||
@@ -509,13 +720,19 @@
|
||||
"failedToStart": "A felvétel indítása meghiúsult",
|
||||
"fileSharingdescription": "Felvétel megosztása az értekezlet résztvevőivel",
|
||||
"live": "ÉLŐ",
|
||||
"localRecordingNoNotificationWarning": "A felvételt nem közöljük más résztvevőkkel. Értesítenie kell velük, hogy a találkozót rögzítették.",
|
||||
"localRecordingStartWarning": "A megbeszélésből való kilépés előtt feltétlenül állítsa le a felvételt, hogy elmentse azt.",
|
||||
"localRecordingStartWarningTitle": "Állítsa le a felvételt a mentéshez",
|
||||
"localRecordingWarning": "Győződjön meg arról, hogy az aktuális lapot választotta a megfelelő videó és hang használatához. A felvétel jelenleg 1 GB-ra van korlátozva, ami körülbelül 100 perc.",
|
||||
"loggedIn": "Belépve mint {{userName}}",
|
||||
"off": "Felvétel leállítva",
|
||||
"offBy": "{{name}} leállította a felvételt",
|
||||
"on": "Felvétel",
|
||||
"onBy": "{{name}} elindította a felvételt",
|
||||
"onlyRecordSelf": "Csak az én hang- és videófolyamomat rögzítse",
|
||||
"pending": "Értekezlet rögzítésének előkészítése…",
|
||||
"rec": "REC",
|
||||
"saveLocalRecording": "Felvétel mentése helyileg (béta)",
|
||||
"serviceDescription": "A felvételt a rögzítési szolgáltatás veszi fel",
|
||||
"serviceName": "Felvétel szolgáltatás",
|
||||
"signIn": "Belépés",
|
||||
@@ -527,6 +744,12 @@
|
||||
"sectionList": {
|
||||
"pullToRefresh": "Húzás a frissítéshez"
|
||||
},
|
||||
"security": {
|
||||
"about": "Hozzáadhat jelszót az értekezlethez. A résztvevőknek meg kell adniuk a jelszót, mielőtt csatlakozhatnak az értekezlethez.",
|
||||
"aboutReadOnly": "A moderátor résztvevői hozzáadhatnak egy jelszót az értekezlethez. A résztvevőknek meg kell adniuk a jelszót, mielőtt csatlakozhatnak az értekezlethez.",
|
||||
"header": "Biztonsági beállítások",
|
||||
"insecureRoomNameWarning": "The room name is unsafe. Unwanted participants may join your conference. Consider securing your meeting using the security button."
|
||||
},
|
||||
"settings": {
|
||||
"calendar": {
|
||||
"about": "A {{appName}} naptárintegráció a naptár biztonságos elérésére szolgál, így olvasni tudja a soron következő eseményeket.",
|
||||
@@ -535,8 +758,13 @@
|
||||
"signedIn": "Jelenleg ehhez az címhez tartozó naptár eseményei érhetőek el: {{email}}. Alább a „szétkapcsolás” gombra kattintva lehet leállítani a naptár eseményeinek elérését.",
|
||||
"title": "Naptár"
|
||||
},
|
||||
"desktopShareFramerate": "Képernyőmegosztás sebessége (FPS)",
|
||||
"desktopShareHighFpsWarning": "A nagyobb képkockasebesség az asztali megosztásnál hatással lehet a sávszélességre. Az új beállítások érvénybe léptetéséhez újra kell indítania a képernyőmegosztást.",
|
||||
"desktopShareWarning": "Az új beállítások érvénybe léptetéséhez újra kell indítania a képernyőmegosztást.",
|
||||
"devices": "Eszközök",
|
||||
"followMe": "Mindenki engem kövessen",
|
||||
"framesPerSecond": "képkocka / másodperc",
|
||||
"incomingMessage": "Bejövő üzenet",
|
||||
"language": "Nyelv",
|
||||
"loggedIn": "Belépve mint {{name}}",
|
||||
"microphones": "Mikrofonok",
|
||||
@@ -544,12 +772,22 @@
|
||||
"more": "Továbbiak",
|
||||
"name": "Név",
|
||||
"noDevice": "Nincs",
|
||||
"participantJoined": "Résztvevő csatlakozott",
|
||||
"participantKnocking": "Résztvevő belépett a lobby-ba",
|
||||
"participantLeft": "Résztvevő kilépett",
|
||||
"playSounds": "Hangok lejátszása a következőkhöz:",
|
||||
"reactions": "Meeting reakciók",
|
||||
"sameAsSystem": "Rendszerhang ({{label}})",
|
||||
"selectAudioOutput": "Hangkimenet",
|
||||
"selectCamera": "Kamera",
|
||||
"selectMic": "Mikrofon",
|
||||
"selfView": "Saját kép",
|
||||
"sounds": "Hangok",
|
||||
"speakers": "Hangszórók",
|
||||
"startAudioMuted": "Mindenki elnémítva kezd",
|
||||
"startReactionsMuted": "Reakció hangok némítása mindenki számára",
|
||||
"startVideoMuted": "Mindenki videó nélkül kezd",
|
||||
"talkWhileMuted": "Lenémított beszéd",
|
||||
"title": "Beállítások"
|
||||
},
|
||||
"settingsView": {
|
||||
@@ -577,14 +815,23 @@
|
||||
},
|
||||
"speaker": "Hangszóró",
|
||||
"speakerStats": {
|
||||
"angry": "Mérges",
|
||||
"disgusted": "Felháborodott",
|
||||
"fearful": "Félelmetes",
|
||||
"happy": "Boldog",
|
||||
"hours": "{{count}} h",
|
||||
"minutes": "{{count}} perc",
|
||||
"name": "Név",
|
||||
"neutral": "Semleges",
|
||||
"sad": "Szomorú",
|
||||
"search": "Keresés",
|
||||
"seconds": "{{count}} mp",
|
||||
"speakerStats": "Beszélő statisztika",
|
||||
"speakerTime": "Beszélő ideje"
|
||||
"speakerTime": "Beszélő ideje",
|
||||
"surprised": "Meglepett"
|
||||
},
|
||||
"startupoverlay": {
|
||||
"genericTitle": "Az értekezlethez engedélyezni kell a mikrofont és kamerát.",
|
||||
"policyText": " ",
|
||||
"title": "A {{app}} használni szeretné a mikrofont és a kamerát."
|
||||
},
|
||||
@@ -599,36 +846,49 @@
|
||||
"Settings": "Beállítások átváltása",
|
||||
"audioOnly": "Csak a hang átváltása",
|
||||
"audioRoute": "Hangeszköz kijelölése",
|
||||
"boo": "Szomorú",
|
||||
"callQuality": "Videóminőség kezelése",
|
||||
"cc": "Feliratok átváltása",
|
||||
"chat": "Csevegés ablak átváltása",
|
||||
"clap": "Taps",
|
||||
"document": "Megosztott dokumentum átváltása",
|
||||
"download": "Alkalmazás letöltése",
|
||||
"embedMeeting": "Meeting beágyazása",
|
||||
"feedback": "Visszajelzés küldése",
|
||||
"fullScreen": "Teljes képernyő átváltása",
|
||||
"grantModerator": "Moderátori jogok megadása",
|
||||
"hangup": "Beszélgetés elhagyása",
|
||||
"help": "Súgó",
|
||||
"invite": "Személyek meghívása",
|
||||
"kick": "Résztvevő kirúgása",
|
||||
"laugh": "Nevetés",
|
||||
"like": "Hüvelykujj fel",
|
||||
"localRecording": "Helyi felvétel vezérlőelemeinek átváltása",
|
||||
"lockRoom": "Értekezlet jelszavának átváltása",
|
||||
"moreActions": "További műveltek menü átváltása",
|
||||
"moreActionsMenu": "További műveltek menü",
|
||||
"moreActions": "További műveletek menü átváltása",
|
||||
"moreActionsMenu": "További műveletek menü",
|
||||
"moreOptions": "További beállítások megjelenítése",
|
||||
"mute": "Hang némításának átváltása",
|
||||
"muteEveryone": "Mindenki elnémítása",
|
||||
"muteEveryonesVideoStream": "Mindenki videójának leállítása",
|
||||
"noiseSuppression": "Zajcsökkentés",
|
||||
"participants": "Résztvevők",
|
||||
"pip": "Kép és képben mód átváltása",
|
||||
"privateMessage": "Privát üzenet küldése",
|
||||
"profile": "Adja meg a profilját",
|
||||
"raiseHand": "Kéz felemelésének átváltása",
|
||||
"recording": "Felvétel átváltása",
|
||||
"remoteMute": "Résztvevők némítása",
|
||||
"security": "Biztonsági Beállítások",
|
||||
"shareRoom": "Valaki meghívása",
|
||||
"shareYourScreen": "Képernyőmegosztás átváltása",
|
||||
"shareaudio": "Hang megosztása",
|
||||
"sharedvideo": "Videó megosztásának átváltása",
|
||||
"shortcuts": "Gyorsbillentyűk átváltása",
|
||||
"show": "Megjelenítés a színpadon",
|
||||
"silence": "Néma",
|
||||
"speakerStats": "Beszélő statisztika átváltása",
|
||||
"surprised": "Meglepett",
|
||||
"tileView": "Mozaikos nézet átváltása",
|
||||
"toggleCamera": "Kamera átváltása",
|
||||
"toggleFilmstrip": "Filmszalag átváltása",
|
||||
@@ -639,13 +899,18 @@
|
||||
"audioOnlyOff": "Alacsony sávszélességű mód letiltása",
|
||||
"audioOnlyOn": "Alacsony sávszélességű mód engedélyezése",
|
||||
"audioRoute": "Hangeszköz kijelölése",
|
||||
"audioSettings": "Hangbeállítások",
|
||||
"authenticate": "Hitelesítés",
|
||||
"boo": "Szomorú",
|
||||
"callQuality": "Videominőség kezelése",
|
||||
"chat": "Csevegés megnyitása / bezárása",
|
||||
"clap": "Taps",
|
||||
"closeChat": "Csevegés bezárása",
|
||||
"disableReactionSounds": "Kikapcsolhatja a reakcióhangokat a Meeting-en",
|
||||
"documentClose": "Megosztott dokumentum bezárása",
|
||||
"documentOpen": "Megosztott dokumentum megnyitása",
|
||||
"download": "Alkalmazás letöltése",
|
||||
"embedMeeting": "Meeting beágyazása",
|
||||
"enterFullScreen": "Teljes képernyős megtekintés",
|
||||
"enterTileView": "Mozaikos nézet indítása",
|
||||
"exitFullScreen": "Kilépés a teljes képernyőből",
|
||||
@@ -654,10 +919,14 @@
|
||||
"hangup": "Kilépés",
|
||||
"help": "Súgó",
|
||||
"invite": "Személyek meghívása",
|
||||
"joinBreakoutRoom": "Csatlakozás a pihenőszobához",
|
||||
"laugh": "Nevetés",
|
||||
"leaveBreakoutRoom": "Pihenőszoba elhagyása",
|
||||
"like": "Hüvelykujj fel",
|
||||
"login": "Bejelentkezés",
|
||||
"logout": "Kijelentkezés",
|
||||
"lowerYourHand": "Kéz leengedése",
|
||||
"moreActions": "További műveltek",
|
||||
"moreActions": "További műveletek",
|
||||
"moreOptions": "További beállítások",
|
||||
"mute": "Némítás / Visszahangosítás",
|
||||
"muteEveryone": "Mindenki elnémítása",
|
||||
@@ -666,28 +935,42 @@
|
||||
"noAudioSignalDialInDesc": "Be is tárcsázhat:",
|
||||
"noAudioSignalDialInLinkDesc": "Betárcsázási számok",
|
||||
"noAudioSignalTitle": "Nincs bemenet a mikrofonjáról!",
|
||||
"noiseSuppression": "Zajcsökkentés",
|
||||
"noisyAudioInputDesc": "Úgy tűnik, hogy ez a mikrofon zajos. Le kellene némítani vagy cserélni az eszközt.",
|
||||
"noisyAudioInputTitle": "Zajosnak tűnik a mikrofonja!",
|
||||
"openChat": "Csevegés megnyitása",
|
||||
"participants": "Résztvevők",
|
||||
"pip": "Belépés kép a képben módba",
|
||||
"privateMessage": "Privát üzenet küldése",
|
||||
"profile": "Adja meg a profilját",
|
||||
"raiseHand": "Kéz felemelése / leengedése",
|
||||
"raiseYourHand": "Kéz felemelése",
|
||||
"reactionBoo": "Boo reakció küldése",
|
||||
"reactionClap": "Tapsolás reakció küldése",
|
||||
"reactionLaugh": "Nevetés reakció küldése",
|
||||
"reactionLike": "Hüvelykujj fel reakció küldése",
|
||||
"reactionSilence": "Néma arc reakció küldése",
|
||||
"reactionSurprised": "Meglepett reakció küldése",
|
||||
"security": "Biztonsági Beállítások",
|
||||
"selectBackground": "Háttér beállítása",
|
||||
"shareRoom": "Valaki meghívása",
|
||||
"shareaudio": "Hang megosztása",
|
||||
"sharedvideo": "Videó megosztása",
|
||||
"shortcuts": "Gyorsbillentyűk megtekintése",
|
||||
"silence": "Néma",
|
||||
"speakerStats": "Beszélő statisztika",
|
||||
"startScreenSharing": "Képernyőmegosztás kezdése",
|
||||
"startSubtitles": "Feliratok kezdése",
|
||||
"startvideoblur": "Háttér elhomályosítása",
|
||||
"stopScreenSharing": "Képernyőmegosztás leállítása",
|
||||
"stopSharedVideo": "Videó leállítása",
|
||||
"stopSharedVideo": "Kamera leállítása",
|
||||
"stopSubtitles": "Felirat leállítása",
|
||||
"stopvideoblur": "Háttér elhomályosításának letiltása",
|
||||
"surprised": "Meglepett",
|
||||
"talkWhileMutedPopup": "Úgy tűnik beszélni szeretne, de le van némítva.",
|
||||
"tileViewToggle": "Mozaikos nézet átváltása",
|
||||
"toggleCamera": "Kamera átváltása",
|
||||
"videoSettings": "Videóbeállítások",
|
||||
"videomute": "Kamera indítása / leállítása"
|
||||
},
|
||||
"transcribing": {
|
||||
@@ -725,12 +1008,15 @@
|
||||
"pending": "{{displayName}} -t meghívta"
|
||||
},
|
||||
"videoStatus": {
|
||||
"adjustFor": "Igazítsa a legjobb:",
|
||||
"audioOnly": "CsH",
|
||||
"audioOnlyExpanded": "Jelenleg az alacsony sávszélességű mód az aktív, vagyis csak hangot lehet fogadni és képernyőmegosztást.",
|
||||
"bestPerformance": "Teljesítményhez",
|
||||
"callQuality": "Videominőség",
|
||||
"hd": "MF",
|
||||
"hdTooltip": "Magas felbontású videó megtekintése",
|
||||
"highDefinition": "Magas felbontású",
|
||||
"highestQuality": "Minőséghez",
|
||||
"labelTooiltipNoVideo": "Nincs videó",
|
||||
"labelTooltipAudioOnly": "Alacsony sávszélességű mód aktiválva",
|
||||
"ld": "AF",
|
||||
@@ -738,6 +1024,7 @@
|
||||
"lowDefinition": "Alacsony felbontású",
|
||||
"onlyAudioAvailable": "„Csak hang” mód elérhető",
|
||||
"onlyAudioSupported": "Csak a hang támogatott ebben a böngészőben.",
|
||||
"performanceSettings": "Teljesítménybeállítások",
|
||||
"sd": "SF",
|
||||
"sdTooltip": "Szabványos felbontású videó megtekintése",
|
||||
"standardDefinition": "Szabványos felbontású"
|
||||
@@ -745,7 +1032,10 @@
|
||||
"videothumbnail": {
|
||||
"domute": "Némítás",
|
||||
"domuteOthers": "Mindenki más elnémítása",
|
||||
"domuteVideoOfOthers": "Mindenki más kamerájának letiltása",
|
||||
"flip": "Tükrözés",
|
||||
"grantModerator": "Moderátori jogok megadása",
|
||||
"hideSelfView": "Saját kép elrejtése",
|
||||
"kick": "Kirúgás",
|
||||
"moderator": "Moderátor",
|
||||
"mute": "A résztvevő le van némítva",
|
||||
@@ -754,6 +1044,29 @@
|
||||
"show": "Megjelenítés a színpadon",
|
||||
"videomute": "A résztvevő leállította a kameráját"
|
||||
},
|
||||
"virtualBackground": {
|
||||
"addBackground": "Háttér hozzáadása",
|
||||
"apply": "Alkalmaz",
|
||||
"backgroundEffectError": "Hiba a háttér effekt hozzáadásnál.",
|
||||
"blur": "Elmosódott",
|
||||
"deleteImage": "Delete image",
|
||||
"desktopShare": "Asztal megosztása",
|
||||
"desktopShareError": "Nem lehet asztalt megosztani",
|
||||
"image1": "Tengerpart",
|
||||
"image2": "Fehér semleges fal",
|
||||
"image3": "Fehér üres szoba",
|
||||
"image4": "Fekete állólámpa",
|
||||
"image5": "Hegy",
|
||||
"image6": "Erdő",
|
||||
"image7": "Napfelkelte",
|
||||
"none": "Nincs",
|
||||
"pleaseWait": "Kérjük várjon...",
|
||||
"removeBackground": "Háttér eltávolítása",
|
||||
"slightBlur": "Enyhén elmosódott",
|
||||
"title": "Virtuális háttérképek",
|
||||
"uploadedImage": "Feltöltött kép {{index}}"
|
||||
},
|
||||
"volumeSlider": "Hangerő szabályzó",
|
||||
"welcomepage": {
|
||||
"accessibilityLabel": {
|
||||
"join": "Koppintson a csatlakozáshoz",
|
||||
@@ -771,17 +1084,20 @@
|
||||
"getHelp": "Segítség kérése",
|
||||
"go": "Indítás",
|
||||
"goSmall": "Indítás",
|
||||
"headerSubtitle": "Biztonságos és magas színvonalú konferenciák",
|
||||
"info": "Információ",
|
||||
"jitsiOnMobile": "Jitsi Mobil – töltse le az app-ot, és indítson megbeszélést bárhonnan",
|
||||
"join": "LÉTREHOZ /HOZZÁAD",
|
||||
"privacy": "Adatvédelem",
|
||||
"recentList": "Legutóbbi",
|
||||
"recentListDelete": "Törlés",
|
||||
"recentListDelete": "Lista törlés",
|
||||
"recentListEmpty": "A legutóbbi lista jelenleg üres. Csevegjen a csapattal és minden előző értekezlet itt lesz megtalálható.",
|
||||
"reducedUIText": "Üdvözlet a {{app}} programban!",
|
||||
"roomNameAllowedChars": "Az értekezlet neve nem tartalmazhatja a következő karaktereket: ?, &, :, ', \", %, #.",
|
||||
"roomname": "Adja meg a szoba nevét",
|
||||
"roomnameHint": "Adja meg a kívánt nevet vagy URL-t, amelyhez csatlakozni szeretne. Bármiképp elnevezheti, csak ossza meg az értekezlet résztvevőivel, hogy ők ugyanezt a nevet tudják majd megadni.",
|
||||
"sendFeedback": "Visszajelzés küldése",
|
||||
"startMeeting": "Csatlakozás",
|
||||
"terms": "Feltételek",
|
||||
"title": "Biztonságos, maradéktalanul felszerelt és teljesen ingyenes videokonferencia"
|
||||
}
|
||||
|
||||
@@ -1,791 +0,0 @@
|
||||
{
|
||||
"addPeople": {
|
||||
"add": "Undang",
|
||||
"countryNotSupported": "Negara ini belum tersedia.",
|
||||
"countryReminder": "Memanggil di luar negara AS? Pastikan dengan menggunakan kode negara!",
|
||||
"disabled": "Kamu tidak dapat mengundang.",
|
||||
"failedToAdd": "Gagal menambahkan peserta",
|
||||
"footerText": "Panggilan keluar di-nonaktifkan.",
|
||||
"loading": "Sedang mencari orang dan nomor telepon.",
|
||||
"loadingNumber": "Memvalidasi nomor telepon",
|
||||
"loadingPeople": "Mencari orang untuk diundang",
|
||||
"noResults": "Tidak ada pencarian yang cocok.",
|
||||
"noValidNumbers": "Masukkan nomor telepon yang benar.",
|
||||
"searchNumbers": "Mencari nomor telepon",
|
||||
"searchPeople": "Mencari orang",
|
||||
"searchPeopleAndNumbers": "Cari orang beserta nomor teleponnya",
|
||||
"telephone": "Telepon: {{number}}",
|
||||
"title": "Undang orang-orang ke sini."
|
||||
},
|
||||
"audioDevices": {
|
||||
"bluetooth": "Bluetooth",
|
||||
"headphones": "Headphones",
|
||||
"none": "Perangkat suara tidak tersedia",
|
||||
"phone": "Telepon",
|
||||
"speaker": "Pengeras suara"
|
||||
},
|
||||
"audioOnly": {
|
||||
"audioOnly": "Suara saja"
|
||||
},
|
||||
"calendarSync": {
|
||||
"addMeetingURL": "Buat link pertemuan",
|
||||
"confirmAddLink": "Tambahkan link Jitsi pada event ini?",
|
||||
"error": {
|
||||
"appConfiguration": "Ada konfigurasi yang tidak tepat.",
|
||||
"generic": "Kesalahan terjadi. Cek pengaturan atau coba lakukan refresh.",
|
||||
"notSignedIn": "Kesalahan berkaitan dengan autentikasi pada event. Cek pengaturan dan coba lagi"
|
||||
},
|
||||
"join": "Gabung",
|
||||
"joinTooltip": "Gabung di pertemuan",
|
||||
"nextMeeting": "Pertemuan Berikutnya",
|
||||
"noEvents": "Belum ada event tersedia.",
|
||||
"ongoingMeeting": "Pertemuan yang sedang berjalan",
|
||||
"permissionButton": "Buka Pengaturan",
|
||||
"permissionMessage": "Setelan permisi diperlukan untuk melihat pertemuan.",
|
||||
"refresh": "Muat ulang",
|
||||
"today": "Hari ini"
|
||||
},
|
||||
"chat": {
|
||||
"error": "Error: your message was not sent. Reason: {{error}}",
|
||||
"fieldPlaceHolder": "Type your message here",
|
||||
"messageTo": "Private message to {{recipient}}",
|
||||
"messagebox": "Type a message",
|
||||
"nickname": {
|
||||
"popover": "Choose a nickname",
|
||||
"title": "Enter a nickname to use chat",
|
||||
"titleWithPolls": "Enter a nickname to use chat"
|
||||
},
|
||||
"noMessagesMessage": "There are no messages in the meeting yet. Start a conversation here!",
|
||||
"privateNotice": "Private message to {{recipient}}",
|
||||
"sendButton": "Kirim",
|
||||
"title": "Chat",
|
||||
"titleWithPolls": "Chat",
|
||||
"you": "you"
|
||||
},
|
||||
"chromeExtensionBanner": {
|
||||
"buttonText": "Install Chrome Extension",
|
||||
"dontShowAgain": "Don’t show me this again",
|
||||
"installExtensionText": "Install the extension for Google Calendar and Office 365 integration"
|
||||
},
|
||||
"connectingOverlay": {
|
||||
"joiningRoom": "Connecting you to your meeting..."
|
||||
},
|
||||
"connection": {
|
||||
"ATTACHED": "Attached",
|
||||
"AUTHENTICATING": "Authenticating",
|
||||
"AUTHFAIL": "Authentication failed",
|
||||
"CONNECTED": "Connected",
|
||||
"CONNECTING": "Connecting",
|
||||
"CONNFAIL": "Connection failed",
|
||||
"DISCONNECTED": "Disconnected",
|
||||
"DISCONNECTING": "Disconnecting",
|
||||
"ERROR": "Error",
|
||||
"FETCH_SESSION_ID": "Obtaining session-id...",
|
||||
"GET_SESSION_ID_ERROR": "Get session-id error: {{code}}",
|
||||
"GOT_SESSION_ID": "Obtaining session-id... Done",
|
||||
"LOW_BANDWIDTH": "Video for {{displayName}} has been turned off to save bandwidth"
|
||||
},
|
||||
"connectionindicator": {
|
||||
"address": "Address:",
|
||||
"bandwidth": "Estimated bandwidth:",
|
||||
"bitrate": "Bitrate:",
|
||||
"bridgeCount": "Server count: ",
|
||||
"connectedTo": "Connected to:",
|
||||
"framerate": "Frame rate:",
|
||||
"less": "Show less",
|
||||
"localaddress": "Local address:",
|
||||
"localaddress_plural": "Local addresses:",
|
||||
"localport": "Local port:",
|
||||
"localport_plural": "Local ports:",
|
||||
"more": "Show more",
|
||||
"packetloss": "Packet loss:",
|
||||
"quality": {
|
||||
"good": "Good",
|
||||
"inactive": "Inactive",
|
||||
"lost": "Lost",
|
||||
"nonoptimal": "Nonoptimal",
|
||||
"poor": "Poor"
|
||||
},
|
||||
"remoteaddress": "Remote address:",
|
||||
"remoteaddress_plural": "Remote addresses:",
|
||||
"remoteport": "Remote port:",
|
||||
"remoteport_plural": "Remote ports:",
|
||||
"resolution": "Resolution:",
|
||||
"status": "Connection:",
|
||||
"transport": "Transport:",
|
||||
"transport_plural": "Transports:"
|
||||
},
|
||||
"dateUtils": {
|
||||
"earlier": "Earlier",
|
||||
"today": "Today",
|
||||
"yesterday": "Yesterday"
|
||||
},
|
||||
"deepLinking": {
|
||||
"appNotInstalled": "You need the {{app}} mobile app to join this meeting on your phone.",
|
||||
"description": "Nothing happened? We tried launching your meeting in the {{app}} desktop app. Try again or launch it in the {{app}} web app.",
|
||||
"descriptionWithoutWeb": "Nothing happened? We tried launching your meeting in the {{app}} desktop app.",
|
||||
"downloadApp": "Download the app",
|
||||
"launchWebButton": "Launch in web",
|
||||
"openApp": "Continue to the app",
|
||||
"title": "Launching your meeting in {{app}}...",
|
||||
"tryAgainButton": "Try again in desktop"
|
||||
},
|
||||
"defaultLink": "e.g. {{url}}",
|
||||
"defaultNickname": "ex. Jane Pink",
|
||||
"deviceError": {
|
||||
"cameraError": "Failed to access your camera",
|
||||
"cameraPermission": "Error obtaining camera permission",
|
||||
"microphoneError": "Failed to access your microphone",
|
||||
"microphonePermission": "Error obtaining microphone permission"
|
||||
},
|
||||
"deviceSelection": {
|
||||
"noPermission": "Permission not granted",
|
||||
"previewUnavailable": "Preview unavailable",
|
||||
"selectADevice": "Select a device",
|
||||
"testAudio": "Play a test sound"
|
||||
},
|
||||
"dialOut": {
|
||||
"statusMessage": "is now {{status}}"
|
||||
},
|
||||
"dialog": {
|
||||
"Back": "Back",
|
||||
"Cancel": "Cancel",
|
||||
"IamHost": "I am the host",
|
||||
"Ok": "Ok",
|
||||
"Remove": "Remove",
|
||||
"Share": "Share",
|
||||
"Submit": "Submit",
|
||||
"WaitForHostMsg": "The conference has not yet started. If you are the host then please authenticate. Otherwise, please wait for the host to arrive.",
|
||||
"WaitingForHost": "Waiting for the host ...",
|
||||
"Yes": "Yes",
|
||||
"accessibilityLabel": {
|
||||
"liveStreaming": "Live Stream"
|
||||
},
|
||||
"allow": "Allow",
|
||||
"alreadySharedVideoMsg": "Another participant is already sharing a video. This conference allows only one shared video at a time.",
|
||||
"alreadySharedVideoTitle": "Only one shared video is allowed at a time",
|
||||
"applicationWindow": "Application window",
|
||||
"cameraConstraintFailedError": "Your camera does not satisfy some of the required constraints.",
|
||||
"cameraNotFoundError": "Camera was not found.",
|
||||
"cameraNotSendingData": "We are unable to access your camera. Please check if another application is using this device, select another device from the settings menu or try to reload the application.",
|
||||
"cameraNotSendingDataTitle": "Unable to access camera",
|
||||
"cameraPermissionDeniedError": "You have not granted permission to use your camera. You can still join the conference but others won't see you. Use the camera button in the address bar to fix this.",
|
||||
"cameraUnknownError": "Cannot use camera for an unknown reason.",
|
||||
"cameraUnsupportedResolutionError": "Your camera does not support required video resolution.",
|
||||
"close": "Close",
|
||||
"conferenceDisconnectMsg": "You may want to check your network connection. Reconnecting in {{seconds}} sec...",
|
||||
"conferenceDisconnectTitle": "You have been disconnected.",
|
||||
"conferenceReloadMsg": "We're trying to fix this. Reconnecting in {{seconds}} sec...",
|
||||
"conferenceReloadTitle": "Unfortunately, something went wrong.",
|
||||
"confirm": "Confirm",
|
||||
"confirmNo": "No",
|
||||
"confirmYes": "Yes",
|
||||
"connectError": "Oops! Something went wrong and we couldn't connect to the conference.",
|
||||
"connectErrorWithMsg": "Oops! Something went wrong and we couldn't connect to the conference: {{msg}}",
|
||||
"connecting": "Connecting",
|
||||
"contactSupport": "Contact support",
|
||||
"copy": "Copy",
|
||||
"dismiss": "Dismiss",
|
||||
"displayNameRequired": "Hi! What’s your name?",
|
||||
"done": "Done",
|
||||
"enterDisplayName": "Enter your name here",
|
||||
"error": "Error",
|
||||
"externalInstallationMsg": "You need to install our desktop sharing extension.",
|
||||
"externalInstallationTitle": "Extension required",
|
||||
"goToStore": "Go to the webstore",
|
||||
"gracefulShutdown": "Our service is currently down for maintenance. Please try again later.",
|
||||
"incorrectPassword": "Incorrect username or password",
|
||||
"incorrectRoomLockPassword": "Incorrect password",
|
||||
"inlineInstallExtension": "Install now",
|
||||
"inlineInstallationMsg": "You need to install our desktop sharing extension.",
|
||||
"internalError": "Oops! Something went wrong. The following error occurred: {{error}}",
|
||||
"internalErrorTitle": "Internal error",
|
||||
"kickMessage": "You can contact {{participantDisplayName}} for more details.",
|
||||
"kickParticipantButton": "Kick",
|
||||
"kickParticipantDialog": "Are you sure you want to kick this participant?",
|
||||
"kickParticipantTitle": "Kick this participant?",
|
||||
"kickTitle": "Ouch! {{participantDisplayName}} kicked you out of the meeting",
|
||||
"liveStreaming": "Live Streaming",
|
||||
"liveStreamingDisabledForGuestTooltip": "Guests can't start live streaming.",
|
||||
"liveStreamingDisabledTooltip": "Start live stream disabled.",
|
||||
"lockMessage": "Failed to lock the conference.",
|
||||
"lockRoom": "Add meeting $t(lockRoomPasswordUppercase)",
|
||||
"lockTitle": "Lock failed",
|
||||
"logoutQuestion": "Are you sure you want to logout and stop the conference?",
|
||||
"logoutTitle": "Logout",
|
||||
"maxUsersLimitReached": "The limit for maximum number of participants has been reached. The conference is full. Please contact the meeting owner or try again later!",
|
||||
"maxUsersLimitReachedTitle": "Maximum participants limit reached",
|
||||
"micConstraintFailedError": "Your microphone does not satisfy some of the required constraints.",
|
||||
"micNotFoundError": "Microphone was not found.",
|
||||
"micNotSendingData": "Go to your computer's settings to unmute your mic and adjust its level",
|
||||
"micNotSendingDataTitle": "Your mic is muted by your system settings",
|
||||
"micPermissionDeniedError": "You have not granted permission to use your microphone. You can still join the conference but others won't hear you. Use the camera button in the address bar to fix this.",
|
||||
"micUnknownError": "Cannot use microphone for an unknown reason.",
|
||||
"muteEveryoneDialog": "Are you sure you want to mute everyone? You won't be able to unmute them, but they can unmute themselves at any time.",
|
||||
"muteEveryoneElseDialog": "Once muted, you won't be able to unmute them, but they can unmute themselves at any time.",
|
||||
"muteEveryoneElseTitle": "Mute everyone except {{whom}}?",
|
||||
"muteEveryoneSelf": "yourself",
|
||||
"muteEveryoneStartMuted": "Everyone starts muted from now on",
|
||||
"muteEveryoneTitle": "Mute everyone?",
|
||||
"muteParticipantBody": "You won't be able to unmute them, but they can unmute themselves at any time.",
|
||||
"muteParticipantButton": "Mute",
|
||||
"muteParticipantDialog": "Are you sure you want to mute this participant? You won't be able to unmute them, but they can unmute themselves at any time.",
|
||||
"muteParticipantTitle": "Mute this participant?",
|
||||
"passwordLabel": "The meeting has been locked by a participant. Please enter the $t(lockRoomPassword) to join.",
|
||||
"passwordNotSupported": "Setting a meeting $t(lockRoomPassword) is not supported.",
|
||||
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) not supported",
|
||||
"passwordRequired": "$t(lockRoomPasswordUppercase) required",
|
||||
"popupError": "Your browser is blocking pop-up windows from this site. Please enable pop-ups in your browser's security settings and try again.",
|
||||
"popupErrorTitle": "Pop-up blocked",
|
||||
"recording": "Recording",
|
||||
"recordingDisabledForGuestTooltip": "Guests can't start recordings.",
|
||||
"recordingDisabledTooltip": "Start recording disabled.",
|
||||
"rejoinNow": "Rejoin now",
|
||||
"remoteControlAllowedMessage": "{{user}} accepted your remote control request!",
|
||||
"remoteControlDeniedMessage": "{{user}} rejected your remote control request!",
|
||||
"remoteControlErrorMessage": "An error occurred while trying to request remote control permissions from {{user}}!",
|
||||
"remoteControlRequestMessage": "Will you allow {{user}} to remotely control your desktop?",
|
||||
"remoteControlShareScreenWarning": "Note that if you press \"Allow\" you will share your screen!",
|
||||
"remoteControlStopMessage": "The remote control session ended!",
|
||||
"remoteControlTitle": "Remote desktop control",
|
||||
"removePassword": "Remove $t(lockRoomPassword)",
|
||||
"removeSharedVideoMsg": "Are you sure you would like to remove your shared video?",
|
||||
"removeSharedVideoTitle": "Remove shared video",
|
||||
"reservationError": "Reservation system error",
|
||||
"reservationErrorMsg": "Error code: {{code}}, message: {{msg}}",
|
||||
"retry": "Retry",
|
||||
"screenSharingAudio": "Share audio",
|
||||
"screenSharingFailedToInstall": "Oops! Your screen sharing extension failed to install.",
|
||||
"screenSharingFailedToInstallTitle": "Screen sharing extension failed to install",
|
||||
"screenSharingFirefoxPermissionDeniedError": "Something went wrong while we were trying to share your screen. Please make sure that you have given us permission to do so. ",
|
||||
"screenSharingFirefoxPermissionDeniedTitle": "Oops! We weren’t able to start screen sharing!",
|
||||
"screenSharingPermissionDeniedError": "Oops! Something went wrong with your screen sharing extension permissions. Please reload and try again.",
|
||||
"sendPrivateMessage": "You recently received a private message. Did you intend to reply to that privately, or you want to send your message to the group?",
|
||||
"sendPrivateMessageCancel": "Send to the group",
|
||||
"sendPrivateMessageOk": "Send privately",
|
||||
"sendPrivateMessageTitle": "Send privately?",
|
||||
"serviceUnavailable": "Service unavailable",
|
||||
"sessTerminated": "Call terminated",
|
||||
"shareVideoLinkError": "Please provide a correct link.",
|
||||
"shareVideoTitle": "Share a video",
|
||||
"shareYourScreen": "Share your screen",
|
||||
"shareYourScreenDisabled": "Screen sharing disabled.",
|
||||
"shareYourScreenDisabledForGuest": "Guests can't screen share.",
|
||||
"startLiveStreaming": "Start live stream",
|
||||
"startRecording": "Start recording",
|
||||
"startRemoteControlErrorMessage": "An error occurred while trying to start the remote control session!",
|
||||
"stopLiveStreaming": "Stop live stream",
|
||||
"stopRecording": "Stop recording",
|
||||
"stopRecordingWarning": "Are you sure you would like to stop the recording?",
|
||||
"stopStreamingWarning": "Are you sure you would like to stop the live streaming?",
|
||||
"streamKey": "Live stream key",
|
||||
"thankYou": "Thank you for using {{appName}}!",
|
||||
"token": "token",
|
||||
"tokenAuthFailed": "Sorry, you're not allowed to join this call.",
|
||||
"tokenAuthFailedTitle": "Authentication failed",
|
||||
"transcribing": "Transcribing",
|
||||
"unlockRoom": "Remove meeting $t(lockRoomPassword)",
|
||||
"userPassword": "user password",
|
||||
"yourEntireScreen": "Your entire screen"
|
||||
},
|
||||
"documentSharing": {
|
||||
"title": "Shared Document"
|
||||
},
|
||||
"feedback": {
|
||||
"average": "Average",
|
||||
"bad": "Bad",
|
||||
"detailsLabel": "Tell us more about it.",
|
||||
"good": "Good",
|
||||
"rateExperience": "Rate your meeting experience",
|
||||
"veryBad": "Very Bad",
|
||||
"veryGood": "Very Good"
|
||||
},
|
||||
"helpView": {
|
||||
"title": "Help centre"
|
||||
},
|
||||
"incomingCall": {
|
||||
"answer": "Answer",
|
||||
"audioCallTitle": "Incoming call",
|
||||
"decline": "Dismiss",
|
||||
"productLabel": "from Jitsi Meet",
|
||||
"videoCallTitle": "Incoming video call"
|
||||
},
|
||||
"info": {
|
||||
"accessibilityLabel": "Show info",
|
||||
"addPassword": "Add $t(lockRoomPassword)",
|
||||
"cancelPassword": "Cancel $t(lockRoomPassword)",
|
||||
"conferenceURL": "Link:",
|
||||
"country": "Country",
|
||||
"dialANumber": "To join your meeting, dial one of these numbers and then enter the pin.",
|
||||
"dialInConferenceID": "PIN:",
|
||||
"dialInNotSupported": "Sorry, dialing in is currently not supported.",
|
||||
"dialInNumber": "Dial-in:",
|
||||
"dialInSummaryError": "Error fetching dial-in info now. Please try again later.",
|
||||
"dialInTollFree": "Toll Free",
|
||||
"genericError": "Whoops, something went wrong.",
|
||||
"inviteLiveStream": "To view the live stream of this meeting, click this link: {{url}}",
|
||||
"invitePhone": "To join by phone instead, tap this: {{number}},,{{conferenceID}}#\n",
|
||||
"invitePhoneAlternatives": "Looking for a different dial-in number?\nSee meeting dial-in numbers: {{url}}\n\n\nIf also dialing-in through a room phone, join without connecting to audio: {{silentUrl}}",
|
||||
"inviteURLFirstPartGeneral": "You are invited to join a meeting.",
|
||||
"inviteURLFirstPartPersonal": "{{name}} is inviting you to a meeting.\n",
|
||||
"inviteURLSecondPart": "\nJoin the meeting:\n{{url}}\n",
|
||||
"label": "Meeting info",
|
||||
"liveStreamURL": "Live stream:",
|
||||
"moreNumbers": "More numbers",
|
||||
"noNumbers": "No dial-in numbers.",
|
||||
"noPassword": "None",
|
||||
"noRoom": "No room was specified to dial-in into.",
|
||||
"numbers": "Dial-in Numbers",
|
||||
"password": "$t(lockRoomPasswordUppercase):",
|
||||
"title": "Share",
|
||||
"tooltip": "Share link and dial-in info for this meeting"
|
||||
},
|
||||
"inlineDialogFailure": {
|
||||
"msg": "We stumbled a bit.",
|
||||
"retry": "Try again",
|
||||
"support": "Support",
|
||||
"supportMsg": "If this keeps happening, reach out to"
|
||||
},
|
||||
"inviteDialog": {
|
||||
"alertText": "Failed to invite some participants.",
|
||||
"header": "Invite",
|
||||
"searchCallOnlyPlaceholder": "Enter phone number",
|
||||
"searchPeopleOnlyPlaceholder": "Search for participants",
|
||||
"searchPlaceholder": "Participant or phone number",
|
||||
"send": "Kirim"
|
||||
},
|
||||
"keyboardShortcuts": {
|
||||
"focusLocal": "Focus on your video",
|
||||
"focusRemote": "Focus on another person's video",
|
||||
"fullScreen": "View or exit full screen",
|
||||
"keyboardShortcuts": "Keyboard shortcuts",
|
||||
"localRecording": "Show or hide local recording controls",
|
||||
"mute": "Mute or unmute your microphone",
|
||||
"pushToTalk": "Push to talk",
|
||||
"raiseHand": "Raise or lower your hand",
|
||||
"showSpeakerStats": "Show speaker stats",
|
||||
"toggleChat": "Open or close the chat",
|
||||
"toggleFilmstrip": "Show or hide video thumbnails",
|
||||
"toggleScreensharing": "Switch between camera and screen sharing",
|
||||
"toggleShortcuts": "Show or hide keyboard shortcuts",
|
||||
"videoMute": "Start or stop your camera",
|
||||
"videoQuality": "Manage call quality"
|
||||
},
|
||||
"liveStreaming": {
|
||||
"busy": "We're working on freeing streaming resources. Please try again in a few minutes.",
|
||||
"busyTitle": "All streamers are currently busy",
|
||||
"changeSignIn": "Switch accounts.",
|
||||
"choose": "Choose a live stream",
|
||||
"chooseCTA": "Choose a streaming option. You're currently logged in as {{email}}.",
|
||||
"enterStreamKey": "Enter your YouTube live stream key here.",
|
||||
"error": "Live Streaming failed. Please try again.",
|
||||
"errorAPI": "An error occurred while accessing your YouTube broadcasts. Please try logging in again.",
|
||||
"errorLiveStreamNotEnabled": "Live Streaming is not enabled on {{email}}. Please enable live streaming or log into an account with live streaming enabled.",
|
||||
"expandedOff": "The live streaming has stopped",
|
||||
"expandedOn": "The meeting is currently being streamed to YouTube.",
|
||||
"expandedPending": "The live streaming is being started...",
|
||||
"failedToStart": "Live Streaming failed to start",
|
||||
"getStreamKeyManually": "We weren’t able to fetch any live streams. Try getting your live stream key from YouTube.",
|
||||
"googlePrivacyPolicy": "Google Privacy Policy",
|
||||
"invalidStreamKey": "Live stream key may be incorrect.",
|
||||
"off": "Live Streaming stopped",
|
||||
"offBy": "{{name}} stopped the live streaming",
|
||||
"on": "Live Streaming",
|
||||
"onBy": "{{name}} started the live streaming",
|
||||
"pending": "Starting Live Stream...",
|
||||
"serviceName": "Live Streaming service",
|
||||
"signIn": "Sign in with Google",
|
||||
"signInCTA": "Sign in or enter your live stream key from YouTube.",
|
||||
"signOut": "Sign out",
|
||||
"signedInAs": "You are currently signed in as:",
|
||||
"start": "Start a live stream",
|
||||
"streamIdHelp": "What's this?",
|
||||
"title": "Live Stream",
|
||||
"unavailableTitle": "Live Streaming unavailable",
|
||||
"youtubeTerms": "YouTube terms of services"
|
||||
},
|
||||
"localRecording": {
|
||||
"clientState": {
|
||||
"off": "Off",
|
||||
"on": "On",
|
||||
"unknown": "Unknown"
|
||||
},
|
||||
"dialogTitle": "Local Recording Controls",
|
||||
"duration": "Duration",
|
||||
"durationNA": "N/A",
|
||||
"encoding": "Encoding",
|
||||
"label": "LOR",
|
||||
"labelToolTip": "Local recording is engaged",
|
||||
"localRecording": "Local Recording",
|
||||
"me": "Me",
|
||||
"messages": {
|
||||
"engaged": "Local recording engaged.",
|
||||
"finished": "Recording session {{token}} finished. Please send the recorded file to the moderator.",
|
||||
"finishedModerator": "Recording session {{token}} finished. The recording of the local track has been saved. Please ask the other participants to submit their recordings.",
|
||||
"notModerator": "You are not the moderator. You cannot start or stop local recording."
|
||||
},
|
||||
"moderator": "Moderator",
|
||||
"no": "No",
|
||||
"participant": "Participant",
|
||||
"participantStats": "Participant Stats",
|
||||
"sessionToken": "Session Token",
|
||||
"start": "Start Recording",
|
||||
"stop": "Stop Recording",
|
||||
"yes": "Yes"
|
||||
},
|
||||
"lockRoomPassword": "password",
|
||||
"lockRoomPasswordUppercase": "Password",
|
||||
"lonelyMeetingExperience": {
|
||||
"button": "Invite others",
|
||||
"youAreAlone": "You are the only one in the meeting"
|
||||
},
|
||||
"me": "me",
|
||||
"notify": {
|
||||
"OldElectronAPPTitle": "Security vulnerability!",
|
||||
"connectedOneMember": "{{name}} joined the meeting",
|
||||
"connectedThreePlusMembers": "{{name}} and {{count}} others joined the meeting",
|
||||
"connectedTwoMembers": "{{first}} and {{second}} joined the meeting",
|
||||
"disconnected": "disconnected",
|
||||
"focus": "Conference focus",
|
||||
"focusFail": "{{component}} not available - retry in {{ms}} sec",
|
||||
"grantedTo": "Moderator rights granted to {{to}}!",
|
||||
"invitedOneMember": "{{name}} has been invited",
|
||||
"invitedThreePlusMembers": "{{name}} and {{count}} others have been invited",
|
||||
"invitedTwoMembers": "{{first}} and {{second}} have been invited",
|
||||
"kickParticipant": "{{kicked}} was kicked by {{kicker}}",
|
||||
"me": "Me",
|
||||
"moderator": "Moderator rights granted!",
|
||||
"muted": "You have started the conversation muted.",
|
||||
"mutedRemotelyDescription": "You can always unmute when you're ready to speak. Mute back when you're done to keep noise away from the meeting.",
|
||||
"mutedRemotelyTitle": "You have been muted by {{participantDisplayName}}!",
|
||||
"mutedTitle": "You're muted!",
|
||||
"newDeviceAction": "Use",
|
||||
"newDeviceAudioTitle": "New audio device detected",
|
||||
"newDeviceCameraTitle": "New camera detected",
|
||||
"oldElectronClientDescription1": "You appear to be using an old verion of the Jitsi Meet client which has known security vulnerabilities. Please make sure you update to our ",
|
||||
"oldElectronClientDescription2": "latest build",
|
||||
"oldElectronClientDescription3": " now!",
|
||||
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) removed by another participant",
|
||||
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) set by another participant",
|
||||
"raisedHand": "{{name}} would like to speak.",
|
||||
"somebody": "Somebody",
|
||||
"startSilentDescription": "Rejoin the meeting to enable audio",
|
||||
"startSilentTitle": "You joined with no audio output!",
|
||||
"suboptimalBrowserWarning": "We are afraid your meeting experience isn't going to be that great here. We are looking for ways to improve this, but until then please try using one of the <a href='{{recommendedBrowserPageLink}}' target='_blank'>fully supported browsers</a>.",
|
||||
"suboptimalExperienceTitle": "Browser Warning",
|
||||
"unmute": "Unmute"
|
||||
},
|
||||
"passwordDigitsOnly": "Up to {{number}} digits",
|
||||
"passwordSetRemotely": "set by another participant",
|
||||
"poweredby": "powered by",
|
||||
"presenceStatus": {
|
||||
"busy": "Busy",
|
||||
"calling": "Calling...",
|
||||
"connected": "Connected",
|
||||
"connecting": "Connecting...",
|
||||
"connecting2": "Connecting*...",
|
||||
"disconnected": "Disconnected",
|
||||
"expired": "Expired",
|
||||
"ignored": "Ignored",
|
||||
"initializingCall": "Initializing Call...",
|
||||
"invited": "Invited",
|
||||
"rejected": "Rejected",
|
||||
"ringing": "Ringing..."
|
||||
},
|
||||
"profile": {
|
||||
"setDisplayNameLabel": "Set your display name",
|
||||
"setEmailInput": "Enter email",
|
||||
"setEmailLabel": "Set your gravatar email",
|
||||
"title": "Profile"
|
||||
},
|
||||
"raisedHand": "Would like to speak",
|
||||
"recording": {
|
||||
"authDropboxText": "Upload to Dropbox",
|
||||
"availableSpace": "Available space: {{spaceLeft}} MB (approximately {{duration}} minutes of recording)",
|
||||
"beta": "BETA",
|
||||
"busy": "We're working on freeing recording resources. Please try again in a few minutes.",
|
||||
"busyTitle": "All recorders are currently busy",
|
||||
"error": "Recording failed. Please try again.",
|
||||
"expandedOff": "Recording has stopped",
|
||||
"expandedOn": "The meeting is currently being recorded.",
|
||||
"expandedPending": "Recording is being started...",
|
||||
"failedToStart": "Recording failed to start",
|
||||
"fileSharingdescription": "Share recording with meeting participants",
|
||||
"live": "LIVE",
|
||||
"loggedIn": "Logged in as {{userName}}",
|
||||
"off": "Recording stopped",
|
||||
"offBy": "{{name}} stopped the recording",
|
||||
"on": "Recording",
|
||||
"onBy": "{{name}} started the recording",
|
||||
"pending": "Preparing to record the meeting...",
|
||||
"rec": "REC",
|
||||
"serviceDescription": "Your recording will be saved by the recording service",
|
||||
"serviceName": "Recording service",
|
||||
"signIn": "Sign in",
|
||||
"signOut": "Sign out",
|
||||
"title": "Recording",
|
||||
"unavailable": "Oops! The {{serviceName}} is currently unavailable. We're working on resolving the issue. Please try again later.",
|
||||
"unavailableTitle": "Recording unavailable"
|
||||
},
|
||||
"sectionList": {
|
||||
"pullToRefresh": "Pull to refresh"
|
||||
},
|
||||
"settings": {
|
||||
"calendar": {
|
||||
"about": "The {{appName}} calendar integration is used to securely access your calendar so it can read upcoming events.",
|
||||
"disconnect": "Disconnect",
|
||||
"microsoftSignIn": "Sign in with Microsoft",
|
||||
"signedIn": "Currently accessing calendar events for {{email}}. Click the Disconnect button below to stop accessing calendar events.",
|
||||
"title": "Calendar"
|
||||
},
|
||||
"devices": "Devices",
|
||||
"followMe": "Everyone follows me",
|
||||
"language": "Language",
|
||||
"loggedIn": "Logged in as {{name}}",
|
||||
"microphones": "Microphones",
|
||||
"moderator": "Moderator",
|
||||
"more": "More",
|
||||
"name": "Name",
|
||||
"noDevice": "None",
|
||||
"selectAudioOutput": "Audio output",
|
||||
"selectCamera": "Camera",
|
||||
"selectMic": "Microphone",
|
||||
"speakers": "Speakers",
|
||||
"startAudioMuted": "Everyone starts muted",
|
||||
"startVideoMuted": "Everyone starts hidden",
|
||||
"title": "Settings"
|
||||
},
|
||||
"settingsView": {
|
||||
"advanced": "Advanced",
|
||||
"alertOk": "OK",
|
||||
"alertTitle": "Warning",
|
||||
"alertURLText": "The entered server URL is invalid",
|
||||
"buildInfoSection": "Build Information",
|
||||
"conferenceSection": "Conference",
|
||||
"disableCallIntegration": "Disable native call integration",
|
||||
"disableP2P": "Disable Peer-To-Peer mode",
|
||||
"displayName": "Display name",
|
||||
"email": "Email",
|
||||
"header": "Settings",
|
||||
"profileSection": "Profile",
|
||||
"serverURL": "Server URL",
|
||||
"showAdvanced": "Show advanced settings",
|
||||
"startWithAudioMuted": "Start with audio muted",
|
||||
"startWithVideoMuted": "Start with video muted",
|
||||
"version": "Version"
|
||||
},
|
||||
"share": {
|
||||
"dialInfoText": "\n\n=====\n\nJust want to dial in on your phone?\n\n{{defaultDialInNumber}}Click this link to see the dial in phone numbers for this meeting\n{{dialInfoPageUrl}}",
|
||||
"mainText": "Click the following link to join the meeting:\n{{roomUrl}}"
|
||||
},
|
||||
"speaker": "Speaker",
|
||||
"speakerStats": {
|
||||
"hours": "{{count}}h",
|
||||
"minutes": "{{count}}m",
|
||||
"name": "Name",
|
||||
"seconds": "{{count}}s",
|
||||
"speakerStats": "Speaker Stats",
|
||||
"speakerTime": "Speaker Time"
|
||||
},
|
||||
"startupoverlay": {
|
||||
"policyText": " ",
|
||||
"title": "{{app}} needs to use your microphone and camera."
|
||||
},
|
||||
"suspendedoverlay": {
|
||||
"rejoinKeyTitle": "Rejoin",
|
||||
"text": "Press the <i>Rejoin</i> button to reconnect.",
|
||||
"title": "Your video call was interrupted because this computer went to sleep."
|
||||
},
|
||||
"toolbar": {
|
||||
"Settings": "Settings",
|
||||
"accessibilityLabel": {
|
||||
"Settings": "Toggle settings",
|
||||
"audioOnly": "Toggle audio only",
|
||||
"audioRoute": "Select the sound device",
|
||||
"callQuality": "Manage video quality",
|
||||
"cc": "Toggle subtitles",
|
||||
"chat": "Toggle chat window",
|
||||
"document": "Toggle shared document",
|
||||
"download": "Download our apps",
|
||||
"feedback": "Leave feedback",
|
||||
"fullScreen": "Toggle full screen",
|
||||
"hangup": "Leave the call",
|
||||
"help": "Help",
|
||||
"invite": "Invite people",
|
||||
"kick": "Kick participant",
|
||||
"localRecording": "Toggle local recording controls",
|
||||
"lockRoom": "Toggle meeting password",
|
||||
"moreActions": "Toggle more actions menu",
|
||||
"moreActionsMenu": "More actions menu",
|
||||
"moreOptions": "Show more options",
|
||||
"mute": "Toggle mute audio",
|
||||
"muteEveryone": "Mute everyone",
|
||||
"pip": "Toggle Picture-in-Picture mode",
|
||||
"privateMessage": "Send private message",
|
||||
"profile": "Edit your profile",
|
||||
"raiseHand": "Toggle raise hand",
|
||||
"recording": "Toggle recording",
|
||||
"remoteMute": "Mute participant",
|
||||
"shareRoom": "Invite someone",
|
||||
"shareYourScreen": "Toggle screenshare",
|
||||
"sharedvideo": "Toggle video sharing",
|
||||
"shortcuts": "Toggle shortcuts",
|
||||
"show": "Show on stage",
|
||||
"speakerStats": "Toggle speaker statistics",
|
||||
"tileView": "Toggle tile view",
|
||||
"toggleCamera": "Toggle camera",
|
||||
"toggleFilmstrip": "Toggle filmstrip",
|
||||
"videoblur": "Toggle video blur",
|
||||
"videomute": "Toggle mute video"
|
||||
},
|
||||
"addPeople": "Add people to your call",
|
||||
"audioOnlyOff": "Disable low bandwidth mode",
|
||||
"audioOnlyOn": "Enable low bandwidth mode",
|
||||
"audioRoute": "Select the sound device",
|
||||
"authenticate": "Authenticate",
|
||||
"callQuality": "Manage video quality",
|
||||
"chat": "Open / Close chat",
|
||||
"closeChat": "Close chat",
|
||||
"documentClose": "Close shared document",
|
||||
"documentOpen": "Open shared document",
|
||||
"download": "Download our apps",
|
||||
"enterFullScreen": "View full screen",
|
||||
"enterTileView": "Enter tile view",
|
||||
"exitFullScreen": "Exit full screen",
|
||||
"exitTileView": "Exit tile view",
|
||||
"feedback": "Leave feedback",
|
||||
"hangup": "Leave",
|
||||
"help": "Help",
|
||||
"invite": "Invite people",
|
||||
"login": "Login",
|
||||
"logout": "Logout",
|
||||
"lowerYourHand": "Lower your hand",
|
||||
"moreActions": "More actions",
|
||||
"moreOptions": "More options",
|
||||
"mute": "Mute / Unmute",
|
||||
"muteEveryone": "Mute everyone",
|
||||
"noAudioSignalDesc": "If you did not purposely mute it from system settings or hardware, consider switching the device.",
|
||||
"noAudioSignalDescSuggestion": "If you did not purposely mute it from system settings or hardware, consider switching to the suggested device.",
|
||||
"noAudioSignalDialInDesc": "You can also dial-in using:",
|
||||
"noAudioSignalDialInLinkDesc": "Dial-in numbers",
|
||||
"noAudioSignalTitle": "There is no input coming from your mic!",
|
||||
"noisyAudioInputDesc": "It sounds like your microphone is making noise, please consider muting or changing the device.",
|
||||
"noisyAudioInputTitle": "Your microphone appears to be noisy!",
|
||||
"openChat": "Open chat",
|
||||
"pip": "Enter Picture-in-Picture mode",
|
||||
"privateMessage": "Send private message",
|
||||
"profile": "Edit your profile",
|
||||
"raiseHand": "Raise / Lower your hand",
|
||||
"raiseYourHand": "Raise your hand",
|
||||
"shareRoom": "Invite someone",
|
||||
"sharedvideo": "Share video",
|
||||
"shortcuts": "View shortcuts",
|
||||
"speakerStats": "Speaker stats",
|
||||
"startScreenSharing": "Start screen sharing",
|
||||
"startSubtitles": "Start subtitles",
|
||||
"startvideoblur": "Blur my background",
|
||||
"stopScreenSharing": "Stop screen sharing",
|
||||
"stopSharedVideo": "Stop video",
|
||||
"stopSubtitles": "Stop subtitles",
|
||||
"stopvideoblur": "Disable background blur",
|
||||
"talkWhileMutedPopup": "Trying to speak? You are muted.",
|
||||
"tileViewToggle": "Toggle tile view",
|
||||
"toggleCamera": "Toggle camera",
|
||||
"videomute": "Start / Stop camera"
|
||||
},
|
||||
"transcribing": {
|
||||
"ccButtonTooltip": "Start / Stop subtitles",
|
||||
"error": "Transcribing failed. Please try again.",
|
||||
"expandedLabel": "Transcribing is currently on",
|
||||
"failedToStart": "Transcribing failed to start",
|
||||
"labelToolTip": "The meeting is being transcribed",
|
||||
"off": "Transcribing stopped",
|
||||
"pending": "Preparing to transcribe the meeting...",
|
||||
"start": "Start showing subtitles",
|
||||
"stop": "Stop showing subtitles",
|
||||
"tr": "TR"
|
||||
},
|
||||
"userMedia": {
|
||||
"androidGrantPermissions": "Select <b><i>Allow</i></b> when your browser asks for permissions.",
|
||||
"chromeGrantPermissions": "Select <b><i>Allow</i></b> when your browser asks for permissions.",
|
||||
"edgeGrantPermissions": "Select <b><i>Yes</i></b> when your browser asks for permissions.",
|
||||
"electronGrantPermissions": "Please grant permissions to use your camera and microphone",
|
||||
"firefoxGrantPermissions": "Select <b><i>Share Selected Device</i></b> when your browser asks for permissions.",
|
||||
"iexplorerGrantPermissions": "Select <b><i>OK</i></b> when your browser asks for permissions.",
|
||||
"nwjsGrantPermissions": "Please grant permissions to use your camera and microphone",
|
||||
"operaGrantPermissions": "Select <b><i>Allow</i></b> when your browser asks for permissions.",
|
||||
"react-nativeGrantPermissions": "Select <b><i>Allow</i></b> when your browser asks for permissions.",
|
||||
"safariGrantPermissions": "Select <b><i>OK</i></b> when your browser asks for permissions."
|
||||
},
|
||||
"videoSIPGW": {
|
||||
"busy": "We're working on freeing resources. Please try again in a few minutes.",
|
||||
"busyTitle": "The Room service is currently busy",
|
||||
"errorAlreadyInvited": "{{displayName}} already invited",
|
||||
"errorInvite": "Conference not established yet. Please try again later.",
|
||||
"errorInviteFailed": "We're working on resolving the issue. Please try again later.",
|
||||
"errorInviteFailedTitle": "Inviting {{displayName}} failed",
|
||||
"errorInviteTitle": "Error inviting room",
|
||||
"pending": "{{displayName}} has been invited"
|
||||
},
|
||||
"videoStatus": {
|
||||
"audioOnly": "AUD",
|
||||
"audioOnlyExpanded": "You are in low bandwidth mode. In this mode you will receive only audio and screen sharing.",
|
||||
"callQuality": "Video Quality",
|
||||
"hd": "HD",
|
||||
"hdTooltip": "Viewing high definition video",
|
||||
"highDefinition": "High definition",
|
||||
"labelTooiltipNoVideo": "No video",
|
||||
"labelTooltipAudioOnly": "Low bandwidth mode enabled",
|
||||
"ld": "LD",
|
||||
"ldTooltip": "Viewing low definition video",
|
||||
"lowDefinition": "Low definition",
|
||||
"onlyAudioAvailable": "Only audio is available",
|
||||
"onlyAudioSupported": "We only support audio in this browser.",
|
||||
"sd": "SD",
|
||||
"sdTooltip": "Viewing standard definition video",
|
||||
"standardDefinition": "Standard definition"
|
||||
},
|
||||
"videothumbnail": {
|
||||
"domute": "Mute",
|
||||
"domuteOthers": "Mute everyone else",
|
||||
"flip": "Flip",
|
||||
"kick": "Kick out",
|
||||
"moderator": "Moderator",
|
||||
"mute": "Participant is muted",
|
||||
"muted": "Muted",
|
||||
"remoteControl": "Start / Stop remote control",
|
||||
"show": "Show on stage",
|
||||
"videomute": "Participant has stopped the camera"
|
||||
},
|
||||
"welcomepage": {
|
||||
"accessibilityLabel": {
|
||||
"join": "Tap to join",
|
||||
"roomname": "Enter room name"
|
||||
},
|
||||
"appDescription": "Go ahead, video chat with the whole team. In fact, invite everyone you know. {{app}} is a fully encrypted, 100% open source video conferencing solution that you can use all day, every day, for free — with no account needed.",
|
||||
"audioVideoSwitch": {
|
||||
"audio": "Voice",
|
||||
"video": "Video"
|
||||
},
|
||||
"calendar": "Calendar",
|
||||
"connectCalendarButton": "Connect your calendar",
|
||||
"connectCalendarText": "Connect your calendar to view all your meetings in {{app}}. Plus, add {{provider}} meetings to your calendar and start them with one click.",
|
||||
"enterRoomTitle": "Start a new meeting",
|
||||
"getHelp": "Get help",
|
||||
"go": "GO",
|
||||
"goSmall": "GO",
|
||||
"info": "Info",
|
||||
"join": "CREATE / JOIN",
|
||||
"privacy": "Privacy",
|
||||
"recentList": "Recent",
|
||||
"recentListDelete": "Delete",
|
||||
"recentListEmpty": "Your recent list is currently empty. Chat with your team and you will find all your recent meetings here.",
|
||||
"reducedUIText": "Welcome to {{app}}!",
|
||||
"roomNameAllowedChars": "Meeting name should not contain any of these characters: ?, &, :, ', \", %, #.",
|
||||
"roomname": "Enter room name",
|
||||
"roomnameHint": "Enter the name or URL of the room you want to join. You may make a name up, just let the people you are meeting know it so that they enter the same name.",
|
||||
"sendFeedback": "Send feedback",
|
||||
"terms": "Terms",
|
||||
"title": "Secure, fully featured, and completely free video conferencing"
|
||||
}
|
||||
}
|
||||
@@ -78,12 +78,12 @@
|
||||
},
|
||||
"carmode": {
|
||||
"actions": {
|
||||
"selectSoundDevice": "Scegli audio"
|
||||
"selectSoundDevice": "Scegli uscita audio"
|
||||
},
|
||||
"labels": {
|
||||
"buttonLabel": "Modalità Auto",
|
||||
"title": "Modalità Auto",
|
||||
"videoStopped": "Il tuo video è fermo"
|
||||
"videoStopped": "Il tuo video è disabilitato"
|
||||
}
|
||||
},
|
||||
"chat": {
|
||||
@@ -143,7 +143,7 @@
|
||||
"address": "Indirizzo:",
|
||||
"audio_ssrc": "Audio SSRC:",
|
||||
"bandwidth": "Banda stimata:",
|
||||
"bitrate": "Bitrate:",
|
||||
"bitrate": "Velocità:",
|
||||
"bridgeCount": "Conteggio server:",
|
||||
"codecs": "Codec (A/V): ",
|
||||
"connectedTo": "Connesso a:",
|
||||
@@ -278,13 +278,13 @@
|
||||
"internalError": "Ops! Qualcosa è andato storto. Questo è l'errore: {{error}}",
|
||||
"internalErrorTitle": "Errore interno",
|
||||
"kickMessage": "Puoi contattare {{participantDisplayName}} per maggiori dettagli.",
|
||||
"kickParticipantButton": "Escludi",
|
||||
"kickParticipantDialog": "Sei sicuro di voler escludere questo partecipante?",
|
||||
"kickParticipantTitle": "Escludi questo partecipante?",
|
||||
"kickTitle": "Escluso dalla riunione",
|
||||
"linkMeeting": "Link meeting",
|
||||
"linkMeetingTitle": "Link meeting to Salesforce",
|
||||
"liveStreaming": "Diretta",
|
||||
"kickParticipantButton": "Espelli",
|
||||
"kickParticipantDialog": "Sei sicuro di voler espellere questo partecipante?",
|
||||
"kickParticipantTitle": "Espelli questo partecipante?",
|
||||
"kickTitle": "Espulso dalla riunione",
|
||||
"linkMeeting": "Collega la riunione",
|
||||
"linkMeetingTitle": "Collega la riunione a Salesforce",
|
||||
"liveStreaming": "Diretta streaming",
|
||||
"liveStreamingDisabledBecauseOfActiveRecordingTooltip": "Impossibile durante la registrazione.",
|
||||
"localUserControls": "Controlli dell'utente locale",
|
||||
"lockMessage": "Impossibile bloccare la riunione.",
|
||||
@@ -306,21 +306,21 @@
|
||||
"moderationVideoLabel": "Permetti ai partecipanti di riattivare la videocamera",
|
||||
"muteEveryoneDialog": "I partecipanti possono riaccenderli in quasiasi momento.",
|
||||
"muteEveryoneDialogModerationOn": "I partecipanti possono fare richiesta di parlare in ogni momento.",
|
||||
"muteEveryoneElseDialog": "Una volta spenti i microfoni non potrai riattivarli, ma loro potranno farlo in qualsiasi momento.",
|
||||
"muteEveryoneElseTitle": "Spengo il microfono a tutti, eccetto a {{whom}}?",
|
||||
"muteEveryoneElsesVideoDialog": "Una volta spente le videocamere non potrai riaccenderle, ma ogni partecipante potrà farlo in ogni momento.",
|
||||
"muteEveryoneElsesVideoTitle": "Spengo tutte le videocamere, tranne a {{whom}}?",
|
||||
"muteEveryoneElseDialog": "Una volta spenti i microfoni non potrai riattivarli, ma ogni partecipante potrà farlo in qualsiasi momento.",
|
||||
"muteEveryoneElseTitle": "Spengo il microfono a tutti, tranne che a {{whom}}?",
|
||||
"muteEveryoneElsesVideoDialog": "Una volta spente le videocamere non potrai riaccenderle, ma ogni partecipante potrà farlo in qualsiasi momento.",
|
||||
"muteEveryoneElsesVideoTitle": "Spengo la videocamera a tutti, tranne che a {{whom}}?",
|
||||
"muteEveryoneSelf": "tu",
|
||||
"muteEveryoneStartMuted": "Tutti cominciano a microfono spento, d'adesso in avanti",
|
||||
"muteEveryoneTitle": "Spengo i microfoni a tutti?",
|
||||
"muteEveryonesVideoDialog": "Sei sicuro di voler spegnere le videocamere a tutti? Non potrai riaccenderle, ma ogni partecipante potrà farlo in ogni momento.",
|
||||
"muteEveryoneTitle": "Spengo il microfono a tutti?",
|
||||
"muteEveryonesVideoDialog": "Sei sicuro di voler spegnere le videocamere di tutti? Non potrai riaccenderle, ma ogni partecipante potrà farlo in qualsiasi momento.",
|
||||
"muteEveryonesVideoDialogModerationOn": "I partecipanti possono fare richiesta di trasmettere video in ogni momento.",
|
||||
"muteEveryonesVideoDialogOk": "Spegni",
|
||||
"muteEveryonesVideoTitle": "Vuoi spegnere le videocamere di tutti?",
|
||||
"muteEveryonesVideoTitle": "Spengo la videocamera a tutti?",
|
||||
"muteParticipantBody": "Non sarai in grado di riattivare il loro microfono, ma loro potranno riattivarlo in qualsiasi momento.",
|
||||
"muteParticipantButton": "Spegni audio",
|
||||
"muteParticipantButton": "Silenzia",
|
||||
"muteParticipantsVideoBody": "Una volta spenta la videocamera non potrai riaccenderla, ma lui potrà riattivarla in qualsiasi momento.",
|
||||
"muteParticipantsVideoBodyModerationOn": "Non potrai riaccendere le videocamere, né potranno loro.",
|
||||
"muteParticipantsVideoBodyModerationOn": "Non potrai riaccendere le videocamere, né loro potranno.",
|
||||
"muteParticipantsVideoButton": "Spegni video",
|
||||
"muteParticipantsVideoDialog": "Sei sicuro di voler spegnere la videocamera di questo partecipante? Lui potrà riattivarla in ogni momento.",
|
||||
"muteParticipantsVideoDialogModerationOn": "Are you sure you want to turn off this participant's camera? You won't be able to turn the camera back on and neither will they.",
|
||||
@@ -388,10 +388,10 @@
|
||||
"shareYourScreen": "Condividi schermo",
|
||||
"shareYourScreenDisabled": "Condivisione schermo disabilitata.",
|
||||
"sharedVideoDialogError": "Errore: URL non valido",
|
||||
"sharedVideoLinkPlaceholder": "Link YouTube o link video diretto",
|
||||
"sharedVideoLinkPlaceholder": "Link YouTube o link diretto, al video",
|
||||
"show": "Mostra",
|
||||
"start": "Avvia ",
|
||||
"startLiveStreaming": "Avvia diretta",
|
||||
"startLiveStreaming": "Avvia diretta streaming",
|
||||
"startRecording": "Inizia a registrare",
|
||||
"startRemoteControlErrorMessage": "Si è verificato un errore nel tentativo di avviare la sessione di controllo remoto!",
|
||||
"stopLiveStreaming": "Ferma la diretta streaming",
|
||||
@@ -592,8 +592,8 @@
|
||||
"nameField": "Scrivi il tuo nome",
|
||||
"notificationLobbyAccessDenied": "{{targetParticipantName}} è stato respinto da {{originParticipantName}}",
|
||||
"notificationLobbyAccessGranted": "{{targetParticipantName}} è stato autorizzato ad entrare da {{originParticipantName}}",
|
||||
"notificationLobbyDisabled": "La sala d'attesa è stata disattivata da {{originParticipantName}}",
|
||||
"notificationLobbyEnabled": "La sala d'attesa è stata attivata da {{originParticipantName}}",
|
||||
"notificationLobbyDisabled": "{{originParticipantName}} ha aggiunto la sala d'attesa alla riunione",
|
||||
"notificationLobbyEnabled": "{{originParticipantName}} ha tolto la sala d'attesa alla riunione",
|
||||
"notificationTitle": "Sala d'attesa",
|
||||
"passwordField": "Inserisci la password della riunione",
|
||||
"passwordJoinButton": "Entra",
|
||||
@@ -655,7 +655,7 @@
|
||||
"focusFail": "{{component}} non disponibile - riprovo tra {{ms}} sec",
|
||||
"gifsMenu": "GIPHY",
|
||||
"groupTitle": "Notifiche",
|
||||
"hostAskedUnmute": "Il moderatore ti dice di accendere il microfono",
|
||||
"hostAskedUnmute": "Il moderatore ti chiede di accendere il microfono",
|
||||
"invitedOneMember": "{{displayName}} è stato invitato",
|
||||
"invitedThreePlusMembers": "Hai invitato {{name}} e altri {{count}}",
|
||||
"invitedTwoMembers": "Hai invitato {{first}} e {{second}}",
|
||||
@@ -686,7 +686,7 @@
|
||||
"moderator": "Impostati i permessi di moderatore!",
|
||||
"muted": "Hai iniziato la conversazione con audio disattivato.",
|
||||
"mutedRemotelyDescription": "Puoi sempre attivare il microfono, quando vuoi parlare. Spegni il microfono quando hai finito, per non introdurre rumori di fondo nella riunione.",
|
||||
"mutedRemotelyTitle": "Ti è stato disattivato l'audio da {{participantDisplayName}}!",
|
||||
"mutedRemotelyTitle": "{{participantDisplayName}} ti ha spento il microfono",
|
||||
"mutedTitle": "Hai audio disattivato!",
|
||||
"newDeviceAction": "OK, usala",
|
||||
"newDeviceAudioTitle": "Trovata nuova origine audio",
|
||||
@@ -717,7 +717,7 @@
|
||||
"suboptimalExperienceTitle": "Avviso sul browser",
|
||||
"unmute": "Accendi microfono",
|
||||
"videoMutedRemotelyDescription": "Puoi riaccenderla in qualsiasi momento.",
|
||||
"videoMutedRemotelyTitle": "La videocamera ti è stata spenta da {{participantDisplayName}}!",
|
||||
"videoMutedRemotelyTitle": "{{participantDisplayName}} ti ha spento la videocamera",
|
||||
"videoUnmuteBlockedDescription": "Riattivazione video e condivisione schermo sono state momentaneamente bloccate per limiti di sistema.",
|
||||
"videoUnmuteBlockedTitle": "Riattivazione video e condivisione schermo bloccate!",
|
||||
"viewLobby": "Vedi sala d'attesa",
|
||||
@@ -830,8 +830,8 @@
|
||||
"initiated": "Chiamata avviata",
|
||||
"joinAudioByPhone": "Collegati usando un telefono, per parlare",
|
||||
"joinMeeting": "Collegati alla riunione",
|
||||
"joinMeetingInLowBandwidthMode": "Entra con il solo audio",
|
||||
"joinWithoutAudio": "Collegati senza poter parlare",
|
||||
"joinMeetingInLowBandwidthMode": "Entra in modalità banda limitata",
|
||||
"joinWithoutAudio": "Collegati senza poter parlare mai",
|
||||
"keyboardShortcuts": "Attiva le scorciatoie da tastiera",
|
||||
"linkCopied": "Collegamento copiato negli appunti",
|
||||
"lookGood": "Sembra che il tuo microfono funzioni correttamente",
|
||||
@@ -943,7 +943,7 @@
|
||||
"security": {
|
||||
"about": "Puoi aggiungere una $t(lockRoomPassword) alla riunione. I partecipanti dovranno fornire la $t(lockRoomPassword) per essere autorizzati a partecipare alla riunione.",
|
||||
"aboutReadOnly": "I moderatori della riunione possono aggiungere $t(lockRoomPassword). I partecipanti dovranno fornire la $t(lockRoomPassword) per essere autorizzati a partecipare alla riunione.",
|
||||
"insecureRoomNameWarning": "Il nome della riunione non è sicuro. Dei partecipanti indesiderati potrebbero unirsi alla riunione. Puoi proteggere l'accesso alla riunione col bottone sicurezza.",
|
||||
"insecureRoomNameWarning": "Il nome della riunione non è sicuro. Dei partecipanti indesiderati potrebbero unirsi alla riunione. Puoi proteggere l'accesso alla riunione nelle Impostazioni di sicurezza.",
|
||||
"title": "Impostazioni di sicurezza"
|
||||
},
|
||||
"settings": {
|
||||
@@ -964,7 +964,7 @@
|
||||
"incomingMessage": "Messaggio in arrivo",
|
||||
"language": "Lingua",
|
||||
"loggedIn": "Connesso come {{name}}",
|
||||
"maxStageParticipants": "Numero massimo di partecipanti che possono essere aggiunti come oratori",
|
||||
"maxStageParticipants": "Numero massimo video che possono essere fissati nella schemata",
|
||||
"microphones": "Microfoni",
|
||||
"moderator": "Moderatore",
|
||||
"more": "Mostra di più",
|
||||
@@ -985,7 +985,7 @@
|
||||
"startAudioMuted": "Tutti cominciano a microfono spento",
|
||||
"startReactionsMuted": "Spegni i suoni delle reazioni a tutti",
|
||||
"startVideoMuted": "Tutti cominciano a videocamera disattivata",
|
||||
"talkWhileMuted": "Parla senza microfono",
|
||||
"talkWhileMuted": "Parli a microfono spento",
|
||||
"title": "Impostazioni"
|
||||
},
|
||||
"settingsView": {
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "Conversazione",
|
||||
"clap": "Applaudi",
|
||||
"collapse": "Riduci",
|
||||
"dock": "Aggancia alla finestra principale",
|
||||
"document": "Documenti condivisi",
|
||||
"download": "Scarica le nostre app",
|
||||
"embedMeeting": "Incorpora riunione altrove",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "Vedi tutti i partecipanti, o uno solo",
|
||||
"toggleCamera": "Cambia videocamera",
|
||||
"toggleFilmstrip": "Pellicola",
|
||||
"undock": "Sgancia in una finestra separata",
|
||||
"videoblur": "Sfoca video",
|
||||
"videomute": "Videocamera",
|
||||
"whiteboard": "Usa lavagna"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "Chiudi il menù reazioni",
|
||||
"disableNoiseSuppression": "Interrompi riduzione rumore",
|
||||
"disableReactionSounds": "Puoi disattivare i suoni delle reaction, in questa riunione",
|
||||
"dock": "Aggancia nella finestra principale",
|
||||
"documentClose": "Chiudi documento condiviso",
|
||||
"documentOpen": "Apri documento condiviso",
|
||||
"download": "Scarica le nostre app",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "Stai provando a parlare? Il microfono è disattivato.",
|
||||
"tileViewToggle": "Vedi tutti i partecipanti insieme, o uno solo",
|
||||
"toggleCamera": "Cambia videocamera",
|
||||
"undock": "Sgancia in una finestra separata",
|
||||
"videoSettings": "Impostazioni video",
|
||||
"videomute": "Videocamera"
|
||||
},
|
||||
@@ -1278,7 +1274,7 @@
|
||||
},
|
||||
"videothumbnail": {
|
||||
"connectionInfo": "Info connessione",
|
||||
"domute": "Disattiva audio",
|
||||
"domute": "Silenzia",
|
||||
"domuteOthers": "Disattiva audio di tutti gli altri",
|
||||
"domuteVideo": "Disattiva video",
|
||||
"domuteVideoOfOthers": "Disattiva video di tutti gli altri",
|
||||
@@ -1289,12 +1285,12 @@
|
||||
"moderator": "Moderatore",
|
||||
"mute": "Il partecipante ha il microfono spento",
|
||||
"muted": "Audio disattivato",
|
||||
"pinToStage": "Aggiungi agli oratori",
|
||||
"pinToStage": "Fissa questo video",
|
||||
"remoteControl": "Controllo remoto",
|
||||
"screenSharing": "Il partecipante sta condividendo lo schermo",
|
||||
"show": "Mostra tra gli oratori",
|
||||
"showSelfView": "Mostra tua immagine",
|
||||
"unpinFromStage": "Togli",
|
||||
"unpinFromStage": "Libera questo video",
|
||||
"videoMuted": "Video disattivato",
|
||||
"videomute": "Il partecipante ha la videocamera spenta"
|
||||
},
|
||||
|
||||
@@ -1,716 +0,0 @@
|
||||
{
|
||||
"addPeople": {
|
||||
"add": "Inviter",
|
||||
"countryNotSupported": "",
|
||||
"countryReminder": "",
|
||||
"disabled": "Du kan ikke invitere folk.",
|
||||
"failedToAdd": "Klarte ikke å lagge til deltagere",
|
||||
"footerText": "Å ringe ut er avskrudd",
|
||||
"loading": "Søker etter folk og telefonnumre",
|
||||
"loadingNumber": "Bekrefter telefonnummer",
|
||||
"loadingPeople": "Søker etter folk å inviterte",
|
||||
"noResults": "",
|
||||
"noValidNumbers": "Skriv inn et telefonnummer",
|
||||
"searchNumbers": "Legg til telefonnumre",
|
||||
"searchPeople": "Søk etter folk",
|
||||
"searchPeopleAndNumbers": "Søk etter folk eller legg til telefonnumrene deres",
|
||||
"telephone": "Telefon: {{number}}",
|
||||
"title": "Inviter folk til dette møtet"
|
||||
},
|
||||
"audioDevices": {
|
||||
"bluetooth": "Blåtann",
|
||||
"headphones": "Hodetelefoner",
|
||||
"none": "Ingen lydenheter tilgjengelig",
|
||||
"phone": "Telefon",
|
||||
"speaker": "Høyttaler"
|
||||
},
|
||||
"audioOnly": {
|
||||
"audioOnly": "Lav båndbredde"
|
||||
},
|
||||
"calendarSync": {
|
||||
"addMeetingURL": "Legg til en møtelenke",
|
||||
"confirmAddLink": "Ønsker du å legge til en Jitsi-lenke til denne hendelsen?",
|
||||
"join": "Ta del",
|
||||
"joinTooltip": "Ta del i møtet",
|
||||
"nextMeeting": "neste møte",
|
||||
"noEvents": "",
|
||||
"ongoingMeeting": "pågående møte",
|
||||
"permissionButton": "Åpne innstillinger",
|
||||
"permissionMessage": "",
|
||||
"refresh": "",
|
||||
"today": "I dag"
|
||||
},
|
||||
"chat": {
|
||||
"error": "",
|
||||
"fieldPlaceHolder": "Skriv inn din melding her",
|
||||
"messageTo": "Privat melding til {{recipient}}",
|
||||
"messagebox": "Skriv en melding",
|
||||
"nickname": {
|
||||
"popover": "Velg et kallenavn",
|
||||
"title": "",
|
||||
"titleWithPolls": ""
|
||||
},
|
||||
"sendButton": "Send",
|
||||
"title": "",
|
||||
"titleWithPolls": ""
|
||||
},
|
||||
"chromeExtensionBanner": {
|
||||
"dontShowAgain": "Ikke vis meg dette igjen"
|
||||
},
|
||||
"connection": {
|
||||
"ATTACHED": "Vedlagt",
|
||||
"AUTHENTICATING": "Bekrefter",
|
||||
"AUTHFAIL": "",
|
||||
"CONNECTED": "Tilkoblet",
|
||||
"CONNECTING": "Kobler til",
|
||||
"CONNFAIL": "",
|
||||
"DISCONNECTED": "Frakoblet",
|
||||
"DISCONNECTING": "Kobler fra",
|
||||
"ERROR": "Feil",
|
||||
"FETCH_SESSION_ID": "Henter økt-ID…",
|
||||
"GOT_SESSION_ID": "Henter økt-ID… Ferdig",
|
||||
"RECONNECTING": ""
|
||||
},
|
||||
"connectionindicator": {
|
||||
"address": "Adresse:",
|
||||
"bandwidth": "Anslått båndbredde:",
|
||||
"bitrate": "",
|
||||
"bridgeCount": "",
|
||||
"connectedTo": "Ansluttet til:",
|
||||
"framerate": "",
|
||||
"less": "Vis mindre",
|
||||
"localaddress": "Lokal adresse:",
|
||||
"localaddress_plural": "Lokale adresser:",
|
||||
"localport": "Lokal port:",
|
||||
"localport_plural": "Lokale porter:",
|
||||
"more": "Vis mer",
|
||||
"packetloss": "Pakketap:",
|
||||
"quality": {
|
||||
"good": "God",
|
||||
"inactive": "Inaktiv",
|
||||
"lost": "Tapt",
|
||||
"nonoptimal": "Suboptimal",
|
||||
"poor": "Dårlig"
|
||||
},
|
||||
"remoteaddress": "Fjernadresser:",
|
||||
"remoteaddress_plural": "Fjernadresser:",
|
||||
"remoteport": "",
|
||||
"remoteport_plural": "",
|
||||
"resolution": "Oppløsning:",
|
||||
"status": "Tilknytning:",
|
||||
"transport": "",
|
||||
"transport_plural": "",
|
||||
"turn": ""
|
||||
},
|
||||
"dateUtils": {
|
||||
"earlier": "Tidligere",
|
||||
"today": "I dag",
|
||||
"yesterday": "I går"
|
||||
},
|
||||
"deepLinking": {
|
||||
"downloadApp": "Last ned programmet",
|
||||
"openApp": "Fortsett til programmet"
|
||||
},
|
||||
"defaultLink": "f.eks.",
|
||||
"deviceError": {
|
||||
"cameraError": "",
|
||||
"cameraPermission": "",
|
||||
"microphoneError": "",
|
||||
"microphonePermission": ""
|
||||
},
|
||||
"deviceSelection": {
|
||||
"noPermission": "Tilgang ikke innvilget",
|
||||
"previewUnavailable": "Forhåndsvisning utilgjengelig",
|
||||
"selectADevice": "Velg en enhet",
|
||||
"testAudio": "Spill en testlyd"
|
||||
},
|
||||
"dialOut": {
|
||||
"statusMessage": "er nå {{status}}"
|
||||
},
|
||||
"dialog": {
|
||||
"Back": "Tilbake",
|
||||
"Cancel": "Avbryt",
|
||||
"IamHost": "Jeg er vertsskap",
|
||||
"Ok": "OK",
|
||||
"Remove": "Fjern",
|
||||
"Share": "Del",
|
||||
"Submit": "Send inn",
|
||||
"WaitForHostMsg": "",
|
||||
"WaitingForHost": "",
|
||||
"Yes": "Ja",
|
||||
"accessibilityLabel": {
|
||||
"liveStreaming": ""
|
||||
},
|
||||
"allow": "Tillat",
|
||||
"alreadySharedVideoMsg": "",
|
||||
"alreadySharedVideoTitle": "",
|
||||
"applicationWindow": "",
|
||||
"cameraConstraintFailedError": "",
|
||||
"cameraNotFoundError": "",
|
||||
"cameraNotSendingData": "",
|
||||
"cameraNotSendingDataTitle": "",
|
||||
"cameraPermissionDeniedError": "",
|
||||
"cameraUnknownError": "",
|
||||
"cameraUnsupportedResolutionError": "",
|
||||
"close": "",
|
||||
"conferenceDisconnectMsg": "",
|
||||
"conferenceDisconnectTitle": "Du har blitt frakoblet.",
|
||||
"conferenceReloadMsg": "",
|
||||
"conferenceReloadTitle": "",
|
||||
"confirm": "Bekreft",
|
||||
"confirmNo": "Nei",
|
||||
"confirmYes": "Ja",
|
||||
"connectError": "",
|
||||
"connectErrorWithMsg": "",
|
||||
"connecting": "Kobler til",
|
||||
"contactSupport": "Kontakt brukerstøtte",
|
||||
"copy": "Kopier",
|
||||
"dismiss": "Forkast",
|
||||
"displayNameRequired": "Hei. Hva heter du?",
|
||||
"done": "Ferdig",
|
||||
"enterDisplayName": "Skriv inn navnet ditt her",
|
||||
"error": "Feil",
|
||||
"externalInstallationMsg": "",
|
||||
"externalInstallationTitle": "Programtillegg kreves",
|
||||
"goToStore": "",
|
||||
"gracefulShutdown": "",
|
||||
"incorrectPassword": "",
|
||||
"incorrectRoomLockPassword": "",
|
||||
"inlineInstallExtension": "Installer nå",
|
||||
"inlineInstallationMsg": "",
|
||||
"internalError": "",
|
||||
"internalErrorTitle": "",
|
||||
"kickMessage": "",
|
||||
"kickParticipantButton": "Kast ut",
|
||||
"kickParticipantDialog": "Er du sikker på at du vil kaste ut denne deltageren?",
|
||||
"kickParticipantTitle": "Kast ut denne deltageren?",
|
||||
"kickTitle": "Oida. {{participantDisplayName}} kastet deg ut av møtet",
|
||||
"liveStreaming": "",
|
||||
"liveStreamingDisabledForGuestTooltip": "",
|
||||
"liveStreamingDisabledTooltip": "",
|
||||
"lockMessage": "Klarte ikke å låse konferansen.",
|
||||
"lockRoom": "",
|
||||
"lockTitle": "",
|
||||
"logoutQuestion": "",
|
||||
"logoutTitle": "Logg ut",
|
||||
"maxUsersLimitReached": "",
|
||||
"maxUsersLimitReachedTitle": "",
|
||||
"micConstraintFailedError": "",
|
||||
"micNotFoundError": "",
|
||||
"micNotSendingData": "",
|
||||
"micNotSendingDataTitle": "",
|
||||
"micPermissionDeniedError": "",
|
||||
"micUnknownError": "",
|
||||
"muteEveryoneElseTitle": "Forstum alle unntatt {{whom}}?",
|
||||
"muteEveryoneSelf": "deg selv",
|
||||
"muteEveryoneStartMuted": "Alle starter forstummet fra nå av",
|
||||
"muteEveryoneTitle": "Forstum alle?",
|
||||
"muteParticipantBody": "Du vil ikke kunne oppheve forstumming av dem, men de kan oppheve forstumming selv når som helst.",
|
||||
"muteParticipantButton": "Forstum",
|
||||
"muteParticipantDialog": "",
|
||||
"muteParticipantTitle": "",
|
||||
"passwordLabel": "",
|
||||
"passwordNotSupported": "",
|
||||
"passwordNotSupportedTitle": "",
|
||||
"passwordRequired": "",
|
||||
"popupError": "",
|
||||
"popupErrorTitle": "Oppsprett blokkert",
|
||||
"recording": "",
|
||||
"recordingDisabledForGuestTooltip": "",
|
||||
"recordingDisabledTooltip": "",
|
||||
"rejoinNow": "",
|
||||
"remoteControlAllowedMessage": "",
|
||||
"remoteControlDeniedMessage": "",
|
||||
"remoteControlErrorMessage": "",
|
||||
"remoteControlRequestMessage": "",
|
||||
"remoteControlShareScreenWarning": "",
|
||||
"remoteControlStopMessage": "",
|
||||
"remoteControlTitle": "",
|
||||
"removePassword": "Fjern",
|
||||
"removeSharedVideoMsg": "",
|
||||
"removeSharedVideoTitle": "Fjern delt video",
|
||||
"reservationError": "",
|
||||
"reservationErrorMsg": "",
|
||||
"retry": "Prøv igjen",
|
||||
"screenSharingAudio": "Del lyd",
|
||||
"screenSharingFailedToInstall": "",
|
||||
"screenSharingFailedToInstallTitle": "",
|
||||
"screenSharingFirefoxPermissionDeniedError": "",
|
||||
"screenSharingFirefoxPermissionDeniedTitle": "",
|
||||
"screenSharingPermissionDeniedError": "",
|
||||
"sendPrivateMessageCancel": "Send til gruppen",
|
||||
"sendPrivateMessageOk": "Send privat",
|
||||
"sendPrivateMessageTitle": "Send privat?",
|
||||
"serviceUnavailable": "Tjenesten er utilgjengelig",
|
||||
"sessTerminated": "",
|
||||
"shareVideoLinkError": "",
|
||||
"shareVideoTitle": "Del en video",
|
||||
"shareYourScreen": "Del skjermen din",
|
||||
"shareYourScreenDisabled": "Skjermdeling er avskrudd.",
|
||||
"shareYourScreenDisabledForGuest": "",
|
||||
"startLiveStreaming": "",
|
||||
"startRecording": "Start opptak",
|
||||
"startRemoteControlErrorMessage": "",
|
||||
"stopLiveStreaming": "",
|
||||
"stopRecording": "Stopp opptak",
|
||||
"stopRecordingWarning": "",
|
||||
"stopStreamingWarning": "",
|
||||
"streamKey": "",
|
||||
"thankYou": "Takk for at du bruker {{appName}}.",
|
||||
"token": "symbol",
|
||||
"tokenAuthFailed": "",
|
||||
"tokenAuthFailedTitle": "",
|
||||
"transcribing": "",
|
||||
"unlockRoom": "",
|
||||
"userPassword": "brukerpassord",
|
||||
"yourEntireScreen": "Hele skjermen din"
|
||||
},
|
||||
"documentSharing": {
|
||||
"title": "Delt dokument"
|
||||
},
|
||||
"feedback": {
|
||||
"average": "Middels",
|
||||
"bad": "Dårlig",
|
||||
"detailsLabel": "Fortell oss om det.",
|
||||
"good": "God",
|
||||
"rateExperience": "Vurder din møteopplevelse",
|
||||
"veryBad": "Veldig dårlig",
|
||||
"veryGood": "Veldig god"
|
||||
},
|
||||
"incomingCall": {
|
||||
"answer": "Svar",
|
||||
"audioCallTitle": "",
|
||||
"decline": "",
|
||||
"productLabel": "",
|
||||
"videoCallTitle": ""
|
||||
},
|
||||
"info": {
|
||||
"accessibilityLabel": "Vis info",
|
||||
"addPassword": "Legg til $t(lockRoomPassword)",
|
||||
"cancelPassword": "Avbryt $t(lockRoomPassword)",
|
||||
"conferenceURL": "Lenke:",
|
||||
"country": "Land",
|
||||
"dialANumber": "",
|
||||
"dialInConferenceID": "",
|
||||
"dialInNotSupported": "",
|
||||
"dialInNumber": "",
|
||||
"dialInSummaryError": "",
|
||||
"dialInTollFree": "",
|
||||
"genericError": "",
|
||||
"inviteLiveStream": "",
|
||||
"invitePhone": "",
|
||||
"invitePhoneAlternatives": "",
|
||||
"inviteURLFirstPartGeneral": "",
|
||||
"inviteURLFirstPartPersonal": "",
|
||||
"inviteURLSecondPart": "",
|
||||
"label": "",
|
||||
"liveStreamURL": "",
|
||||
"moreNumbers": "Flere nummer",
|
||||
"noNumbers": "",
|
||||
"noPassword": "",
|
||||
"noRoom": "",
|
||||
"numbers": "",
|
||||
"password": "",
|
||||
"title": "Del",
|
||||
"tooltip": ""
|
||||
},
|
||||
"inlineDialogFailure": {
|
||||
"msg": "",
|
||||
"retry": "Prøv igjen",
|
||||
"support": "Brukerstøtte",
|
||||
"supportMsg": ""
|
||||
},
|
||||
"inviteDialog": {
|
||||
"alertText": "",
|
||||
"header": "Inviter",
|
||||
"searchCallOnlyPlaceholder": "",
|
||||
"searchPeopleOnlyPlaceholder": "",
|
||||
"searchPlaceholder": "",
|
||||
"send": "Send"
|
||||
},
|
||||
"keyboardShortcuts": {
|
||||
"focusLocal": "",
|
||||
"focusRemote": "",
|
||||
"fullScreen": "",
|
||||
"keyboardShortcuts": "Tastatursnarveier",
|
||||
"localRecording": "",
|
||||
"mute": "",
|
||||
"pushToTalk": "",
|
||||
"raiseHand": "",
|
||||
"showSpeakerStats": "",
|
||||
"toggleChat": "",
|
||||
"toggleFilmstrip": "",
|
||||
"toggleScreensharing": "",
|
||||
"toggleShortcuts": "",
|
||||
"videoMute": ""
|
||||
},
|
||||
"liveStreaming": {
|
||||
"busy": "",
|
||||
"busyTitle": "",
|
||||
"changeSignIn": "",
|
||||
"choose": "",
|
||||
"chooseCTA": "",
|
||||
"enterStreamKey": "",
|
||||
"error": "",
|
||||
"errorAPI": "",
|
||||
"errorLiveStreamNotEnabled": "",
|
||||
"expandedOff": "",
|
||||
"expandedOn": "",
|
||||
"expandedPending": "",
|
||||
"failedToStart": "",
|
||||
"getStreamKeyManually": "",
|
||||
"invalidStreamKey": "",
|
||||
"off": "",
|
||||
"on": "",
|
||||
"pending": "",
|
||||
"serviceName": "",
|
||||
"signIn": "",
|
||||
"signInCTA": "",
|
||||
"signOut": "",
|
||||
"signedInAs": "©",
|
||||
"start": "",
|
||||
"streamIdHelp": "",
|
||||
"unavailableTitle": ""
|
||||
},
|
||||
"localRecording": {
|
||||
"clientState": {
|
||||
"off": "",
|
||||
"on": "",
|
||||
"unknown": ""
|
||||
},
|
||||
"dialogTitle": "",
|
||||
"duration": "",
|
||||
"durationNA": "",
|
||||
"encoding": "",
|
||||
"label": "",
|
||||
"labelToolTip": "",
|
||||
"localRecording": "",
|
||||
"me": "",
|
||||
"messages": {
|
||||
"engaged": "",
|
||||
"finished": "",
|
||||
"finishedModerator": "",
|
||||
"notModerator": ""
|
||||
},
|
||||
"moderator": "",
|
||||
"no": "",
|
||||
"participant": "",
|
||||
"participantStats": "",
|
||||
"sessionToken": "",
|
||||
"start": "",
|
||||
"stop": "",
|
||||
"yes": ""
|
||||
},
|
||||
"lockRoomPassword": "",
|
||||
"lockRoomPasswordUppercase": "",
|
||||
"me": "",
|
||||
"notify": {
|
||||
"connectedOneMember": "",
|
||||
"connectedThreePlusMembers": "",
|
||||
"connectedTwoMembers": "",
|
||||
"disconnected": "",
|
||||
"focus": "",
|
||||
"focusFail": "",
|
||||
"grantedTo": "",
|
||||
"invitedOneMember": "",
|
||||
"invitedThreePlusMembers": "",
|
||||
"invitedTwoMembers": "",
|
||||
"kickParticipant": "",
|
||||
"me": "",
|
||||
"moderator": "",
|
||||
"muted": "",
|
||||
"mutedRemotelyDescription": "",
|
||||
"mutedRemotelyTitle": "",
|
||||
"mutedTitle": "",
|
||||
"newDeviceAction": "",
|
||||
"newDeviceAudioTitle": "",
|
||||
"newDeviceCameraTitle": "",
|
||||
"passwordRemovedRemotely": "",
|
||||
"passwordSetRemotely": "",
|
||||
"raisedHand": "",
|
||||
"somebody": "",
|
||||
"startSilentDescription": "",
|
||||
"startSilentTitle": "",
|
||||
"suboptimalExperienceDescription": "",
|
||||
"suboptimalExperienceTitle": "",
|
||||
"unmute": ""
|
||||
},
|
||||
"passwordDigitsOnly": "",
|
||||
"passwordSetRemotely": "",
|
||||
"poweredby": "",
|
||||
"presenceStatus": {
|
||||
"busy": "",
|
||||
"calling": "",
|
||||
"connected": "",
|
||||
"connecting": "",
|
||||
"connecting2": "",
|
||||
"disconnected": "",
|
||||
"expired": "",
|
||||
"ignored": "",
|
||||
"initializingCall": "",
|
||||
"invited": "",
|
||||
"rejected": "",
|
||||
"ringing": ""
|
||||
},
|
||||
"profile": {
|
||||
"setDisplayNameLabel": "",
|
||||
"setEmailInput": "",
|
||||
"setEmailLabel": "",
|
||||
"title": ""
|
||||
},
|
||||
"recording": {
|
||||
"authDropboxText": "",
|
||||
"availableSpace": "",
|
||||
"beta": "",
|
||||
"busy": "",
|
||||
"busyTitle": "",
|
||||
"error": "",
|
||||
"expandedOff": "",
|
||||
"expandedOn": "",
|
||||
"expandedPending": "",
|
||||
"failedToStart": "",
|
||||
"fileSharingdescription": "",
|
||||
"live": "",
|
||||
"loggedIn": "",
|
||||
"off": "",
|
||||
"on": "",
|
||||
"pending": "",
|
||||
"rec": "",
|
||||
"serviceDescription": "",
|
||||
"serviceName": "",
|
||||
"signIn": "",
|
||||
"signOut": "",
|
||||
"unavailable": "",
|
||||
"unavailableTitle": ""
|
||||
},
|
||||
"sectionList": {
|
||||
"pullToRefresh": ""
|
||||
},
|
||||
"settings": {
|
||||
"calendar": {
|
||||
"about": "",
|
||||
"disconnect": "",
|
||||
"microsoftSignIn": "",
|
||||
"signedIn": "",
|
||||
"title": ""
|
||||
},
|
||||
"devices": "",
|
||||
"followMe": "",
|
||||
"language": "",
|
||||
"loggedIn": "",
|
||||
"moderator": "",
|
||||
"more": "",
|
||||
"name": "",
|
||||
"noDevice": "",
|
||||
"selectAudioOutput": "",
|
||||
"selectCamera": "",
|
||||
"selectMic": "",
|
||||
"startAudioMuted": "",
|
||||
"startVideoMuted": "",
|
||||
"title": ""
|
||||
},
|
||||
"settingsView": {
|
||||
"alertOk": "",
|
||||
"alertTitle": "",
|
||||
"alertURLText": "",
|
||||
"buildInfoSection": "",
|
||||
"conferenceSection": "",
|
||||
"displayName": "",
|
||||
"email": "",
|
||||
"header": "",
|
||||
"profileSection": "",
|
||||
"serverURL": "",
|
||||
"startWithAudioMuted": "",
|
||||
"startWithVideoMuted": "",
|
||||
"version": ""
|
||||
},
|
||||
"share": {
|
||||
"dialInfoText": "",
|
||||
"mainText": ""
|
||||
},
|
||||
"speaker": "",
|
||||
"speakerStats": {
|
||||
"hours": "",
|
||||
"minutes": "",
|
||||
"name": "",
|
||||
"seconds": "",
|
||||
"speakerStats": "",
|
||||
"speakerTime": ""
|
||||
},
|
||||
"startupoverlay": {
|
||||
"policyText": "",
|
||||
"title": ""
|
||||
},
|
||||
"suspendedoverlay": {
|
||||
"rejoinKeyTitle": "",
|
||||
"text": "",
|
||||
"title": ""
|
||||
},
|
||||
"toolbar": {
|
||||
"Settings": "",
|
||||
"accessibilityLabel": {
|
||||
"Settings": "",
|
||||
"audioOnly": "",
|
||||
"audioRoute": "",
|
||||
"callQuality": "",
|
||||
"cc": "",
|
||||
"chat": "",
|
||||
"document": "",
|
||||
"feedback": "",
|
||||
"fullScreen": "",
|
||||
"hangup": "",
|
||||
"invite": "",
|
||||
"kick": "",
|
||||
"localRecording": "",
|
||||
"lockRoom": "",
|
||||
"moreActions": "",
|
||||
"moreActionsMenu": "",
|
||||
"mute": "",
|
||||
"pip": "",
|
||||
"profile": "",
|
||||
"raiseHand": "",
|
||||
"recording": "",
|
||||
"remoteMute": "",
|
||||
"shareRoom": "",
|
||||
"shareYourScreen": "",
|
||||
"sharedvideo": "",
|
||||
"shortcuts": "",
|
||||
"show": "",
|
||||
"speakerStats": "",
|
||||
"tileView": "",
|
||||
"toggleCamera": "",
|
||||
"videoblur": "",
|
||||
"videomute": ""
|
||||
},
|
||||
"addPeople": "",
|
||||
"audioOnlyOff": "",
|
||||
"audioOnlyOn": "",
|
||||
"audioRoute": "",
|
||||
"authenticate": "",
|
||||
"callQuality": "",
|
||||
"chat": "",
|
||||
"closeChat": "",
|
||||
"documentClose": "",
|
||||
"documentOpen": "",
|
||||
"enterFullScreen": "",
|
||||
"enterTileView": "",
|
||||
"exitFullScreen": "",
|
||||
"exitTileView": "",
|
||||
"feedback": "",
|
||||
"hangup": "",
|
||||
"invite": "",
|
||||
"login": "",
|
||||
"logout": "",
|
||||
"lowerYourHand": "",
|
||||
"moreActions": "",
|
||||
"mute": "",
|
||||
"openChat": "",
|
||||
"pip": "",
|
||||
"profile": "",
|
||||
"raiseHand": "",
|
||||
"raiseYourHand": "",
|
||||
"shareRoom": "",
|
||||
"sharedvideo": "",
|
||||
"shortcuts": "",
|
||||
"speakerStats": "",
|
||||
"startScreenSharing": "",
|
||||
"startSubtitles": "",
|
||||
"startvideoblur": "",
|
||||
"stopScreenSharing": "",
|
||||
"stopSharedVideo": "",
|
||||
"stopSubtitles": "",
|
||||
"stopvideoblur": "",
|
||||
"talkWhileMutedPopup": "",
|
||||
"tileViewToggle": "",
|
||||
"toggleCamera": "",
|
||||
"videomute": ""
|
||||
},
|
||||
"transcribing": {
|
||||
"ccButtonTooltip": "",
|
||||
"error": "",
|
||||
"expandedLabel": "",
|
||||
"failedToStart": "",
|
||||
"labelToolTip": "",
|
||||
"off": "",
|
||||
"pending": "",
|
||||
"start": "",
|
||||
"stop": "",
|
||||
"tr": ""
|
||||
},
|
||||
"userMedia": {
|
||||
"androidGrantPermissions": "",
|
||||
"chromeGrantPermissions": "",
|
||||
"edgeGrantPermissions": "",
|
||||
"electronGrantPermissions": "",
|
||||
"firefoxGrantPermissions": "",
|
||||
"iexplorerGrantPermissions": "",
|
||||
"nwjsGrantPermissions": "",
|
||||
"operaGrantPermissions": "",
|
||||
"react-nativeGrantPermissions": "",
|
||||
"safariGrantPermissions": ""
|
||||
},
|
||||
"videoSIPGW": {
|
||||
"busy": "",
|
||||
"busyTitle": "",
|
||||
"errorAlreadyInvited": "",
|
||||
"errorInvite": "",
|
||||
"errorInviteFailed": "",
|
||||
"errorInviteFailedTitle": "",
|
||||
"errorInviteTitle": "",
|
||||
"pending": ""
|
||||
},
|
||||
"videoStatus": {
|
||||
"audioOnly": "",
|
||||
"audioOnlyExpanded": "",
|
||||
"callQuality": "",
|
||||
"hd": "",
|
||||
"highDefinition": "",
|
||||
"labelTooiltipNoVideo": "",
|
||||
"labelTooltipAudioOnly": "",
|
||||
"ld": "",
|
||||
"lowDefinition": "",
|
||||
"onlyAudioAvailable": "",
|
||||
"onlyAudioSupported": "",
|
||||
"sd": "",
|
||||
"standardDefinition": ""
|
||||
},
|
||||
"videothumbnail": {
|
||||
"domute": "",
|
||||
"flip": "",
|
||||
"kick": "",
|
||||
"moderator": "",
|
||||
"mute": "",
|
||||
"muted": "",
|
||||
"remoteControl": "",
|
||||
"show": "",
|
||||
"videomute": ""
|
||||
},
|
||||
"welcomepage": {
|
||||
"accessibilityLabel": {
|
||||
"join": "",
|
||||
"roomname": ""
|
||||
},
|
||||
"appDescription": "",
|
||||
"audioVideoSwitch": {
|
||||
"audio": "",
|
||||
"video": ""
|
||||
},
|
||||
"calendar": "",
|
||||
"connectCalendarButton": "",
|
||||
"connectCalendarText": "",
|
||||
"enterRoomTitle": "",
|
||||
"go": "",
|
||||
"info": "",
|
||||
"join": "",
|
||||
"privacy": "",
|
||||
"recentList": "",
|
||||
"recentListDelete": "",
|
||||
"recentListEmpty": "",
|
||||
"reducedUIText": "",
|
||||
"roomname": "",
|
||||
"roomnameHint": "",
|
||||
"sendFeedback": "",
|
||||
"terms": "",
|
||||
"title": ""
|
||||
}
|
||||
}
|
||||
@@ -882,6 +882,7 @@
|
||||
"document": "Gedeeld document in- of uitschakelen",
|
||||
"download": "Download onze apps",
|
||||
"embedMeeting": "Vergadering embedden",
|
||||
"endConference": "Vergadering voor iedereen beëindigen",
|
||||
"feedback": "Feedback achterlaten",
|
||||
"fullScreen": "Volledig scherm in- of uitschakelen",
|
||||
"grantModerator": "Moderatorrechten verlenen",
|
||||
@@ -889,6 +890,7 @@
|
||||
"help": "Hulp",
|
||||
"invite": "Personen uitnodigen",
|
||||
"kick": "Deelnemer verwijderen",
|
||||
"leaveConference": "Vergadering verlaten",
|
||||
"lobbyButton": "Lobby-modus in- of uitschakelen",
|
||||
"localRecording": "Besturingselementen voor lokale opname in- of uitschakelen",
|
||||
"lockRoom": "Wachtwoord voor vergadering in- of uitschakelen",
|
||||
@@ -938,6 +940,7 @@
|
||||
"download": "Download onze apps",
|
||||
"e2ee": "Eind-tot-eind-versleuteling",
|
||||
"embedMeeting": "Vergadering embedden",
|
||||
"endConference": "Vergadering voor iedereen beëindigen",
|
||||
"enterFullScreen": "Volledig scherm weergeven",
|
||||
"enterTileView": "Tegelweergave openen",
|
||||
"exitFullScreen": "Volledig scherm sluiten",
|
||||
@@ -948,6 +951,7 @@
|
||||
"invite": "Personen uitnodigen",
|
||||
"joinBreakoutRoom": "Deelnemen aan aparte vergaderruimte",
|
||||
"leaveBreakoutRoom": "Aparte vergaderruimte verlaten",
|
||||
"leaveConference": "Vergadering verlaten",
|
||||
"lobbyButtonDisable": "Schakel lobby-modus uit",
|
||||
"lobbyButtonEnable": "Schakel lobby-modus in",
|
||||
"login": "Aanmelden",
|
||||
|
||||
@@ -1057,7 +1057,6 @@
|
||||
"chat": "Przełączanie okna rozmowy",
|
||||
"clap": "Klaskanie",
|
||||
"collapse": "Zwiń",
|
||||
"dock": "Zadokuj w głównym oknie",
|
||||
"document": "Przełączanie wspólnego dokumentu",
|
||||
"download": "Pobierz nasze aplikacje",
|
||||
"embedMeeting": "Osadź spotkanie",
|
||||
@@ -1109,7 +1108,6 @@
|
||||
"tileView": "Przełącz widok kafelkowy",
|
||||
"toggleCamera": "Przełączanie kamery",
|
||||
"toggleFilmstrip": "Przełącz filmstrip",
|
||||
"undock": "Oddokuj w osobnym oknie",
|
||||
"videoblur": "Przełącz rozmazanie obrazu",
|
||||
"videomute": "Przełączanie wyciszonego filmu wideo"
|
||||
},
|
||||
@@ -1127,7 +1125,6 @@
|
||||
"closeReactionsMenu": "Zamknij reakcje",
|
||||
"disableNoiseSuppression": "Wyłącz tłumienie szumów",
|
||||
"disableReactionSounds": "Wyłącz dźwięki reakcji dla tego spotkania",
|
||||
"dock": "Zadokuj w głównym oknie",
|
||||
"documentClose": "Zamknij udostępniony dokument",
|
||||
"documentOpen": "Otwarty udostępniony dokument",
|
||||
"download": "Pobierz nasze aplikacje",
|
||||
@@ -1197,7 +1194,6 @@
|
||||
"talkWhileMutedPopup": "Próbujesz mówić? Jesteś wyciszony.",
|
||||
"tileViewToggle": "Przełączanie kafelkowego widoku",
|
||||
"toggleCamera": "Przełączanie kamery",
|
||||
"undock": "Oddokuj w osobnym oknie",
|
||||
"videoSettings": "Ustawienia video",
|
||||
"videomute": "Włącz / Wyłącz kamerę"
|
||||
},
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
"chat": {
|
||||
"enter": "Entrar na sala",
|
||||
"error": "Erro: a sua mensagem não foi enviada. Motivo: {{error}}",
|
||||
"fieldPlaceHolder": "Escreva aqui a sua mensagem",
|
||||
"fieldPlaceHolder": "Aa",
|
||||
"lobbyChatMessageTo": "Mensagem de chat na sala de espera para {{recipient}}",
|
||||
"message": "Mensagem",
|
||||
"messageAccessibleTitle": "{{user}} disse:",
|
||||
@@ -147,6 +147,7 @@
|
||||
"bridgeCount": "Servidores: ",
|
||||
"codecs": "Codecs (A/V): ",
|
||||
"connectedTo": "Ligado a:",
|
||||
"e2eeVerified": "E2EE verificada:",
|
||||
"framerate": "Taxa de frames:",
|
||||
"less": "Mostrar menos",
|
||||
"localaddress": "Endereço local:",
|
||||
@@ -266,7 +267,7 @@
|
||||
"e2eeWarning": "AVISO: Nem todos os participantes neste encontro parecem ter apoio para a encriptação de ponta a ponta. Se o permitir, eles não o poderão ver nem ouvir.",
|
||||
"e2eeWillDisableDueToMaxModeDescription": "AVISO: A encriptação de ponta a ponta será automaticamente desativada se mais participantes aderirem à conferência.",
|
||||
"embedMeeting": "Embutir reunião",
|
||||
"enterDisplayName": "Digite o seu nome aqui",
|
||||
"enterDisplayName": "Digite o seu nome",
|
||||
"error": "Erro",
|
||||
"gracefulShutdown": "O nosso serviço está atualmente em manutenção. Por favor, tente novamente mais tarde.",
|
||||
"grantModeratorDialog": "Tem a certeza que quer conceder direitos de moderador a {{participantName}}?",
|
||||
@@ -408,6 +409,10 @@
|
||||
"user": "Utilizador",
|
||||
"userIdentifier": "Identificador do utilizador",
|
||||
"userPassword": "Palavra-passe do utilizador",
|
||||
"verifyParticipantConfirm": "Coincidem",
|
||||
"verifyParticipantDismiss": "Não coincidem",
|
||||
"verifyParticipantQuestion": "EXPERIMENTAL: Perguntar ao participante {{participantName}} se vêem o mesmo conteúdo, na mesma ordem.",
|
||||
"verifyParticipantTitle": "Verificação pelo utilizador",
|
||||
"videoLink": "Link do vídeo",
|
||||
"viewUpgradeOptions": "Ver opções de actualização",
|
||||
"viewUpgradeOptionsContent": "Para obter acesso ilimitado a funcionalidades premium como gravação, transcrições, RTMP Streaming & mais, terá de actualizar o seu plano.",
|
||||
@@ -437,9 +442,6 @@
|
||||
"noResults": "Não foram encontrados resultados :(",
|
||||
"search": "Procurar no GIPHY"
|
||||
},
|
||||
"helpView": {
|
||||
"title": "Centro de ajuda"
|
||||
},
|
||||
"incomingCall": {
|
||||
"answer": "Responder",
|
||||
"audioCallTitle": "Chamada recebida",
|
||||
@@ -563,7 +565,6 @@
|
||||
"lobby": {
|
||||
"admit": "Aceitar",
|
||||
"admitAll": "Aceitar todos",
|
||||
"allow": "Permitir",
|
||||
"backToKnockModeButton": "Peça para aderir",
|
||||
"chat": "Chat",
|
||||
"dialogTitle": "Modo sala de espera",
|
||||
@@ -649,6 +650,8 @@
|
||||
"connectedOneMember": "{{name}} entrou na reunião",
|
||||
"connectedThreePlusMembers": "{{name}} e muitos outros entraram na reunião",
|
||||
"connectedTwoMembers": "{{first}} e {{second}} entraram na reunião",
|
||||
"dataChannelClosed": "Deficiência na qualidade do vídeo",
|
||||
"dataChannelClosedDescription": "O canal de ponte foi desconectado e, portanto, a qualidade do vídeo está limitada à sua configuração mais baixa.",
|
||||
"disconnected": "desconectado",
|
||||
"displayNotifications": "Mostrar notificações para",
|
||||
"focus": "Foco da conferência",
|
||||
@@ -709,6 +712,8 @@
|
||||
"reactionSoundsForAll": "Desativar sons para todos",
|
||||
"screenShareNoAudio": "A caixa de compartilhar áudio não foi marcada no ecrã de seleção da janela.",
|
||||
"screenShareNoAudioTitle": "Não foi possível partilhar o áudio do sistema!",
|
||||
"screenSharingAudioOnlyDescription": "Note por favor que ao partilhar o seu ecrã está a afectar o modo \"Melhor desempenho\" e irá utilizar mais largura de banda.",
|
||||
"screenSharingAudioOnlyTitle": "Modo \"Melhor desempenho\"",
|
||||
"selfViewTitle": "Pode sempre reexibir a autovisualização a partir das definições",
|
||||
"somebody": "Alguém",
|
||||
"startSilentDescription": "Volte à reunião para habilitar o áudio",
|
||||
@@ -858,9 +863,6 @@
|
||||
"rejected": "Rejeitado",
|
||||
"ringing": "Tocando..."
|
||||
},
|
||||
"privacyView": {
|
||||
"title": "Privacidade"
|
||||
},
|
||||
"profile": {
|
||||
"avatar": "avatar",
|
||||
"setDisplayNameLabel": "Definir seu nome de exibição",
|
||||
@@ -914,6 +916,7 @@
|
||||
"localRecordingVideoWarning": "Para gravar o seu vídeo deve tê-lo ligado quando iniciar a gravação",
|
||||
"localRecordingWarning": "Certifique-se de selecionar o separador actual a fim de utilizar o vídeo e áudio corretos. A gravação está actualmente limitada a 1 GB, o que é cerca de 100 minutos.",
|
||||
"loggedIn": "Conectado como {{userName}}",
|
||||
"noMicPermission": "Não foi possível criar a faixa de microfone. Por favor, conceda permissão para utilizar o microfone.",
|
||||
"noStreams": "Não foi detetado nenhum sinal áudio ou vídeo.",
|
||||
"off": "Gravação parada",
|
||||
"offBy": "{{name}} parou a gravação",
|
||||
@@ -964,7 +967,7 @@
|
||||
"incomingMessage": "Receber uma mensagem",
|
||||
"language": "Idioma",
|
||||
"loggedIn": "Sessão iniciada como {{name}}",
|
||||
"maxStageParticipants": "Número máximo de participantes que podem ser afixados",
|
||||
"maxStageParticipants": "Número máximo de participantes que podem ser afixados (EXPERIMENTAL)",
|
||||
"microphones": "Microfones",
|
||||
"moderator": "Moderador",
|
||||
"more": "Mais",
|
||||
@@ -983,7 +986,7 @@
|
||||
"sounds": "Sons",
|
||||
"speakers": "Participantes",
|
||||
"startAudioMuted": "Todos começam com microfone desligado",
|
||||
"startReactionsMuted": "Sons de reação silenciados para todos",
|
||||
"startReactionsMuted": "Todos começam com os sons de reação desativados",
|
||||
"startVideoMuted": "Todos começam com câmara desligada",
|
||||
"talkWhileMuted": "Falar com o microfone desligado",
|
||||
"title": "Definições"
|
||||
@@ -1003,6 +1006,7 @@
|
||||
"displayName": "Nome de exibição",
|
||||
"displayNamePlaceholderText": "Ex: João Dias",
|
||||
"email": "Email",
|
||||
"emailPlaceholderText": "email@example.com",
|
||||
"goTo": "Ir para",
|
||||
"header": "Configurações",
|
||||
"help": "Ajuda",
|
||||
@@ -1067,7 +1071,6 @@
|
||||
"chat": "Abrir / Fechar chat",
|
||||
"clap": "Aplausos",
|
||||
"collapse": "Colapsar",
|
||||
"dock": "Ancorar na janela principal",
|
||||
"document": "Mudar para documento partilhado",
|
||||
"download": "Descarregar as nossas aplicações",
|
||||
"embedMeeting": "Reunião incorporada",
|
||||
@@ -1121,7 +1124,6 @@
|
||||
"tileView": "Mudar a vista em quadrícula",
|
||||
"toggleCamera": "Mudar a câmara",
|
||||
"toggleFilmstrip": "Mudar a película de filme",
|
||||
"undock": "Desancorar numa janela separada",
|
||||
"videoblur": "Mudar o desfoque de vídeo",
|
||||
"videomute": "Iniciar / Parar câmara",
|
||||
"whiteboard": "Mostrar / Esconder quadro branco"
|
||||
@@ -1140,7 +1142,6 @@
|
||||
"closeReactionsMenu": "Fechar menu de reações",
|
||||
"disableNoiseSuppression": "Desativar a supressão de ruído",
|
||||
"disableReactionSounds": "Pode desactivar os sons de reacção para esta reunião",
|
||||
"dock": "Ancorar na janela principal",
|
||||
"documentClose": "Fechar documento partilhado",
|
||||
"documentOpen": "Abrir documento partilhado",
|
||||
"download": "Descarregar as nossas aplicações",
|
||||
@@ -1214,7 +1215,6 @@
|
||||
"talkWhileMutedPopup": "Está a tentar falar? Está com o microfone desativado.",
|
||||
"tileViewToggle": "Mudar para vista em quadrícula",
|
||||
"toggleCamera": "Mudar a câmara",
|
||||
"undock": "Desancorar numa janela separada",
|
||||
"videoSettings": "Definições de vídeo",
|
||||
"videomute": "Iniciar / Parar câmara"
|
||||
},
|
||||
@@ -1295,6 +1295,7 @@
|
||||
"show": "Mostrar no palco",
|
||||
"showSelfView": "Mostrar autovisualização",
|
||||
"unpinFromStage": "Desafixar",
|
||||
"verify": "Verificar participante",
|
||||
"videoMuted": "Câmara desativada",
|
||||
"videomute": "Participante parou a câmara"
|
||||
},
|
||||
@@ -1362,6 +1363,7 @@
|
||||
"recentList": "Recente",
|
||||
"recentListDelete": "Remover",
|
||||
"recentListEmpty": "A sua lista recente está atualmente vazia. Converse com a sua equipa e encontrará aqui todas as suas reuniões recentes.",
|
||||
"recentMeetings": "As suas reuniões recentes",
|
||||
"reducedUIText": "Bem-vindo ao {{app}}!",
|
||||
"roomNameAllowedChars": "Nome da reunião não deve conter qualquer um destes caracteres: ?. &, :, ', \", %, #.",
|
||||
"roomname": "Digite o nome da sala",
|
||||
@@ -1370,6 +1372,7 @@
|
||||
"settings": "Definições",
|
||||
"startMeeting": "Iniciar reunião",
|
||||
"terms": "Termos",
|
||||
"title": "Videoconferências mais seguras, flexíveis e totalmente gratuitas"
|
||||
"title": "Videoconferências mais seguras, flexíveis e totalmente gratuitas",
|
||||
"upcomingMeetings": "As suas próximas reuniões"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "Öppna eller stäng chattfönster",
|
||||
"clap": "Klappa",
|
||||
"collapse": "Kollaps",
|
||||
"dock": "Docka i huvudfönstret",
|
||||
"document": "Öppna eller stäng delat dokument",
|
||||
"download": "Ladda ner app",
|
||||
"embedMeeting": "Bädda in möte",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "Öppna eller stäng panelvyn",
|
||||
"toggleCamera": "Växla kamera",
|
||||
"toggleFilmstrip": "Växla filmremsa",
|
||||
"undock": "Lossa till ett separat fönster",
|
||||
"videoblur": "Växla videooskärpa",
|
||||
"videomute": "Sätt på eller stäng av mikrofonen",
|
||||
"whiteboard": "Visa/dölj whiteboardtavlan"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "Stäng meny för reaktioner",
|
||||
"disableNoiseSuppression": "Inaktivera brusreducering",
|
||||
"disableReactionSounds": "Du kan inaktivera reaktionsljud för det här mötet",
|
||||
"dock": "Docka i huvudfönstret",
|
||||
"documentClose": "Stäng delat dokument",
|
||||
"documentOpen": "Öppna delat dokument",
|
||||
"download": "Ladda ner vår app",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "Försöker du tala? Din mikrofon är tystad.",
|
||||
"tileViewToggle": "Öppna eller stäng panelvyn",
|
||||
"toggleCamera": "Byta kamera",
|
||||
"undock": "Lossa till ett separat fönster",
|
||||
"videoSettings": "Video inställningar",
|
||||
"videomute": "Aktivera / avaktivera kameran"
|
||||
},
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "Mesajlaşma penceresini aç/kapat",
|
||||
"clap": "Alkış",
|
||||
"collapse": "Daralt",
|
||||
"dock": "Ana pencerede sabitleyin",
|
||||
"document": "Paylaşılan dokümanı aç/kapat",
|
||||
"download": "Uygulamalarımızı indirin",
|
||||
"embedMeeting": "Toplantıyı yerleştir",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "Döşeme görünümünü aç/kapat",
|
||||
"toggleCamera": "Kamerayı değiştir",
|
||||
"toggleFilmstrip": "Film şeridini aç/kapat",
|
||||
"undock": "Ayrı pencereye çıkarın",
|
||||
"videoblur": "Video bulanıklaştırma aç/kapat",
|
||||
"videomute": "Sessiz videoyu aç/kapat",
|
||||
"whiteboard": "Beyaztahtayı Göster / Gizle"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "Reaksiyon menüsünü kapat",
|
||||
"disableNoiseSuppression": "",
|
||||
"disableReactionSounds": "Toplantı için reaksiyon seslerini devre dışı bırak",
|
||||
"dock": "Ana pencerede sabitleyin",
|
||||
"documentClose": "Paylaşılan dokümanı kapat",
|
||||
"documentOpen": "Paylaşılan dokümanı aç",
|
||||
"download": "Uygulamalarımızı indirin",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "Bir şey mi dediniz? Mikrofonunuz kapalı.",
|
||||
"tileViewToggle": "Döşeme görünümünü aç/kapat",
|
||||
"toggleCamera": "Kamerayı değiştir",
|
||||
"undock": "Ayrı pencereye çıkarın",
|
||||
"videoSettings": "Video ayarları",
|
||||
"videomute": "Kamera başlat / durdur"
|
||||
},
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "Показати/приховати чат",
|
||||
"clap": "Овації",
|
||||
"collapse": "Згорнути",
|
||||
"dock": "Закріпити в головному вікні",
|
||||
"document": "Відкрити/закрити спільний документ",
|
||||
"download": "Звантажити мобільний застосунок",
|
||||
"embedMeeting": "Вставити зустріч",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "Увімкнути/вимкнути плитки",
|
||||
"toggleCamera": "Увімкнути/вимкнути камеру",
|
||||
"toggleFilmstrip": "Показати/приховати панель видів",
|
||||
"undock": "Відкріпити в окремому вікні",
|
||||
"videoblur": "Увімкнути/вимкнути розмиття фону",
|
||||
"videomute": "Увімкнути/вимкнути камеру",
|
||||
"whiteboard": "Показати/приховати дошку"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "Закрити меню реакцій",
|
||||
"disableNoiseSuppression": "Вимкнути придушення шуму",
|
||||
"disableReactionSounds": "Ви можете вимкнути звуки реакції для цієї зустрічі",
|
||||
"dock": "Закріпити в головному вікні",
|
||||
"documentClose": "Закрити спільний документ",
|
||||
"documentOpen": "Відкрити спільний документ",
|
||||
"download": "Звантажити мобільний застосунок",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "Намагаєтесь говорити? Ваш мікрофон вимкнено.",
|
||||
"tileViewToggle": "Плитки",
|
||||
"toggleCamera": "Увімкнути/вимкнути камеру",
|
||||
"undock": "Відкріпити в окремому вікні",
|
||||
"videoSettings": "Налаштування камери",
|
||||
"videomute": "Камера"
|
||||
},
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "打开/关闭聊天窗口",
|
||||
"clap": "鼓掌",
|
||||
"collapse": "收起",
|
||||
"dock": "在主窗口停靠",
|
||||
"document": "开启/关闭文件共享",
|
||||
"download": "下载应用",
|
||||
"embedMeeting": "嵌入会议",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "开启/关闭画廊视图",
|
||||
"toggleCamera": "开启/关闭摄像头",
|
||||
"toggleFilmstrip": "开启/关闭幻灯片",
|
||||
"undock": "取消停靠到单独的窗口",
|
||||
"videoblur": "开启/关闭视频模糊",
|
||||
"videomute": "启动/停止摄像头",
|
||||
"whiteboard": "显示/隐藏白板"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "关闭反应菜单",
|
||||
"disableNoiseSuppression": "关闭噪音抑制",
|
||||
"disableReactionSounds": "你可以禁用此会议的反应声音",
|
||||
"dock": "在主窗口停靠",
|
||||
"documentClose": "关闭文件共享",
|
||||
"documentOpen": "开启文件共享",
|
||||
"download": "下载我们的APP",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "你在尝试发言吗? 当前你是静音状态。",
|
||||
"tileViewToggle": "画面模式",
|
||||
"toggleCamera": "开启/关闭摄像头",
|
||||
"undock": "取消停靠到单独的窗口",
|
||||
"videoSettings": "视频设置",
|
||||
"videomute": "开启/关闭摄像头"
|
||||
},
|
||||
|
||||
@@ -1067,7 +1067,6 @@
|
||||
"chat": "打開/關閉聊天視窗",
|
||||
"clap": "鼓掌",
|
||||
"collapse": "收回",
|
||||
"dock": "停靠在主視窗中",
|
||||
"document": "啟用/停用分享文檔",
|
||||
"download": "下載我們的應用程式",
|
||||
"embedMeeting": "嵌入會議",
|
||||
@@ -1121,7 +1120,6 @@
|
||||
"tileView": "啟用/停用畫廊檢視",
|
||||
"toggleCamera": "啟用/停用網路攝影機",
|
||||
"toggleFilmstrip": "啟用/停用簡報",
|
||||
"undock": "取消停靠到單獨的视窗",
|
||||
"videoblur": "啟用/停用畫面模糊",
|
||||
"videomute": "啟用/停用網路攝影機",
|
||||
"whiteboard": "啟用/停用白板"
|
||||
@@ -1140,7 +1138,6 @@
|
||||
"closeReactionsMenu": "關閉反應選單",
|
||||
"disableNoiseSuppression": "停用雜訊抑制",
|
||||
"disableReactionSounds": "您可以停用此會議的反應音效",
|
||||
"dock": "停靠在主視窗中",
|
||||
"documentClose": "關閉分享檔案欄",
|
||||
"documentOpen": "開啟分享檔案欄",
|
||||
"download": "下載我們的應用程式",
|
||||
@@ -1214,7 +1211,6 @@
|
||||
"talkWhileMutedPopup": "您要發言嗎?目前您處於靜音。",
|
||||
"tileViewToggle": "啟動/停用畫廊檢視",
|
||||
"toggleCamera": "啟動/停用網路攝影機",
|
||||
"undock": "取消停靠到單獨的视窗",
|
||||
"videoSettings": "視訊設定",
|
||||
"videomute": "啟動/停用網路攝影機"
|
||||
},
|
||||
|
||||
@@ -147,6 +147,7 @@
|
||||
"bridgeCount": "Server count: ",
|
||||
"codecs": "Codecs (A/V): ",
|
||||
"connectedTo": "Connected to:",
|
||||
"e2eeVerified": "E2EE verified:",
|
||||
"framerate": "Frame rate:",
|
||||
"less": "Show less",
|
||||
"localaddress": "Local address:",
|
||||
@@ -408,6 +409,10 @@
|
||||
"user": "User",
|
||||
"userIdentifier": "User identifier",
|
||||
"userPassword": "User password",
|
||||
"verifyParticipantConfirm": "They match",
|
||||
"verifyParticipantDismiss": "They do not match",
|
||||
"verifyParticipantQuestion": "EXPERIMENTAL: Ask participant {{participantName}} if they see the same content, in the same order.",
|
||||
"verifyParticipantTitle": "User verification",
|
||||
"videoLink": "Video link",
|
||||
"viewUpgradeOptions": "View upgrade options",
|
||||
"viewUpgradeOptionsContent": "To get unlimited access to premium features like recording, transcriptions, RTMP Streaming & more, you'll need to upgrade your plan.",
|
||||
@@ -437,9 +442,6 @@
|
||||
"noResults": "No results found :(",
|
||||
"search": "Search GIPHY"
|
||||
},
|
||||
"helpView": {
|
||||
"title": "Help center"
|
||||
},
|
||||
"incomingCall": {
|
||||
"answer": "Answer",
|
||||
"audioCallTitle": "Incoming call",
|
||||
@@ -511,7 +513,7 @@
|
||||
"mute": "Mute or unmute your microphone",
|
||||
"pushToTalk": "Push to talk",
|
||||
"raiseHand": "Raise or lower your hand",
|
||||
"showSpeakerStats": "Show speaker stats",
|
||||
"showSpeakerStats": "Show participants stats",
|
||||
"toggleChat": "Open or close the chat",
|
||||
"toggleFilmstrip": "Show or hide video thumbnails",
|
||||
"toggleParticipantsPane": "Show or hide the participants pane",
|
||||
@@ -563,7 +565,6 @@
|
||||
"lobby": {
|
||||
"admit": "Admit",
|
||||
"admitAll": "Admit all",
|
||||
"allow": "Allow",
|
||||
"backToKnockModeButton": "Ask to join",
|
||||
"chat": "Chat",
|
||||
"dialogTitle": "Lobby mode",
|
||||
@@ -649,6 +650,8 @@
|
||||
"connectedOneMember": "{{name}} joined the meeting",
|
||||
"connectedThreePlusMembers": "{{name}} and many others joined the meeting",
|
||||
"connectedTwoMembers": "{{first}} and {{second}} joined the meeting",
|
||||
"dataChannelClosed": "Video quality impaired",
|
||||
"dataChannelClosedDescription": "The bridge channel has been disconnected and thus video quality is limited to its lowest setting.",
|
||||
"disconnected": "disconnected",
|
||||
"displayNotifications": "Display notifications for",
|
||||
"focus": "Conference focus",
|
||||
@@ -709,6 +712,8 @@
|
||||
"reactionSoundsForAll": "Disable sounds for all",
|
||||
"screenShareNoAudio": "Share audio box was not checked in the window selection screen.",
|
||||
"screenShareNoAudioTitle": "Couldn't share system audio!",
|
||||
"screenSharingAudioOnlyDescription": "Please note that by sharing your screen you're affecting the \"Best performance\" mode and you will use more bandwidth.",
|
||||
"screenSharingAudioOnlyTitle": "\"Best performance\" mode",
|
||||
"selfViewTitle": "You can always un-hide the self-view from settings",
|
||||
"somebody": "Somebody",
|
||||
"startSilentDescription": "Rejoin the meeting to enable audio",
|
||||
@@ -858,9 +863,6 @@
|
||||
"rejected": "Rejected",
|
||||
"ringing": "Ringing..."
|
||||
},
|
||||
"privacyView": {
|
||||
"title": "Privacy"
|
||||
},
|
||||
"profile": {
|
||||
"avatar": "avatar",
|
||||
"setDisplayNameLabel": "Set your display name",
|
||||
@@ -914,6 +916,7 @@
|
||||
"localRecordingVideoWarning": "To record your video you must have it on when starting the recording",
|
||||
"localRecordingWarning": "Make sure you select the current tab in order to use the right video and audio. The recording is currently limited to 1GB, which is around 100 minutes.",
|
||||
"loggedIn": "Logged in as {{userName}}",
|
||||
"noMicPermission": "Microphone track could not be created. Please grant permission to use the microphone.",
|
||||
"noStreams": "No audio or video stream detected.",
|
||||
"off": "Recording stopped",
|
||||
"offBy": "{{name}} stopped the recording",
|
||||
@@ -964,7 +967,7 @@
|
||||
"incomingMessage": "Incoming message",
|
||||
"language": "Language",
|
||||
"loggedIn": "Logged in as {{name}}",
|
||||
"maxStageParticipants": "Maximum number of participants who can be pinned to the main stage",
|
||||
"maxStageParticipants": "Maximum number of participants who can be pinned to the main stage (EXPERIMENTAL)",
|
||||
"microphones": "Microphones",
|
||||
"moderator": "Moderator",
|
||||
"more": "More",
|
||||
@@ -1036,7 +1039,7 @@
|
||||
"sad": "Sad",
|
||||
"search": "Search",
|
||||
"seconds": "{{count}}s",
|
||||
"speakerStats": "Speaker Stats",
|
||||
"speakerStats": "Participants Stats",
|
||||
"speakerTime": "Speaker Time",
|
||||
"surprised": "Surprised"
|
||||
},
|
||||
@@ -1068,7 +1071,6 @@
|
||||
"chat": "Open / Close chat",
|
||||
"clap": "Clap",
|
||||
"collapse": "Collapse",
|
||||
"dock": "Dock in main window",
|
||||
"document": "Toggle shared document",
|
||||
"download": "Download our apps",
|
||||
"embedMeeting": "Embed meeting",
|
||||
@@ -1117,12 +1119,11 @@
|
||||
"shortcuts": "Toggle shortcuts",
|
||||
"show": "Show on stage",
|
||||
"silence": "Silence",
|
||||
"speakerStats": "Toggle speaker statistics",
|
||||
"speakerStats": "Toggle participants statistics",
|
||||
"surprised": "Surprised",
|
||||
"tileView": "Toggle tile view",
|
||||
"toggleCamera": "Toggle camera",
|
||||
"toggleFilmstrip": "Toggle filmstrip",
|
||||
"undock": "Undock into separate window",
|
||||
"videoblur": "Toggle video blur",
|
||||
"videomute": "Start / Stop camera",
|
||||
"whiteboard": "Show / Hide whiteboard"
|
||||
@@ -1141,7 +1142,6 @@
|
||||
"closeReactionsMenu": "Close reactions menu",
|
||||
"disableNoiseSuppression": "Disable noise suppression",
|
||||
"disableReactionSounds": "You can disable reaction sounds for this meeting",
|
||||
"dock": "Dock in main window",
|
||||
"documentClose": "Close shared document",
|
||||
"documentOpen": "Open shared document",
|
||||
"download": "Download our apps",
|
||||
@@ -1204,7 +1204,7 @@
|
||||
"shortcuts": "View shortcuts",
|
||||
"showWhiteboard": "Show whiteboard",
|
||||
"silence": "Silence",
|
||||
"speakerStats": "Speaker stats",
|
||||
"speakerStats": "Participants stats",
|
||||
"startScreenSharing": "Start screen sharing",
|
||||
"startSubtitles": "Subtitles • {{language}}",
|
||||
"stopAudioSharing": "Stop audio sharing",
|
||||
@@ -1215,7 +1215,6 @@
|
||||
"talkWhileMutedPopup": "Trying to speak? You are muted.",
|
||||
"tileViewToggle": "Toggle tile view",
|
||||
"toggleCamera": "Toggle camera",
|
||||
"undock": "Undock into separate window",
|
||||
"videoSettings": "Video settings",
|
||||
"videomute": "Start / Stop camera"
|
||||
},
|
||||
@@ -1296,6 +1295,7 @@
|
||||
"show": "Show on stage",
|
||||
"showSelfView": "Show self view",
|
||||
"unpinFromStage": "Unpin",
|
||||
"verify": "Verify participant",
|
||||
"videoMuted": "Camera disabled",
|
||||
"videomute": "Participant has stopped the camera"
|
||||
},
|
||||
@@ -1363,6 +1363,7 @@
|
||||
"recentList": "Recent",
|
||||
"recentListDelete": "Delete entry",
|
||||
"recentListEmpty": "Your recent list is currently empty. Chat with your team and you will find all your recent meetings here.",
|
||||
"recentMeetings": "Your recent meetings",
|
||||
"reducedUIText": "Welcome to {{app}}!",
|
||||
"roomNameAllowedChars": "Meeting name should not contain any of these characters: ?, &, :, ', \", %, #.",
|
||||
"roomname": "Enter room name",
|
||||
@@ -1371,6 +1372,7 @@
|
||||
"settings": "Settings",
|
||||
"startMeeting": "Start meeting",
|
||||
"terms": "Terms",
|
||||
"title": "Secure, fully featured, and completely free video conferencing"
|
||||
"title": "Secure, fully featured, and completely free video conferencing",
|
||||
"upcomingMeetings": "Your upcoming meetings"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -644,15 +644,15 @@ function initCommands() {
|
||||
}
|
||||
|
||||
let recordingConfig;
|
||||
const { recordingService } = state['features/base/config'];
|
||||
|
||||
if (!recordingService.enabled && !dropboxToken) {
|
||||
logger.error('Failed starting recording: the recording service is not enabled');
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (mode === JitsiRecordingConstants.mode.FILE) {
|
||||
const { recordingService } = state['features/base/config'];
|
||||
|
||||
if (!recordingService.enabled && !dropboxToken) {
|
||||
logger.error('Failed starting recording: the recording service is not enabled');
|
||||
|
||||
return;
|
||||
}
|
||||
if (dropboxToken) {
|
||||
recordingConfig = {
|
||||
mode: JitsiRecordingConstants.mode.FILE,
|
||||
@@ -1450,6 +1450,22 @@ class API {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify external application that the data channel has been closed.
|
||||
*
|
||||
* @param {number} code - The close code.
|
||||
* @param {string} reason - The close reason.
|
||||
*
|
||||
* @returns {void}
|
||||
*/
|
||||
notifyDataChannelClosed(code: number, reason: string) {
|
||||
this._sendEvent({
|
||||
name: 'data-channel-closed',
|
||||
code,
|
||||
reason
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify external application that the data channel has been opened.
|
||||
*
|
||||
@@ -1655,22 +1671,6 @@ class API {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify external application (if API is enabled) that the iframe
|
||||
* docked state has been changed. The responsibility for implementing
|
||||
* the dock / undock functionality lies with the external application.
|
||||
*
|
||||
* @param {boolean} docked - Whether or not the iframe has been set to
|
||||
* be docked or undocked.
|
||||
* @returns {void}
|
||||
*/
|
||||
notifyIframeDockStateChanged(docked: boolean) {
|
||||
this._sendEvent({
|
||||
name: 'iframe-dock-state-changed',
|
||||
docked
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify external application of a participant, remote or local, being
|
||||
* removed from the conference by another participant.
|
||||
@@ -1920,6 +1920,42 @@ class API {
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify the external application that a PeerConnection lost connectivity. This event is fired only if
|
||||
* a PC `failed` but connectivity to the rtcstats server is still maintained signaling that there is a
|
||||
* problem establishing a link between the app and the JVB server or the remote peer in case of P2P.
|
||||
* Will only fire if rtcstats is enabled.
|
||||
*
|
||||
* @param {boolean} isP2P - Type of PC.
|
||||
* @param {boolean} wasConnected - Was this connection previously connected. If it was it could mean
|
||||
* that connectivity was disrupted, if not it most likely means that the app could not reach
|
||||
* the JVB server, or the other peer in case of P2P.
|
||||
*
|
||||
* @returns {void}
|
||||
*/
|
||||
notifyPeerConnectionFailure(isP2P, wasConnected) {
|
||||
this._sendEvent({
|
||||
name: 'peer-connection-failure',
|
||||
isP2P,
|
||||
wasConnected
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify external application ( if API is enabled) that a participant menu button was clicked.
|
||||
*
|
||||
* @param {string} key - The key of the participant menu button.
|
||||
* @param {string} participantId - The ID of the participant for with the participant menu button was clicked.
|
||||
* @returns {void}
|
||||
*/
|
||||
notifyParticipantMenuButtonClicked(key, participantId) {
|
||||
this._sendEvent({
|
||||
name: 'participant-menu-button-clicked',
|
||||
key,
|
||||
participantId
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Disposes the allocated resources.
|
||||
*
|
||||
|
||||
8
modules/API/external/external_api.js
vendored
@@ -106,6 +106,7 @@ const events = {
|
||||
'camera-error': 'cameraError',
|
||||
'chat-updated': 'chatUpdated',
|
||||
'content-sharing-participants-changed': 'contentSharingParticipantsChanged',
|
||||
'data-channel-closed': 'dataChannelClosed',
|
||||
'data-channel-opened': 'dataChannelOpened',
|
||||
'device-list-changed': 'deviceListChanged',
|
||||
'display-name-change': 'displayNameChange',
|
||||
@@ -116,7 +117,6 @@ const events = {
|
||||
'feedback-submitted': 'feedbackSubmitted',
|
||||
'feedback-prompt-displayed': 'feedbackPromptDisplayed',
|
||||
'filmstrip-display-changed': 'filmstripDisplayChanged',
|
||||
'iframe-dock-state-changed': 'iframeDockStateChanged',
|
||||
'incoming-message': 'incomingMessage',
|
||||
'knocking-participant': 'knockingParticipant',
|
||||
'log': 'log',
|
||||
@@ -134,11 +134,13 @@ const events = {
|
||||
'participant-role-changed': 'participantRoleChanged',
|
||||
'participants-pane-toggled': 'participantsPaneToggled',
|
||||
'password-required': 'passwordRequired',
|
||||
'peer-connection-failure': 'peerConnectionFailure',
|
||||
'prejoin-screen-loaded': 'prejoinScreenLoaded',
|
||||
'proxy-connection-event': 'proxyConnectionEvent',
|
||||
'raise-hand-updated': 'raiseHandUpdated',
|
||||
'recording-link-available': 'recordingLinkAvailable',
|
||||
'recording-status-changed': 'recordingStatusChanged',
|
||||
'participant-menu-button-clicked': 'participantMenuButtonClick',
|
||||
'video-ready-to-close': 'readyToClose',
|
||||
'video-conference-joined': 'videoConferenceJoined',
|
||||
'video-conference-left': 'videoConferenceLeft',
|
||||
@@ -387,10 +389,10 @@ export default class JitsiMeetExternalAPI extends EventEmitter {
|
||||
|
||||
this._frame = document.createElement('iframe');
|
||||
this._frame.allow = 'camera; microphone; display-capture; autoplay; clipboard-write';
|
||||
this._frame.src = this._url;
|
||||
this._frame.name = frameName;
|
||||
this._frame.id = frameName;
|
||||
this._setSize(height, width);
|
||||
this._frame.sandbox = 'allow-scripts allow-same-origin allow-popups allow-forms allow-downloads';
|
||||
this._frame.setAttribute('allowFullScreen', 'true');
|
||||
this._frame.style.border = 0;
|
||||
|
||||
@@ -401,6 +403,8 @@ export default class JitsiMeetExternalAPI extends EventEmitter {
|
||||
}
|
||||
|
||||
this._frame = this._parentNode.appendChild(this._frame);
|
||||
|
||||
this._frame.src = this._url;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,39 +8,6 @@ import Filmstrip from '../videolayout/Filmstrip';
|
||||
import LargeContainer from '../videolayout/LargeContainer';
|
||||
import VideoLayout from '../videolayout/VideoLayout';
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
function bubbleIframeMouseMove(iframe) {
|
||||
const existingOnMouseMove = iframe.contentWindow.onmousemove;
|
||||
|
||||
iframe.contentWindow.onmousemove = function(e) {
|
||||
if (existingOnMouseMove) {
|
||||
existingOnMouseMove(e);
|
||||
}
|
||||
const evt = document.createEvent('MouseEvents');
|
||||
const boundingClientRect = iframe.getBoundingClientRect();
|
||||
|
||||
evt.initMouseEvent(
|
||||
'mousemove',
|
||||
true, // bubbles
|
||||
false, // not cancelable
|
||||
window,
|
||||
e.detail,
|
||||
e.screenX,
|
||||
e.screenY,
|
||||
e.clientX + boundingClientRect.left,
|
||||
e.clientY + boundingClientRect.top,
|
||||
e.ctrlKey,
|
||||
e.altKey,
|
||||
e.shiftKey,
|
||||
e.metaKey,
|
||||
e.button,
|
||||
null // no related element
|
||||
);
|
||||
iframe.dispatchEvent(evt);
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Default Etherpad frame width.
|
||||
@@ -68,7 +35,7 @@ class Etherpad extends LargeContainer {
|
||||
|
||||
iframe.id = 'etherpadIFrame';
|
||||
iframe.src = url;
|
||||
iframe.frameBorder = 0;
|
||||
iframe.style.border = 0;
|
||||
iframe.scrolling = 'no';
|
||||
iframe.width = DEFAULT_WIDTH;
|
||||
iframe.height = DEFAULT_HEIGHT;
|
||||
@@ -76,26 +43,6 @@ class Etherpad extends LargeContainer {
|
||||
|
||||
this.container.appendChild(iframe);
|
||||
|
||||
iframe.onload = function() {
|
||||
// eslint-disable-next-line no-self-assign
|
||||
document.domain = document.domain;
|
||||
bubbleIframeMouseMove(iframe);
|
||||
|
||||
setTimeout(() => {
|
||||
const doc = iframe.contentDocument;
|
||||
|
||||
// the iframes inside of the etherpad are
|
||||
// not yet loaded when the etherpad iframe is loaded
|
||||
const outer = doc.getElementsByName('ace_outer')[0];
|
||||
|
||||
bubbleIframeMouseMove(outer);
|
||||
|
||||
const inner = doc.getElementsByName('ace_inner')[0];
|
||||
|
||||
bubbleIframeMouseMove(inner);
|
||||
}, 2000);
|
||||
};
|
||||
|
||||
this.iframe = iframe;
|
||||
}
|
||||
|
||||
|
||||
@@ -14,11 +14,13 @@ import { i18next } from '../../../react/features/base/i18n';
|
||||
import { JitsiTrackEvents } from '../../../react/features/base/lib-jitsi-meet';
|
||||
import { VIDEO_TYPE } from '../../../react/features/base/media';
|
||||
import {
|
||||
getLocalParticipant,
|
||||
getParticipantById,
|
||||
getParticipantDisplayName,
|
||||
isLocalScreenshareParticipant,
|
||||
isScreenShareParticipant
|
||||
} from '../../../react/features/base/participants';
|
||||
import { getHideSelfView } from '../../../react/features/base/settings/functions.any';
|
||||
import {
|
||||
getVideoTrackByParticipant,
|
||||
trackStreamingStatusChanged
|
||||
@@ -232,6 +234,10 @@ export default class LargeVideoManager {
|
||||
|
||||
preUpdate.then(() => {
|
||||
const { id, stream, videoType, resolve } = this.newStreamData;
|
||||
const state = APP.store.getState();
|
||||
const shouldHideSelfView = getHideSelfView(state);
|
||||
const localId = getLocalParticipant(state)?.id;
|
||||
|
||||
|
||||
// FIXME this does not really make sense, because the videoType
|
||||
// (camera or desktop) is a completely different thing than
|
||||
@@ -245,13 +251,16 @@ export default class LargeVideoManager {
|
||||
// eslint-disable-next-line no-shadow
|
||||
const container = this.getCurrentContainer();
|
||||
|
||||
if (shouldHideSelfView && localId === id) {
|
||||
return container.hide();
|
||||
}
|
||||
|
||||
container.setStream(id, stream, videoType);
|
||||
|
||||
// change the avatar url on large
|
||||
this.updateAvatar();
|
||||
|
||||
const isVideoMuted = !stream || stream.isMuted();
|
||||
const state = APP.store.getState();
|
||||
const participant = getParticipantById(state, id);
|
||||
const videoTrack = getVideoTrackByParticipant(state, participant);
|
||||
|
||||
|
||||
@@ -158,7 +158,6 @@ export default {
|
||||
* Determines if currently selected media devices should be changed after
|
||||
* list of available devices has been changed.
|
||||
* @param {MediaDeviceInfo[]} newDevices
|
||||
* @param {boolean} isSharingScreen
|
||||
* @param {JitsiLocalTrack} localVideo
|
||||
* @param {JitsiLocalTrack} localAudio
|
||||
* @returns {{
|
||||
@@ -169,13 +168,12 @@ export default {
|
||||
*/
|
||||
getNewMediaDevicesAfterDeviceListChanged( // eslint-disable-line max-params
|
||||
newDevices,
|
||||
isSharingScreen,
|
||||
localVideo,
|
||||
localAudio,
|
||||
newLabels) {
|
||||
return {
|
||||
audioinput: getNewAudioInputDevice(newDevices, localAudio, newLabels),
|
||||
videoinput: isSharingScreen ? undefined : getNewVideoInputDevice(newDevices, localVideo, newLabels),
|
||||
videoinput: getNewVideoInputDevice(newDevices, localVideo, newLabels),
|
||||
audiooutput: getNewAudioOutputDevice(newDevices)
|
||||
};
|
||||
},
|
||||
|
||||
793
package-lock.json
generated
45
package.json
@@ -28,15 +28,15 @@
|
||||
"@atlaskit/tooltip": "17.1.2",
|
||||
"@emotion/react": "11.10.0",
|
||||
"@emotion/styled": "11.10.0",
|
||||
"@giphy/js-fetch-api": "4.1.2",
|
||||
"@giphy/js-fetch-api": "4.7.1",
|
||||
"@giphy/react-components": "5.6.0",
|
||||
"@giphy/react-native-sdk": "1.7.0",
|
||||
"@hapi/bourne": "2.0.0",
|
||||
"@jitsi/excalidraw": "https://github.com/jitsi/excalidraw/releases/download/v0.0.11/jitsi-excalidraw-0.0.11.tgz",
|
||||
"@jitsi/js-utils": "2.0.4",
|
||||
"@jitsi/excalidraw": "https://github.com/jitsi/excalidraw/releases/download/v0.0.12/jitsi-excalidraw-0.0.12.tgz",
|
||||
"@jitsi/js-utils": "2.0.5",
|
||||
"@jitsi/logger": "2.0.0",
|
||||
"@jitsi/rnnoise-wasm": "0.1.0",
|
||||
"@jitsi/rtcstats": "9.4.1",
|
||||
"@jitsi/rtcstats": "9.5.1",
|
||||
"@matrix-org/olm": "https://gitlab.matrix.org/api/v4/projects/27/packages/npm/@matrix-org/olm/-/@matrix-org/olm-3.2.3.tgz",
|
||||
"@microsoft/microsoft-graph-client": "3.0.1",
|
||||
"@mui/material": "5.10.2",
|
||||
@@ -46,12 +46,11 @@
|
||||
"@react-native-community/netinfo": "7.1.7",
|
||||
"@react-native-community/slider": "4.1.12",
|
||||
"@react-native-google-signin/google-signin": "7.0.4",
|
||||
"@react-native-masked-view/masked-view": "0.2.6",
|
||||
"@react-navigation/bottom-tabs": "6.0.9",
|
||||
"@react-navigation/elements": "1.2.1",
|
||||
"@react-navigation/material-top-tabs": "6.0.6",
|
||||
"@react-navigation/native": "6.0.6",
|
||||
"@react-navigation/stack": "6.2.2",
|
||||
"@react-navigation/bottom-tabs": "6.5.3",
|
||||
"@react-navigation/elements": "1.3.13",
|
||||
"@react-navigation/material-top-tabs": "6.5.2",
|
||||
"@react-navigation/native": "6.1.2",
|
||||
"@react-navigation/stack": "6.3.11",
|
||||
"@svgr/webpack": "6.3.1",
|
||||
"@tensorflow/tfjs-backend-wasm": "3.13.0",
|
||||
"@tensorflow/tfjs-core": "3.13.0",
|
||||
@@ -60,7 +59,7 @@
|
||||
"@types/w3c-image-capture": "1.0.6",
|
||||
"@vladmandic/human": "2.6.5",
|
||||
"@vladmandic/human-models": "2.5.9",
|
||||
"@xmldom/xmldom": "0.7.6",
|
||||
"@xmldom/xmldom": "0.7.9",
|
||||
"amplitude-js": "8.2.1",
|
||||
"base64-js": "1.3.1",
|
||||
"bc-css-flags": "3.0.0",
|
||||
@@ -79,7 +78,7 @@
|
||||
"js-md5": "0.6.1",
|
||||
"js-sha512": "0.8.0",
|
||||
"jwt-decode": "2.2.0",
|
||||
"lib-jitsi-meet": "https://github.com/jitsi/lib-jitsi-meet/releases/download/v1533.0.0+7b257686/lib-jitsi-meet.tgz",
|
||||
"lib-jitsi-meet": "https://github.com/jitsi/lib-jitsi-meet/releases/download/v1578.0.0+5855ca72/lib-jitsi-meet.tgz",
|
||||
"lodash": "4.17.21",
|
||||
"moment": "2.29.4",
|
||||
"moment-duration-format": "2.2.2",
|
||||
@@ -93,23 +92,22 @@
|
||||
"react-focus-lock": "2.5.1",
|
||||
"react-i18next": "10.11.4",
|
||||
"react-linkify": "1.0.0-alpha",
|
||||
"react-native": "0.68.4",
|
||||
"react-native": "0.68.5",
|
||||
"react-native-background-timer": "2.4.1",
|
||||
"react-native-calendar-events": "2.2.0",
|
||||
"react-native-callstats": "3.73.7",
|
||||
"react-native-collapsible": "1.6.0",
|
||||
"react-native-default-preference": "1.4.4",
|
||||
"react-native-device-info": "8.4.8",
|
||||
"react-native-dialog": "https://github.com/jitsi/react-native-dialog/releases/download/v9.2.2-jitsi.1/react-native-dialog-9.2.2.tgz",
|
||||
"react-native-gesture-handler": "2.1.0",
|
||||
"react-native-gesture-handler": "2.9.0",
|
||||
"react-native-get-random-values": "1.7.2",
|
||||
"react-native-immersive": "2.0.0",
|
||||
"react-native-keep-awake": "4.0.0",
|
||||
"react-native-orientation-locker": "1.5.0",
|
||||
"react-native-pager-view": "5.4.9",
|
||||
"react-native-paper": "4.11.1",
|
||||
"react-native-paper": "5.1.2",
|
||||
"react-native-performance": "2.1.0",
|
||||
"react-native-safe-area-context": "3.3.2",
|
||||
"react-native-safe-area-context": "4.4.1",
|
||||
"react-native-screens": "3.13.1",
|
||||
"react-native-sound": "0.11.1",
|
||||
"react-native-splash-screen": "3.3.0",
|
||||
@@ -119,20 +117,20 @@
|
||||
"react-native-url-polyfill": "1.3.0",
|
||||
"react-native-video": "https://git@github.com/react-native-video/react-native-video#7c48ae7c8544b2b537fb60194e9620b9fcceae52",
|
||||
"react-native-watch-connectivity": "1.0.11",
|
||||
"react-native-webrtc": "1.106.1",
|
||||
"react-native-webrtc": "106.0.5",
|
||||
"react-native-webview": "11.15.1",
|
||||
"react-native-youtube-iframe": "2.2.1",
|
||||
"react-redux": "7.1.0",
|
||||
"react-textarea-autosize": "8.3.0",
|
||||
"react-transition-group": "2.4.0",
|
||||
"react-window": "1.8.6",
|
||||
"react-youtube": "7.13.1",
|
||||
"react-youtube": "10.1.0",
|
||||
"redux": "4.0.4",
|
||||
"redux-thunk": "2.4.1",
|
||||
"resemblejs": "4.0.0",
|
||||
"seamless-scroll-polyfill": "2.1.8",
|
||||
"styled-components": "3.4.9",
|
||||
"tss-react": "4.0.0",
|
||||
"tss-react": "4.4.4",
|
||||
"util": "0.12.1",
|
||||
"uuid": "8.3.2",
|
||||
"wasm-check": "2.0.1",
|
||||
@@ -152,7 +150,9 @@
|
||||
"@types/js-md5": "0.4.3",
|
||||
"@types/lodash": "4.14.182",
|
||||
"@types/react": "17.0.14",
|
||||
"@types/react-native": "0.68.7",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"@types/react-linkify": "1.0.1",
|
||||
"@types/react-native": "0.68.9",
|
||||
"@types/react-redux": "7.1.24",
|
||||
"@types/react-window": "1.8.5",
|
||||
"@types/unorm": "1.3.28",
|
||||
@@ -199,7 +199,8 @@
|
||||
"tsc:web": "tsc --noEmit --project tsconfig.web.json",
|
||||
"tsc:native": "tsc --noEmit --project tsconfig.native.json",
|
||||
"tsc:ci": "npm run tsc:web && npm run tsc:native",
|
||||
"lint:ci": "eslint --ext .js,.ts,.tsx --max-warnings 0 . && npm run tsc:ci",
|
||||
"lint:ci": "eslint --ext .js,.ts,.tsx --max-warnings 0 . && npm run tsc:ci && npm run lint:lang",
|
||||
"lint:lang": "for file in lang/*.json; do npx --yes jsonlint -q $file || exit 1; done",
|
||||
"lang-sort": "./resources/lang-sort.sh",
|
||||
"lint-fix": "eslint --ext .js,.ts,.tsx --max-warnings 0 --fix .",
|
||||
"postinstall": "patch-package --error-on-fail && jetify",
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/node_modules/react-native-gesture-handler/android/build.gradle b/node_modules/react-native-gesture-handler/android/build.gradle
|
||||
index 8afc3d5..4b1f721 100644
|
||||
--- a/node_modules/react-native-gesture-handler/android/build.gradle
|
||||
+++ b/node_modules/react-native-gesture-handler/android/build.gradle
|
||||
@@ -26,7 +26,7 @@ def shouldUseCommonInterfaceFromReanimated() {
|
||||
def json = new JsonSlurper().parseText(inputFile.text)
|
||||
def reanimatedVersion = json.version as String
|
||||
def (major, minor, patch) = reanimatedVersion.tokenize('.')
|
||||
- return Integer.parseInt(minor) >= 3
|
||||
+ return Integer.parseInt(major) >= 2 && Integer.parseInt(minor) >= 3
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
@@ -1,5 +1,3 @@
|
||||
/* eslint-disable lines-around-comment */
|
||||
|
||||
import logger from '../logger';
|
||||
|
||||
import AbstractHandler, { IEvent } from './AbstractHandler';
|
||||
@@ -103,8 +101,10 @@ export default class AmplitudeHandler extends AbstractHandler {
|
||||
|
||||
return {
|
||||
sessionId: amplitude.getInstance().getSessionId(),
|
||||
|
||||
// @ts-ignore
|
||||
deviceId: amplitude.getInstance().options.deviceId,
|
||||
|
||||
// @ts-ignore
|
||||
userId: amplitude.getInstance().options.userId
|
||||
};
|
||||
|
||||
@@ -21,6 +21,7 @@ import { isVpaasMeeting } from '../jaas/functions';
|
||||
import { clearNotifications, showNotification } from '../notifications/actions';
|
||||
import { NOTIFICATION_TIMEOUT_TYPE } from '../notifications/constants';
|
||||
import { setFatalError } from '../overlay/actions';
|
||||
import { isWelcomePageEnabled } from '../welcome/functions';
|
||||
|
||||
import {
|
||||
redirectToStaticPage,
|
||||
@@ -203,7 +204,7 @@ export function maybeRedirectToWelcomePage(options: { feedbackSubmitted?: boolea
|
||||
|
||||
// if Welcome page is enabled redirect to welcome page after 3 sec, if
|
||||
// there is a thank you message to be shown, 0.5s otherwise.
|
||||
if (getState()['features/base/config'].enableWelcomePage) {
|
||||
if (isWelcomePageEnabled(getState())) {
|
||||
setTimeout(
|
||||
() => {
|
||||
dispatch(redirectWithStoredParams('/'));
|
||||
|
||||
@@ -2,7 +2,7 @@ import { NativeModules } from 'react-native';
|
||||
|
||||
import { IStateful } from '../base/app/types';
|
||||
import { toState } from '../base/redux/functions';
|
||||
import { getServerURL } from '../base/settings/functions';
|
||||
import { getServerURL } from '../base/settings/functions.native';
|
||||
|
||||
export * from './functions.any';
|
||||
|
||||
|
||||