Compare commits

...

196 Commits

Author SHA1 Message Date
Rich Brown
1a40672427 Fix the command to update jitsi-stable.list (#5731)
* Fix the command to update jitsi-stable.list

This command uses the technique recommended below that will always work. (See "Safest Solution (#3)") 

https://askubuntu.com/questions/185268/permission-denied-etc-apt-sources-list

* Update quick-install.md

remove "-a" argument from `tee`  to remove merge conflict
2020-05-02 07:50:34 +02:00
Julian1203
77d38731e9 Update main-de.json
Fixed typo
2020-05-01 10:25:21 -05:00
Hristo Terezov
13f76c2cce fix(follow-me): disable the auto pin on SS 2020-04-30 16:58:22 -05:00
Jaya Allamsetty
9ad87f3706 fix: Add safari to optimal browser lists 2020-04-30 17:39:07 -04:00
damencho
eea8fef044 Initial Lobby backend implementation. 2020-04-30 16:34:46 -05:00
Jaya Allamsetty
c2cb4ea6b6 deps: update ljm 2020-04-30 15:29:04 -04:00
Jaya Allamsetty
d6cf0c0afd deps: bump lib-jitsi-meet 2020-04-30 12:56:31 -04:00
Fabian Rodriguez
f5faf5bbaa Update main-es.json
Added missing strings for Mute Everyone feature, other small fixes.
2020-04-30 10:16:05 -05:00
Valso
363982fad4 Update languages-eo.json
Add correct translation for  "el": "Greka",
2020-04-30 10:15:37 -05:00
Julian1203
62f47d5b87 Update main-de.json
Small improvement
2020-04-30 10:15:14 -05:00
Julian1203
223e8560ca lang: fixes for German 2020-04-30 14:44:06 +02:00
tmoldovan8x8
2085851179 android: persist Amplitude device id when not set externally
Co-authored-by: Titus-Andrei Moldovan <moldovan.titus@gmail.com>
2020-04-30 13:12:09 +02:00
Ferdi Bayrak
47bc6f0470 Added Turkish language on BuiltinLanguages.native.js (#5965)
* Added Turkish lang

Added Turkish lang

* Update BuiltinLanguages.native.js

* Update BuiltinLanguages.native.js
2020-04-29 16:27:37 -05:00
Tao Sasaki
c5686386fa Fix strange Japanese text (#6303) 2020-04-29 15:41:34 -05:00
adrmzz
e1cededb76 Adding Sardinian (#5984)
* Create main-sc.json

* Create languages-sc.json

* Update languages.json

* Update main-sc.json

(just a couple of minor edits to the translation)

* Update BuiltinLanguages.native.js

adding Sardinian

* trailing spaces corrected

* Update BuiltinLanguages.native.js

* Update BuiltinLanguages.native.js

fixed spaces

* Update main-sc.json
2020-04-29 14:07:51 -05:00
t7yang
268dc33324 polish zh-TW translation (#5678)
* polish zh-TW translation

Fix typos, use the correct and localize terms, replace some translations to make it fluent for native speaker.

* fix syntax error
2020-04-29 11:19:59 -05:00
Oleksa
baaf55a2ab Update languages.json 2020-04-29 10:30:27 -05:00
James Baird
a8252103ea Fix grammar on unsupported browser message
It should read "Chrome or Firefox" not "Chrome and Firefox", as you only need to use a single browser, not both.
2020-04-29 10:30:06 -05:00
zibens
b0ab51af90 Add files via upload
Introducing Latvian language, to make it more widespread in Latvia
2020-04-29 10:29:08 -05:00
tzagim
69b20cd945 Add Hebrew Translation & Fix TYPO (#5907)
* Create languages-he.json

Hebrew list languages

* Update languages-he.json

TYPO

* Update main-he.json

1/5

* Update main-he.json

2/5

* Update main-he.json

4/5

* Update main-he.json

Pause

* Update main-he.json

* Update main-he.json

Finish

* Update main.json

TYPO

* Update main.json

TYPO

* Update main.json

TYPO

* Update main-he.json

Add missing strings

* Update languages-he.json
2020-04-29 10:26:31 -05:00
ariadi
8bb0141c1a Translation in Indonesian (#5913)
* Add Indonesian

* Indonesian translation

* Update languages-id.json

* Create main-id.json

* Update languages-id.json

* Update main-id.json

* Update main-id.json
2020-04-29 10:25:56 -05:00
James.zhu
ed766c6fe2 Update main-zhCN.json
I will update the files for some mistakes in chinese. I would late update whole file in chinese.
2020-04-29 10:25:05 -05:00
chipechop
d883bae925 Update main-it.json
Simplified Mobile mani menu, with more fluent wording.
2020-04-29 10:23:21 -05:00
Joan Montané
62d3d1f294 Update BuiltinLanguages.native.js 2020-04-29 10:22:59 -05:00
Joan Montané
dbfed573ac Add Catalan entry on BuiltinLanguages.native.js 2020-04-29 10:22:59 -05:00
Daniel Neumann
640b9bfd52 added missing translations 2020-04-29 10:20:26 -05:00
Saúl Ibarra Corretgé
dac6d9d63c aandroid: raise SDK version 2020-04-29 17:20:11 +02:00
Daniel Ortega
0662da58b4 Fixing wrong translation in muteParticipantButton button 2020-04-29 10:20:04 -05:00
Daniel Ortega
d7d4ea819f Adding missing question mark 2020-04-29 10:20:04 -05:00
Daniel Ortega
2c6cac6526 Adding mute action related missing translations in spanish 2020-04-29 10:20:04 -05:00
Milan Kral
f53251f104 Enable Slovak translation.
Add Slovak translation to BuiltinLanguages

Follow up to #5523
2020-04-29 10:19:40 -05:00
Jelrik van Hal
8e01f769d9 Adds Dutch translation for "toolbar.muteEveryone" 2020-04-29 10:19:21 -05:00
Özcan Oğuz
8c4656a3c8 Wrong translation fixed 2020-04-29 10:18:36 -05:00
cayenne17
a5a36aa1e1 lang: translation improvements for French 2020-04-29 10:18:16 -05:00
Saúl Ibarra Corretgé
6939939a0f deps: update lib-jitsi-meet
Fixes mobile when importing E2EE.
2020-04-29 17:17:22 +02:00
Marc Laporte
c60671e008 Fix a typo 2020-04-29 10:16:59 -05:00
Valso
8e4e1f139a Update languages-eo.json 2020-04-29 10:16:38 -05:00
Anugoon Chotigarn
b608051177 Add Thailand (th) translation 2020-04-29 10:16:18 -05:00
Дамян Минков
2dad7e920b Merge weblate translations (#6461)
* Translated using Weblate (French)

Currently translated at 96.1% (646 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 96.7% (650 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 96.7% (650 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 96.7% (650 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.6% (663 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.6% (663 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.5% (662 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.5% (662 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.6% (663 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.6% (663 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 99.2% (667 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 99.2% (667 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 99.1% (666 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 99.1% (666 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (Italian)

Currently translated at 75.0% (24 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/it/

* Translated using Weblate (German)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (German)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (German)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (German)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (Russian)

Currently translated at 97.7% (657 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ru/

* Translated using Weblate (Russian)

Currently translated at 97.7% (657 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ru/

* Translated using Weblate (German)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (German)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/hu/

* Translated using Weblate (Swedish)

Currently translated at 84.8% (570 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.8% (570 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 81.5% (548 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 81.8% (550 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 81.9% (551 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 81.9% (551 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 81.9% (551 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 82.1% (552 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 82.1% (552 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 82.2% (553 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 82.2% (553 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 83.4% (561 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 83.4% (561 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.3% (567 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.3% (567 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.5% (568 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.9% (571 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.9% (571 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.9% (571 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 84.9% (571 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 85.1% (572 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 85.1% (572 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 85.2% (573 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 85.2% (573 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.0% (578 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.0% (578 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 85.7% (576 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.3% (580 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.3% (580 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.7% (583 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.7% (583 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 87.7% (590 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 87.7% (590 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 86.9% (584 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 87.6% (589 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 91.5% (615 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 91.5% (615 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 88.8% (597 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 88.8% (597 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 90.9% (611 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 90.9% (611 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 90.9% (611 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 90.9% (611 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 91.3% (614 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Swedish)

Currently translated at 91.3% (614 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Basque)

Currently translated at 38.0% (256 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 38.6% (260 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 38.8% (261 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 39.2% (264 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 39.2% (264 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 39.5% (266 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 39.8% (268 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 40.1% (270 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 41.0% (276 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 41.3% (278 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 41.2% (277 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 41.8% (281 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 42.1% (283 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 43.3% (291 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 43.3% (291 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 43.7% (294 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.0% (296 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.1% (297 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.1% (297 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.3% (298 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.4% (299 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 44.9% (302 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 45.3% (305 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 45.5% (306 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 45.6% (307 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 45.6% (307 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 45.8% (308 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 46.1% (310 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 46.4% (312 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 46.7% (314 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 47.1% (317 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 47.1% (317 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 47.4% (319 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 48.2% (324 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 47.9% (322 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 48.2% (324 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 48.2% (324 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 49.5% (333 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 48.9% (329 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 50.1% (337 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 50.2% (338 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 50.0% (336 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 50.4% (339 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 51.6% (347 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 51.1% (344 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 50.8% (342 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 51.1% (344 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 52.5% (353 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 51.7% (348 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 52.8% (355 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 51.9% (349 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 52.3% (352 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 54.4% (366 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 53.7% (361 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 53.8% (362 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 54.9% (369 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 54.4% (366 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 54.7% (368 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 93.8% (631 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/zh_Hant/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 93.8% (631 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/zh_Hant/

* Translated using Weblate (Basque)

Currently translated at 55.8% (375 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 56.8% (382 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 55.9% (376 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 57.7% (388 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 57.7% (388 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 58.9% (396 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 57.8% (389 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 58.1% (391 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 60.4% (406 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.0% (410 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 59.5% (400 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 59.9% (403 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 60.7% (408 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.0% (410 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 60.8% (409 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.7% (415 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.1% (411 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.0% (410 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.9% (416 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.6% (421 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.3% (412 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.7% (415 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.0% (417 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.2% (418 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 61.9% (416 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.2% (418 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.3% (419 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 62.3% (419 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 63.2% (425 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 63.3% (426 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 63.3% (426 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 63.5% (427 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 64.4% (433 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 63.9% (430 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 64.8% (436 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 64.8% (436 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 64.5% (434 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 65.7% (442 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 65.0% (437 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 66.2% (445 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 65.9% (443 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 66.2% (445 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 66.3% (446 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 67.1% (451 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 67.8% (456 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 67.5% (454 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 67.5% (454 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 69.7% (469 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 69.6% (468 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 70.0% (471 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 70.2% (472 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 70.5% (474 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Galician)

Currently translated at 93.8% (631 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/gl/

* Translated using Weblate (English (United Kingdom))

Currently translated at 91.3% (614 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en_GB/

* Translated using Weblate (English (United Kingdom))

Currently translated at 91.3% (614 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en_GB/

* Translated using Weblate (English (United Kingdom))

Currently translated at 86.4% (581 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en_GB/

* Translated using Weblate (English)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en/

* Translated using Weblate (Afrikaans)

Currently translated at 63.6% (428 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/af/

* Translated using Weblate (Bulgarian)

Currently translated at 98.5% (662 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/bg/

* Translated using Weblate (Catalan)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ca/

* Translated using Weblate (Czech)

Currently translated at 72.1% (485 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Danish)

Currently translated at 94.7% (637 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/da/

* Translated using Weblate (German)

Currently translated at 98.9% (665 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/de/

* Translated using Weblate (Esperanto)

Currently translated at 42.1% (283 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eo/

* Translated using Weblate (English (United Kingdom))

Currently translated at 88.8% (597 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en_GB/

* Translated using Weblate (Spanish)

Currently translated at 95.6% (643 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/es/

* Translated using Weblate (Spanish (American))

Currently translated at 97.3% (654 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/es_US/

* Translated using Weblate (Spanish)

Currently translated at 95.6% (643 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/es/

* Translated using Weblate (Estonian)

Currently translated at 98.2% (660 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/et/

* Translated using Weblate (Finnish)

Currently translated at 80.6% (542 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fi/

* Translated using Weblate (French)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr/

* Translated using Weblate (French (Canada))

Currently translated at 93.6% (629 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/fr_CA/

* Translated using Weblate (Galician)

Currently translated at 94.4% (635 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/gl/

* Translated using Weblate (Croatian)

Currently translated at 53.7% (361 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/hr/

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/hu/

* Translated using Weblate (Armenian)

Currently translated at 36.4% (245 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/hy/

* Translated using Weblate (Italian)

Currently translated at 84.8% (570 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/it/

* Translated using Weblate (Japanese)

Currently translated at 70.8% (476 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ja/

* Translated using Weblate (Kabyle)

Currently translated at 20.5% (138 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/kab/

* Translated using Weblate (Korean)

Currently translated at 52.8% (355 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ko/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 73.0% (491 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/nb_NO/

* Translated using Weblate (Dutch)

Currently translated at 86.7% (583 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/nl/

* Translated using Weblate (Occitan)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/oc/

* Translated using Weblate (Polish)

Currently translated at 90.3% (607 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/pl/

* Translated using Weblate (Occitan)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/oc/

* Translated using Weblate (Portuguese (Brazil))

Currently translated at 99.1% (666 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/pt_BR/

* Translated using Weblate (Russian)

Currently translated at 97.9% (658 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ru/

* Translated using Weblate (Slovak)

Currently translated at 19.6% (132 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sk/

* Translated using Weblate (Slovenian)

Currently translated at 14.8% (100 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sl/

* Translated using Weblate (Swedish)

Currently translated at 93.4% (628 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sv/

* Translated using Weblate (Turkish)

Currently translated at 48.3% (325 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/tr/

* Translated using Weblate (Turkish)

Currently translated at 48.3% (325 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/tr/

* Translated using Weblate (Vietnamese)

Currently translated at 82.2% (553 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/vi/

* Translated using Weblate (Chinese (Simplified))

Currently translated at 85.2% (573 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/zh_Hans/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/ca/

* Translated using Weblate (Chinese (Traditional))

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/zh_Hant/

* Translated using Weblate (German)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/de/

* Translated using Weblate (Spanish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/es/

* Translated using Weblate (English (United Kingdom))

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/en_GB/

* Translated using Weblate (French)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/fr/

* Translated using Weblate (Finnish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/fi/

* Translated using Weblate (French (Canada))

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/fr_CA/

* Translated using Weblate (Italian)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/it/

* Translated using Weblate (Italian)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/it/

* Translated using Weblate (Galician)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/gl/

* Translated using Weblate (Turkish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/tr/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 56.2% (18 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/nb_NO/

* Translated using Weblate (Occitan)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/oc/

* Translated using Weblate (Swedish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/sv/

* Translated using Weblate (Icelandic)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/is/

* Translated using Weblate (Sardinian)

Currently translated at 99.1% (666 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sc/

* Translated using Weblate (Ukrainian)

Currently translated at 97.9% (658 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Translated using Weblate (Belarusian)

Currently translated at 95.0% (639 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/be/

* Translated using Weblate (Basque)

Currently translated at 74.1% (498 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (English (United Kingdom))

Currently translated at 89.2% (600 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/en_GB/

* Translated using Weblate (Basque)

Currently translated at 86.1% (579 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

* Translated using Weblate (Basque)

Currently translated at 87.5% (588 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/eu/

Co-authored-by: anonymous <noreply@weblate.org>
Co-authored-by: Jeannette L <j.lavoie@net-c.ca>
Co-authored-by: Artem <KovalevArtem.ru@gmail.com>
Co-authored-by: Gyuris Gellért <bubu@ujevangelizacio.hu>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Leif-Jöran Olsson <info@friprogramvarusyndikatet.se>
Co-authored-by: khalasa47 <khalash@protonmail.com>
Co-authored-by: BiziA <adrianpena.hf@gmail.com>
Co-authored-by: Osoitz <oelkoro@gmail.com>
Co-authored-by: 麋悟BigELK176 <bigelk176@gmail.com>
Co-authored-by: Iñigo Zendegi Urzelai <izendegi@gmail.com>
Co-authored-by: Ciarán Ainsworth <ciaranainsworth@posteo.net>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Co-authored-by: Xosé M <xosem@disroot.org>
Co-authored-by: Quentin PAGÈS <quentinantonin@free.fr>
Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Co-authored-by: Joan Montané <joan@montane.cat>
2020-04-29 10:15:22 -05:00
Daniil Gentili
be2d20e20e doc: fix echo when running with sudo 2020-04-29 14:57:21 +02:00
Potecaru Tudor
fd11c36bc3 fix: guard for cases where user hits leave before being connected to the room
Co-authored-by: Tudor-Ovidiu Avram <tudor.potecaru@8x8.com>
2020-04-29 14:52:44 +02:00
Saúl Ibarra Corretgé
60148b6439 interface_config: add trailing commas and end marker 2020-04-29 13:07:55 +02:00
Saúl Ibarra Corretgé
62b4c97423 rn: raise SDK version to 2.8.1 2020-04-29 11:44:17 +02:00
Saúl Ibarra Corretgé
f08fa1e374 deps: update lib-jitsi-meet 2020-04-29 11:33:42 +02:00
Saúl Ibarra Corretgé
e5b563ba46 rn,flags: add more feature flags to toggle specific behavior
- Invite funcionality (altogether)
- Recording
- Live streaming
- Meeting name
- Meeting password
2020-04-29 10:19:17 +02:00
Pablo Espinosa
c41047344f lang: fixes for Spanish translation 2020-04-29 10:04:49 +02:00
Saúl Ibarra Corretgé
6ae148403d misc: drop the pre-commit hook
GH Actions now runs the linter.
2020-04-28 17:43:11 +02:00
Jaya Allamsetty
b5676c3729 feat(video-quality):control sender resolution based on user pref 2020-04-28 10:17:06 -04:00
drimovecz
3ab6b97b8b Added module for filtering transcription requests from presence stanz… (#6404)
* Added module for filtering transcription requests from presence stanzas when the users making the requests do not have access to the transcription feature

* Add comments explaining the functionality and configuration for the transcription filtering module.

Co-authored-by: drimovecz <daniel.rimovecz@8x8.com>
2020-04-28 09:11:58 -05:00
Saúl Ibarra Corretgé
5ea8e198c7 e2ee: add label if all participants have E2EE enabled 2020-04-28 16:11:39 +02:00
Saúl Ibarra Corretgé
2ad6bfbc20 e2ee: broadcast e2ee enabled status using presnce 2020-04-28 16:11:39 +02:00
Saúl Ibarra Corretgé
6ce27ef10d misc: set worker names 2020-04-28 12:02:58 +02:00
Ricardo Santana
93ef8495ca fix locale detect error on mobile apps (#5956) 2020-04-27 17:38:57 +02:00
Hristo Terezov
94a15914d0 fix(document.title): use URL decoded room name. 2020-04-25 10:27:47 -05:00
Hristo Terezov
851976ebdf fix(RemoteVideo): .oncanplay -> addEventListener
Replaces the .oncanplay listener with addEventListener('canplay', ...).
This is needed because third party libraries (for example callstats)
are brutally overriding the .oncanplay property and replacing our
listener.
2020-04-24 16:04:32 -05:00
Ruben Kerkhof
57bb2ead36 Conference timer should start counting at 0
It's starting at 1 hour because os.time(os.date("!*t") returns the wrong
time depending on system timezone. os.time() already returns the number
of seconds since epoch in UTC so just use that.

Fixes #5595
2020-04-23 10:22:02 -05:00
Saúl Ibarra Corretgé
027c6ddad0 fastlane,ios: make contact information configurable 2020-04-23 12:43:59 +02:00
Emil Ivov
8648a5a998 Redirect security section to jitsi.org/security 2020-04-22 12:58:18 -05:00
Julian1203
c83b30558d lang: fixes for German 2020-04-22 15:44:09 +02:00
Julian1203
057dfc8194 lang: fixes for German 2020-04-22 15:42:18 +02:00
Fabian Rodriguez
5eae0b58e9 lang: fixes for Spanish (US) 2020-04-22 15:40:57 +02:00
Fabian Rodriguez
1538107e93 lang: fixes for Spanish translation 2020-04-22 15:28:46 +02:00
Bettenbuk Zoltan
cd1862a2d3 fix: private message open 2020-04-22 12:09:07 +02:00
Eduard Itrich
147a076f5d doc: fixed typo in port number of jicofo 2020-04-22 10:57:34 +02:00
Hristo Terezov
9bdaea4069 fix(avatar): use text instead of foreign object.
Reason: On Safari the foreign object is not scaled correctly.
2020-04-21 10:12:51 -05:00
Jonathan Scholz
547d1547bb fix(dialog): use height behavior in KeyboardAvoidingView 2020-04-21 15:13:08 +02:00
Jonathan Scholz
39853e048b fix(dialog): fix on-screen keyboard overlapping dialog boxes 2020-04-21 15:13:08 +02:00
Saúl Ibarra Corretgé
8b454b5196 deps: update lib-jitsi-meet
f97c37d0 e2ee: also enable on p2p connections
a832b39b fix(safari): construct track constraints from getSettings (#1104)
2020-04-21 15:05:40 +02:00
Saúl Ibarra Corretgé
e2788e0fb2 e2ee: show warning if not all participants support E2EE
Refs: https://github.com/jitsi/lib-jitsi-meet/pull/1108
2020-04-21 13:41:05 +02:00
Titus-Andrei Moldovan
b1d1599a1c android: add a consistent deviceId for Amplitude from SharedPreferences 2020-04-21 11:45:42 +02:00
Saúl Ibarra Corretgé
cef98f457f ios: bump CocoaPods dependency 2020-04-21 09:58:24 +02:00
Andrei Gavrilescu
6b0e8aab11 bugfix(remote-control): Remote control not working on linux 2020-04-21 10:33:25 +03:00
Jaya Allamsetty
086889ed70 deps: update lib-jitsi-meet 2020-04-20 18:05:49 -04:00
Saúl Ibarra Corretgé
516e5af118 doc: update supported platforms for building mobile apps 2020-04-20 20:25:24 +02:00
Saúl Ibarra Corretgé
afe1b4b0f9 rn: now working on 20.3 2020-04-20 16:01:25 +02:00
Saúl Ibarra Corretgé
8790ad6013 misc: update GH issue templates
- Use config.yml to prevent creating issues with a blank template
- Don't use a template to direct people to the forum
- Create a security policy template
2020-04-20 15:06:57 +02:00
antonbks
8bbc04d4db doc: fix dev server backend default 2020-04-20 14:02:23 +02:00
Hristo Terezov
4fda428be1 fix(largeVideo): update don't depend on thumbnails 2020-04-17 15:33:13 -05:00
Hristo Terezov
f972ebfe9e fix(thumbnail): videos on safari. 2020-04-17 13:15:25 -05:00
Jaya Allamsetty
3dfcc8d80e deps(ljm): Bump lib-jitsi-meet for Firefox ESR simulcast fix 2020-04-16 21:07:22 -04:00
Saúl Ibarra Corretgé
33ebd241a9 external_api: add command to set E2EE key 2020-04-16 20:25:56 +02:00
Saúl Ibarra Corretgé
cb6fbb0f03 e2ee: add UI elements
* Add dialog to set the E2EE key
* Use the Redux action / middleware to update the key even when set through the
  hash parameter
* Cleanup URL after processing the key so it's not recorded in browser history
2020-04-16 20:25:56 +02:00
Philipp Hancke
0077ee29c5 deps: bump lib-jitsi-meet
Changelog:
101fecbb Thu Apr 16 11:23:58 2020 +0200 Philipp Hancke: e2ee: decode static black frame for decryption errors (#1098)
c3fd3431 Thu Apr 16 13:09:18 2020 +0200 Philipp Hancke: e2ee: remove encodedFrameType workaround (#1099)

git log --no-merges --reverse --pretty="%h %ad %an: %s" 70a3298914f3905297e4e9dcc200b95e9b7a73e9..c3fd3431a66556de7b2ec7632f9f6d75b64aad0a
2020-04-16 17:20:08 +02:00
Bettenbuk Zoltan
551db30cc7 fix: modal keyboard avoiding view fix 2020-04-16 15:30:01 +02:00
Philipp Hancke
1bd930a3cb deps: update lib-jitsi-meet
Changelog:
6502bc67 Wed Apr 15 10:51:35 2020 +0200 Philipp Hancke: e2ee: generate silence in case of audio decryption errors
adc87bcf Mon Apr 6 15:07:48 2020 -0500 paweldomas: fix(strophe.jingle.js): exception on ICE config modification
2020-04-15 21:24:33 +02:00
Jaya Allamsetty
e0563a743f Revert "feat(browser-support): Add safari to list of optimal browsers"
This reverts commit 4824c8714a.
2020-04-15 11:24:04 -05:00
Saúl Ibarra Corretgé
a4ab7ea95f deps: upddate lib-jitsi-meet 2020-04-15 11:04:23 -05:00
Vlad Piersec
b50d6e43d0 fix(settings_buttons): Persist audio/video settings across sessions. 2020-04-15 08:33:19 -05:00
Saúl Ibarra Corretgé
f9fcb46036 pip: disable PiP on Android < 26
Fixes: https://github.com/jitsi/jitsi-meet/issues/6008
2020-04-15 12:12:58 +02:00
Jaya Allamsetty
4824c8714a feat(browser-support): Add safari to list of optimal browsers 2020-04-14 13:42:27 -04:00
damencho
be56521267 debian: Skips deploy-hook when there is no hook available. 2020-04-14 11:54:58 -05:00
Jaya Allamsetty
b7eda8df7a fix(safari): set playsInline attribute to true on the video element
The playsInline attribute needs to be set to true for video to be rendered on Safari on iOS
2020-04-14 12:28:09 -04:00
Jaya Allamsetty
d632b6e13e deps: Update ljm for FF simulcast, js-utils for detecting Edge on Android 2020-04-14 11:07:09 -04:00
Bettenbuk Zoltan
dff7d661ca doc: add documentation to some url params 2020-04-14 16:05:04 +02:00
Julian1203
edb8ecd542 Update main-de.json (#5905)
The word "Weitere" implied that there are already people in the meeting so I replaced it with "andere". 
I also made line 775 gender-neutral as "der Einzige" would technically only refer to males which isn't an unusual thing to do but some people might consider it discriminatory against women.
2020-04-11 12:31:36 -05:00
Mantas Kriaučiūnas
b64112432d Add Lithuanian (lt) translation (#5903)
* Add Lithuanian (lt) language

Add Lithuanian (lt) language

* Added Lithuanian translation

Add Lithuanian translation by Mantas Kriaučiūnas (Baltix) and Raminta Stasaitytė

* Dropping by  damencho request
2020-04-11 12:30:19 -05:00
Daniel Ortega
d8963bc903 Fixing wrong text at key "done" in main-es.json (#5900) 2020-04-11 11:33:14 -05:00
Julian1203
5c39a2f6a6 Update main-de.json (#5895)
Fixed same mistake again as it was in there twice, also made the phrase a bit shorter as otherwise it wouldn't fit in the screen.
Changed "Wollen" to "Möchten" as it's more polite.
2020-04-11 09:32:04 -05:00
Daniel Ortega
a72928a9e7 Adding Spanish translation of "Hebrew" literal (#5893)
* Adding Spanish translation of "Hebrew" literal

* Adding Spanish translation (esUS) of "Hebrew" literal
2020-04-11 09:00:45 -05:00
devSJR
e2ea26eb1f Update main-de.json (#5892)
sie -> Sie
ihre -> Ihre
100% -> 100 %
2020-04-11 08:59:31 -05:00
Saúl Ibarra Corretgé
9962a2ea61 config: whitelist disableSimulcast 2020-04-11 11:37:02 +02:00
Hristo Terezov
07e203ce8d fix(youtube-policy-links): Alignment. 2020-04-10 17:55:50 -05:00
yanas
638fdf0370 Revert "Improve accessibility of Buttons in Webapp (#5432)"
This reverts commit 953f838a2a.
2020-04-10 16:12:21 -05:00
Hristo Terezov
6ce1eaba24 feat(old-electron-app-notification): Implement
Detects if Jitsi Meet is running in old jitsi-meet-electron app and
warns the user for scurity issues.
2020-04-10 14:39:31 -05:00
ferdibayrak
4780e48be8 Update main-tr.json (#5876)
Hello. I am an iOS developer. Jitsi's Turkish translation is now 100% completed. Please update the translation file.
2020-04-10 14:37:05 -05:00
Jaya Allamsetty
7776f0a98c deps(ljm): Update ljm, add safari support and disable simulcast on Firefox 2020-04-10 14:31:06 -04:00
Julian1203
2eede7e76b Update main-de.json (#5873)
Fixed very small mistake in the programming. I don't need to sign the CLA for this, do I?
2020-04-10 13:03:58 -05:00
adrmzz
72a7bd0a68 Adding Sardinian translation (#5386)
* Create main-sc.json

* Create languages-sc.json

* Update languages.json

* Update main-sc.json

(just a couple of minor edits to the translation)
2020-04-10 13:03:26 -05:00
Selyan Slimane Amiri
9085cbf363 Update languages-kab.json (#5871) 2020-04-10 12:22:18 -05:00
Nicolas
be80f26086 Update main-ru.json (#5861)
+lonelyMeetingExperience for russian
2020-04-10 12:19:59 -05:00
Neil Brown
a876f78fd7 Update quick-install.md (#5819)
Add information about firewall ports.
2020-04-10 12:19:39 -05:00
Pierre Pronchery
73d948d150 Also ship robots.txt in the source package (#5811) 2020-04-10 12:19:11 -05:00
Philippe Jtreize
c5aa555816 lang: translation improvements and corrections for French (#5807) 2020-04-10 12:18:43 -05:00
Peter Martin
7902223f09 lang: add Dutch (NL) translation (#5804)
* lang: add Dutch (NL) translation

* lang: add Dutch (NL) translation - fix
2020-04-10 12:18:07 -05:00
Hanno Böck
ac117cd50d Update browser links to HTTPS (#5788)
* Update recommended browser links to https

* Update browser URLs to https
2020-04-10 12:17:10 -05:00
Jens-Christian Fischer
f2df5906f6 Document a scalable installation with multiple videobridges (#5783) 2020-04-10 12:16:18 -05:00
Vyacheslav
0fcecaf18f fix Russian translation (#5746)
Co-authored-by: vbukharin <buhv@skbkontur.ru>
2020-04-10 12:13:34 -05:00
yamakz5555
8cc4b73722 Issue #5741 (#5742)
Japanese mistranslation in speaker stats screen.
2020-04-10 12:13:14 -05:00
Joris Bodin
c08f5c7e18 Fix french (#5721) 2020-04-10 12:13:00 -05:00
Daniel Ortega
2e0f3ae84f Using "Japonés" instead of "Jopones" (#5715) 2020-04-10 12:12:46 -05:00
Marco Manenti
41bfb4c7ec Update main-it.json (#5688)
* Update main-it.json

Some revision

* Update main-it.json

other language revision
2020-04-10 12:12:31 -05:00
Stav Levi
4a12cdfac7 Add Lang Hebrew (#5662)
* Update languages.json

* Create main-he.json
2020-04-10 12:07:12 -05:00
Neil Brown
7b34fb89d1 Update quick-install.md (#5658)
Clarify that a Let’s Encrypt cert is sufficient for iOS and Android clients.
2020-04-10 12:06:40 -05:00
Felix Wolfsteller
4ec438d3f3 i18n: german, fix translation key. (#5657) 2020-04-10 12:06:16 -05:00
Khatanbaatar
e79633b0ca translated Mongolian language (#5646)
* translated Mongolia language

* app translated Mongolian language

* sorry, lint not checked

* lint checked
2020-04-10 12:04:48 -05:00
Ricardo Simões
49a9934c41 Added Portuguese European (Portugal) pt language (#5642)
* Create main-pt.json

Started Portuguese European pt-PT translation

* Created Portuguese European Language pt

Created Portuguese European Language (pt-PT) Portugal
2020-04-10 12:04:09 -05:00
Christian Gräfe
193d19ce21 Update main-de.json (#5634)
simple Typo
2020-04-10 12:03:18 -05:00
Claudius Ellsel
fe83d87d2d Tiny correction in README (#5582) 2020-04-10 12:03:02 -05:00
Julian1203
b4a2327264 Update main-de.json (#5564)
Just checked and Firefox calls the button "Erlauben" in their official German translation while Chrome, Chrome on Android and Opera call it "Zulassen".
"Host" should now be translated consistently
Added two hyphens because "meeting password" is one word in German
2020-04-10 12:00:59 -05:00
MilanKral
d9edf661dd lang: Slovak translation (#5523) 2020-04-10 12:00:26 -05:00
Marco Zehe
e32f367b0c React Native accessibility fixes (#5825)
* Accessibility: Make the native toolbox item communicate that it is a button.

* Accessibility: If an item is toggled, mark it as selected for accessibility

* Accessibility: Make the toolbox a toolbar for accessibility

* Accessibility: Mark the bottom sheet as a menu for accessibility

* Fix typo, AccessibilityRole, not AccessibleRole

* Statement fix

* Appease the linter

* Fix linting errors for real this time
2020-04-10 08:07:48 -05:00
Volker Braun
2b181673b5 android: arcel the serverURL in the Android SDK
In the Android SDK, the setServerURL option is erroneously
ignored. The meeting's serverURL always defaults to
https://meet.jit.si because the serverURL is not parceled.
2020-04-10 14:53:47 +02:00
Emil Ivov
87a058eaa4 Merge pull request #5838 from jitsi/project-hps
Project HiPS, first pass
2020-04-10 07:44:38 -05:00
Saúl Ibarra Corretgé
eef0f5ed97 Project HPS, first pass 2020-04-10 14:40:58 +02:00
Saúl Ibarra Corretgé
1751fc7635 deps: lib-jitsi-meet@latest 2020-04-10 14:40:58 +02:00
pan93412
4aa58f041f i18n: zh_TW: new translation (#5827)
* i18n: zh_TW: new translation

* Delete strings.xml

* Delete strings.xml
2020-04-09 22:27:56 -05:00
Bettenbuk Zoltan
39d789a088 feat: add url params: config.disableInviteFunctions, config.doNotStoreRoom and userInfo.displayName 2020-04-09 17:14:16 +02:00
Peter Martin
2654c77f2c lang: Duch language fixes 2020-04-09 11:29:07 +02:00
Jaya Allamsetty
7af88e5c4f fix(safari): Update the check for Safari
In preparation for the lib-jitsi-meet PR for Safari support, isSafariWithWebrtc() will no longer be available
2020-04-08 15:06:29 -04:00
Дамян Минков
ffdd4f2eed debian: updates around coturn package and order of install (#5729)
* debian: Update coturn udp port to non-privileged one.

* debian: Turnserver config requires jitsi-meet-web-config files.

* doc: Updates doc, removing `--no-install-recommends`.

* debian: Moves checks and configs to default to prosody 0.11.

* debian: Disable room locking on internal muc.

* add scripts for deploying coturn with certbot

* turnserver: Removes unused variable showing error.

* debian: updates let's encrypt and coturn scripts.

* debian: Detect failure to retrieve external ip address.

* debian: Always configure turn when the turnserver package is installed.

Co-authored-by: Julien Fastré <julien.fastre@champs-libres.coop>
2020-04-08 13:06:49 -05:00
Paul Menzel
0b0a19ea5c doc/debian/jitsi-meet-turn: Correct file name to README 2020-04-08 10:59:30 -05:00
Russell Graves
b10aa422ca Add gzip to nginx server config. (#5700)
* Add gzip and expiration to nginx server config.

* Add application/json to gzip_types line to cover translations.

* Add gzip_vary for content caches, remove expires section.

Per discussion, expiration seems likely to cause more confusion than it solves.  Add gzip_vary to prevent content caches from caching un-compressed versions of the content and confusing browsers.
2020-04-07 09:42:27 -05:00
Bettenbuk Zoltan
b706972acb fix: re-add android only chat input padding 2020-04-07 11:18:50 +02:00
Bettenbuk Zoltan
5574221044 ref: SharedDocument to JitsiModal 2020-04-07 11:18:50 +02:00
Bettenbuk Zoltan
0f4369a9a9 ref: AddPeopleDialog to JitsiModal 2020-04-07 11:18:50 +02:00
Bettenbuk Zoltan
0c2e13a453 ref: DialInSummary to JitsiModal 2020-04-07 11:18:50 +02:00
Bettenbuk Zoltan
2f817b6633 ref: Settings to JitsiModal 2020-04-07 11:18:50 +02:00
Bettenbuk Zoltan
678ed605d7 ref: change JitsiModal to better fit to needs 2020-04-07 11:18:50 +02:00
vp8x8
84714ba3bd settings: enable settings buttons on permission grant
Some CSS fixes are also included.
2020-04-07 09:14:23 +02:00
Tim Ruffing
b8963629bf Pass upper case country codes to i18n-iso-countries
Related to #5697.
2020-04-06 22:17:27 -05:00
Damian Goeldi
47cffeb00a add missing IPv6 listener to nginx jitsi module 2020-04-06 21:27:40 -05:00
Paul Mestrum
b70633ef24 tile-view: fix number of columns calculation 2020-04-06 19:42:53 +02:00
Hristo Terezov
145596ac6a fix(tile-view): hidden thumbnails on scroll 2020-04-06 12:22:43 -05:00
moses gunesch
76607bbad8 doc: mention privacy error in Chrome for development 2020-04-06 10:25:13 +02:00
bgrozev
36113fd54f debian: clean up password generation, use 16 characters 2020-04-06 10:22:56 +02:00
Дамян Минков
f86ace17d8 Fix weblate2 (#5695)
* Added translation using Weblate (Icelandic)

* Added translation using Weblate (Icelandic)

* Added translation using Weblate (Sardinian)

* Deleted translation using Weblate (Sardinian)

* Added translation using Weblate (Sardinian)

* Translated using Weblate (Sardinian)

Currently translated at 0.0% (0 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sc/

* Added translation using Weblate (Sardinian)

* Translated using Weblate (Sardinian)

Currently translated at 0.0% (0 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/sc/

* Translated using Weblate (Icelandic)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/is/

* Translated using Weblate (Icelandic)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/is/

* Translated using Weblate (Bulgarian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/bg/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ca/

* Translated using Weblate (Bulgarian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/bg/

* Translated using Weblate (Czech)

Currently translated at 36.7% (247 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Turkish)

Currently translated at 23.3% (157 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/tr/

* Translated using Weblate (ptbr (generated))

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ptbr/

* Translated using Weblate (Sardinian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sc/

* Translated using Weblate (Czech)

Currently translated at 39.8% (268 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 47.0% (316 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 47.0% (316 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.5% (340 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.7% (341 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.8% (342 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 52.8% (355 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 72.6% (488 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Turkish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/tr/

* Translated using Weblate (Danish)

Currently translated at 95.6% (643 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/da/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 40.6% (13 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/nb_NO/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 20.8% (140 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/nb_NO/

* Added translation using Weblate (Arabic)

* Added translation using Weblate (Arabic)

* Added translation using Weblate (Serbian)

* Added translation using Weblate (Serbian)

* Added translation using Weblate (Ukrainian)

* Translated using Weblate (Ukrainian)

Currently translated at 96.8% (651 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Translated using Weblate (Ukrainian)

Currently translated at 96.8% (651 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Translated using Weblate (Ukrainian)

Currently translated at 97.0% (652 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Translated using Weblate (Ukrainian)

Currently translated at 97.1% (653 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Translated using Weblate (Ukrainian)

Currently translated at 97.4% (655 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/uk/

* Added translation using Weblate (Belarusian)

* Added translation using Weblate (Romanian)

* Added translation using Weblate (Ukrainian)

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Co-authored-by: Václav Zbránek <vaclav@weblate.org>
Co-authored-by: Joan Montané <joan@montane.cat>
Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Co-authored-by: Rafael Fontenelle <rafaelff@gnome.org>
Co-authored-by: Adrià Martín <adriamartinmor@gmail.com>
Co-authored-by: Tomas Apeltauer <tomas.apeltauer@gmail.com>
Co-authored-by: anonymous <noreply@weblate.org>
Co-authored-by: Lukáš Jelínek <devel@aiken.cz>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Co-authored-by: Ahmed Abdelhamid <dralawady@gmail.com>
Co-authored-by: Nenad Nikolic <nikbit2015@gmail.com>
Co-authored-by: Oleksa Stasevych <oleksiy.stasevych@gmail.com>
Co-authored-by: Антон Костюченко <1292729@gmail.com>
Co-authored-by: marius-bardan <marius.bardan@gmail.com>
2020-04-05 17:24:20 -05:00
Dara Poon
0e16008085 Use regexes to match ALPN protocols (#5651)
nginx presents the client's list of ALPN protocols as
$ssl_preread_alpn_protocols, a comma-separated string.  Use regular
expressions to match each item in the list, rather than the exact value
of the entire list at once.
2020-04-05 09:23:43 -05:00
Дамян Минков
f66a919e08 Fix weblate (#5672)
* Added translation using Weblate (Icelandic)

* Added translation using Weblate (Icelandic)

* Added translation using Weblate (Sardinian)

* Deleted translation using Weblate (Sardinian)

* Added translation using Weblate (Sardinian)

* Translated using Weblate (Sardinian)

Currently translated at 0.0% (0 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sc/

* Added translation using Weblate (Sardinian)

* Translated using Weblate (Sardinian)

Currently translated at 0.0% (0 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/sc/

* Translated using Weblate (Icelandic)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/is/

* Translated using Weblate (Icelandic)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/is/

* Translated using Weblate (Bulgarian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/bg/

* Translated using Weblate (Catalan)

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ca/

* Translated using Weblate (Bulgarian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/bg/

* Translated using Weblate (Czech)

Currently translated at 36.7% (247 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Turkish)

Currently translated at 23.3% (157 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/tr/

* Translated using Weblate (ptbr (generated))

Currently translated at 100.0% (672 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/ptbr/

* Translated using Weblate (Sardinian)

Currently translated at 99.8% (671 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/sc/

* Translated using Weblate (Czech)

Currently translated at 39.8% (268 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 46.8% (315 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 47.0% (316 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 47.0% (316 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.5% (340 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.7% (341 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 50.8% (342 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 52.8% (355 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Czech)

Currently translated at 72.6% (488 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/cs/

* Translated using Weblate (Turkish)

Currently translated at 100.0% (32 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/tr/

* Translated using Weblate (Danish)

Currently translated at 95.6% (643 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/da/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 40.6% (13 of 32 strings)

Translation: Jitsi/languages
Translate-URL: https://hosted.weblate.org/projects/jitsi/languages/nb_NO/

* Translated using Weblate (Norwegian Bokmål)

Currently translated at 20.8% (140 of 672 strings)

Translation: Jitsi/main
Translate-URL: https://hosted.weblate.org/projects/jitsi/main/nb_NO/

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Co-authored-by: Václav Zbránek <vaclav@weblate.org>
Co-authored-by: Joan Montané <joan@montane.cat>
Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Co-authored-by: Rafael Fontenelle <rafaelff@gnome.org>
Co-authored-by: Adrià Martín <adriamartinmor@gmail.com>
Co-authored-by: Tomas Apeltauer <tomas.apeltauer@gmail.com>
Co-authored-by: anonymous <noreply@weblate.org>
Co-authored-by: Lukáš Jelínek <devel@aiken.cz>
Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
2020-04-05 08:58:21 -05:00
Saúl Ibarra Corretgé
8115fb5e78 config: remove aspect ratio constraint from config example
Some cameras may not be able to satisfy it and gUM will fail.

Refs: https://github.com/jitsi/lib-jitsi-meet/pull/1066
2020-04-05 08:46:51 +02:00
Weblate (bot)
c9f26dc7ac lang: improved translattions with weblate
Icelandic, Sardinian, Bulgarian, Czech, Catalan, Turkish.

Translate-URL: https://hosted.weblate.org/projects/jitsi/main/

Co-authored-by: Sveinn í Felli <sv1@fellsnet.is>
Co-authored-by: Václav Zbránek <vaclav@weblate.org>
Co-authored-by: Damian Minkov <damencho@jitsi.org>
Co-authored-by: Joan Montané <joan@montane.cat>
Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Co-authored-by: Rafael Fontenelle <rafaelff@gnome.org>
Co-authored-by: Adrià Martín <adriamartinmor@gmail.com>
Co-authored-by: Tomas Apeltauer <tomas.apeltauer@gmail.com>
2020-04-04 22:14:00 +02:00
damencho
7321f706bb Fix wrong UTF file. 2020-04-03 18:21:04 -05:00
Hristo Terezov
9b5f135dae fix(livestreaming): window.open params
The target parameter from window.open was missing which was causing
reload in electron.
2020-04-03 16:55:05 -05:00
Hristo Terezov
dbbdcb0b00 feat(live-streaming): Add T&C. 2020-04-03 16:54:50 -05:00
Ruben Kerkhof
06ae1861ee log: fix showing verbatim %s
So turn 'hover in %s 1a5cd940' into 'hover in 1a5cd940'
2020-04-03 15:41:30 +02:00
Alexander Neumann
e0afd8fadb lang: fix german translation
This commit fixes a few translation errors, especially in the
kickParticipantTitle.
2020-04-03 15:39:38 +02:00
Michael Telatynski
953f838a2a Improve accessibility of Buttons in Webapp (#5432)
* Expose toggle buttons better via ARIA

* Wire up the divs/li as role=button as per ARIA patterns

* Add flow annotations to appease the linter

* For role=button use aria-pressed not aria-checked
2020-04-03 08:19:32 -05:00
ljo
bf5f1f0168 lang: improve sv translation 2020-04-03 15:13:26 +02:00
Saúl Ibarra Corretgé
cdf977ff3f doc: add documentation index 2020-04-03 14:57:40 +02:00
Joris Bodin
ee1dc9dd8e lang: update translation for fr, de, es, it for mobile app 2020-04-03 12:14:21 +02:00
Ali Karpuzoglu
7bec68e492 doc: fix typo 2020-04-03 12:13:20 +02:00
Bettenbuk Zoltan
97fff02c15 web: use password i18n placeholder 2020-04-03 11:22:11 +02:00
Дамян Минков
b372b2ccf2 Fix turn file link (#5601)
* debian: Does not add a link of turnserver will not be configured. Fixes #5596.

* debian: Partially reverts 990c77bd.

* debian: Skip filename duplication, use variable.
2020-04-02 18:20:41 -05:00
Bettenbuk Zoltan
d00ead932b feat: better room lock prompt 2020-04-02 17:27:22 +02:00
Saúl Ibarra Corretgé
bb2b1b58ec conference: add room name to browser title
Re-do of
86ebfe8dad
2020-04-02 16:33:39 +02:00
GK2
ceeea7314c debian: fix typo 2020-04-02 15:27:19 +02:00
Andrei Gavrilescu
9d6a93119b feat(screenSharing): Add support for audio screen sharing on electron 2020-04-02 16:18:10 +03:00
GK2
08be68cda4 debian: fix install-letsencrypt-cert.sh to create misssing directory
Update install-letsencrypt-cert.sh to fix missing cron.weekly
REFS : https://github.com/jitsi/jitsi-meet/issues/5576
2020-04-02 15:10:27 +02:00
Bettenbuk Zoltan
3a2081ffed ref: change Chat to JitsiModal 2020-04-02 12:40:12 +02:00
Bettenbuk Zoltan
57d14d9517 feat: help centre 2020-04-02 12:40:12 +02:00
Saúl Ibarra Corretgé
c5e693f14a rn,invite: use custom clear button also on iOS
Otherwise it won't be visible if Dark Mode is enabled.
2020-04-02 11:46:29 +02:00
Saúl Ibarra Corretgé
a9da047d3a rn,invite: fix bottom padding on AddPeopleDialog on Android 2020-04-02 11:46:29 +02:00
bgrozev
171b065db1 Revert "Add room name to browser tab title" (#5560)
Because it displays "undefined" in the title.

This reverts commit 86ebfe8dad.
2020-04-01 22:03:14 -05:00
Jaya Allamsetty
9da0b7fee3 deps(ljm): Bump adapter.js to 7.5.0 and validate ice candidate info 2020-04-01 18:28:30 -04:00
damencho
716c9eb46f debian: Change coturn unit file to start on 443. 2020-04-01 17:11:55 -05:00
Stefan
a85c72d859 doc: use sudo 2020-04-01 22:57:08 +02:00
Kenneth Peiruza
0ba567856e lang: fix catalan translation
There was a huge mistake in Catalan translation. Stop streaming and recording said "start" (inicia) instead of "stop" (atura).

Then, 1 small fix on a more polite way of refering to "using a software" -> *emprar* rather than *usar*.
2020-04-01 22:51:38 +02:00
Horatiu Muresan
7f1eb83dbd feat(notifications): Manage audio notifications 2020-04-01 22:40:07 +02:00
damencho
6e4c1f64d8 debian: Adds syslog logging. 2020-04-01 15:18:49 -05:00
damencho
82aa51770a debian: Skip turn config if other sites are available listening on 443. 2020-04-01 15:18:49 -05:00
damencho
990c77bd3d debian: Skip turnserver config if it is already configured. 2020-04-01 15:18:49 -05:00
bgrozev
5bb23b2d17 chore(package.json): Update js-utils (#5541) 2020-04-01 15:09:11 -05:00
Saúl Ibarra Corretgé
9cc05ef838 config: remove unneeded option 2020-04-01 20:40:18 +02:00
Saúl Ibarra Corretgé
a21e3a1946 Merge pull request #5510 from rubenk/add-roomname-to-title
Add room name to browser tab title
2020-04-01 20:08:05 +02:00
Vlad Piersec
c05ca1d9fc fix(prejoin_page) Add labels for video & more UI fixes 2020-04-01 19:57:04 +02:00
Vlad Piersec
1b05d7269c feat(prejoin_page) Add settings buttons
This reverts commit faf24ca7ec.
2020-04-01 19:57:04 +02:00
Ruben Kerkhof
86ebfe8dad Add room name to browser tab title
Fixes #5480

Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
2020-03-31 13:58:12 +02:00
318 changed files with 19461 additions and 4848 deletions

View File

@@ -1,10 +0,0 @@
---
name: Need help with Jitsi Meet?
about: Please ask it in our community at https://community.jitsi.org
---
If you have a question about Jitsi Meet that is not a bug report or feature
request, please post it in https://community.jitsi.org
Questions posted to this repository will be closed.

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Need help with Jitsi Meet?
url: https://community.jitsi.org
about: Please ask it in our community.

View File

@@ -84,7 +84,7 @@ dev: deploy-init deploy-css deploy-rnnoise-binary deploy-lib-jitsi-meet deploy-l
source-package:
mkdir -p source_package/jitsi-meet/css && \
cp -r *.js *.html connection_optimization favicon.ico fonts images libs static sounds LICENSE lang source_package/jitsi-meet && \
cp -r *.js *.html resources/*.txt connection_optimization favicon.ico fonts images libs static sounds LICENSE lang source_package/jitsi-meet && \
cp css/all.css source_package/jitsi-meet/css && \
(cd source_package ; tar cjf ../jitsi-meet.tar.bz2 jitsi-meet) && \
rm -rf source_package

View File

@@ -1,8 +1,8 @@
# Jitsi Meet - Secure, Simple and Scalable Video Conferences
Jitsi Meet is an open-source (Apache) WebRTC JavaScript application that uses [Jitsi Videobridge](https://jitsi.org/videobridge) to provide high quality, [secure](#security) and scalable video conferences. Jitsi Meet in action can be seen at [here at the session #482 of the VoIP Users Conference](http://youtu.be/7vFUVClsNh0).
Jitsi Meet is an open-source (Apache) WebRTC JavaScript application that uses [Jitsi Videobridge](https://jitsi.org/videobridge) to provide high quality, [secure](https://jitsi.org/security) and scalable video conferences. Jitsi Meet in action can be seen at [here at the session #482 of the VoIP Users Conference](http://youtu.be/7vFUVClsNh0).
The Jitsi Meet client runs in your browser, without installing anything else on your computer. You can try it out at https://meet.jit.si .
The Jitsi Meet client runs in your browser, without installing anything else on your computer. You can try it out at https://meet.jit.si.
Jitsi Meet allows very efficient collaboration. Users can stream their desktop or only some windows. It also supports shared document editing with Etherpad.
@@ -61,25 +61,13 @@ Jitsi Meet provides a very flexible way of embedding in external applications by
## Security
WebRTC does not (yet) provide a way of conducting multi-party conversations with end-to-end encryption.
Unless you consistently compare DTLS fingerprints with your peers vocally, the same goes for one-to-one calls.
As a result, your stream is encrypted on the network but decrypted on the machine that hosts the bridge when using Jitsi Meet.
The security section here was starting to feel a bit too succinct for the complexity of the topic, so we created a post that covers the topic much more broadly here: https://jitsi.org/security
The Jitsi Meet architecture allows you to deploy your own version, including
all server components. In that case, your security guarantees will be roughly
equivalent to a direct one-to-one WebRTC call. This is the uniqueness of
Jitsi Meet in terms of security.
The [meet.jit.si](https://meet.jit.si) service is maintained by the Jitsi team
at [8x8](https://8x8.com).
The section on end-to-end encryption in that document is likely going to be one of the key points of interest: https://jitsi.org/security/#e2ee
## Security issues
We take security very seriously and develop all Jitsi projects to be secure and safe.
If you find (or simply suspect) a security issue in any of the Jitsi projects, please send us an email to security@jitsi.org.
**We encourage responsible disclosure for the sake of our users, so please reach out before posting in a public space.**
For information on reporting security vulnerabilities in Jitsi Meet, see [SECURITY.md](./SECURITY.md).
## Acknowledgements

View File

@@ -1,11 +1,9 @@
---
name: Security issues
about: Please email security@jitsi.org
# Security
---
## Reporting security issuess
We take security very seriously and develop all Jitsi projects to be secure and safe.
If you find (or simply suspect) a security issue in any of the Jitsi projects, please send us an email to security@jitsi.org.
We encourage responsible disclosure for the sake of our users, so please reach out before posting in a public space.
**We encourage responsible disclosure for the sake of our users, so please reach out before posting in a public space.**

View File

@@ -20,5 +20,5 @@
android.useAndroidX=true
android.enableJetifier=true
appVersion=20.2.0
sdkVersion=2.8.0
appVersion=20.3.0
sdkVersion=2.8.2

View File

@@ -17,6 +17,8 @@
package org.jitsi.meet.sdk;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.SharedPreferences;
import android.provider.Settings;
import android.text.TextUtils;
@@ -40,6 +42,8 @@ class AmplitudeModule
extends ReactContextBaseJavaModule {
public static final String NAME = "Amplitude";
public static final String JITSI_PREFERENCES = "jitsi-preferences";
public static final String AMPLITUDE_DEVICE_ID_KEY = "amplitudeDeviceId";
public AmplitudeModule(ReactApplicationContext reactContext) {
super(reactContext);
@@ -58,10 +62,14 @@ class AmplitudeModule
Amplitude.getInstance(instanceName).initialize(getCurrentActivity(), apiKey);
// Set the device ID to something consistent.
String android_id
= Settings.Secure.getString(getReactApplicationContext().getContentResolver(), Settings.Secure.ANDROID_ID);
SharedPreferences sharedPreferences = getReactApplicationContext().getSharedPreferences(JITSI_PREFERENCES, Context.MODE_PRIVATE);
String android_id = sharedPreferences.getString(AMPLITUDE_DEVICE_ID_KEY, "");
if (!TextUtils.isEmpty(android_id)) {
Amplitude.getInstance(instanceName).setDeviceId(android_id);
} else {
String amplitudeId = Amplitude.getInstance(instanceName).getDeviceId();
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(JITSI_PREFERENCES, amplitudeId).apply();
}
}

View File

@@ -288,6 +288,7 @@ public class JitsiMeetConferenceOptions implements Parcelable {
}
private JitsiMeetConferenceOptions(Parcel in) {
serverURL = (URL) in.readSerializable();
room = in.readString();
subject = in.readString();
token = in.readString();
@@ -376,6 +377,7 @@ public class JitsiMeetConferenceOptions implements Parcelable {
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeSerializable(serverURL);
dest.writeString(room);
dest.writeString(subject);
dest.writeString(token);

View File

@@ -19,7 +19,6 @@ import {
createDeviceChangedEvent,
createStartSilentEvent,
createScreenSharingEvent,
createStreamSwitchDelayEvent,
createTrackMutedEvent,
sendAnalytics
} from './react/features/analytics';
@@ -113,6 +112,7 @@ import {
import { getJitsiMeetGlobalNS } from './react/features/base/util';
import { showDesktopPicker } from './react/features/desktop-picker';
import { appendSuffix } from './react/features/display-name';
import { setE2EEKey } from './react/features/e2ee';
import {
maybeOpenFeedbackDialog,
submitFeedback
@@ -645,6 +645,8 @@ export default {
init(options) {
this.roomName = options.roomName;
window.addEventListener('hashchange', this.onHashChange.bind(this), false);
return (
// Initialize the device list first. This way, when creating tracks
@@ -1177,6 +1179,34 @@ export default {
}));
},
/**
* Handled location hash change events.
*/
onHashChange() {
const items = {};
const parts = window.location.hash.substr(1).split('&');
for (const part of parts) {
const param = part.split('=');
const key = param[0];
if (!key) {
continue; // eslint-disable-line no-continue
}
items[key] = param[1];
}
if (typeof items.e2eekey !== undefined) {
APP.store.dispatch(setE2EEKey(items.e2eekey));
// Clean URL in browser history.
const cleanUrl = window.location.href.split('#')[0];
history.replaceState(history.state, document.title, cleanUrl);
}
},
/**
* Exposes a Command(s) API on this instance. It is necessitated by (1) the
* desire to keep room private to this instance and (2) the need of other
@@ -1786,7 +1816,7 @@ export default {
const desktopVideoStream = streams.find(stream => stream.getType() === MEDIA_TYPE.VIDEO);
if (desktopVideoStream) {
this.useVideoStream(desktopVideoStream);
await this.useVideoStream(desktopVideoStream);
}
this._desktopAudioStream = streams.find(stream => stream.getType() === MEDIA_TYPE.AUDIO);
@@ -2232,18 +2262,6 @@ export default {
});
});
/* eslint-disable max-params */
APP.UI.addListener(
UIEvents.RESOLUTION_CHANGED,
(id, oldResolution, newResolution, delay) => {
sendAnalytics(createStreamSwitchDelayEvent(
{
'old_resolution': oldResolution,
'new_resolution': newResolution,
value: delay
}));
});
APP.UI.addListener(UIEvents.AUTH_CLICKED, () => {
AuthHandler.authenticate(room);
});
@@ -2811,7 +2829,7 @@ export default {
leaveRoomAndDisconnect() {
APP.store.dispatch(conferenceWillLeave(room));
if (room.isJoined()) {
if (room && room.isJoined()) {
return room.leave().then(disconnect, disconnect);
}

View File

@@ -44,9 +44,6 @@ var config = {
//
testing: {
// Enables experimental simulcast support on Firefox.
enableFirefoxSimulcast: false,
// P2P test mode disables automatic switching to P2P when there are 2
// participants in the conference.
p2pTestMode: false
@@ -111,11 +108,10 @@ var config = {
// w3c spec-compliant video constraints to use for video capture. Currently
// used by browsers that return true from lib-jitsi-meet's
// util#browser#usesNewGumFlow. The constraints are independent from
// this config's resolution value. Defaults to requesting an ideal aspect
// ratio of 16:9 with an ideal resolution of 720.
// this config's resolution value. Defaults to requesting an ideal
// resolution of 720p.
// constraints: {
// video: {
// aspectRatio: 16 / 9,
// height: {
// ideal: 720,
// max: 720,
@@ -343,7 +339,7 @@ var config = {
// The STUN servers that will be used in the peer to peer connections
stunServers: [
// { urls: 'stun:jitsi-meet.example.com:443' },
// { urls: 'stun:jitsi-meet.example.com:4446' },
{ urls: 'stun:meet-jit-si-turnrelay.jitsi.net:443' }
],
@@ -390,6 +386,9 @@ var config = {
// userRegion: "asia"
},
// Decides whether the start/stop recording audio notifications should play on record.
// disableRecordAudioNotification: false,
// Information for the chrome extension banner
// chromeExtensionBanner: {
// // The chrome extension to be installed address
@@ -449,6 +448,14 @@ var config = {
// the menu has option to flip the locally seen video for local presentations
// disableLocalVideoFlip: false,
// Mainly privacy related settings
// Disables all invite functions from the app (share, invite, dial out...etc)
// disableInviteFunctions: true,
// Disables storing the room name to the recents list
// doNotStoreRoom: true,
// Deployment specific URLs.
// deploymentUrls: {
// // If specified a 'Help' button will be displayed in the overflow menu with a link to the specified URL for

135
css/_audio-preview.css Normal file
View File

@@ -0,0 +1,135 @@
.audio-preview {
&-content {
font-size: 15px;
line-height: 24px;
max-height: 456px;
overflow: auto;
width: 328px;
}
&-header {
color: #fff;
display: flex;
padding: 16px;
&-icon {
color: #A4B8D1;
display: inline-block;
}
&-text {
font-weight: bold;
margin-left: 8px;
}
}
&-entry {
align-items: center;
color: #fff;
cursor: pointer;
display: flex;
padding: 12px 0;
margin-left: 48px;
&--selected {
background: rgba(28,32,37,0.5);
cursor: initial;
margin-left: 0;
padding-left: 21px;
}
&-text {
color: #fff;
font-size: 15px;
display: inline-block;
line-height: 24px;
text-overflow: ellipsis;
max-width: 213px;
overflow: hidden;
white-space: nowrap;
}
}
&-speaker {
position: relative;
&:hover {
.audio-preview-entry {
background: rgba(255,255,255, 0.2);
margin-left: 0;
padding-left: 48px;
&--selected {
padding-left: 21px;
}
}
.audio-preview-test-button {
display: inline-block;
}
.audio-preview-entry-text {
max-width: 196px;
}
}
.audio-preview-entry-text {
max-width: 256px;
}
}
&-microphone {
position: relative;
}
&-icon {
border-radius: 50%;
display: inline-block;
width: 14px;
& svg {
fill: #1C2025;
}
&--check {
background: #31B76A;
margin-right: 13px;
}
&--exclamation {
margin-left: 6px;
& svg {
fill: #E54B4B;
}
}
}
&-test-button {
display: none;
background: #FFF;
border: 1px solid #D1DBE8;
border-radius: 3px;
color: #1C2025;
cursor: pointer;
font-weight: 600;
font-size: 15px;
line-height: 24px;
padding: 4px 16px;
position: absolute;
right: 16px;
top: 8px;
}
&-meter-mic {
position: absolute;
right: 16px;
top: 18px;
}
// Override @atlaskit/InlineDialog container which is made with styled components
& > div > div:nth-child(2) > div > div {
outline: none;
padding: 0;
}
}

View File

@@ -20,18 +20,6 @@
}
}
.avatar-foreign {
align-items: center;
bottom: 0;
display: flex;
font-size: 40pt;
justify-content: center;
left: 0;
position: absolute;
right: 0;
top: 0;
}
.avatar-svg {
height: 100%;
width: 100%;
@@ -63,4 +51,4 @@
@include avatarBadge;
background-color: $presence-idle;
}
}
}

30
css/_meter.css Normal file
View File

@@ -0,0 +1,30 @@
.jitsi-icon {
&.metr {
display: inline-block;
& > svg {
fill: #4E5E6C;
width: 38px;
}
}
&.metr--disabled {
& > svg {
fill: #4E5E6C;
}
}
}
.metr-l-0 {
rect:first-child {
fill: #31B76A;
}
}
@for $i from 1 through 7 {
.metr-l-#{$i} {
rect:nth-child(-n+#{$i+1}) {
fill: #31B76A;
}
}
}

View File

@@ -71,6 +71,11 @@
display: flex;
margin-top: 5px;
text-align: right;
flex-direction: column;
.help-container {
display: flex;
}
}
.live-stream-cta {

79
css/_settings-button.scss Normal file
View File

@@ -0,0 +1,79 @@
.settings-button {
&-container {
position: relative;
.toolbox-icon {
align-items: center;
cursor: pointer;
display: flex;
background-color: #fff;
border-radius: 50%;
border: 1px solid #d1dbe8;
justify-content: center;
width: 38px;
height: 38px;
&:hover {
background-color: #daebfa;
border: 1px solid #daebfa;
}
&.toggled {
background: #2a3a4b;
border: 1px solid #5e6d7a;
svg {
fill: #fff;
}
&:hover {
background-color: #5e6d7a;
}
}
&.disabled, .disabled & {
cursor: initial;
color: #fff;
background-color: #a4b8d1;
}
svg {
fill: #5e6d7a;
}
}
}
&-small-icon {
background: #FFF;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 50%;
bottom: 0;
box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.25);
cursor: pointer;
height: 16px;
position: absolute;
text-align: center;
right: 4px;
width: 16px;
&> svg {
margin-top: 5px;
}
&--disabled {
background-color: #a4b8d1;
cursor: default;
}
&--hovered {
bottom: -1px;
height: 20px;
right: 2px;
width: 20px;
&> svg {
margin-top: 6px;
}
}
}
}

66
css/_video-preview.css Normal file
View File

@@ -0,0 +1,66 @@
.video-preview {
background: none;
max-height: 290px;
overflow: auto;
&-entry {
cursor: pointer;
height: 135px;
margin-bottom: 16px;
position: relative;
width: 240px;
&:last-child {
margin-bottom: 0;
}
&--selected {
border: 3px solid #31B76A;
cursor: default;
height: 129px;
width: 234px;
}
}
&-video {
height: 100%;
object-fit: cover;
width: 100%;
}
&-overlay {
background: rgba(42, 58, 75, 0.6);
height: 100%;
position: absolute;
width: 100%;
z-index: 1;
}
&-error {
align-items: center;
display: flex;
height: 100%;
justify-content: center;
position: absolute;
width: 100%;
}
&-label {
color: #fff;
font-size: 13px;
line-height: 20px;
overflow: hidden;
padding: 8px;
position: absolute;
text-align: center;
text-overflow: ellipsis;
width: 220px;
z-index: 2;
}
// Override @atlaskit/InlineDialog container which is made with styled components
& > div > div:nth-child(2) > div > div {
outline: none;
padding: 16px;
}
}

View File

@@ -15,8 +15,9 @@
box-sizing: border-box;
display: flex;
flex-direction: column;
height: 100vh;
height: calc(100vh - 200px);
width: 100vw;
margin: 100px 0px;
}
.filmstrip__videos .videocontainer {
@@ -77,9 +78,9 @@
box-sizing: border-box;
display: flex;
flex-wrap: wrap;
height: 100vh;
margin-top: auto;
margin-bottom: auto;
justify-content: center;
padding: 100px 0;
.videocontainer {
border: 0;

View File

@@ -86,5 +86,9 @@ $flagsImagePath: "../images/";
@import 'avatar';
@import 'promotional-footer';
@import 'chrome-extension-banner';
@import 'settings-button';
@import 'meter';
@import 'audio-preview';
@import 'video-preview';
/* Modules END */

View File

@@ -164,6 +164,13 @@
background: #B8C7E0;
}
.circular-label.e2ee {
align-items: center;
background: #76CF9C;
display: flex;
justify-content: center;
}
.circular-label.file {
background: #FF5630;
}

1
debian/control vendored
View File

@@ -53,5 +53,6 @@ Description: Prosody token authentication plugin for Jitsi Meet
Package: jitsi-meet-turnserver
Architecture: all
Breaks: apache2
Pre-Depends: jitsi-meet-web-config
Depends: ${misc:Depends}, nginx (>= 1.13.10) | nginx-full (>= 1.13.10) | nginx-extras (>= 1.13.10), jitsi-meet-prosody, coturn, dnsutils
Description: Configures coturn to be used with Jitsi Meet

View File

@@ -17,6 +17,9 @@ set -e
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
function generateRandomPassword() {
cat /dev/urandom | tr -dc 'a-zA-Z0-9' | head -c 16
}
case "$1" in
configure)
@@ -51,7 +54,7 @@ case "$1" in
db_get jicofo/jicofo-authpassword
if [ -z "$RET" ] ; then
# if password is missing generate it, and store it
JICOFO_AUTH_PASSWORD=`head -c 8 /dev/urandom | tr '\0-\377' 'a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9@@@@####'`
JICOFO_AUTH_PASSWORD=`generateRandomPassword`
db_set jicofo/jicofo-authpassword "$JICOFO_AUTH_PASSWORD"
else
JICOFO_AUTH_PASSWORD="$RET"
@@ -60,7 +63,7 @@ case "$1" in
db_get jicofo/jicofosecret
if [ -z "$RET" ] ; then
# if secret is missing generate it, and store it
JICOFO_SECRET=`head -c 8 /dev/urandom | tr '\0-\377' 'a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9a-zA-Z0-9@@@@####'`
JICOFO_SECRET=`generateRandomPassword`
db_set jicofo/jicofosecret "$JICOFO_SECRET"
else
JICOFO_SECRET="$RET"
@@ -83,7 +86,7 @@ case "$1" in
db_get jitsi-meet-prosody/turn-secret
if [ -z "$RET" ] ; then
# 8-chars random secret used for the turnserver
TURN_SECRET=`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 8 | head -n 1`
TURN_SECRET=`generateRandomPassword`
db_set jitsi-meet-prosody/turn-secret "$TURN_SECRET"
else
TURN_SECRET="$RET"
@@ -134,7 +137,7 @@ case "$1" in
# as we are migrating configs
if [ -f $PROSODY_HOST_CONFIG ] && ! grep -q "internal.auth.$JVB_HOSTNAME" $PROSODY_HOST_CONFIG; then
echo -e "\nComponent \"internal.auth.$JVB_HOSTNAME\" \"muc\"" >> $PROSODY_HOST_CONFIG
echo -e " storage = \"null\"" >> $PROSODY_HOST_CONFIG
echo -e " storage = \"memory\"" >> $PROSODY_HOST_CONFIG
echo -e " modules_enabled = { \"ping\"; }" >> $PROSODY_HOST_CONFIG
echo -e " admins = { \"$JICOFO_AUTH_USER@auth.$JVB_HOSTNAME\", \"jvb@auth.$JVB_HOSTNAME\" }" >> $PROSODY_HOST_CONFIG
fi
@@ -148,14 +151,13 @@ case "$1" in
ln -sf /var/lib/prosody/$JVB_HOSTNAME.crt /etc/prosody/certs/$JVB_HOSTNAME.crt
fi
PR11_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-0.11' 2>/dev/null | awk '{print $3}' || true)"
PRTRUNK_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-trunk' 2>/dev/null | awk '{print $3}' || true)"
PR10_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-0.10' 2>/dev/null | awk '{print $3}' || true)"
PR_VER_INSTALLED=$(dpkg-query -f='${Version}\n' --show prosody 2>/dev/null || true)
if [ "$PR11_INSTALL_CHECK" = "installed" ] \
|| [ "$PR11_INSTALL_CHECK" = "unpacked" ] \
|| dpkg --compare-versions "$PR_VER_INSTALLED" gt "0.11" ; then
if [ "$PRTRUNK_INSTALL_CHECK" = "installed" ] \
|| [ "$PRTRUNK_INSTALL_CHECK" = "unpacked" ] ; then
if [ -f $PROSODY_HOST_CONFIG ]; then
sed -i 's/storage = \"null\"/storage = \"memory\"/g' $PROSODY_HOST_CONFIG
sed -i 's/storage = \"memory\"/storage = \"null\"/g' $PROSODY_HOST_CONFIG
# trigger a restart
PROSODY_CONFIG_PRESENT="false"
@@ -168,7 +170,7 @@ case "$1" in
# if the version is 0.10.X (>0.10 and <0.11)
if [ -f $PROSODY_HOST_CONFIG ] \
&& dpkg --compare-versions "$PR_VER_INSTALLED" lt "0.11" ; then
sed -i 's/storage = \"null\"/storage = \"none\"/g' $PROSODY_HOST_CONFIG
sed -i 's/storage = \"memory\"/storage = \"none\"/g' $PROSODY_HOST_CONFIG
# trigger a restart
PROSODY_CONFIG_PRESENT="false"

View File

@@ -69,12 +69,15 @@ case "$1" in
echo "Failed to install basexx - try installing it manually"
fi
PR11_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-0.11' 2>/dev/null | awk '{print $3}' || true)"
PR10_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-0.10' 2>/dev/null | awk '{print $3}' || true)"
PRTRUNK_INSTALL_CHECK="$(dpkg-query -f '${Status}' -W 'prosody-trunk' 2>/dev/null | awk '{print $3}' || true)"
PR_VER_INSTALLED=$(dpkg-query -f='${Version}\n' --show prosody 2>/dev/null || true)
if [ "$PR11_INSTALL_CHECK" = "installed" ] \
|| [ "$PR11_INSTALL_CHECK" = "unpacked" ] \
|| dpkg --compare-versions "$PR_VER_INSTALLED" gt "0.11" ; then
sed -i 's/module:hook/module:hook_global/g' /usr/share/jitsi-meet/prosody-plugins/mod_auth_token.lua
if [ "$PR10_INSTALL_CHECK" = "installed" ] \
|| "$PR10_INSTALL_CHECK" = "unpacked" \
|| "$PRTRUNK_INSTALL_CHECK" = "installed" \
|| "$PRTRUNK_INSTALL_CHECK" = "unpacked" \
|| dpkg --compare-versions "$PR_VER_INSTALLED" lt "0.11" ; then
sed -i 's/module:hook_global(/module:hook(/g' /usr/share/jitsi-meet/prosody-plugins/mod_auth_token.lua
fi
if [ -x "/etc/init.d/prosody" ]; then

View File

@@ -1,2 +1,3 @@
doc/debian/jitsi-meet-turn/turnserver.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet/jitsi-meet.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet-turn/turnserver.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet/jitsi-meet.conf /usr/share/jitsi-meet-turnserver/
doc/debian/jitsi-meet-turn/coturn-certbot-deploy.sh /usr/share/jitsi-meet-turnserver/

View File

@@ -1 +0,0 @@
/usr/share/jitsi-meet-turnserver/jitsi-meet.conf /etc/nginx/modules-enabled/60-jitsi-meet.conf

View File

@@ -36,20 +36,60 @@ case "$1" in
NGINX_CONFIG="/etc/nginx/sites-available/$JVB_HOSTNAME.conf"
JITSI_MEET_CONFIG="/etc/jitsi/meet/$JVB_HOSTNAME-config.js"
NGINX_SITES_ENABLED="/etc/nginx/sites-enabled/"
NGINX_CONFIG_ENABLED="${NGINX_SITES_ENABLED}${JVB_HOSTNAME}.conf"
NGINX_MULTIPLEXING="true"
for site in ${NGINX_SITES_ENABLED}*; do
# if it is not a file continue
[ -f "${site}" ] || continue
# if it is our config skip
[ "${site}" != "${NGINX_CONFIG_ENABLED}" ] || continue
# check whether other enabled hosts has listen 443
if cat ${site} | grep -v "^[[:space:]]*#" | grep listen | grep -q "^.*[[:space:]:]443[;[:space:]].*" ; then
# nothing to do
echo "------------------------------------------------"
echo ""
echo "turnserver is listening on tcp 4445 as other nginx sites use port 443"
echo ""
echo "------------------------------------------------"
NGINX_MULTIPLEXING="false"
fi
done
# if there was a turn config backup it so we can configure
# we cannot recognize at the moment is this a user config or default config when installing coturn
if [[ -f $TURN_CONFIG ]] && ! grep -q "jitsi-meet coturn config" "$TURN_CONFIG" ; then
mv $TURN_CONFIG $TURN_CONFIG.bak
fi
# detect dpkg-reconfigure, just delete old links
db_get jitsi-meet-turnserver/jvb-hostname
JVB_HOSTNAME_OLD=$RET
if [ -n "$RET" ] && [ ! "$JVB_HOSTNAME_OLD" = "$JVB_HOSTNAME" ] ; then
rm -f $TURN_CONFIG
if [[ -f $TURN_CONFIG ]] && grep -q "jitsi-meet coturn config" "$TURN_CONFIG" ; then
rm -f $TURN_CONFIG
fi
fi
# this detect only old installations with no nginx
db_get jitsi-meet/jvb-serve || true
if [ ! -f $NGINX_CONFIG -o "$RET" = "true" ] ; then
# nothing to do
echo "------------------------------------------------"
echo ""
echo "turnserver not configured as no nginx found to multiplex traffic"
echo "turnserver not configured"
echo ""
echo "------------------------------------------------"
db_stop
exit 0
fi
if [[ -f $TURN_CONFIG ]] ; then
echo "------------------------------------------------"
echo ""
echo "turnserver is already configured on this machine, skipping."
echo ""
echo "------------------------------------------------"
db_stop
exit 0
fi
@@ -65,46 +105,61 @@ case "$1" in
fi
TURN_SECRET="$RET"
if [[ -f $TURN_CONFIG ]] && ! grep -q "jitsi-meet coturn config" "$TURN_CONFIG" ; then
PUBLIC_IP=$(dig +short myip.opendns.com @resolver1.opendns.com)
cp /usr/share/jitsi-meet-turnserver/turnserver.conf $TURN_CONFIG
sed -i "s/jitsi-meet.example.com/$JVB_HOSTNAME/g" $TURN_CONFIG
sed -i "s/__turnSecret__/$TURN_SECRET/g" $TURN_CONFIG
sed -i "s/__external_ip_address__/$JVB_HOSTNAME/g" $TURN_CONFIG
# no turn config exists, lt's copy template and fill it in
PUBLIC_IP=$(dig +short myip.opendns.com @resolver1.opendns.com) || true
if [ -z "$PUBLIC_IP" ] ; then
PUBLIC_IP="127.0.0.1"
echo "------------------------------------------------"
echo "Warning! Could not resolve your external ip address! Error:^"
echo "Your turn server will not work till you edit your $TURN_CONFIG config file."
echo "You need to set your external ip address in external-ip and restart coturn service."
echo "------------------------------------------------"
fi
cp /usr/share/jitsi-meet-turnserver/turnserver.conf $TURN_CONFIG
sed -i "s/jitsi-meet.example.com/$JVB_HOSTNAME/g" $TURN_CONFIG
sed -i "s/__turnSecret__/$TURN_SECRET/g" $TURN_CONFIG
sed -i "s/__external_ip_address__/$PUBLIC_IP/g" $TURN_CONFIG
# SSL for nginx
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
# SSL for nginx
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
if [ "$CERT_CHOICE" = "I want to use my own certificate" ] ; then
db_get jitsi-meet/cert-path-key
CERT_KEY="$RET"
db_get jitsi-meet/cert-path-crt
CERT_CRT="$RET"
if [ "$CERT_CHOICE" = "I want to use my own certificate" ] ; then
db_get jitsi-meet/cert-path-key
CERT_KEY="$RET"
db_get jitsi-meet/cert-path-crt
CERT_CRT="$RET"
# replace self-signed certificate paths with user provided ones
CERT_KEY_ESC=$(echo $CERT_KEY | sed 's/\./\\\./g')
CERT_KEY_ESC=$(echo $CERT_KEY_ESC | sed 's/\//\\\//g')
sed -i "s/pkey=\/etc\/jitsi\/meet\/.*key/pkey=$CERT_KEY_ESC/g" $TURN_CONFIG
CERT_CRT_ESC=$(echo $CERT_CRT | sed 's/\./\\\./g')
CERT_CRT_ESC=$(echo $CERT_CRT_ESC | sed 's/\//\\\//g')
sed -i "s/cert=\/etc\/jitsi\/meet\/.*crt/cert=$CERT_CRT_ESC/g" $TURN_CONFIG
# replace self-signed certificate paths with user provided ones
CERT_KEY_ESC=$(echo $CERT_KEY | sed 's/\./\\\./g')
CERT_KEY_ESC=$(echo $CERT_KEY_ESC | sed 's/\//\\\//g')
sed -i "s/pkey=\/etc\/jitsi\/meet\/.*key/pkey=$CERT_KEY_ESC/g" $TURN_CONFIG
CERT_CRT_ESC=$(echo $CERT_CRT | sed 's/\./\\\./g')
CERT_CRT_ESC=$(echo $CERT_CRT_ESC | sed 's/\//\\\//g')
sed -i "s/cert=\/etc\/jitsi\/meet\/.*crt/cert=$CERT_CRT_ESC/g" $TURN_CONFIG
fi
sed -i "s/#TURNSERVER_ENABLED/TURNSERVER_ENABLED/g" /etc/default/coturn
invoke-rc.d coturn restart || true
NGINX_STREAM_CONFIG="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
if [ $NGINX_MULTIPLEXING = "true" ] && [ ! -f $NGINX_STREAM_CONFIG ] && [ -f $NGINX_CONFIG ] ; then
ln -s /usr/share/jitsi-meet-turnserver/jitsi-meet.conf $NGINX_STREAM_CONFIG
sed -i "s/listen 443 ssl/listen 4444 ssl http2/g" $NGINX_CONFIG
sed -i "s/listen \[\:\:\]\:443 ssl/listen \[\:\:\]\:4444 ssl http2/g" $NGINX_CONFIG
invoke-rc.d nginx reload || true
else
PROSODY_HOST_CONFIG="/etc/prosody/conf.avail/$JVB_HOSTNAME.cfg.lua"
if [ -f $PROSODY_HOST_CONFIG ] ; then
# If we are not multiplexing we need to change the port in prosody config
sed -i 's/"443"/"4445"/g' $PROSODY_HOST_CONFIG
invoke-rc.d prosody restart || true
fi
fi
sed -i "s/#TURNSERVER_ENABLED/TURNSERVER_ENABLED/g" /etc/default/coturn
invoke-rc.d coturn restart || true
NGINX_STREAM_CONFIG="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
if [ -f $NGINX_STREAM_CONFIG ] && [ -f $NGINX_CONFIG ] ; then
sed -i "s/listen 443 ssl/listen 4444 ssl http2/g" $NGINX_CONFIG
sed -i "s/listen \[\:\:\]\:443 ssl/listen \[\:\:\]\:4444 ssl http2/g" $NGINX_CONFIG
invoke-rc.d nginx reload || true
fi
# Enable turn server in config.js
if [ -f $JITSI_MEET_CONFIG ] ; then
sed -i "s/\/\/ useStunTurn: true/useStunTurn: true/g" $JITSI_MEET_CONFIG
fi
# Enable turn server in config.js
if [ -f $JITSI_MEET_CONFIG ] ; then
sed -i "s/\/\/ useStunTurn: true/useStunTurn: true/g" $JITSI_MEET_CONFIG
fi
# and we're done with debconf

View File

@@ -24,6 +24,7 @@ set -e
case "$1" in
remove)
rm -rf /etc/nginx/modules-enabled/60-jitsi-meet.conf
if [ -x "/etc/init.d/nginx" ]; then
invoke-rc.d nginx reload || true
fi
@@ -32,6 +33,8 @@ case "$1" in
fi
;;
purge)
rm -rf /etc/nginx/modules-enabled/60-jitsi-meet.conf
rm -rf /etc/turnserver.conf
if [ -x "/etc/init.d/nginx" ]; then
invoke-rc.d nginx reload || true
fi

45
doc/README.md Normal file
View File

@@ -0,0 +1,45 @@
# Documentation
This document is the entrypoint to different guides, divided in three groups:
* User guide: these documents are designed to help users of the service, to better
understand all the available features and how to use them.
* Developer guide: these documents are designed to help developers who want to either
integrate the Jitsi Meet API / SDK in their products or want to improve Jitsi Meet
itself by developing new features or fixing bugs.
* DevOps guide: these documents are designed for DevOps folks, system administrators
or anyone who wishes to deploy and operate their own Jitsi Meet instance.
## User guide
Work in progress.
## Developer guide
### Web
* [iframe API](https://github.com/jitsi/jitsi-meet/blob/master/doc/api.md)
* [Jitsi Meet development](https://github.com/jitsi/jitsi-meet/blob/master/doc/development.md)
### Mobile
* [Building the mobile apps](https://github.com/jitsi/jitsi-meet/blob/master/doc/mobile.md)
* [SDK usage examples](https://github.com/jitsi/jitsi-meet-sdk-samples)
* [Enabling Dropbox support](https://github.com/jitsi/jitsi-meet/blob/master/doc/mobile-dropbox.md)
* [Enabling Google authentication](https://github.com/jitsi/jitsi-meet/blob/master/doc/mobile-google-auth.md)
## DevOps guide
* [Quick install](https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md)
* [Docker install](https://github.com/jitsi/docker-jitsi-meet/blob/master/README.md)
* [Google Calendar, MS Calendar, Dropbox integrations](https://github.com/jitsi/jitsi-meet/blob/master/doc/integrations.md)
* [Video tutorials on deployment and scalability](https://jitsi.org/tutorials/)
* [Configuring a video SIP gateway](https://github.com/jitsi/jitsi-meet/blob/master/doc/sipgw-config.md)
* [Enabling speaker stats](https://github.com/jitsi/jitsi-meet/blob/master/doc/speakerstats-prosody.md)
* [Enabling TURN](https://github.com/jitsi/jitsi-meet/blob/master/doc/turn.md)
* [Networking FAQ](https://github.com/jitsi/jitsi-meet/blob/master/doc/faq.md)
* [Cloud APIs](https://github.com/jitsi/jitsi-meet/blob/master/doc/cloud-api.md)
* [Manual Installation](https://github.com/jitsi/jitsi-meet/blob/master/doc/manual-install.md)
* [Scalable Installation](https://github.com/jitsi/jitsi-meet/blob/master/doc/scalable-installation.md)

View File

@@ -85,14 +85,15 @@ const options = {
const api = new JitsiMeetExternalAPI(domain, options);
```
You can set the userInfo(email) for the call:
You can set the userInfo(email, display name) for the call:
```javascript
var domain = "meet.jit.si";
var options = {
...
userInfo: {
email: 'email@jitsiexamplemail.com'
email: 'email@jitsiexamplemail.com',
displayName: 'John Doe'
}
}
var api = new JitsiMeetExternalAPI(domain, options);

View File

@@ -6,8 +6,8 @@ muc_mapper_domain_base = "jitmeet.example.com";
turncredentials_secret = "__turnSecret__";
turncredentials = {
{ type = "stun", host = "jitmeet.example.com", port = "443" },
{ type = "turn", host = "jitmeet.example.com", port = "443", transport = "udp" },
{ type = "stun", host = "jitmeet.example.com", port = "4446" },
{ type = "turn", host = "jitmeet.example.com", port = "4446", transport = "udp" },
{ type = "turns", host = "jitmeet.example.com", port = "443", transport = "tcp" }
};
@@ -43,7 +43,7 @@ VirtualHost "jitmeet.example.com"
c2s_require_encryption = false
Component "conference.jitmeet.example.com" "muc"
storage = "null"
storage = "memory"
modules_enabled = {
"muc_meeting_id";
"muc_domain_mapper";
@@ -55,11 +55,13 @@ Component "conference.jitmeet.example.com" "muc"
-- internal muc component
Component "internal.auth.jitmeet.example.com" "muc"
storage = "null"
storage = "memory"
modules_enabled = {
"ping";
}
admins = { "focusUser@auth.jitmeet.example.com", "jvb@auth.jitmeet.example.com" }
muc_room_locking = false
muc_room_default_public_jids = true
VirtualHost "auth.jitmeet.example.com"
authentication = "internal_plain"

View File

@@ -0,0 +1,45 @@
#!/bin/sh
set -e
COTURN_CERT_DIR="/etc/coturn/certs"
TURN_CONFIG="/etc/turnserver.conf"
# create a directory to store certs if it does not exists
if [ ! -d "$COTURN_CERT_DIR" ]; then
mkdir -p $COTURN_CERT_DIR
chown -R turnserver:turnserver /etc/coturn/
chmod -R 700 /etc/coturn/
fi
# This is a template and when copied to /etc/letsencrypt/renewal-hooks/deploy/
# during creating the Let's encrypt certs script
# jitsi-meet.example.com will be replaced with the real domain of deployment
for domain in $RENEWED_DOMAINS; do
case $domain in
jitsi-meet.example.com)
# Make sure the certificate and private key files are
# never world readable, even just for an instant while
# we're copying them into daemon_cert_root.
umask 077
cp "$RENEWED_LINEAGE/fullchain.pem" "$COTURN_CERT_DIR/$domain.fullchain.pem"
cp "$RENEWED_LINEAGE/privkey.pem" "$COTURN_CERT_DIR/$domain.privkey.pem"
# Apply the proper file ownership and permissions for
# the daemon to read its certificate and key.
chown turnserver "$COTURN_CERT_DIR/$domain.fullchain.pem" \
"$COTURN_CERT_DIR/$domain.privkey.pem"
chmod 400 "$COTURN_CERT_DIR/$domain.fullchain.pem" \
"$COTURN_CERT_DIR/$domain.privkey.pem"
if [ -f $TURN_CONFIG ] && grep -q "jitsi-meet coturn config" "$TURN_CONFIG" ; then
echo "Configuring turnserver"
sed -i "/^cert/c\cert=\/etc\/coturn\/certs\/${domain}.fullchain.pem" $TURN_CONFIG
sed -i "/^pkey/c\pkey=\/etc\/coturn\/certs\/${domain}.privkey.pem" $TURN_CONFIG
fi
service coturn restart
;;
esac
done

View File

@@ -1,5 +1,4 @@
# jitsi-meet coturn config. Do not modify this line
lt-cred-mech
use-auth-secret
keep-address-family
static-auth-secret=__turnSecret__
@@ -8,6 +7,8 @@ cert=/etc/jitsi/meet/jitsi-meet.example.com.crt
pkey=/etc/jitsi/meet/jitsi-meet.example.com.key
no-tcp
listening-port=443
listening-port=4446
tls-listening-port=4445
external-ip=__external_ip_address__
syslog

View File

@@ -11,14 +11,14 @@ stream {
}
# since 1.13.10
map $ssl_preread_alpn_protocols $upstream {
"h2" web;
"http/1.1" web;
"h2,http/1.1" web;
~\bh2\b web;
~\bhttp/1\. web;
default turn;
}
server {
listen 443;
listen [::]:443;
# since 1.11.5
ssl_preread on;

View File

@@ -39,6 +39,10 @@ server {
index index.html index.htm;
error_page 404 /static/404.html;
gzip on;
gzip_types text/plain text/css application/javascript application/json;
gzip_vary on;
location = /config.js {
alias /etc/jitsi/meet/jitsi-meet.example.com-config.js;
}

View File

@@ -69,10 +69,14 @@ Use it at the CLI, type
make dev
```
By default the backend deployment used is `beta.meet.jit.si`. You can point the Jitsi-Meet app at a different backend by using a proxy server. To do this, set the WEBPACK_DEV_SERVER_PROXY_TARGET variable:
By default the backend deployment used is `alpha.jitsi.net`. You can point the Jitsi-Meet app at a different backend by using a proxy server. To do this, set the WEBPACK_DEV_SERVER_PROXY_TARGET variable:
```
export WEBPACK_DEV_SERVER_PROXY_TARGET=https://your-example-server.com
make dev
```
The app should be running at https://localhost:8080/
#### Chrome Privacy Error
Newer versions of Chrome may block localhost under https and show `NET::ERR_CERT_INVALID` on the page. To solve this open [chrome://flags/#allow-insecure-localhost](chrome://flags/#allow-insecure-localhost) and select Enable, then press Relaunch or quit and restart Chrome.

View File

@@ -0,0 +1,27 @@
# Jitsi Conference Focus settings
# sets the host name of the XMPP server
JICOFO_HOST=localhost
# sets the XMPP domain (default: none)
JICOFO_HOSTNAME=meet.example.com
# sets the secret used to authenticate as an XMPP component
JICOFO_SECRET=$JICOFO_SECRET
# sets the port to use for the XMPP component connection
JICOFO_PORT=5347
# sets the XMPP domain name to use for XMPP user logins
JICOFO_AUTH_DOMAIN=auth.meet.example.com
# sets the username to use for XMPP user logins
JICOFO_AUTH_USER=focus
# sets the password to use for XMPP user logins
JICOFO_AUTH_PASSWORD=$JICOFO_PASSWORD
# extra options to pass to the jicofo daemon
JICOFO_OPTS=""
# adds java system props that are passed to jicofo (default are for home and logging config file)
JAVA_SYS_PROPS="-Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=jicofo -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=/var/log/jitsi -Djava.util.logging.config.file=/etc/jitsi/jicofo/logging.properties"

View File

@@ -0,0 +1,6 @@
org.jitsi.jicofo.BRIDGE_MUC=JvbBrewery@internal.auth.meet.example.com
org.jitsi.jicofo.ALWAYS_TRUST_MODE_ENABLED=true
org.jitsi.jicofo.jibri.BREWERY=JibriBrewery@internal.auth.meet.example.com
org.jitsi.jicofo.jibri.PENDING_TIMEOUT=90

View File

@@ -0,0 +1,88 @@
plugin_paths = { "/usr/share/jitsi-meet/prosody-plugins/" }
-- domain mapper options, must at least have domain base set to use the mapper
muc_mapper_domain_base = "meet.example.com";
turncredentials_secret = "turncredentials_secret_test";
turncredentials = {
{ type = "stun", host = "meet.example.com", port = "443" },
{ type = "turn", host = "meet.example.com", port = "443", transport = "udp" },
{ type = "turns", host = "meet.example.com", port = "443", transport = "tcp" }
};
cross_domain_bosh = false;
consider_bosh_secure = true;
VirtualHost "meet.example.com"
-- enabled = false -- Remove this line to enable this host
authentication = "anonymous"
-- Properties below are modified by jitsi-meet-tokens package config
-- and authentication above is switched to "token"
--app_id="example_app_id"
--app_secret="example_app_secret"
-- Assign this host a certificate for TLS, otherwise it would use the one
-- set in the global section (if any).
-- Note that old-style SSL on port 5223 only supports one certificate, and will always
-- use the global one.
ssl = {
key = "/etc/prosody/certs/meet.example.com.key";
certificate = "/etc/prosody/certs/meet.example.com.crt";
}
speakerstats_component = "speakerstats.meet.example.com"
conference_duration_component = "conferenceduration.meet.example.com"
-- we need bosh
modules_enabled = {
"bosh";
"pubsub";
"ping"; -- Enable mod_ping
"speakerstats";
"turncredentials";
"conference_duration";
}
c2s_require_encryption = false
Component "conference.meet.example.com" "muc"
storage = "memory"
modules_enabled = {
"muc_meeting_id";
"muc_domain_mapper";
-- "token_verification";
}
admins = { "focus@auth.meet.example.com" }
muc_room_locking = false
muc_room_default_public_jids = true
-- internal muc component
-- Note: This is also used from jibris
Component "internal.auth.meet.example.com" "muc"
storage = "memory"
modules_enabled = {
"ping";
}
admins = { "focus@auth.meet.example.com", "jvb@auth.meet.example.com" }
VirtualHost "auth.meet.example.com"
ssl = {
key = "/etc/prosody/certs/auth.meet.example.com.key";
certificate = "/etc/prosody/certs/auth.meet.example.com.crt";
}
authentication = "internal_plain"
Component "focus.meet.example.com"
component_secret = "jicofo_secret_test"
Component "speakerstats.meet.example.com" "speakerstats_component"
muc_component = "conference.meet.example.com"
Component "conferenceduration.meet.example.com" "conference_duration_component"
muc_component = "conference.meet.example.com"
-- for Jibri
VirtualHost "recorder.meet.example.com"
modules_enabled = {
"ping";
}
authentication = "internal_plain"
c2s_require_encryption = false

View File

@@ -0,0 +1,114 @@
-- Prosody XMPP Server Configuration
---------- Server-wide settings ----------
-- Settings in this section apply to the whole server and are the default settings
-- for any virtual hosts
admins = { }
network_backend = "epoll"
-- This is the list of modules Prosody will load on startup.
-- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too.
-- Documentation for bundled modules can be found at: https://prosody.im/doc/modules
modules_enabled = {
-- Generally required
"roster"; -- Allow users to have a roster. Recommended ;)
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
"tls"; -- Add support for secure TLS on c2s/s2s connections
"dialback"; -- s2s dialback support
"disco"; -- Service discovery
-- Not essential, but recommended
"carbons"; -- Keep multiple clients in sync
"pep"; -- Enables users to publish their avatar, mood, activity, playing music and more
"private"; -- Private XML storage (for room bookmarks, etc.)
"blocklist"; -- Allow users to block communications with other users
"vcard4"; -- User profiles (stored in PEP)
"vcard_legacy"; -- Conversion between legacy vCard and PEP Avatar, vcard
-- Nice to have
"version"; -- Replies to server version requests
"uptime"; -- Report how long server has been running
"time"; -- Let others know the time here on this server
"ping"; -- Replies to XMPP pings with pongs
"register"; -- Allow users to register on this server using a client and change passwords
--"mam"; -- Store messages in an archive and allow users to access it
--"csi_simple"; -- Simple Mobile optimizations
-- Admin interfaces
"admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands
--"admin_telnet"; -- Opens telnet console interface on localhost port 5582
-- HTTP modules
--"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
--"websocket"; -- XMPP over WebSockets
--"http_files"; -- Serve static files from a directory over HTTP
-- Other specific functionality
--"limits"; -- Enable bandwidth limiting for XMPP connections
--"groups"; -- Shared roster support
--"server_contact_info"; -- Publish contact information for this service
--"announce"; -- Send announcement to all online users
--"welcome"; -- Welcome users who register accounts
--"watchregistrations"; -- Alert admins of registrations
--"motd"; -- Send a message to users when they log in
--"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
--"proxy65"; -- Enables a file transfer proxy service which clients behind NAT can use
}
-- These modules are auto-loaded, but should you want
-- to disable them then uncomment them here:
modules_disabled = {
-- "offline"; -- Store offline messages
-- "c2s"; -- Handle client connections
-- "s2s"; -- Handle server-to-server connections
-- "posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
}
-- Disable account creation by default, for security
-- For more information see https://prosody.im/doc/creating_accounts
allow_registration = false
-- Force clients to use encrypted connections? This option will
-- prevent clients from authenticating unless they are using encryption.
c2s_require_encryption = true
-- Force servers to use encrypted connections? This option will
-- prevent servers from authenticating unless they are using encryption.
s2s_require_encryption = true
-- Force certificate authentication for server-to-server connections?
s2s_secure_auth = false
-- Required for init scripts and prosodyctl
pidfile = "/var/run/prosody/prosody.pid"
-- Select the authentication backend to use. The 'internal' providers
-- use Prosody's configured data storage to store the authentication data.
authentication = "internal_hashed"
archive_expires_after = "1w" -- Remove archived messages after 1 week
-- Logging configuration
-- For advanced logging see https://prosody.im/doc/logging
log = {
info = "/var/log/prosody/prosody.log"; -- Change 'info' to 'debug' for verbose logging
error = "/var/log/prosody/prosody.err";
-- "*syslog"; -- Uncomment this for logging to syslog
-- "*console"; -- Log to the console, useful for debugging with daemonize=false
}
-- Location of directory to find certificates in (relative to main config file):
certificates = "certs"
VirtualHost "localhost"
Include "conf.d/*.cfg.lua"

View File

@@ -0,0 +1,20 @@
# Jitsi Videobridge settings
# sets the XMPP domain (default: none)
JVB_HOSTNAME=meet.example.com
# sets the hostname of the XMPP server (default: domain if set, localhost otherwise)
JVB_HOST=
# sets the port of the XMPP server (default: 5275)
JVB_PORT=5347
# sets the shared secret used to authenticate to the XMPP server
JVB_SECRET=$VP_SECRET
# extra options to pass to the JVB daemon
JVB_OPTS="--apis=rest,"
# adds java system props that are passed to jvb (default are for home and logging config file)
JAVA_SYS_PROPS="-Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HOME_DIR_NAME=videobridge -Dnet.java.sip.communicator.SC_LOG_DIR_LOCATION=/var/log/jitsi -Djava.util.logging.config.file=/etc/jitsi/videobridge/logging.properties"

View File

@@ -0,0 +1,19 @@
org.ice4j.ice.harvest.DISABLE_AWS_HARVESTER=true
org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES=meet-jit-si-turnrelay.jitsi.net:443
org.jitsi.jicofo.ALWAYS_TRUST_MODE_ENABLED=true
org.jitsi.videobridge.ENABLE_REST_SHUTDOWN=true
# Enable broadcasting stats/presence in a MUC
org.jitsi.videobridge.ENABLE_STATISTICS=true
org.jitsi.videobridge.STATISTICS_TRANSPORT=muc,colibri,rest
org.jitsi.videobridge.STATISTICS_INTERVAL=5000
org.jitsi.videobridge.xmpp.user.shard-1.HOSTNAME=meet.example.com
org.jitsi.videobridge.xmpp.user.shard-1.DOMAIN=auth.meet.example.com
org.jitsi.videobridge.xmpp.user.shard-1.USERNAME=jvb
org.jitsi.videobridge.xmpp.user.shard-1.PASSWORD=$VB_PASSWORD
org.jitsi.videobridge.xmpp.user.shard-1.MUC_JIDS=JvbBrewery@internal.auth.meet.example.com
org.jitsi.videobridge.xmpp.user.shard-1.MUC_NICKNAME=$NICKNAME_OF_VB
org.jitsi.videobridge.xmpp.user.shard-1.DISABLE_CERTIFICATE_VERIFICATION=true

View File

@@ -8,6 +8,8 @@ change references to that to match your host, and generate some passwords for
There are also some complete [example config files](https://github.com/jitsi/jitsi-meet/tree/master/doc/example-config-files/) available, mentioned in each section.
There are additional configurations to be done for a [scalable installation](https://github.com/jitsi/jitsi-meet/tree/master/doc/scalable-installation.md)
## Network description
This is how the network looks:

View File

@@ -7,8 +7,10 @@ Jitsi Meet can be built as a standalone app for Android or iOS. It uses the
First make sure the [React Native dependencies] are installed.
**NOTE**: This document assumes the app is being built on a macOS system.
**NOTE**: Node 10.X and npm 6.X are recommended for building.
**NOTE**: This document assumes the app is being built on a macOS system. GNU/Linux is also
supported for building the Android app and Windows **is not supported at alll**.
**NOTE**: Node 12.X and npm 6.X are recommended for building.
## iOS

View File

@@ -22,14 +22,22 @@ Finally on the same machine test that you can ping the FQDN with: `ping "$(hostn
### Add the Jitsi package repository
```sh
echo 'deb https://download.jitsi.org stable/' >> /etc/apt/sources.list.d/jitsi-stable.list
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | apt-key add -
echo 'deb https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
```
### Open ports in your firewall
Open the following ports in your firewall, to allow traffic to the machine running jitsi:
- 80 TCP
- 443 TCP
- 10000 UDP
### Install Jitsi Meet
_Note_: The installer will check if [Nginx](https://nginx.org/) or [Apache](https://httpd.apache.org/) is present (in that order) and configure a virtualhost within the web server it finds to serve Jitsi Meet. If none of the above is found it then defaults to Nginx.
If you are already running Nginx on port 443 on the same machine you better skip the turnserver configuration as it will conflict with your current port 443, so use the command `apt install --no-install-recommends jitsi-meet`.
If you are already running Nginx on port 443 on the same machine turnserver configuration will be skipped as it will conflict with your current port 443.
```sh
# Ensure support is available for apt repositories served via HTTPS
@@ -50,7 +58,7 @@ This hostname (or IP address) will be used for virtualhost configuration inside
In order to have encrypted communications, you need a [TLS certificate](https://en.wikipedia.org/wiki/Transport_Layer_Security). The easiest way is to use [Let's Encrypt](https://letsencrypt.org/).
_Note_: Jitsi Meet mobile apps *require* a valid certificate signed by a trusted [Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority) and will not be able to connect to your server if you choose a self-signed certificate.
_Note_: Jitsi Meet mobile apps *require* a valid certificate signed by a trusted [Certificate Authority](https://en.wikipedia.org/wiki/Certificate_authority) (such as a Let's Encrypt certificate) and will not be able to connect to your server if you choose a self-signed certificate.
Simply run the following in your shell:

View File

@@ -0,0 +1,166 @@
# Scalable Jitsi installation
A single server Jitsi installation is good for a limited size of concurrent conferences.
The first limiting factor is the videobridge component, that handles the actual video and audio traffic.
It is easy to scale the video bridges horizontally by adding as many as needed.
In a cloud based environment, additionally the bridges can be scaled up or down as needed.
*NB*: The [Youtube Tutorial on Scaling](https://www.youtube.com/watch?v=LyGV4uW8km8) is outdated and describes an old configuration method.
*NB*: Building a scalable infrastructure is not a task for beginning Jitsi Administrators.
The instructions assume that you have installed a single node version successfully, and that
you are comfortable installing, configuring and debugging Linux software.
This is not a step-by-step guide, but will show you, which packages to install and which
configurations to change. Use the [manual install](https://github.com/jitsi/jitsi-meet/blob/master/doc/manual-install.md) for
details on how to setup Jitsi on a single host.
It is highly recommended to use configuration management tools like Ansible or Puppet to manage the
installation and configuration.
## Architecture (Single Jitsi-Meet, multiple videobridges)
A first step is to split the functions of the central jitsi-meet instance (with nginx, prosody and jicofo) and
videobridges.
A simplified diagram (with open network ports) of an installation with one Jitsi-Meet instance and three
videobridges that are load balanced looks as follows. Each box is a server/VM.
```
+ +
| |
| |
v v
80, 443 TCP 443 TCP, 10000 UDP
+--------------+ +---------------------+
| nginx | 5222, 5347 TCP | |
| jitsi-meet |<-------------------+| jitsi-videobridge |
| prosody | | | |
| jicofo | | +---------------------+
+--------------+ |
| +---------------------+
| | |
+----------+| jitsi-videobridge |
| | |
| +---------------------+
|
| +---------------------+
| | |
+----------+| jitsi-videobridge |
| |
+---------------------+
```
## Machine Sizing
The Jitsi-Meet server will generally not have that much load (unless you have many) conferences
going at the same time. A 4 CPU, 8 GB machine will probably be fine.
The videobridges will have more load. 4 or 8 CPU with 8 GB RAM seems to be a good configuration.
### Installation of Jitsi-Meet
Assuming that the installation will run under the following FQDN: `meet.example.com` and you have
SSL cert and key in `/etc/ssl/meet.example.com.{crt,key}`
Set the following DebConf variables prior to installing the packages.
(We are not installing the `jitsi-meet` package which would handle that for us)
Install the `debconf-utils` package
```
$ cat << EOF | sudo debconf-set-selections
jitsi-videobridge jitsi-videobridge/jvb-hostname string meet.example.com
jitsi-meet jitsi-meet/jvb-serve boolean false
jitsi-meet-prosody jitsi-videobridge/jvb-hostname string meet.example.com
jitsi-meet-web-config jitsi-meet/cert-choice select I want to use my own certificate
jitsi-meet-web-config jitsi-meet/cert-path-crt string /etc/ssl/meet.example.com.crt
jitsi-meet-web-config jitsi-meet/cert-path-key string /etc/ssl/meet.example.com.key
EOF
```
On the jitsi-meet server, install the following packages:
* `nginx`
* `prosody`
* `jicofo`
* `jitsi-meet-web`
* `jitsi-meet-prosody`
* `jitsi-meet-web-config`
### Installation of Videobridge(s)
For simplicities sake, set the same `debconf` variables as above and install
* `jitsi-videobridge2`
### Configuration of jitsi-meet
#### Firewall
Open the following ports:
Open to world:
* 80 TCP
* 443 TCP
Open to the videobridges only
* 5222 TCP (for Prosody)
* 5347 TCP (for Jicofo)
#### NGINX
Create the `/etc/nginx/sites-available/meet.example.com.conf` as usual
#### Prosody
Follow the steps in the [manual install](https://github.com/jitsi/jitsi-meet/blob/master/doc/manual-install.md) for setup tasks
You will need to adapt the following files (see the files in `example-config-files/scalable`)
* `/etc/prosody/prosody.cfg.lua`
* `/etc/prosody/conf.avail/meet.example.com.cfg.lua`
#### Jitsi-Meet
Adapt `/usr/share/jitsi-meet/config.js` and `/usr/share/jitsi-meet/interface-config.js` to your specific needs
#### Jicofo
You will need to adapt the following files (see the files in `example-config-files/scalable`)
* `/etc/jitsi/jicofo/config` (hostname, jicofo_secret, jicofo_password)
* `/etc/jitsi/jicofo/sip-communicator.properties` (hostname)
### Configuration of the Videobridge
#### Firewall
Open the following ports:
Open to world:
* 443 TCP
* 10000 UDP
#### jitsi-videobridge2
You will need to adapt the following files (see the files in `example-config-files/scalable`)
Each videobridge will have to have it's own, unique nickname
* `/etc/jitsi/videobridge/config` (hostname, password)
* `/etc/jitsi/jicofo/sip-communicator.properties` (hostname of jitsi-meet, nickname of videobridge, vb_password)
With the latest stable (April 2020) videobridge, it is no longer necessary to set public and private IP
adresses in the `sip-communicator.properties` as the bridge will figure out the correct configuration by itself.
## Testing
After restarting all services (`prosody`, `jicofo` and all the `jitsi-videobridge2`) you can see in
`/var/log/prosody/prosody.log` and
`/var/log/jitsi/jicofo.log` that the videobridges connect to Prososy and that Jicofo picks them up.
When a new conference starts, Jicofo picks a videobridge and schedules the conference on it.

View File

@@ -51,7 +51,8 @@ var interfaceConfig = {
'fodeviceselection', 'hangup', 'profile', 'info', 'chat', 'recording',
'livestreaming', 'etherpad', 'sharedvideo', 'settings', 'raisehand',
'videoquality', 'filmstrip', 'invite', 'feedback', 'stats', 'shortcuts',
'tileview', 'videobackgroundblur', 'download', 'help', 'mute-everyone'
'tileview', 'videobackgroundblur', 'download', 'help', 'mute-everyone',
'e2ee'
],
SETTINGS_SECTIONS: [ 'devices', 'language', 'moderator', 'profile', 'calendar' ],
@@ -175,7 +176,7 @@ var interfaceConfig = {
// has a suboptimal experience. Browsers which are not listed as optimal or
// unsupported are considered suboptimal. Valid values are:
// chrome, chromium, edge, electron, firefox, nwjs, opera, safari
OPTIMAL_BROWSERS: [ 'chrome', 'chromium', 'firefox', 'nwjs', 'electron' ],
OPTIMAL_BROWSERS: [ 'chrome', 'chromium', 'firefox', 'nwjs', 'electron', 'safari' ],
// Browsers, in addition to those which do not fully support WebRTC, that
// are not supported and should show the unsupported browser page.
@@ -206,12 +207,12 @@ var interfaceConfig = {
* If this is set to false, the banner will not be rendered at all. If set to true, the check for extension(s)
* being already installed is done before rendering.
*/
SHOW_CHROME_EXTENSION_BANNER: false
SHOW_CHROME_EXTENSION_BANNER: false,
/**
* When enabled, the kick participant button will not be presented for users without a JWT
*/
// HIDE_KICK_BUTTON_FOR_GUESTS: false
// HIDE_KICK_BUTTON_FOR_GUESTS: false,
/**
* How many columns the tile view can expand to. The respected range is
@@ -252,6 +253,12 @@ var interfaceConfig = {
MOBILE_DYNAMIC_LINK
PHONE_NUMBER_REGEX
*/
// Allow all above example options to include a trailing comma and
// prevent fear when commenting out the last value.
makeJsonParserHappy: 'even if last key had a trailing comma'
// no configuration value should follow this line.
};
/* eslint-enable no-unused-vars, no-var, max-len */

View File

@@ -586,4 +586,4 @@ SPEC CHECKSUMS:
PODFILE CHECKSUM: f615794fb9184757b00cd16e534824ba6ee2fc98
COCOAPODS: 1.8.4
COCOAPODS: 1.9.1

View File

@@ -19,7 +19,7 @@ There are 2 ways to integrate the SDK into your project:
Follow the instructions [here](https://github.com/jitsi/jitsi-meet-ios-sdk-releases/blob/master/README.md).
### Builduing it yourself
### Building it yourself
1. Install all required [dependencies](https://github.com/jitsi/jitsi-meet/blob/master/doc/mobile.md).

View File

@@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>20.2.0</string>
<string>20.3.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleURLTypes</key>

View File

@@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>20.2.0</string>
<string>20.3.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>UISupportedInterfaceOrientations</key>

View File

@@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>XPC!</string>
<key>CFBundleShortVersionString</key>
<string>20.2.0</string>
<string>20.3.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CLKComplicationPrincipalClass</key>

View File

@@ -66,6 +66,9 @@ platform :ios do
beta_app_feedback_email: ENV["JITSI_REVIEW_EMAIL"],
beta_app_review_info: {
contact_email: ENV["JITSI_REVIEW_EMAIL"],
contact_first_name: ENV["JITSI_REVIEW_NAME"],
contact_last_name: ENV["JITSI_REVIEW_SURNAME"],
contact_phone: ENV["JITSI_REVIEW_PHONE"],
demo_account_name: ENV["JITSI_DEMO_ACCOUNT"],
demo_account_password: ENV["JITSI_DEMO_PASSWORD"],
},

View File

@@ -15,7 +15,7 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>2.8.0</string>
<string>2.8.1</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSPrincipalClass</key>

34
lang/languages-ar.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "",
"af": "",
"bg": "",
"ca": "",
"cs": "",
"da": "",
"de": "",
"el": "",
"enGB": "",
"eo": "",
"es": "",
"esUS": "",
"et": "",
"fi": "",
"fr": "",
"frCA": "",
"hr": "",
"hu": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"nl": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": "",
"zhTW": ""
}

View File

@@ -1,27 +0,0 @@
{
"en": "İngilis",
"af": "",
"az": "",
"bg": "Bolqar",
"cs": "",
"de": "Alman",
"el": "",
"eo": "",
"es": "İspan",
"fr": "Fransız",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"nb": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sk": "",
"sl": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": ""
}

34
lang/languages-be.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "Англійская",
"af": "Афрыкаанс",
"bg": "Балгарская",
"ca": "Каталанская",
"cs": "Чэшская",
"da": "Дацкая",
"de": "Нямецкая",
"el": "Грэцкая",
"enGB": "Англійская (Вялікабрытанія)",
"eo": "Эсперанта",
"es": "Іспанская",
"esUS": "Іспанская (Лацінская Амерыка)",
"et": "Эстонская",
"fi": "Фінская",
"fr": "Французская",
"frCA": "Французская (канадская)",
"hr": "Харвацкая",
"hu": "Венгерская",
"hy": "Армянская",
"it": "Італьянская",
"ja": "Японская",
"ko": "Карэйская",
"nl": "Галандская",
"oc": "Аксітанская",
"pl": "Польская",
"ptBR": "Партугальская (Бразілія)",
"ru": "Расійская",
"sv": "Шведская",
"tr": "Турэцкая",
"vi": "В'етнамская",
"zhCN": "Кітайская (Кітай)",
"zhTW": "Кітайская (Тайвань)"
}

View File

@@ -29,5 +29,6 @@
"tr": "Turc",
"vi": "Vietnamita",
"zhCN": "Xinès (Xina)",
"zhTW": "Xinès (Taiwan)"
"zhTW": "Xinès (Taiwan)",
"et": "Estonià"
}

View File

@@ -23,5 +23,16 @@
"sv": "Schwedisch",
"tr": "Türkisch",
"vi": "Vietnamesisch",
"zhCN": "Chinesisch (China)"
"zhCN": "Chinesisch (China)",
"zhTW": "Chinesisch (Taiwan)",
"nl": "Niederländisch",
"hu": "Ungarisch",
"hr": "Kroatisch",
"frCA": "Französisch (Kanada)",
"fi": "Finnisch",
"et": "Estnisch",
"esUS": "Spanisch (Lateinamerika)",
"enGB": "Englisch (Vereinigtes Königreich)",
"da": "Dänisch",
"ca": "Katalanisch"
}

View File

@@ -1,27 +1,38 @@
{
"en": "",
"af": "",
"en": "English",
"af": "Afrikaans",
"az": "",
"bg": "",
"cs": "",
"de": "",
"el": "",
"eo": "",
"es": "",
"fr": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"bg": "Bulgarian",
"cs": "Czech",
"de": "German",
"el": "Greek",
"eo": "Esperanto",
"es": "Spanish",
"fr": "French",
"hy": "Armenian",
"it": "Italian",
"ja": "Japanese",
"ko": "Korean",
"nb": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"oc": "Occitan",
"pl": "Polish",
"ptBR": "Portuguese (Brazil)",
"ru": "Russian",
"sk": "",
"sl": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": ""
}
"sv": "Swedish",
"tr": "Turkish",
"vi": "Vietnamese",
"zhCN": "Chinese (China)",
"zhTW": "Chinese (Taiwan)",
"nl": "Dutch",
"hu": "Hungarian",
"hr": "Croatian",
"frCA": "French (Canadian)",
"fi": "Finnish",
"et": "Estonian",
"esUS": "Spanish (Latin America)",
"enGB": "English (United Kingdom)",
"da": "Danish",
"ca": "Catalan"
}

View File

@@ -1,18 +1,18 @@
{
"en": "Angla",
"af": "",
"az": "",
"af": "Afrikansa",
"az": "Azera",
"bg": "Bulgara",
"cs": "",
"cs": "Ĉeĥa",
"de": "Germana",
"el": "",
"el": "Greka",
"eo": "Esperanto",
"es": "Hispana",
"fr": "Franca",
"hy": "Armena",
"it": "Itala",
"ja": "",
"ko": "",
"ja": "Japana",
"ko": "Korea",
"nb": "Norvega (Bukmola)",
"oc": "Okcitana",
"pl": "Pola",
@@ -22,6 +22,6 @@
"sl": "Slovena",
"sv": "Sveda",
"tr": "Turka",
"vi": "",
"vi": "Vjetnama",
"zhCN": "Ĉina (Ĉinuja)"
}
}

View File

@@ -1,6 +1,6 @@
{
"en": "Inglés",
"af": "Africano",
"af": "Afrians",
"bg": "Búlgaro",
"ca": "Catalán",
"cs": "Checo",
@@ -12,21 +12,25 @@
"esUS": "Español (América Latina)",
"fi": "Finlandés",
"fr": "Francés",
"frCA": "Franco (Canadiense)",
"frCA": "Francés (Canadiense)",
"he": "Hebreo",
"hr": "Croata",
"hu": "Húngaro",
"hy": "Armenio",
"it": "Italiano",
"ja": "Jopones",
"ja": "Japonés",
"ko": "Coreano",
"nl": "Holandés",
"oc": "Occitano",
"pl": "Polaco",
"ptBR": "Portugués (Brasil)",
"ru": "Ruso",
"sk": "Eslovaco",
"sv": "Sueco",
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chino (China)",
"zhTW": "Chino (Taiwan)"
}
"zhTW": "Chino (Taiwán)",
"et": "Estonio",
"da": "Danés"
}

View File

@@ -13,6 +13,7 @@
"fi": "Finlandés",
"fr": "Francés",
"frCA": "Francés (Canadiense)",
"he": "Hebreo",
"hr": "Croata",
"hu": "Húngaro",
"hy": "Armenio",
@@ -24,9 +25,10 @@
"pl": "Polaco",
"ptBR": "Portugués (Brasil)",
"ru": "Ruso",
"sk": "Eslovaco",
"sv": "Sueco",
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chino (China)",
"zhTW": "Chino (Taiwan)"
}
}

34
lang/languages-eu.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "Ingelesa",
"af": "Afrikaans",
"bg": "Bulgariera",
"ca": "Katalana",
"cs": "Txekiera",
"da": "Daniera",
"de": "Alemana",
"el": "Greziera",
"enGB": "Ingelesa (Erresuma Batua)",
"eo": "Esperantoa",
"es": "Gaztelania",
"esUS": "Gaztelania (Latinamerika)",
"et": "Estoniera",
"fi": "Finlandiera",
"fr": "Frantsesa",
"frCA": "Frantsesa (Kanada)",
"hr": "Kroaziera",
"hu": "Hungariera",
"hy": "Armeniera",
"it": "Italiera",
"ja": "Japoniera",
"ko": "Koreera",
"nl": "Nederlandera",
"oc": "Okzitaniera",
"pl": "Poloniera",
"ptBR": "Portugesa (Brasil)",
"ru": "Errusiera",
"sv": "Suediera",
"tr": "Turkiera",
"vi": "Vietnamera",
"zhCN": "Txinera (Txina)",
"zhTW": "Txinera (Taiwan)"
}

View File

@@ -1,27 +1,38 @@
{
"en": "",
"af": "",
"en": "englanti",
"af": "afrikaans",
"az": "",
"bg": "",
"cs": "",
"de": "",
"el": "",
"eo": "",
"es": "",
"fr": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"bg": "bulgaria",
"cs": "tšekki",
"de": "saksa",
"el": "kreikka",
"eo": "esperanto",
"es": "espanja",
"fr": "ranska",
"hy": "armenia",
"it": "italia",
"ja": "japani",
"ko": "korea",
"nb": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"oc": "oksitaani",
"pl": "puola",
"ptBR": "portugali (Brasilia)",
"ru": "venäjä",
"sk": "",
"sl": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": ""
}
"sv": "ruotsi",
"tr": "turkki",
"vi": "vietnam",
"zhCN": "kiina (Kiina)",
"zhTW": "kiina (Taiwan)",
"nl": "hollanti",
"hu": "unkari",
"hr": "kroaatti",
"frCA": "ranska (Kanada)",
"fi": "suomi",
"et": "viro",
"esUS": "espanja (Latinalainen Amerikka)",
"enGB": "englanti (Yhdistynyt kuningaskunta)",
"da": "tanska",
"ca": "katalaani"
}

View File

@@ -6,13 +6,13 @@
"cs": "Tchèque",
"de": "Allemand",
"el": "Grec",
"enGB": "Anglais (Royaume-Uni) ",
"enGB": "Anglais (Royaume-Uni)",
"eo": "Espéranto",
"es": "Espagnol",
"esUS": "Espagnol (Amérique latine)",
"fi": "Finlandais",
"fi": "Finnois",
"fr": "Français",
"frCA": "Français (Canadien)",
"frCA": "Français (Canada)",
"hr": "Croate",
"hu": "Hongrois",
"hy": "Arménien",
@@ -24,9 +24,12 @@
"pl": "Polonais",
"ptBR": "Portugais (Brésil)",
"ru": "Russe",
"sk": "Slovaque",
"sv": "Suédois",
"tr": "Turc",
"vi": "Vietnamien",
"zhCN": "Chinois (Chine)",
"zhTW": "Chinois (Taiwan)"
}
"zhTW": "Chinois (Taiwan)",
"et": "Estonien",
"da": "Danois"
}

View File

@@ -6,11 +6,11 @@
"cs": "Tchèque",
"de": "Allemand",
"el": "Grec",
"enGB": "Anglais (Royaume-Uni) ",
"enGB": "Anglais (Royaume-Uni)",
"eo": "Espéranto",
"es": "Espagnol",
"esUS": "Espagnol (Amérique latine)",
"fi": "Finlandais",
"fi": "Finnois",
"fr": "Français",
"frCA": "Français (Canadien)",
"hr": "Croate",
@@ -24,9 +24,12 @@
"pl": "Polonais",
"ptBR": "Portugais (Brésil)",
"ru": "Russe",
"sk": "Slovaque",
"sv": "Suédois",
"tr": "Turc",
"vi": "Vietnamien",
"zhCN": "Chinois (Chine)",
"zhTW": "Chinois (Taiwan)"
}
"zhTW": "Chinois (Taiwan)",
"et": "Estonien",
"da": "Danois"
}

34
lang/languages-fy.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "",
"af": "",
"bg": "",
"ca": "",
"cs": "",
"da": "",
"de": "",
"el": "",
"enGB": "",
"eo": "",
"es": "",
"esUS": "",
"et": "",
"fi": "",
"fr": "",
"frCA": "",
"hr": "",
"hu": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"nl": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": "",
"zhTW": ""
}

View File

@@ -28,5 +28,7 @@
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chinés (China)",
"zhTW": "Chinés (Taiwan)"
}
"zhTW": "Chinés (Taiwan)",
"et": "Estoniano",
"da": "Dinamarqués"
}

37
lang/languages-he.json Normal file
View File

@@ -0,0 +1,37 @@
{
"en": "אנגלית",
"af": "אפריקאית",
"bg": "בולגרית",
"ca": "קטלנית",
"cs": "קזחית",
"da": "דנית",
"de": "גרמנית",
"el": "יוונית",
"enGB": "אנגלית (בריטניה)",
"eo": "אספרנטו",
"es": "ספרדית",
"esUS": "ספרדית (אמריקה הלטינית)",
"et": "אסטונית",
"fi": "פינית",
"fr": "צרפתית",
"frCA": "צרפתית (קנדה)",
"he": "עברית",
"hr": "קראוטית",
"hu": "הונגרית",
"hy": "ארמנית",
"it": "איטלקית",
"ja": "יפנית",
"ko": "קוראנית",
"nl": "הולנדית",
"oc": "אוקיאנית",
"pl": "פולנית",
"ptBR": "פורטוגזית (ברזיל)",
"ru": "רוסית",
"sc": "סרבית",
"sk": "סלובקית",
"sv": "שוודית",
"tr": "טורקית",
"vi": "ויטנאמית",
"zhCN": "סינית (סין)",
"zhTW": "סינית (טיוואן)"
}

View File

@@ -24,9 +24,12 @@
"pl": "Lengyel",
"ptBR": "Portugál (Brazil)",
"ru": "Orosz",
"sk": "Szlovákul",
"sv": "Svéd",
"tr": "Török",
"vi": "Vietnámi",
"zhCN": "Kínai (Kína)",
"zhTW": "Kínai (Tajvan)"
}
"zhTW": "Kínai (Tajvan)",
"et": "Észt",
"da": "Dán"
}

39
lang/languages-id.json Normal file
View File

@@ -0,0 +1,39 @@
{
"en": "Bahasa Inggris - US",
"af": "Bahasa Afrika",
"bg": "Bahasa Bulgaria",
"ca": "Bahasa Katalan",
"cs": "Bahasa Ceko",
"da": "Bahasa Denmark",
"de": "Bahasa Jerman",
"el": "Bahasa Yunani",
"enGB": "Bahasa Inggris - UK",
"eo": "Esperanto",
"es": "Bahasa Spanyol",
"esUS": "Bahasa Spanyol - Latin",
"et": "Bahasa Estonia",
"fi": "Bahasa Finlandia",
"fr": "Bahasa Prancis",
"frCA": "Bahasa Prancis - Kanada",
"he": "Bahasa Hebrew",
"hr": "Bahasa Kroasia",
"hu": "Bahasa Hongaria",
"hy": "Bahasa Armenia",
"id": "Bahasa Indonesia",
"it": "Bahasa Italia",
"ja": "Bahasa Jepang",
"ko": "Bahasa Korea",
"lt": "Bahasa Lituania",
"nl": "Bahasa Belanda",
"oc": "Bahasa Oceania",
"pl": "Bahasa Polandia",
"ptBR": "Bahasa Portugis - Brazil",
"ru": "Bahasa Rusia",
"sc": "Bahasa Sardinia",
"sk": "Bahasa Slovakia",
"sv": "Bahasa Swedia",
"tr": "Bahasa Turki",
"vi": "Bahasa Vietnam",
"zhCN": "Bahasa Mandarin",
"zhTW": "Bahasa Mandarin - Taiwan"
}

34
lang/languages-is.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "Enska",
"af": "Afríkanska",
"bg": "Búlgarska",
"ca": "Katalónska",
"cs": "Tékkneska",
"da": "Danska",
"de": "Þýska",
"el": "Gríska",
"enGB": "Enska (Bretland)",
"eo": "Esperantó",
"es": "Spænska",
"esUS": "Spænska (spænskumælandi Ameríka)",
"et": "Eistneska",
"fi": "Finnska",
"fr": "Franska",
"frCA": "Franska (kanadísk)",
"hr": "Króatíska",
"hu": "Ungverska",
"hy": "Armenska",
"it": "Ítalska",
"ja": "Japanska",
"ko": "Kóreska",
"nl": "Hollenska",
"oc": "Occitanska",
"pl": "Pólska",
"ptBR": "Portúgalska (Brasilía)",
"ru": "Rússneska",
"sv": "Sænska",
"tr": "Tyrkneska",
"vi": "Víetnamska",
"zhCN": "Kínverska (Kína)",
"zhTW": "Kínverska (Taívan)"
}

View File

@@ -23,5 +23,16 @@
"sv": "Svedese",
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Cinese (Cina)"
"zhCN": "Cinese (Cina)",
"enGB": "Inglese (Regno Unito)",
"da": "Danese",
"ca": "Catalano",
"zhTW": "",
"nl": "",
"hu": "",
"hr": "",
"frCA": "",
"fi": "",
"et": "",
"esUS": ""
}

View File

@@ -1,7 +1,7 @@
{
"en": "Taglizit",
"af": "",
"az": "",
"af": "Tafrikant",
"az": "Tazirit",
"bg": "Tabulgarit",
"cs": "Taččikit",
"de": "Talmanit",
@@ -24,4 +24,4 @@
"tr": "Taṭurkit",
"vi": "Tavyitnamit",
"zhCN": "Tavyitnamit"
}
}

35
lang/languages-lt.json Normal file
View File

@@ -0,0 +1,35 @@
{
"en": "Anglų",
"af": "Afrikanų",
"bg": "Bulgarų",
"ca": "Katalanų",
"cs": "Čekų",
"da": "Danų",
"de": "Vokiečių",
"el": "Graikų",
"enGB": "Anglų (Britų)",
"eo": "Esperanto",
"es": "Ispanų",
"esUS": "Ispanų (Lotynų Amerika)",
"et": "Estų",
"fi": "Suomių",
"fr": "Prancūzų",
"frCA": "Prancūzų (Kanada)",
"hr": "Kroatų",
"hu": "Vengrų",
"hy": "Armėnų",
"it": "Italų",
"ja": "Japonų",
"lt": "Lietuvių",
"ko": "Korėjiečių",
"nl": "Olandų",
"oc": "Oksitanų",
"pl": "Lenkų",
"ptBR": "Portugalų (Brazilija)",
"ru": "Rusų",
"sv": "Švedų",
"tr": "Turkų",
"vi": "Vietnamiečių",
"zhCN": "Kinų (China)",
"zhTW": "Kinų (Taivanas)"
}

34
lang/languages-lv.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "angļu",
"af": "āfrikāņu",
"bg": "bulgāru",
"ca": "kataloniešu",
"cs": "čehu",
"de": "vācu",
"el": "grieķu",
"enGB": "angļu (Lielbritānija)",
"eo": "esperanto",
"es": "spāņu",
"esUS": "spāņu (Dienvidamerika)",
"et": "igauņu",
"fi": "somu",
"fr": "franču",
"frCA": "franču (Kanāda)",
"hr": "horvātu",
"hu": "ungāru",
"hy": "armēņu",
"it": "itāļu",
"ja": "japānu",
"ko": "korejiešu",
"lv": "laviešu",
"nl": "holandiešu",
"oc": "oksitāņu",
"pl": "poļu",
"ptBR": "portugāļu (Brazīlija)",
"ru": "krievu",
"sv": "zviedru",
"tr": "turku",
"vi": "vjetnamiešu",
"zhCN": "ķīniešu (Ķīna)",
"zhTW": "ķīniešu (Taivana)"
}

35
lang/languages-mn.json Normal file
View File

@@ -0,0 +1,35 @@
{
"en": "English",
"af": "Afrikaans",
"bg": "Bulgarian",
"ca": "Catalan",
"cs": "Czech",
"da": "Danish",
"de": "German",
"el": "Greek",
"enGB": "English (United Kingdom)",
"eo": "Esperanto",
"es": "Spanish",
"esUS": "Spanish (Latin America)",
"et": "Estonian",
"fi": "Finnish",
"fr": "French",
"frCA": "French (Canadian)",
"hr": "Croatian",
"hu": "Hungarian",
"hy": "Armenian",
"it": "Italian",
"ja": "Japanese",
"ko": "Korean",
"nl": "Dutch",
"oc": "Occitan",
"pl": "Polish",
"ptBR": "Portuguese (Brazil)",
"ru": "Russian",
"sv": "Swedish",
"tr": "Turkish",
"vi": "Vietnamese",
"zhCN": "Chinese (China)",
"zhTW": "Chinese (Taiwan)",
"mn": "Монгол"
}

View File

@@ -1,27 +1,31 @@
{
"en": "",
"en": "Engelsk",
"af": "",
"az": "",
"bg": "",
"cs": "",
"de": "",
"el": "",
"cs": "Tsjekkisk",
"de": "Tysk",
"el": "Gresk",
"eo": "",
"es": "",
"fr": "",
"es": "Spansk",
"fr": "Fransk",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"it": "Italiensk",
"ja": "Japansk",
"ko": "Koreansk",
"nb": "",
"oc": "",
"pl": "",
"pl": "Polsk",
"ptBR": "",
"ru": "",
"ru": "Russisk",
"sk": "",
"sl": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": ""
}
"sv": "Svensk",
"tr": "Tyrkisk",
"vi": "Vietnamesisk",
"zhCN": "",
"da": "Dansk",
"hu": "Ungarsk",
"hr": "Kroatisk",
"fi": "Finsk"
}

View File

@@ -1,27 +1,38 @@
{
"en": "",
"af": "",
"az": "",
"bg": "",
"cs": "",
"de": "",
"el": "",
"eo": "",
"es": "",
"fr": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"nb": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sk": "",
"sl": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": ""
}
"en": "Engels",
"af": "Afrikaans",
"az": "Azerbeidzjaans",
"bg": "Bulgaars",
"ca": "Catalaans",
"cs": "Tsjechisch",
"da": "Deens",
"de": "Duits",
"enGB": "Engels (Verenigd Koninkrijk)",
"et": "Estlands",
"el": "Grieks",
"eo": "Esperanto",
"es": "Spaans",
"esUS": "Spaans (Latijns Amerika)",
"fi": "Fins",
"fr": "Frans",
"frCA": "Frans (Canadees)",
"hr": "Kroatisch",
"hu": "Hongaars",
"hy": "Armeens",
"it": "Italiaans",
"ja": "Japans",
"ko": "Koreaans",
"nb": "Noors (Bokmal)",
"nl": "Nederlands",
"oc": "Occitaans",
"pl": "Pools",
"ptBR": "Portugees (Brazilië)",
"ru": "Russisch",
"sk": "Slowaaks",
"sl": "Sloveens",
"sv": "Zweeds",
"tr": "Turks",
"vi": "Vietnamees",
"zhCN": "Chinees (China)",
"zhTW": "Chinees (Taiwan)"
}

View File

@@ -28,5 +28,7 @@
"tr": "Turc",
"vi": "Vietnamian",
"zhCN": "Chinés (China)",
"zhTW": "Chinés (Taiwan)"
}
"zhTW": "Chinés (Taiwan)",
"et": "Estonian",
"da": "Danés"
}

View File

@@ -24,6 +24,7 @@
"pl": "polski",
"ptBR": "portugalski (brazylijski)",
"ru": "rosyjski",
"sk": "słowacki",
"sv": "szwedzki",
"tr": "turecki",
"vi": "wietnamski",

33
lang/languages-pt.json Normal file
View File

@@ -0,0 +1,33 @@
{
"en": "Inglês",
"af": "Africâner",
"bg": "Búlgaro",
"ca": "Catalão",
"cs": "Checo",
"de": "Alemão",
"el": "Grego",
"enGB": "Inglês (Reino Unido)",
"eo": "Esperanto",
"es": "Espanhol",
"esUS": "Espanhol (América Latina)",
"fi": "Finlandês",
"fr": "Francês",
"frCA": "Francês (Canadá)",
"hr": "Croata",
"hu": "Húngaro",
"hy": "Armênio",
"it": "Italiano",
"ja": "Japonês",
"ko": "Coreano",
"nl": "Holandês",
"oc": "Occitano",
"pl": "Polonês",
"pt": "Português",
"ptBR": "Português (Brasil)",
"ru": "Russo",
"sv": "Sueco",
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chinês (China)",
"zhTW": "Chinês (Taiwan)"
}

View File

@@ -28,5 +28,7 @@
"tr": "Турецкий",
"vi": "Вьетнамский",
"zhCN": "Китайский (Китай)",
"zhTW": "Китайский (Тайвань)"
}
"zhTW": "Китайский (Тайвань)",
"et": "Эстонский",
"da": "Датский"
}

34
lang/languages-sc.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "Inglesu",
"af": "Afrikaans",
"bg": "Bùlgaru",
"ca": "Catalanu",
"cs": "Tzecu",
"da": "Danesu",
"de": "Tedescu",
"el": "Gregu",
"enGB": "Inglesu (Rennu Unidu)",
"eo": "Esperanto",
"es": "Castillianu",
"esUS": "Castillianu (Amèrica de su Sud)",
"fi": "Finlandesu",
"fr": "Frantzesu",
"frCA": "Frantzesu (Canadesu)",
"hr": "Croatu",
"hu": "Ungheresu",
"hy": "Armenu",
"it": "Italianu",
"ja": "Giaponesu",
"ko": "Coreanu",
"nl": "Olandesu",
"oc": "Otzitanu",
"pl": "Polacu",
"ptBR": "Portughesu (Brasile)",
"ru": "Russu",
"sc": "Sardu",
"sv": "Isvedesu",
"tr": "Turcu",
"vi": "Vietnamita",
"zhCN": "Tzinesu (Tzina)",
"zhTW": "Tzinesu (Taiwan)"
}

View File

@@ -2,31 +2,34 @@
"en": "Angličtina",
"af": "",
"bg": "Bulharština",
"ca": "",
"cs": "",
"ca": "Katalánština",
"cs": "Čeština",
"da": "Dánština",
"de": "Nemčina",
"el": "",
"enGB": "",
"eo": "",
"es": "",
"esUS": "",
"fi": "",
"el": "Gréčtina",
"enGB": "Angličtina (Spojené kráľovstvo)",
"eo": "Esperanto",
"es": "Španielčina",
"esUS": "Angličtina (Spojené štáty americké)",
"et": "Estónčina",
"fi": "Fínčina",
"fr": "Francúžtina",
"frCA": "",
"hr": "",
"hu": "",
"hy": "",
"frCA": "Francúžtina (Kanada)",
"hr": "Chorvátčina",
"hu": "Maďarčina",
"hy": "Arménčina",
"it": "Taliančina",
"ja": "",
"ko": "",
"nl": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sv": "",
"ja": "Japončina",
"ko": "Kórejčina",
"nl": "Holandčina",
"oc": "Okcitánština",
"pl": "Polština",
"ptBR": "Portugalčina",
"ru": "Ruština",
"sk": "Slovenčina",
"sv": "Švédčina",
"tr": "Turečtina",
"vi": "",
"zhCN": "",
"zhTW": ""
"vi": "Vietnamčina",
"zhCN": "Čínština (Čína)",
"zhTW": "Čínština (Taiwan)"
}

34
lang/languages-sr.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "",
"af": "",
"bg": "",
"ca": "",
"cs": "",
"da": "",
"de": "",
"el": "",
"enGB": "",
"eo": "",
"es": "",
"esUS": "",
"et": "",
"fi": "",
"fr": "",
"frCA": "",
"hr": "",
"hu": "",
"hy": "",
"it": "",
"ja": "",
"ko": "",
"nl": "",
"oc": "",
"pl": "",
"ptBR": "",
"ru": "",
"sv": "",
"tr": "",
"vi": "",
"zhCN": "",
"zhTW": ""
}

View File

@@ -1,18 +1,18 @@
{
"en": "Engelska",
"af": "",
"af": "Afrikaans",
"az": "",
"bg": "Bulgariska",
"cs": "",
"cs": "Tjeckiska",
"de": "Tyska",
"el": "",
"el": "Grekiska",
"eo": "Esperanto",
"es": "Spanska",
"fr": "Franska",
"hy": "Armeniska",
"it": "Italienska",
"ja": "",
"ko": "",
"ja": "Japanska",
"ko": "Koreanska",
"nb": "Norska (Bokmål)",
"oc": "Occitanska",
"pl": "Polska",
@@ -22,6 +22,17 @@
"sl": "Slovenska",
"sv": "Svenska",
"tr": "Turkiska",
"vi": "",
"zhCN": "Kinesiska (Kina)"
}
"vi": "Vietnamesiska",
"zhCN": "Kinesiska (Kina)",
"zhTW": "Kinesiska (Taiwan)",
"nl": "Nederländska",
"hu": "Ungerska",
"hr": "Kroatiska",
"frCA": "Franska (Kanada)",
"fi": "Finska",
"et": "Estniska",
"esUS": "Spanska (Latinamerika)",
"enGB": "Engelska (Storbritannien)",
"da": "Danska",
"ca": "Katalanska"
}

View File

@@ -1,18 +1,18 @@
{
"en": "İngilizce",
"af": "",
"af": "Afrikanca",
"az": "",
"bg": "Bulgarca",
"cs": "",
"cs": "Çekçe",
"de": "Almanca",
"el": "",
"el": "Yunanca",
"eo": "Esperanto",
"es": "İspanyolca",
"fr": "Fransızca",
"hy": "Ermenice",
"it": "İtalyanca",
"ja": "",
"ko": "",
"ja": "Japonca",
"ko": "Korece",
"nb": "Norveççe Bokmal",
"oc": "Oksitan dili",
"pl": "Lehçe",
@@ -22,6 +22,17 @@
"sl": "Slovence",
"sv": "Isveççe",
"tr": "Türkçe",
"vi": "",
"zhCN": "Çince (Tayvan)"
}
"vi": "Vietnamca",
"zhCN": "Çince (Çin)",
"zhTW": "Çince (Tayvan)",
"nl": "Flemenkçe",
"hu": "Macarca",
"hr": "Hırvatça",
"frCA": "Fransızca (Kanada)",
"fi": "Fince",
"et": "Estonca",
"esUS": "İspanyolca (Latin Amerika)",
"enGB": "İngilizce (Birleşik Krallık)",
"da": "Danca",
"ca": "Katalanca"
}

34
lang/languages-uk.json Normal file
View File

@@ -0,0 +1,34 @@
{
"en": "Англійська",
"af": "Африкаанс",
"bg": "Болгарська",
"ca": "Каталонська",
"cs": "Чеська",
"da": "Данська",
"de": "Німецька",
"el": "Грецька",
"enGB": "Англійська (Велика Британія)",
"eo": "Есперанто",
"es": "Іспанська",
"esUS": "Іспанська (Латинська Америка)",
"et": "Естонська",
"fi": "Фінська",
"fr": "Французька",
"frCA": "Французька (Канада)",
"hr": "Хорватська",
"hu": "Угорська",
"hy": "Вірменська",
"it": "Італійська",
"ja": "Японська",
"ko": "Корейська",
"nl": "Голландська",
"oc": "Окситанська",
"pl": "Польська",
"ptBR": "Португальська (Бразилія)",
"ru": "Російська",
"sv": "Шведська",
"tr": "Турецька",
"vi": "В'єтнамська",
"zhCN": "Китайська (Китай)",
"zhTW": "Китайська (Тайвань)"
}

View File

@@ -1,32 +1,34 @@
{
"en": "English",
"af": "Afrikaans",
"bg": "Bulgarian",
"ca": "Catalan",
"cs": "Czech",
"de": "German",
"el": "Greek",
"enGB": "English (United Kingdom)",
"eo": "Esperanto",
"es": "Spanish",
"esUS": "Spanish (Latin America)",
"fi": "Finnish",
"fr": "French",
"frCA": "French (Canadian)",
"hr": "Croatian",
"hu": "Hungarian",
"hy": "Armenian",
"it": "Italian",
"ja": "日語",
"en": "英語",
"af": "南非荷蘭文",
"bg": "保加利亞文",
"ca": "卡達隆尼亞文",
"cs": "捷克文",
"de": "德文",
"el": "希臘文",
"enGB": "英文 (英國)",
"eo": "世界語",
"es": "西班牙文",
"esUS": "西班牙文 (拉丁美洲)",
"fi": "芬蘭文",
"fr": "法文",
"frCA": "法文 (加拿大)",
"hr": "克羅埃西亞文",
"hu": "匈牙利文",
"hy": "亞美尼亞文",
"it": "義大利文",
"ja": "日語",
"ko": "韓文",
"nl": "Dutch",
"oc": "Occitan",
"pl": "Polish",
"ptBR": "Portuguese (Brazil)",
"ru": "Russian",
"sv": "Swedish",
"tr": "Turkish",
"vi": "Vietnamese",
"zhCN": "中文 简体 (中国)",
"zhTW": "中文 正體 (台灣)"
}
"nl": "荷蘭文",
"oc": "奧西坦文",
"pl": "波蘭文",
"ptBR": "葡萄牙文 (巴西)",
"ru": "俄文",
"sv": "瑞典文",
"tr": "土耳其文",
"vi": "越南文",
"zhCN": "中文 (中国,简体)",
"zhTW": "中文 (台灣,正體)",
"et": "愛沙尼亞文",
"da": "丹麥文"
}

View File

@@ -15,19 +15,26 @@
"fi": "Finnish",
"fr": "French",
"frCA": "French (Canadian)",
"he": "Hebrew",
"hr": "Croatian",
"hu": "Hungarian",
"hy": "Armenian",
"id": "Indonesian",
"it": "Italian",
"ja": "Japanese",
"ko": "Korean",
"lt": "Lithuanian",
"nl": "Dutch",
"oc": "Occitan",
"pl": "Polish",
"ptBR": "Portuguese (Brazil)",
"ru": "Russian",
"sc": "Sardinian",
"sk": "Slovak",
"sv": "Swedish",
"th": "Thailand",
"tr": "Turkish",
"uk": "Ukrainian",
"vi": "Vietnamese",
"zhCN": "Chinese (China)",
"zhTW": "Chinese (Taiwan)"

View File

@@ -145,9 +145,9 @@
"cameraUnsupportedResolutionError": "Die kamera ondersteun nie die nodige videoresolusie nie.",
"Cancel": "Kanselleer",
"close": "Sluit",
"conferenceDisconnectMsg": "Kontroleer dalk die netwerkverbinding. Gaan oor {{seconds}} sekondes weer koppel...",
"conferenceDisconnectMsg": "Kontroleer dalk die netwerkverbinding. Gaan oor {{seconds}} sekondes weer koppel",
"conferenceDisconnectTitle": "Die verbinding is verbreek.",
"conferenceReloadMsg": "Ons probeer om dit reg te stel. Gaan herkoppel oor {{seconds}} sekondes...",
"conferenceReloadMsg": "Ons probeer om dit reg te stel. Gaan herkoppel oor {{seconds}} sekondes",
"conferenceReloadTitle": "Iets het ongelukkig skeefgeloop.",
"confirm": "Bevestig",
"confirmNo": "Nee",
@@ -254,7 +254,7 @@
"userPassword": "gebruikerwagwoord",
"WaitForHostMsg": "",
"WaitForHostMsgWOk": "",
"WaitingForHost": "Wag tans vir die gasheer ...",
"WaitingForHost": "Wag tans vir die gasheer ",
"Yes": "Ja",
"yourEntireScreen": "U hele skerm"
},
@@ -349,13 +349,13 @@
"errorLiveStreamNotEnabled": "Regstreekse stroom is nie geaktiveer op {{email}} nie. Aktiveer asb. regstreekse strome of meld aan met n rekening met regstreekse strome geaktiveer.",
"expandedOff": "Die regstreekse stroom het gestop",
"expandedOn": "Die vergadering word tans gestroom na YouTube.",
"expandedPending": "Die regstreekse stroom begin tans...",
"expandedPending": "Die regstreekse stroom begin tans",
"failedToStart": "Regstreekse stroom kon nie begin nie",
"getStreamKeyManually": "",
"invalidStreamKey": "",
"off": "Regstreekse stroom het gestop",
"on": "Regstreekse stroom",
"pending": "Begin tans regstreekse stroom...",
"pending": "Begin tans regstreekse stroom",
"serviceName": "Regstreekse stroomdiens",
"signedInAs": "U is tans aangemeld as:",
"signIn": "Meld aan met Google",
@@ -433,22 +433,22 @@
"poweredby": "aangedryf deur",
"presenceStatus": {
"busy": "Besig",
"calling": "Bel tans...",
"calling": "Bel tans",
"connected": "Gekoppel",
"connecting": "Koppel tans...",
"connecting": "Koppel tans",
"connecting2": "Koppel tans*...",
"disconnected": "Ontkoppeld",
"expired": "Verval",
"ignored": "Geïgnoreer",
"initializingCall": "Inisialiseer tans oproep...",
"initializingCall": "Inisialiseer tans oproep",
"invited": "Uitgenooi",
"rejected": "Geweier",
"ringing": "Lui tans..."
"ringing": "Lui tans"
},
"profile": {
"setDisplayNameLabel": "Stel u vertoonnaam",
"setEmailInput": "Gee e-posadres",
"setEmailLabel": "Stel u gravatar-e-posadres",
"setEmailLabel": "Stel u Gravatar-e-posadres",
"title": "Profiel"
},
"recording": {
@@ -460,14 +460,14 @@
"error": "Opname het misluk. Probeer gerus weer.",
"expandedOff": "Opname het gestop",
"expandedOn": "Die vergadering word tans opgeneem.",
"expandedPending": "Opname word begin...",
"expandedPending": "Opname word begin",
"failedToStart": "Kon nie begin opneem nie",
"fileSharingdescription": "",
"live": "",
"loggedIn": "Aangemeld as {{name}}",
"off": "Opname gestop",
"on": "Neem tans op",
"pending": "Berei voor om vergadering op te neem...",
"pending": "Berei voor om vergadering op te neem",
"rec": "",
"serviceDescription": "",
"serviceName": "Opneemdiens",
@@ -563,7 +563,7 @@
"recording": "Wissel opname",
"remoteMute": "",
"Settings": "Wissel instellings",
"sharedvideo": "Wissel Youtube-videodeling",
"sharedvideo": "Wissel YouTube-videodeling",
"shareRoom": "Nooi iemand",
"shareYourScreen": "Wissel skermdeling",
"shortcuts": "Wissel kortpaaie",
@@ -625,7 +625,7 @@
"failedToStart": "",
"labelToolTip": "Die vergadering word getranskribeer",
"off": "",
"pending": "Berei tans voor om die vergadering te transkribeer...",
"pending": "Berei tans voor om die vergadering te transkribeer",
"start": "",
"stop": "",
"tr": ""
@@ -709,4 +709,4 @@
"terms": "Voorwaardes",
"title": "Veilige en volledig gratis videokonferensies propvol funksionaliteit"
}
}
}

View File

@@ -21,7 +21,8 @@
"bluetooth": "",
"headphones": "",
"phone": "",
"speaker": ""
"speaker": "",
"none": ""
},
"audioOnly": {
"audioOnly": ""
@@ -46,12 +47,22 @@
},
"chat": {
"error": "",
"fieldPlaceHolder": "",
"messagebox": "",
"messageTo": "",
"noMessagesMessage": "",
"nickname": {
"popover": "",
"title": ""
},
"title": ""
"privateNotice": "",
"title": "",
"you": ""
},
"chromeExtensionBanner": {
"installExtensionText": "",
"buttonText": "",
"dontShowAgain": ""
},
"connectingOverlay": {
"joiningRoom": ""
@@ -66,7 +77,10 @@
"DISCONNECTED": "",
"DISCONNECTING": "",
"ERROR": "",
"RECONNECTING": ""
"FETCH_SESSION_ID": "",
"GET_SESSION_ID_ERROR": "",
"GOT_SESSION_ID": "",
"LOW_BANDWIDTH": ""
},
"connectionindicator": {
"address": "",
@@ -74,12 +88,11 @@
"bitrate": "",
"bridgeCount": "",
"connectedTo": "",
"e2e_rtt": "",
"framerate": "",
"less": "",
"localaddress": "",
"localaddress_plural": "",
"localport": "",
"localport_plural": "",
"more": "",
"packetloss": "",
"quality": {
@@ -90,14 +103,10 @@
"poor": ""
},
"remoteaddress": "",
"remoteaddress_plural": "",
"remoteport": "",
"remoteport_plural": "",
"resolution": "",
"status": "",
"transport": "",
"transport_plural": "",
"turn": ""
"transport": ""
},
"dateUtils": {
"earlier": "",
@@ -115,6 +124,7 @@
"tryAgainButton": ""
},
"defaultLink": "",
"defaultNickname": "",
"deviceError": {
"cameraError": "",
"cameraPermission": "",
@@ -194,6 +204,12 @@
"micNotSendingDataTitle": "",
"micPermissionDeniedError": "",
"micUnknownError": "",
"muteEveryoneElseDialog": "",
"muteEveryoneElseTitle": "",
"muteEveryoneDialog": "",
"muteEveryoneTitle": "",
"muteEveryoneSelf": "",
"muteEveryoneStartMuted": "",
"muteParticipantBody": "",
"muteParticipantButton": "",
"muteParticipantDialog": "",
@@ -223,11 +239,16 @@
"reservationError": "",
"reservationErrorMsg": "",
"retry": "",
"screenSharingAudio": "",
"screenSharingFailedToInstall": "",
"screenSharingFailedToInstallTitle": "",
"screenSharingFirefoxPermissionDeniedError": "",
"screenSharingFirefoxPermissionDeniedTitle": "",
"screenSharingPermissionDeniedError": "",
"sendPrivateMessage": "",
"sendPrivateMessageCancel": "",
"sendPrivateMessageOk": "",
"sendPrivateMessageTitle": "",
"serviceUnavailable": "",
"sessTerminated": "",
"Share": "",
@@ -261,6 +282,9 @@
"dialOut": {
"statusMessage": ""
},
"documentSharing": {
"title": ""
},
"feedback": {
"average": "",
"bad": "",
@@ -335,7 +359,8 @@
"toggleFilmstrip": "",
"toggleScreensharing": "",
"toggleShortcuts": "",
"videoMute": ""
"videoMute": "",
"videoQuality": ""
},
"liveStreaming": {
"busy": "",
@@ -354,7 +379,9 @@
"getStreamKeyManually": "",
"invalidStreamKey": "",
"off": "",
"offBy": "",
"on": "",
"onBy": "",
"pending": "",
"serviceName": "",
"signedInAs": "",
@@ -363,7 +390,9 @@
"signOut": "",
"start": "",
"streamIdHelp": "",
"unavailableTitle": ""
"unavailableTitle": "",
"youtubeTerms": "",
"googlePrivacyPolicy": ""
},
"localRecording": {
"clientState": {
@@ -421,7 +450,7 @@
"somebody": "",
"startSilentTitle": "",
"startSilentDescription": "",
"suboptimalExperienceDescription": "",
"suboptimalBrowserWarning": "",
"suboptimalExperienceTitle": "",
"unmute": "",
"newDeviceCameraTitle": "",
@@ -451,6 +480,7 @@
"setEmailLabel": "",
"title": ""
},
"raisedHand": "",
"recording": {
"authDropboxText": "",
"availableSpace": "",
@@ -466,7 +496,9 @@
"live": "",
"loggedIn": "",
"off": "",
"offBy": "",
"on": "",
"onBy": "",
"pending": "",
"rec": "",
"serviceDescription": "",
@@ -491,6 +523,7 @@
"followMe": "",
"language": "",
"loggedIn": "",
"microphones": "",
"moderator": "",
"more": "",
"name": "",
@@ -498,21 +531,26 @@
"selectAudioOutput": "",
"selectCamera": "",
"selectMic": "",
"speakers": "",
"startAudioMuted": "",
"startVideoMuted": "",
"title": ""
},
"settingsView": {
"advanced": "",
"alertOk": "",
"alertTitle": "",
"alertURLText": "",
"buildInfoSection": "",
"conferenceSection": "",
"disableCallIntegration": "",
"disableP2P": "",
"displayName": "",
"email": "",
"header": "",
"profileSection": "",
"serverURL": "",
"showAdvanced": "",
"startWithAudioMuted": "",
"startWithVideoMuted": "",
"version": ""
@@ -547,17 +585,22 @@
"cc": "",
"chat": "",
"document": "",
"download": "",
"feedback": "",
"fullScreen": "",
"hangup": "",
"help": "",
"invite": "",
"kick": "",
"localRecording": "",
"lockRoom": "",
"moreActions": "",
"moreActionsMenu": "",
"moreOptions": "",
"mute": "",
"muteEveryone": "",
"pip": "",
"privateMessage": "",
"profile": "",
"raiseHand": "",
"recording": "",
@@ -571,6 +614,7 @@
"speakerStats": "",
"tileView": "",
"toggleCamera": "",
"toggleFilmstrip": "",
"videomute": "",
"videoblur": ""
},
@@ -584,20 +628,32 @@
"closeChat": "",
"documentClose": "",
"documentOpen": "",
"download": "",
"enterFullScreen": "",
"enterTileView": "",
"exitFullScreen": "",
"exitTileView": "",
"feedback": "",
"hangup": "",
"help": "",
"invite": "",
"login": "",
"logout": "",
"lowerYourHand": "",
"moreActions": "",
"moreOptions": "",
"mute": "",
"muteEveryone": "",
"noAudioSignalTitle": "",
"noAudioSignalDesc": "",
"noAudioSignalDescSuggestion": "",
"noAudioSignalDialInDesc": "",
"noAudioSignalDialInLinkDesc": "",
"noisyAudioInputTitle": "",
"noisyAudioInputDesc": "",
"openChat": "",
"pip": "",
"privateMessage": "",
"profile": "",
"raiseHand": "",
"raiseYourHand": "",
@@ -657,10 +713,12 @@
"audioOnlyExpanded": "",
"callQuality": "",
"hd": "",
"hdTooltip": "",
"highDefinition": "",
"labelTooiltipNoVideo": "",
"labelTooltipAudioOnly": "",
"ld": "",
"ldTooltip": "",
"lowDefinition": "",
"onlyAudioAvailable": "",
"onlyAudioSupported": "",
@@ -668,10 +726,12 @@
"p2pVideoQualityDescription": "",
"recHighDefinitionOnly": "",
"sd": "",
"sdTooltip": "",
"standardDefinition": ""
},
"videothumbnail": {
"domute": "",
"domuteOthers": "",
"flip": "",
"kick": "",
"moderator": "",
@@ -695,7 +755,10 @@
"connectCalendarButton": "",
"connectCalendarText": "",
"enterRoomTitle": "",
"getHelp": "",
"roomNameAllowedChars": "",
"go": "",
"goSmall": "",
"join": "",
"info": "",
"privacy": "",
@@ -708,5 +771,12 @@
"sendFeedback": "",
"terms": "",
"title": ""
},
"lonelyMeetingExperience": {
"button": "",
"youAreAlone": ""
},
"helpView": {
"header": ""
}
}
}

792
lang/main-be.json Normal file
View File

@@ -0,0 +1,792 @@
{
"addPeople": {
"add": "Запрасіць",
"countryNotSupported": "Гэтая краіна пакуль не падтрымліваецца.",
"countryReminder": "Выклік не ў ЗША? Калі ласка, пераканайцеся, што паказалі код краіны!",
"disabled": "Пошук не даў выніку.",
"failedToAdd": "Не атрымалася дадаць удзельнікаў",
"footerText": "Выклік нумара адключаны.",
"loading": "Пошук людзей і нумароў тэлефонаў",
"loadingNumber": "Праверка нумара тэлефона",
"loadingPeople": "Пошук людзей для запрашэння",
"noResults": "Пошук не даў выніку",
"noValidNumbers": "Калі ласка, увядзіце нумар тэлефона",
"searchNumbers": "Дадаць нумары тэлефонаў",
"searchPeople": "Пошук людзей",
"searchPeopleAndNumbers": "Пошук людзей або даданне іх тэлефонаў",
"telephone": "Нумар: {{number}}",
"title": "Запрасіць людзей на гэтую сустрэчу"
},
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Навушнікі",
"phone": "Тэлефон",
"speaker": "Калонка",
"none": "Не выяўленыя гукавыя прылады"
},
"audioOnly": {
"audioOnly": "Не нагружае канал"
},
"calendarSync": {
"addMeetingURL": "Дадаць спасылку канферэнцыі",
"confirmAddLink": "Вы хочаце дадаць спасылку Jitsi да гэтай каляндарнай падзеі?",
"error": {
"appConfiguration": "Няправільна настроена інтэграцыя календара.",
"generic": "Адбылася памылка. Праверце налады календара або паспрабуйце абнавіць яго.",
"notSignedIn": "У працэсе аўтэнтыфікацыі для прагляду падзей календара адбылася памылка. Калі ласка, праверце налады календара і паспрабуйце зноў увайсці ў сістэму."
},
"join": "Далучыцца",
"joinTooltip": "Далучыцца да канферэнцыі",
"nextMeeting": "наступная канферэнцыя",
"noEvents": "Няма запланаваных падзей.",
"ongoingMeeting": "бягучая канферэнцыя",
"permissionButton": "Адкрыць налады",
"permissionMessage": "Для паказу вашых сустрэч у дадатку неабходна атрымаць доступ да календара.",
"refresh": "Аднавіць увесь каляндар",
"today": "Сёння"
},
"chat": {
"error": "Памылка: Ваша паведамленне не было адпраўлена. Прычына: {{error}}",
"fieldPlaceHolder": "Калі ласка, увядзіце тут ваша паведамленне",
"messagebox": "Калі ласка, увядзіце паведамленне",
"messageTo": "Асабістае паведамленне карыстальнiку {{recipient}}",
"noMessagesMessage": "У канферэнцыі пакуль няма ніякіх паведамленняў. Пачніце размову!",
"nickname": {
"popover": "Калі ласка, пазначце імя",
"title": "Калі ласка, увядзіце імя для выкарыстання чата"
},
"privateNotice": "Асабістае паведамленне карыстальнiку {{recipient}}",
"title": "Чат",
"you": "Вы"
},
"chromeExtensionBanner": {
"installExtensionText": "Усталюйце пашырэнне для інтэграцыі календара Google і Office 365",
"buttonText": "Усталюйце пашырэнне Chrome",
"dontShowAgain": "Не паказваць зноў"
},
"connectingOverlay": {
"joiningRoom": "Спрабуем далучыцца да вашай канферэнцыі …"
},
"connection": {
"ATTACHED": "прымацаваны",
"AUTHENTICATING": "Ідэнтыфікацыя",
"AUTHFAIL": "Памылка аўтарызацыі",
"CONNECTED": "Падключана",
"CONNECTING": "Падлучэнне",
"CONNFAIL": "Збой падключэння",
"DISCONNECTED": "Адлучыць",
"DISCONNECTING": "Адлучэнне",
"ERROR": "Памылка",
"FETCH_SESSION_ID": "Атрыманне ID сесіі…",
"GET_SESSION_ID_ERROR": "Атрымана памылка session-id: {{code}}",
"GOT_SESSION_ID": "Атрыманне ID сесіі… Зроблена",
"LOW_BANDWIDTH": "Для захавання прапускной здольнасці відэа для {{displayName}} адключана"
},
"connectionindicator": {
"address": "Адрас:",
"bandwidth": "Сярэдняя хуткасць:",
"bitrate": "Бітрэйт:",
"bridgeCount": "Колькасць сервераў: ",
"connectedTo": "Падключаны да:",
"e2e_rtt": "E2E RTT:",
"framerate": "Частата кадраў:",
"less": "Кароткая інфармацыя",
"localaddress_0": "Мясцовы адрас:",
"localaddress_1": "Мясцовыя адраса:",
"localaddress_2": "Мясцовыя адраса:",
"localport_0": "Мясцовы порт:",
"localport_1": "Мясцовыя парты:",
"localport_2": "Мясцовыя парты:",
"more": "Падрабязная інфармацыя",
"packetloss": "Страты пакетаў:",
"quality": {
"good": "Добра",
"inactive": "неактыўна",
"lost": "страчана",
"nonoptimal": "неаптымальна",
"poor": "дрэнна"
},
"remoteaddress_0": "Аддалёны адрас:",
"remoteaddress_1": "Аддалёныя адраса:",
"remoteaddress_2": "Аддалёныя адраса:",
"remoteport_0": "Адлеглы порт:",
"remoteport_1": "Адлеглыя парты:",
"remoteport_2": "Адлеглыя парты:",
"resolution": "Дазвол:",
"status": "Сувязь:",
"transport_0": "Метад адпраўкі:",
"transport_1": "Метады адпраўкі:",
"transport_2": "Метады адпраўкі:"
},
"dateUtils": {
"earlier": "Раней",
"today": "Сёння",
"yesterday": "Учора"
},
"deepLinking": {
"appNotInstalled": "Каб далучыцца да гэтай сустрэчы на тэлефоне, трэба мабільнае прыкладанне {{app}}.",
"description": "Нічога не здарылася? Мы паспрабавалі запусціць вашу сустрэчу ў настольным дадатку {{app}}. Паспрабуйце яшчэ раз або запусціце яе ў вэб-дадатку {{app}}.",
"descriptionWithoutWeb": "Нічога не адбылося? Мы паспрабавалі запусціць вашу канферэнцыю ў настольным дадатку {{app}}.",
"downloadApp": "Спампаваць дадатак",
"launchWebButton": "Запусціць у браўзеры",
"openApp": "Перайсці да дадатку",
"title": "Запуск вашай сустрэчы ў {{app}} …",
"tryAgainButton": "Паўтарыце ў настольным дадатку"
},
"defaultLink": "напр. {{url}}",
"defaultNickname": "напр. Яна Цвяткова",
"deviceError": {
"cameraError": "Памылка доступу да камеры",
"cameraPermission": "Памылка доступу да мікрафона",
"microphoneError": "Памылка доступу да мікрафона",
"microphonePermission": "Няма дазволу на доступ да мікрафона"
},
"deviceSelection": {
"noPermission": "Няма доступу",
"previewUnavailable": "прадпаказу",
"selectADevice": "Выбар прылады",
"testAudio": "Пратэсціраваць гук"
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": "Трансляцыя"
},
"allow": "Дазволіць",
"alreadySharedVideoMsg": "Іншы ўдзельнік ужо падзяліўся спасылкай на відэа. Дадзеная канферэнцыя дазваляе адначасова дзяліцца толькі адным відэа.",
"alreadySharedVideoTitle": "Дапушчаецца паказ толькі аднаго відэа",
"applicationWindow": "Акно прыкладання",
"Back": "Назад",
"cameraConstraintFailedError": "Камера не адказвае вызначаным патрабаванням.",
"cameraNotFoundError": "Камера не выяўлена.",
"cameraNotSendingData": "Памылка доступу да камеры. Калі ласка, праверце, ці не выкарыстоўвае камеру якая-небудзь іншая праграма. Вы можаце таксама выбраць іншую прыладу з меню налад або паспрабаваць перазапусціць праграму.",
"cameraNotSendingDataTitle": "Няма доступу да камеры",
"cameraPermissionDeniedError": "Няма доступу да камеры. Вы можаце ўдзельнічаць у сустрэчы, але іншыя не будуць вас бачыць. Выкарыстоўвайце значок камеры ў адрасным радку браўзера, каб ліквідаваць праблему.",
"cameraUnknownError": "Невядомая памылка выкарыстання камеры.",
"cameraUnsupportedResolutionError": "Ваша камера не падтрымлівае неабходны дазвол відэа.",
"Cancel": "Адмена",
"close": "Зачыніць",
"conferenceDisconnectMsg": "Варта праверыць інтэрнэт-злучэнне. Спроба аднаўлення сувязі праз {{seconds}} с.",
"conferenceDisconnectTitle": "Вы адключаныя.",
"conferenceReloadMsg": "Мы спрабуем гэта выправіць. Аднаўленне сувязі праз {{seconds}} с.",
"conferenceReloadTitle": "На жаль, нешта пайшло не так.",
"confirm": "Падцвердзіць",
"confirmNo": "Не",
"confirmYes": "Так",
"connectError": "Памылка. Немагчыма ўсталяваць сувязь для вашай сустрэчы.",
"connectErrorWithMsg": "Памылка. Немагчыма ўсталяваць сувязь для вашай сустрэчы: {{msg}}",
"connecting": "Падлучэнне",
"contactSupport": "Сувязь з падтрымкай",
"copy": "Капіраваць",
"dismiss": "Адхіліць",
"displayNameRequired": "Прывітанне! Як цябе клічуць?",
"done": "Зроблена",
"enterDisplayName": "Калі ласка, увядзіце сваё імя",
"error": "Памылка",
"externalInstallationMsg": "Вам неабходна ўсталяваць наш дадатак для сумеснага скарыстання працоўнага стала.",
"externalInstallationTitle": "Патрабуецца пашырэнне",
"goToStore": "Перайсці да інтэрнэт-крамы",
"gracefulShutdown": "тэхнічныя работы. Калі ласка, паспрабуйце пазней.",
"IamHost": "Я гаспадар",
"incorrectRoomLockPassword": "Няправільны пароль",
"incorrectPassword": "Памылка імя карыстальніка або пароля",
"inlineInstallationMsg": "Вам неабходна ўсталяваць нашу праграму для сумеснага выкарыстання працоўнага стала.",
"inlineInstallExtension": "Усталяваць",
"internalError": "Што-та пайшло не так. Памылка: {{error}}",
"internalErrorTitle": "Унутраная памылка",
"kickMessage": "Вы можаце звязацца з {{participantDisplayName}} для атрымання больш падрабязнай інфармацыі.",
"kickParticipantButton": "Выдалiць",
"kickParticipantDialog": "Вы ўпэўненыя, што жадаеце выдаліць гэтага ўдзельніка?",
"kickParticipantTitle": "Выдалiць гэтага ўдзельніка?",
"kickTitle": "Ой! {{participantDisplayName}} выдалiў вас з канферэнцыі",
"liveStreaming": "Трансляцыя",
"liveStreamingDisabledForGuestTooltip": "Госці не могуць пачаць трансляцыю.",
"liveStreamingDisabledTooltip": "Магчымасць трансляцыі адключаная.",
"lockMessage": "Не атрымалася зачыніць канферэнцыю.",
"lockRoom": "Дадаць канферэнцыю $t(lockRoomPasswordUppercase)",
"lockTitle": "Блакаванне не атрымалася",
"logoutQuestion": "Ці ўпэўнены, што жадаеце выйсці і спыніць сустрэчу?",
"logoutTitle": "Завяршыць сеанс",
"maxUsersLimitReached": "Дасягнуты ліміт на максімальную колькасць удзельнікаў. Канферэнцыя перапоўненая. Калі ласка, звяжыцеся з арганізатарам канферэнцыі або паспрабуйце пазней!",
"maxUsersLimitReachedTitle": "Дасягнуты максімальны ліміт удзельнікаў",
"micConstraintFailedError": "Ваш мікрафон не адказвае вызначаным патрабаванням.",
"micNotFoundError": "Мікрафон не выяўлены.",
"micNotSendingData": "Перайдзіце ў налады кампутара, каб уключыць мікрафон і наладзіць ўзровень адчувальнасці",
"micNotSendingDataTitle": "Ваш мікрафон адключаны сістэмнымі наладамі",
"micPermissionDeniedError": "Няма доступу да мікрафону. Вы можаце ўдзельнічаць у сустрэчы, але іншыя не будуць вас чуць. Выкарыстоўвайце значок камеры ў адрасным радку браўзера, каб ліквідаваць праблему.",
"micUnknownError": "Невядомая памылка выкарыстання мікрафона.",
"muteEveryoneElseDialog": "Адключыўшы гук, Вы не зможаце ўключыць яго, але яны змогуць уключыць гук у сябе ў любы час.",
"muteEveryoneElseTitle": "Адключыць усіх, акрамя {{whom}}?",
"muteEveryoneDialog": "Вы ўпэўненыя, што жадаеце адключыць гук ва ўсіх? Вы не зможаце ўключыць яго, але яны змогуць уключыць гук у сябе ў любы час.",
"muteEveryoneTitle": "Заглушыць ўсіх?",
"muteEveryoneSelf": "сябе",
"muteEveryoneStartMuted": "Усе будуць заглушаныя з гэтага моманту",
"muteParticipantBody": "Вы не можаце ўключыць ім гук, але яны могуць зрабіць гэта самі ў любы момант.",
"muteParticipantButton": "Выключыць гук",
"muteParticipantDialog": "Вы ўпэўненыя, што жадаеце адключыць мікрафон у дадзенага карыстальніка? Вы не зможаце адмяніць гэтае дзеянне, аднак ён зможа сам зноў уключыць мікрафон у любы момант.",
"muteParticipantTitle": "прыглушыць гэтага ўдзельніка?",
"Ok": "Добра",
"passwordLabel": "Сустрэча была заблакаваная ўдзельнікам. Калі ласка, увядзіце $t(lockRoomPassword), каб далучыцца.",
"passwordNotSupported": "Усталяванне $t(lockRoomPassword) для канферэнцыі не падтрымліваецца.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) не падтрымліваецца",
"passwordRequired": "Патрабуецца $t(lockRoomPasswordUppercase)",
"popupError": "Ваш браўзер блакуе ўсплывальныя вокны гэтага сайта. Калі ласка, дазвольце ўсплывальныя вокны ў перавагах бясьпекі браўзэра і паспрабуйце зноў.",
"popupErrorTitle": "Заблакавана ўсплывальнае акно",
"recording": "Запіс",
"recordingDisabledForGuestTooltip": "Госці не могуць запісваць.",
"recordingDisabledTooltip": "Немагчыма пачаць запіс.",
"rejoinNow": "Падключыцца зноў",
"remoteControlAllowedMessage": "{{user}} прыняў ваш запыт на выдаленае кіраванне!",
"remoteControlDeniedMessage": "{{user}} адхіліў ваш запыт на выдаленае кіраванне!",
"remoteControlErrorMessage": "Адбылася памылка пры спробе запытаць дазвол аддаленага кіравання ад {{user}}!",
"remoteControlRequestMessage": "Дазволіць {{user}} выдаленае кіраванне вашым працоўным сталом?",
"remoteControlShareScreenWarning": "Калі націснеце \" Дазволіць \", то падзяліцеся сваім экранам!",
"remoteControlStopMessage": "Сесія аддаленага кіравання завершана!",
"remoteControlTitle": "Выдаленае кіраванне працоўным сталом",
"Remove": "Выдаліць",
"removePassword": "Прыбраць $t(lockRoomPassword)",
"removeSharedVideoMsg": "Ці ўпэўнены, што хочаце прыбраць відэа, якім падзяліліся?",
"removeSharedVideoTitle": "Прыбраць відэа",
"reservationError": "Памылка сістэмы рэзервавання",
"reservationErrorMsg": "Код памылкі: {{code}}, паведамленне: {{msg}}",
"retry": "Паўтарыць",
"screenSharingAudio": "Падзяліцца аўдыё",
"screenSharingFailedToInstall": "Усталяваць не пашырэння для паказу экрана.",
"screenSharingFailedToInstallTitle": "Пашырэнне для паказу экрана не ўстаноўлена",
"screenSharingFirefoxPermissionDeniedError": "Што-та пайшло не так, калі мы спрабавалі падзяліцца вашым экранам. Калі ласка, пераканайцеся, што вы далі нам дазвол на гэта. ",
"screenSharingFirefoxPermissionDeniedTitle": "Памылка паказу экрана!",
"screenSharingPermissionDeniedError": "Памылка доступу да вашага пашырэння для паказу экрана. Калі ласка, перазапусціце браўзэр і паспрабуйце зноў.",
"sendPrivateMessage": "Вы нядаўна атрымалі асабістае паведамленне. Вы хацелі адказаць на яго, або адправіць сваё паведамленне групе?",
"sendPrivateMessageCancel": "Апублікаваць у агульны чат",
"sendPrivateMessageOk": "Даслаць прыватнае паведамленьне",
"sendPrivateMessageTitle": "Адаслаць асабістае паведамленне?",
"serviceUnavailable": "Служба недаступная",
"sessTerminated": "Сувязь перарвана",
"Share": "Падзяліцца",
"shareVideoLinkError": "Калі ласка, падайце дакладную спасылку на YouTube.",
"shareVideoTitle": "Падзяліцца відэа",
"shareYourScreen": "Паказаць экран",
"shareYourScreenDisabled": "Дэманстрацыя экрана адключаная.",
"shareYourScreenDisabledForGuest": "Госці не могуць дэманстраваць экран.",
"startLiveStreaming": "Пачаць трансляцыю",
"startRecording": "Пачаць запіс",
"startRemoteControlErrorMessage": "Памылка пачатку сесіі аддаленага кіравання!",
"stopLiveStreaming": "Спыніць трансляцыю",
"stopRecording": "Спыніць запіс",
"stopRecordingWarning": "Ці ўпэўнены, што хочаце спыніць запіс?",
"stopStreamingWarning": "Ці ўпэўнены, што хочаце спыніць трансляцыю?",
"streamKey": "Ключ трансляцыі",
"Submit": "Адправіць",
"thankYou": "Дзякуй, што карыстаецеся {{appName}}!",
"token": "токен",
"tokenAuthFailed": "Выбачайце, вам не дазволена далучыцца да гэтага сеансу сувязі.",
"tokenAuthFailedTitle": "Памылка аўтарызацыі",
"transcribing": "Расшыфроўка",
"unlockRoom": "Прыбраць $t(lockRoomPassword)",
"userPassword": "пароль карыстальніка",
"WaitForHostMsg": "Канферэнцыя <b>{{room}}</b> яшчэ не пачалася. Калі вы з'яўляецеся гаспадаром, калі ласка, падтвердіце сапраўднасць. У адваротным выпадку, калі ласка, пачакайце з'яўлення гаспадара.",
"WaitForHostMsgWOk": "Канферэнцыя <b>{{room}}</b> яшчэ не пачалася. Калі Вы арганізатар, калі ласка, націсніце Ok для аўтэнтыфікацыі. У адваротным выпадку, дачакайцеся арганізатара.",
"WaitingForHost": "Чакаем арганізатара …",
"Yes": "Так",
"yourEntireScreen": "Увесь экран"
},
"dialOut": {
"statusMessage": "цяпер {{status}}"
},
"documentSharing": {
"title": "Агульны Дакумент"
},
"feedback": {
"average": "Сярэдне",
"bad": "Дрэнна",
"detailsLabel": "Раскажыце больш падрабязна.",
"good": "Добра",
"rateExperience": "Ацэнка якасці сувязі",
"veryBad": "Вельмі дрэнна",
"veryGood": "Вельмі добра"
},
"incomingCall": {
"answer": "Адказ",
"audioCallTitle": "Уваходны званок",
"decline": "Адхіліць",
"productLabel": "з Jitsi Meet",
"videoCallTitle": "Уваходны відэазванок"
},
"info": {
"accessibilityLabel": "Паказаць інфармацыю",
"addPassword": "Усталяваць $t(lockRoomPassword)",
"cancelPassword": "Адмяніць $t(lockRoomPassword)",
"conferenceURL": "Спасылка:",
"country": "Краіна",
"dialANumber": "Каб далучыцца да канферэнцыі, набярыце адзін з гэтых нумароў і ўвядзіце pin-код.",
"dialInConferenceID": "PIN:",
"dialInNotSupported": "На жаль, набор нумара ў цяперашні час не падтрымліваецца.",
"dialInNumber": "Нумар:",
"dialInSummaryError": "Памылка атрымання інфармацыі аб наборы нумара. Калі ласка, паспрабуйце яшчэ раз пазней.",
"dialInTollFree": "Званок бясплатны",
"genericError": "Што-та пайшло не так.",
"inviteLiveStream": "Трансляцыя гэтай сустрэчы: {{url}}",
"invitePhone": "Для таго, каб далучыцца па тэлефоне, націсніце {{number}} ,, {{conferenceID}} # \n",
"invitePhoneAlternatives": "Шукайце iншы нумар для набору? \nПаглядзець нумары для набору для канферэнцыі: {{url}} \n \n \nЕсли таксама выконваецца набор нумара праз тэлефон у пакоі, падключыцеся ў рэжыме слухача: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Вас запрашаюць далучыцца да канферэнцыі.",
"inviteURLFirstPartPersonal": "{{name}} запрашае Вас далучыцца да канферэнцыі. \n",
"inviteURLSecondPart": "\nДалучыцца да канферэнцыі: \n {{url}} \n",
"liveStreamURL": "Трансляцыя:",
"moreNumbers": "Больш нумароў",
"noNumbers": "Няма нумароў для набору.",
"noPassword": "не",
"noRoom": "Для набору нумара не было паказана ніводнага пакоя.",
"numbers": "Нумары для набору",
"password": "$t(lockRoomPasswordUppercase):",
"title": "Падзяліцца",
"tooltip": "Падзяліцеся спасылкай і нумарам для падлучэння да гэтай канферэнцыі",
"label": "Інфармацыя пра канферэнцыю"
},
"inviteDialog": {
"alertText": "Не ўдалося запрасіць некаторых удзельнікаў.",
"header": "Запрасіць",
"searchCallOnlyPlaceholder": "Пакажыце нумар тэлефона",
"searchPeopleOnlyPlaceholder": "Пошук удзельнікаў",
"searchPlaceholder": "Удзельнік або нумар тэлефона",
"send": "Даслаць"
},
"inlineDialogFailure": {
"msg": "Невялікая замінка.",
"retry": "Паспрабаваць зноў",
"support": "Падтрымка",
"supportMsg": "Калі гэта працягнецца, звяжыцеся з"
},
"keyboardShortcuts": {
"focusLocal": "Фокус на ваша відэа",
"focusRemote": "Фокус на відэа іншага ўдзельніка",
"fullScreen": "Укл/Выкл поўнаэкранны рэжым",
"keyboardShortcuts": "Камбінацыі клавіш",
"localRecording": "Адлюстраваць ці схаваць элементы кіравання лакальным запісам",
"mute": "Мікрафон (Ўкл./Выкл.)",
"pushToTalk": "Націсніце, каб гаварыць",
"raiseHand": "Падняць або апусціць руку",
"showSpeakerStats": "Паказаць статыстыку выступоўцы",
"toggleChat": "Чат (адкрыць/зачыніць)",
"toggleFilmstrip": "Паказаць / не паказваць кароткае апісанне",
"toggleScreensharing": "Пераключыцца паміж камерай і паказам экрана",
"toggleShortcuts": "Схаваць / Паказаць клавішы хуткага доступу",
"videoMute": "Камера (вкл./Выкл.)",
"videoQuality": "Якасць сувязі"
},
"liveStreaming": {
"busy": "Вызваляем новыя рэсурсы для трансляцыі. Калі ласка, паспрабуйце зноў праз некалькі хвілін.",
"busyTitle": "Усе рэсурсы для трансляцыі ўжо задзейнічаны",
"changeSignIn": "Пераключыць акаўнты.",
"choose": "Выбраць трансляцыю",
"chooseCTA": "Калі ласка, пазначце трансляцыю. Вы ўвайшлі ў сістэму як {{email}}.",
"enterStreamKey": "Калі ласка, увядзіце ваш ключ трансляцыі YouTube.",
"error": "Памылка трансляцыі. Калі ласка, паспрабуйце зноў.",
"errorAPI": "Адбылася памылка пры доступе да вашых трансляцый на YouTube. Паўтарыце спробу ўваходу ў сістэму.",
"errorLiveStreamNotEnabled": "Трансляцыя не падключана на {{email}}. Калі ласка падключыце трансляцыю або ўвайдзіце ў рахунак з падключанай трансляцыяй.",
"expandedOff": "Прамая трансляцыя спыненая",
"expandedOn": "У сапраўдны момант канферэнцыя транслюецца на YouTube.",
"expandedPending": "Пачынаецца прамая трансляцыя ..",
"failedToStart": "Памылка трансляцыі відэа",
"getStreamKeyManually": "Прамыя трансляцыi не знойдзены. Паспрабуйце атрымаць ключ прамой трансляцыі ад YouTube.",
"invalidStreamKey": адобнs ключ прамой трансляцыі з'яўляецца памылковым.",
"off": "Трансляцыя спынена",
"offBy": "{{name}} спыніў прамую трансляцыю",
"on": "Трансляцыя",
"onBy": "{{name}} пачаў прамую трансляцыю",
"pending": "Пачынаем трансляцыю …",
"serviceName": "Служба трансляцыі",
"signedInAs": "У цяперашні час вы ўвайшлі ў сістэму як:",
"signIn": "Увайсці праз Google",
"signInCTA": "Увайдзiце або ўвядзіце свой ключ трансляцыі YouTube.",
"signOut": "Выхад",
"start": "Пачаць трансляцыю",
"streamIdHelp": "Што гэта?",
"unavailableTitle": "Трансляцыя недаступная",
"youtubeTerms": "YouTube ўмовы паслуг",
"googlePrivacyPolicy": "Палітыка прыватнасці Google"
},
"localRecording": {
"clientState": {
"off": "Адключаны",
"on": "Падключаны",
"unknown": "Невядомы"
},
"dialogTitle": "Кнопкі лакальнага запісу",
"duration": "Працягласць",
"durationNA": "невядома",
"encoding": "Кадзiроўка",
"label": "Левы / Правы",
"labelToolTip": "Лакальны запіс актыўны",
"localRecording": "Лакальны запіс",
"me": "Я",
"messages": {
"engaged": "Лакальны запіс пачаўся.",
"finished": "Запіс сесіі {{token}} завершана. Калі ласка адпраўце запісаны файл мадэратару.",
"finishedModerator": "Запіс сесіі {{token}} завершаны. Запіс лакальнага трэка захаваны. Калі ласка, папытаеце іншых удзельнікаў прадставіць іх запіс.",
"notModerator": "Вы не мадэратар і не можаце пачынаць або спыняць лакальны запіс."
},
"moderator": "Мадэратар",
"no": "Не",
"participant": "Удзельнік",
"participantStats": "Статыстыка удзельнікаў",
"sessionToken": "токенаў сесіі",
"start": "Пачаць запіс",
"stop": "Спыніць запіс",
"yes": "Так"
},
"lockRoomPassword": "пароль",
"lockRoomPasswordUppercase": "Пароль",
"me": "я",
"notify": {
"connectedOneMember": "{{name}} далучыўся да канферэнцыі",
"connectedThreePlusMembers": "{{name}} і {{count}} іншых карыстальнікаў далучыліся да канферэнцыі",
"connectedTwoMembers": "{{first}} і {{second}} далучыліся да канферэнцыі",
"disconnected": "злучэнне разарвана",
"focus": "Фокус сустрэчы",
"focusFail": "{{component}} недаступны, паўторыце праз {{ms}} з",
"grantedTo": "{{to}} атрымаў правы мадэратара!",
"invitedOneMember": "{{name}} быў запрошаны",
"invitedThreePlusMembers": "Запрошаны {{name}} і {{count}} іншых карыстальнікаў (ля)",
"invitedTwoMembers": "{{first}} і {{second}} далучыліся да канферэнцыі",
"kickParticipant": "{{kicker}} выгнаў {{kicked}}",
"me": "Я",
"moderator": "Атрыманыя правы мадэратара!",
"muted": "Вы пачалі размову без гуку.",
"mutedTitle": "Вы без гуку!",
"mutedRemotelyTitle": "{{participantDisplayName}} адключыў Вам мікрафон!",
"mutedRemotelyDescription": "Вы заўсёды можаце ўключыць мікрафон, калі будзеце гатовыя гаварыць. Адключыце яго, калі скончыце, каб не трансляваць шумы ў канферэнцыю.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) выдалены іншым удзельнікам",
"passwordSetRemotely": "Іншы ўдзельнік ўсталяваў $t(lockRoomPasswordUppercase)",
"raisedHand": "{{name}} хацеў бы выступіць.",
"somebody": "Хтосьці",
"startSilentTitle": "У вас адсутнічае гук!",
"startSilentDescription": еразайдзiце ў канферэнцыю, каб уключыць гук",
"suboptimalBrowserWarning": "На жаль, ваш браўзэр не цалкам падтрымлівае дадзеную сістэму вэб-канференцый. Мы працуем над праблемай, аднак, пакуль рэкамендуем вам скарыстацца <a href='static/recommendedBrowsers.html' target='_blank'> наступнымі браўзэрамі</a >.",
"suboptimalExperienceTitle": "Папярэджанне браўзэра",
"unmute": "Уключыць мікрафон",
"newDeviceCameraTitle": "Выяўлена новая камера",
"newDeviceAudioTitle": "Выяўлена новае аўдыёпрылада",
"newDeviceAction": "Выкарыстоўваць"
},
"passwordSetRemotely": "устаноўлены іншым удзельнікам",
"passwordDigitsOnly": "Да {{number}} лічбаў",
"poweredby": "працуе на",
"presenceStatus": {
"busy": "Заняты",
"calling": "Выклікаю…",
"connected": "Падключана",
"connecting": "Падлучэнне…",
"connecting2": "Падлучэнне * ...",
"disconnected": "Адключана",
"expired": "Скончыўся",
"ignored": "праігнаравалі",
"initializingCall": "Ініцыялізацыя званка…",
"invited": "Запрошаны",
"rejected": "Адхілены",
"ringing": "Тэлефаную…"
},
"profile": {
"setDisplayNameLabel": "Якое адлюстроўваецца імя",
"setEmailInput": "Калі ласка, увядзіце e-mail",
"setEmailLabel": "E-mail для Gravatar",
"title": "Профіль"
},
"raisedHand": "Хоча гаварыць",
"recording": {
"authDropboxText": "Загрузіць у Dropbox",
"availableSpace": "Даступна месца: {{spaceLeft}} MB (прыкладна {{duration}} хвілін запісу)",
"beta": "бэта",
"busy": "Мы стараемся забяспечыць больш рэсурсаў для запісу. Калі ласка, паспрабуйце праз некалькі хвілін.",
"busyTitle": "Усе запісваючыя прылады занятыя",
"error": "Памылка запісу. Калі ласка, паспрабуйце пазней.",
"expandedOff": "Запіс спынены",
"expandedOn": "Гэта канферэнцыя запісваецца.",
"expandedPending": "Пачынаем запіс канферэнцыі …",
"failedToStart": "Памылка пачатку запісу",
"fileSharingdescription": "Падзяліцца запісам з удзельнікамі канферэнцыі",
"live": "Прамая трансляцыя",
"loggedIn": "Увайшоў як {{userName}}",
"off": "Запіс спынены",
"offBy": "{{name}} спыніў запіс",
"on": "Запіс",
"onBy": "{{name}} ўключыў запіс",
"pending": "Падрыхтоўка запісу канферэнцыі…",
"rec": "Ідзе запіс",
"serviceDescription": "Ваш запіс будзе захаваны адпаведнай службай",
"serviceName": "Служба запісу",
"signIn": "Уваход",
"signOut": "Выхад",
"unavailable": "Служба {{serviceName}} зараз недаступная. Мы працуем над выпраўленнем гэтай памылкі. Калі ласка, паспрабуйце пазней.",
"unavailableTitle": "Запіс немагчымы"
},
"sectionList": {
"pullToRefresh": "Пацягніце для абнаўлення"
},
"settings": {
"calendar": {
"about": "Інтэграцыя з календаром {{appName}} выкарыстоўваецца для бяспечнага доступу да вашага календара і сінхранізацыі запланаваных мерапрыемстваў.",
"disconnect": "Адлучыцца",
"microsoftSignIn": "Увайсці з дапамогай ўліковага запісу Microsoft",
"signedIn": "Доступ да падзей календара уключаны для email - адрасы {{email}}. Націсніце кнопку Адключыць для адключэння доступу да падзей календара.",
"title": "Каляндар"
},
"devices": "Прылады",
"followMe": "Усе ідуць за мной",
"language": "Мова",
"loggedIn": "Увайшоў як {{name}}",
"microphones": "Мікрафоны",
"moderator": "Мадэратар",
"more": "Больш опцый",
"name": "Імя",
"noDevice": "не",
"selectAudioOutput": "Гукавы выхад",
"selectCamera": "Камера",
"selectMic": "Мікрафон",
"speakers": "Дынамікі",
"startAudioMuted": "Усе пачынаюць з выключаным гукам",
"startVideoMuted": "Усе пачынаюць ў схаваным рэжыме",
"title": "Налады"
},
"settingsView": {
"advanced": "Дадатковыя",
"alertOk": "Добра",
"alertTitle": "Увага",
"alertURLText": "Памылка адрасу сервера",
"buildInfoSection": "Інфармацыя пра зборку",
"conferenceSection": "Нумары для набору",
"disableCallIntegration": "Адключыць убудаваную інтэграцыю выклікаў",
"disableP2P": "Адключыць рэжым Peer-To-Peer",
"displayName": "Якое адлюстроўваецца імя",
"email": "E-mail",
"header": "Налады",
"profileSection": "Профіль",
"serverURL": "Адрас сервера",
"showAdvanced": "Паказаць дадатковыя налады",
"startWithAudioMuted": "Пачаць з адключаным гукам",
"startWithVideoMuted": "Пачаць з адключаным відэа",
"version": "Версія"
},
"share": {
"dialInfoText": "\n\n===== \n \nПроста жадаеце набраць нумар на Вашым тэлефоне? \n \n {{defaultDialInNumber}} Нацiснiце на гэтую спасылку, каб прагледзець тэлефонныя нумары для гэтай канферэнцыі \n {{dialInfoPageUrl}}",
"mainText": "Націсніце на спасылку каб далучыцца да канферэнцыі: \n {{roomUrl}}"
},
"speaker": "Калонка",
"speakerStats": {
"hours": "{{count}}г",
"minutes": "{{count}}хв",
"name": "Імя",
"seconds": "{{count}} с",
"speakerStats": "Статыстыка выступаў",
"speakerTime": "Час выступленняў"
},
"startupoverlay": {
"policyText": "",
"title": "{{app}} патрабуецца доступ да мікрафону і камеры."
},
"suspendedoverlay": {
"rejoinKeyTitle": "Падключыцца зноў",
"text": "Для аднаўлення сувязі націсніце кнопку <i> Падключыцца зноў </i>.",
"title": "Відэасувязь перапынена. Прычына: гэты кампутар перайшоў у рэжым сну."
},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "Укл/Выкл толькі гук",
"audioRoute": "Выбраць аўдыёпрылады",
"callQuality": "Якасць сувязі",
"cc": "Укл/Выкл субтытры",
"chat": "Паказаць/схаваць акно чата",
"document": "Зачыніць агульны дакумент",
"download": "Спампаваць дадатак",
"feedback": "Пакінуць водгук",
"fullScreen": "Поўнаэкранны / аконны рэжым",
"hangup": "Завяршыць званок",
"help": "Даведка",
"invite": "Запрасіць",
"kick": "Выкінуць ўдзельніка",
"localRecording": "Укл/Выкл кнопкі запісу",
"lockRoom": "Усталяваць пароль",
"moreActions": "Паказаць / схаваць меню доп. Настроек",
"moreActionsMenu": "Меню дад. Настроек",
"moreOptions": "Паказаць больш варыянтаў",
"mute": "Укл/Выкл гук",
"muteEveryone": "Заглушыць усіх",
"pip": "Укл/Выкл рэжым Малюначак-у-малюначку",
"privateMessage": "Адаслаць асабістае паведамленне",
"profile": "Рэдагаваць профіль",
"raiseHand": "Падняць руку",
"recording": "Укл/Выкл запіс",
"remoteMute": "Адключыць ўдзельніку мікрафон",
"Settings": "",
"sharedvideo": "Укл/Выкл YouTube - трансляцыю",
"shareRoom": "Адправіць запрашэнне",
"shareYourScreen": "Укл/Выкл дэманстрацыю экрана",
"shortcuts": "Укл/Выкл значкі",
"show": "Паказаць буйным планам",
"speakerStats": "Укл/Выкл статыстыку",
"tileView": "Укл/Выкл плітку",
"toggleCamera": "Укл/Выкл камеру",
"toggleFilmstrip": "",
"videomute": "Укл/Выкл відэа",
"videoblur": "Укл. / Выкл. Размыццё фону"
},
"addPeople": "Дадаць людзей да вашага сеансу сувязі",
"audioOnlyOff": "Адключыць рэжым эканоміі пропускной здольнасці",
"audioOnlyOn": "Уключыць рэжым эканоміі прапускной здольнасці",
"audioRoute": "Выбраць аўдыёпрылады",
"authenticate": "аўтэнтыфікаваных",
"callQuality": "Якасць сувязі",
"chat": "Чат",
"closeChat": "Зачыніць чат",
"documentClose": "Зачыніць агульны дакумент",
"documentOpen": "Адкрыць агульны дакумент",
"download": "Спампаваць дадатак",
"enterFullScreen": "Поўны экран",
"enterTileView": "Агульны план",
"exitFullScreen": "Поўны экран",
"exitTileView": "Буйны план",
"feedback": "Пакінуць водгук",
"hangup": "Выхад",
"help": "Даведка",
"invite": "Запрасіць",
"login": "Увайсці",
"logout": "Выйсці",
"lowerYourHand": "Апусціць руку",
"moreActions": "Больш",
"moreOptions": "Больш варыянтаў",
"mute": "Мікрафон (Ўкл./Выкл.)",
"muteEveryone": "Заглушыць усіх",
"noAudioSignalTitle": "Ад вашага мікрафона не ідзе гукавы сігнал!",
"noAudioSignalDesc": "Калі вы адмыслова не адключалі мікрафон у сістэмных наладах, падумайце аб тым, каб памяняць яго.",
"noAudioSignalDescSuggestion": "Калі вы адмыслова не адключалі мікрафон у сістэмных наладах, вы можаце паспрабаваць выкарыстоўваць наступную прыладу.",
"noAudioSignalDialInDesc": "Вы таксама можаце набраць з дапамогай:",
"noAudioSignalDialInLinkDesc": "Нумары для набору",
"noisyAudioInputTitle": "Здаецца, ваш мікрафон шумеў!",
"noisyAudioInputDesc": "Здаецца, ваш мікрафон выдае шум, калі ласка, падумайце аб выключэнні гуку або змене прылады.",
"openChat": "Адкрыць чат",
"pip": "Укл рэжым Малюначак-у-малюначку",
"privateMessage": "Адаслаць асабістае паведамленне",
"profile": "Рэдагаваць профіль",
"raiseHand": "Хачу гаварыць",
"raiseYourHand": "Падняць руку",
"Settings": "Налады",
"sharedvideo": "Відэа YouTube",
"shareRoom": "Адправіць запрашэнне",
"shortcuts": "Камбінацыі клавіш",
"speakerStats": "Статыстыка",
"startScreenSharing": "Пачаць трансляцыю з экрана",
"startSubtitles": "Уключыць субтытры",
"stopScreenSharing": "Спыніць трансляцыю з экрана",
"stopSubtitles": "Адключыць субтытры",
"stopSharedVideo": "Спыніць відэа на YouTube",
"talkWhileMutedPopup": "Спрабуеце казаць? У вас адключаны гук.",
"tileViewToggle": "Укл/Выкл плітку",
"toggleCamera": "Укл/Выкл камеру",
"videomute": "Камера",
"startvideoblur": "размыць фон на відэа",
"stopvideoblur": "Адключыць размыццё фону"
},
"transcribing": {
"ccButtonTooltip": "Укл. / Выкл. Субтытры",
"error": "Памылка запісу. Калі ласка, паспрабуйце пазней.",
"expandedLabel": "Транскрыпцыя ўключана",
"failedToStart": "няўдалага пачаць расшыфроўку",
"labelToolTip": "Ствараецца транскрыпцыя канферэнцыі",
"off": "Расшыфроўка спыненая",
"pending": "Падрыхтоўка расшыфроўкі канферэнцыі…",
"start": "Укл/Выкл паказ субтытраў",
"stop": "Укл/Выкл паказ субтытраў",
"tr": "TR"
},
"userMedia": {
"androidGrantPermissions": "Калі ласка, пазначце <b> <i> Дазволіць </i> </b>, калі браўзэр спытае пра дазволы.",
"chromeGrantPermissions": "Калі ласка, пазначце <b> <i> Дазволіць </i> </b>, калі браўзэр спытае пра дазволы.",
"edgeGrantPermissions": "Калі ласка, пазначце <b> <i> Ды </i> </b>, калі браўзэр спытае пра дазволы.",
"electronGrantPermissions": "Калі ласка, дайце дазвол на доступ да камеры і мікрафону",
"firefoxGrantPermissions": "Калі ласка, пазначце <b> <i> Падзяліцца абраным прыладай </i> </b>, калі браўзэр спытае пра дазволы.",
"iexplorerGrantPermissions": "Калі ласка, пазначце <b> <i> OK </i> </b>, калі браўзэр спытае пра дазволы.",
"nwjsGrantPermissions": "Калі ласка, дайце дазвол на доступ да камеры і мікрафону",
"operaGrantPermissions": "Калі ласка, пазначце <b> <i> Дазволіць </i> </b>, калі браўзэр спытае пра дазволы.",
"react-nativeGrantPermissions": "Калі ласка, пазначце <b> <i> Дазволіць </i> </b>, калі браўзэр спытае пра дазволы.",
"safariGrantPermissions": "Калі ласка, пазначце <b> <i> OK </i> </b>, калі браўзэр спытае пра дазволы."
},
"videoSIPGW": {
"busy": "Мы працуем над вызваленнем рэсурсаў. Калі ласка, паспрабуйце праз некалькі хвілін.",
"busyTitle": "Служба цяпер занятая",
"errorAlreadyInvited": "{{displayName}} ужо запрошаны",
"errorInvite": "Сустрэча яшчэ не пачалася. Калі ласка, паспрабуйце пазней.",
"errorInviteFailed": "Мы працуем над вырашэннем праблемы. Калі ласка, паспрабуйце пазней.",
"errorInviteFailedTitle": "Памылка запрашэння {{displayName}}",
"errorInviteTitle": "Памылка запрашэння ў пакой",
"pending": "{{displayName}} быў запрошаны"
},
"videoStatus": {
"audioOnly": "Толькі гук",
"audioOnlyExpanded": "Актыўны рэжым эканоміі прапускной здольнасці. У гэтым рэжыме даступныя толькі гук і трансляцыя з экрана.",
"callQuality": "Якасць відэа",
"hd": "HD",
"hdTooltip": "Відэа высокай якасці",
"highDefinition": "Высокая якасць",
"labelTooiltipNoVideo": "Няма відэа",
"labelTooltipAudioOnly": "Уключаны рэжым эканоміі прапускной здольнасці",
"ld": "LD",
"ldTooltip": "Відэа нізкай якасці",
"lowDefinition": "Нізкая якасць",
"onlyAudioAvailable": "Толькі гук",
"onlyAudioSupported": "У гэтым браўзэры дазволены толькі гук.",
"p2pEnabled": "Уключаны рэжым \" кропка-да-кропцы \"",
"p2pVideoQualityDescription": "У рэжыме прамога канала сувязі паміж абанентамі можна перамыкацца толькі паміж рэжымамі \" толькі гук \"і \" высокае якасць \". Астатнія налады стануць даступнымі, калі скончыцца гэты рэжым.",
"recHighDefinitionOnly": "Пераважна высокую якасць.",
"sd": "SD",
"sdTooltip": "Відэа стандартнага якасці",
"standardDefinition": "Стандартнае якасць (SD)"
},
"videothumbnail": {
"domute": "Выключыць гук",
"domuteOthers": "Заглушіць астатніх",
"flip": "Адлюстраваць",
"kick": "Выкінуць",
"moderator": "Мадэратар",
"mute": "Без гуку",
"muted": "Гук выключаны",
"remoteControl": "Укл./Вкл. дыстанцыйнае кіраванне",
"show": "Паказаць буйным планам",
"videomute": "Удзельнік адключыў камеру"
},
"welcomepage": {
"accessibilityLabel": {
"join": "Націсніце каб далучыцца",
"roomname": "Пакажыце назву пакоя"
},
"appDescription": "Паспрабуйце відэачат з усёй камандай. Запрашай знаёмых! {{app}} - цалкам зашыфраванае рашэнне для відэаканферэнцый з адкрытым зыходным кодам. Карыстайцеся кожны дзень, бясплатна і без рэгістрацыі.",
"audioVideoSwitch": {
"audio": "Каляндар",
"video": "Відэа"
},
"calendar": "Каляндар",
"connectCalendarButton": "Прывязаць каляндар",
"connectCalendarText": "Падлучыце каляндар, каб убачыць усе вашыя канферэнцыі ў {{app}}. Акрамя таго, дадаўшы {{provider}} канферэнцыi ў каляндар, вы зможаце запускаць іх адным пстрычкай мышкі.",
"enterRoomTitle": "Пачаць новую відэаканферэнцыю",
"getHelp": "Атрымаць дапамогу",
"roomNameAllowedChars": "Назва канферэнцыі не павінна ўтрымліваць наступныя сімвалы:?, &,:, ', \",%, #.",
"go": "ОК",
"goSmall": "ОК",
"join": "СТВАРЫЦЬ/далучыць",
"info": "Інфа",
"privacy": "Прыватнасць",
"recentList": "Нядаўнія",
"recentListDelete": "Выдаліць",
"recentListEmpty": "Зараз ваш спіс нядаўна праведзеных канферэнцый пусты. Па меры вашага карыстання сэрвісам ён будзе папаўняцца.",
"reducedUIText": "Сардэчна запрашаем у {{app}}!",
"roomname": "Пакажыце назву пакоя",
"roomnameHint": "Пакажыце назву пакоя ці яго адрас. Можаце самі стварыць назву і перадаць яе будучым удзельнікам сустрэчы, каб яны выкарыстоўвалі менавіта яго.",
"sendFeedback": "Зваротная сувязь",
"terms": "Умовы",
"title": "Абароненая, поўнафункцыянальная і цалкам бясплатная сістэма відэаканферэнцый"
},
"lonelyMeetingExperience": {
"button": "Запрашайце іншых",
"youAreAlone": "Вы адзіны ў гэтай канферэнцыі"
},
"helpView": {
"header": "Цэнтар дапамогi"
}
}

View File

@@ -6,7 +6,7 @@
"disabled": "Не можете да каните хора.",
"failedToAdd": "Неуспешно добавяне на участници",
"footerText": "Изходящите разговори не са разрешени.",
"loading": "Търсене на хора и телефонни номера.",
"loading": "Търсене на хора и телефонни номера",
"loadingNumber": "Валидиране на номера",
"loadingPeople": "Търсене на хора",
"noResults": "Няма резултати",
@@ -72,13 +72,17 @@
"DISCONNECTED": "Изключен",
"DISCONNECTING": "Прекъсване на връзката",
"ERROR": "Грешка",
"RECONNECTING": "Появи се проблем с мрежата. Връзваме се наново..."
"RECONNECTING": "Появи се проблем с мрежата. Връзваме се наново...",
"LOW_BANDWIDTH": "Виеото на {{displayName}} беше изключено поради слаба Интернет връзка",
"GOT_SESSION_ID": "Отваряне на сесията...Завърши",
"GET_SESSION_ID_ERROR": "Грешка при отваряне на сесията: {{code}}",
"FETCH_SESSION_ID": "Отваряне на сесия..."
},
"connectionindicator": {
"address": "Адрес:",
"bandwidth": "Предполагаема скорост:",
"bitrate": "Скорост:",
"bridgeCount": "Брой сървъри:",
"bridgeCount": "Брой сървъри: ",
"connectedTo": "Свързан към:",
"framerate": "Кадри в секунда:",
"less": "Скриване",
@@ -196,24 +200,24 @@
"maxUsersLimitReachedTitle": "Достигнат е лимита за максимален брой участници",
"micConstraintFailedError": "Микрофонът Ви не покрива някои от изискванията.",
"micNotFoundError": "Не е открит микрофон.",
"micNotSendingData": "Пуснете микрофона си от системните настройки на компютъра ви.",
"micNotSendingData": "Пуснете микрофона си от системните настройки на компютъра ви",
"micNotSendingDataTitle": "Микрофона ви е спрян от системните настройки",
"micPermissionDeniedError": "Не сте дали разрешение за използване на микрофона. Ще можете да се присъедините в беседата, но другите няма да Ви чуват. Използвайте бутона с камерата в адресната лента, за да оправите това.",
"micUnknownError": "Невъзможен достъп до микрофона по неясна причина.",
"muteParticipantBody": "Вие няма да можете да спрете заглушаването на участника, но той ще може да го направи по всяко време.",
"muteParticipantButton": "Изключи микрофона",
"muteParticipantDialog": "Сигурни ли сте че искате да заглушите този участник? Няма да можете да пуснете обратно звука му, но участника ще може да направи това сам.",
"muteParticipantDialog": "Сигурни ли сте че искате да заглушите този участник? Няма да можете да пуснете обратно звука му, но участникът ще може да направи това сам.",
"muteParticipantTitle": "Спиране звука на участник?",
"Ok": "Готово",
"passwordLabel": "Парола",
"passwordLabel": "Тази среща е заключена. Моля въведете $t(lockRoomPassword) за да влезнете.",
"passwordNotSupported": "Задаването на $t(lockRoomPassword) за срещата не се поддържа.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) не се поддържа",
"passwordRequired": "Изисква се $t(lockRoomPassword) ",
"passwordRequired": "Изисква се $t(lockRoomPassword)",
"popupError": "Браузърът Ви блокира изскачащите прозорци от този уеб сайт. Моля, разрешете изскачащите прозорци от настройките за сигурност на браузъра си и след това опитайте отново.",
"popupErrorTitle": "Блокиран изскачащ прозорец",
"recording": "Запис",
"recordingDisabledForGuestTooltip": "Гостите не могат да стартират запис",
"recordingDisabledTooltip": "Стартирането на запис е спряно",
"recordingDisabledForGuestTooltip": "Гостите не могат да стартират запис.",
"recordingDisabledTooltip": "Стартирането на запис е спряно.",
"rejoinNow": "Повторно присъединяване сега",
"remoteControlAllowedMessage": "{{user}} прие заявката Ви за отдалечено управление!",
"remoteControlDeniedMessage": "{{user}} отказа заявката Ви за отдалечено управление!",
@@ -231,7 +235,7 @@
"retry": "Повторен опит",
"screenSharingFailedToInstall": "Опа! Разширението за споделяне на екрана не успя да се инсталира.",
"screenSharingFailedToInstallTitle": "Разширението за споделяне на екрана не успя да се инсталира",
"screenSharingFirefoxPermissionDeniedError": "Нещо се обърка докато се опитвахме да споделим екрана. Моля уверете се че сте дали права за това.",
"screenSharingFirefoxPermissionDeniedError": "Нещо се обърка докато се опитвахме да споделим екрана. Моля уверете се че сте дали права за това. ",
"screenSharingFirefoxPermissionDeniedTitle": "Упс! Не успяхме да стартираме споделянето на екрана!",
"screenSharingPermissionDeniedError": "Опа! Нещо се обърка с разрешенията на разширението за споделяне на екрана. Моля, презаредете и опитайте отново.",
"sendPrivateMessage": "Наскоро получихте лично съобщение. Искате да отговорите на това съобшение или да изпратите до всички?",
@@ -266,7 +270,14 @@
"WaitForHostMsgWOk": "Конференцията <b>{{room}}</b> все още не е започнала. Ако сте домакинът тогава натиснете бутона за да се идентифицирате. В противен случай изчакайте докато домакинът пристигне.",
"WaitingForHost": "Чакаме домакина ...",
"Yes": "Да",
"yourEntireScreen": "Целия екран"
"yourEntireScreen": "Целия екран",
"screenSharingAudio": "Сподели и звука",
"muteEveryoneStartMuted": "Всички да влизат без звук",
"muteEveryoneSelf": "себе си",
"muteEveryoneTitle": "Заглуши всички?",
"muteEveryoneDialog": "Сигурни ли сте, че искате да заглушите всички? Няма да можете да пуснете звука им отново, но участниците ще могат да направят това сами.",
"muteEveryoneElseTitle": "Заглушете всички освен {{whom}}?",
"muteEveryoneElseDialog": "След като заглушите някой, няма да можете да пуснете обратно звука му, но участникът ще може да направи това сам."
},
"dialOut": {
"statusMessage": "в момента е {{status}}"
@@ -279,7 +290,7 @@
"bad": "Лошо",
"detailsLabel": "Разкажете ни повече.",
"good": "Добра",
"rateExperience": "Моля, оценете качеството на срещата.",
"rateExperience": "Моля, оценете качеството на срещата",
"veryBad": "Много лошо",
"veryGood": "Много добра"
},
@@ -298,7 +309,7 @@
"country": "Страна",
"dialANumber": "За влизане в срещата, наберете един от изброените номера и въведете кода.",
"dialInConferenceID": "Код:",
"dialInNotSupported": "Съжаляваме, обаждането в момента не се поддържа. ",
"dialInNotSupported": "Съжаляваме, обаждането в момента не се поддържа.",
"dialInNumber": "Тел:",
"dialInSummaryError": "Проблем при достъпа на информация за опциите за влизане през телефон. Моля опитайте отново по-късно.",
"dialInTollFree": "Безплатен",
@@ -353,7 +364,7 @@
},
"liveStreaming": {
"busy": "Работим върху това да освободим ресурси за излъчване. Моля, опитайте отново след няколко минути.",
"busyTitle": "Всички излъчватели в момента са заети.",
"busyTitle": "Всички излъчватели в момента са заети",
"changeSignIn": "Смяна на акаунти.",
"choose": "Изберете предаване на живо",
"chooseCTA": "Изберете опция за предаване. Влезли сте като {{email}}.",
@@ -379,7 +390,9 @@
"signOut": "Излизане",
"start": "Започни излъчване на живо",
"streamIdHelp": "Какво е това?",
"unavailableTitle": "Излъчването на живо е недостъпно"
"unavailableTitle": "Излъчването на живо е недостъпно",
"googlePrivacyPolicy": "Политика за поверителност на Google",
"youtubeTerms": "Условия за ползване на YouTube"
},
"localRecording": {
"clientState": {
@@ -437,7 +450,7 @@
"somebody": "Някой",
"startSilentTitle": "Влязохте с опция да не чувате аудио!",
"startSilentDescription": "Влезте повторно за да пуснете звука",
"suboptimalBrowserWarning": "Опасяваме се, че няма да можете да се насладите на срещата. Работим по въпроса, междувременно използвайте някой от <a href='static/recommendedBrowsers.html' target='_blank'>напълно поддържаните браузъри</a>.",
"suboptimalBrowserWarning": "Опасяваме се, че няма да можете да се насладите на срещата. Работим по въпроса, междувременно използвайте някой от <a href='static/recommendedBrowsers.html' target='_blank'>напълно поддържаните браузъри</a>.",
"suboptimalExperienceTitle": "Внимание",
"unmute": "Пускане на микрофона",
"newDeviceCameraTitle": "Засечена е нова камера",
@@ -464,7 +477,7 @@
"profile": {
"setDisplayNameLabel": "Задайте екранното си име",
"setEmailInput": "Въведете е-поща",
"setEmailLabel": "Задайте е-пощата си в „gravatar“",
"setEmailLabel": "Задайте е-пощата си в „Gravatar“",
"title": "Профил"
},
"raisedHand": "Иска думата",
@@ -476,7 +489,7 @@
"busyTitle": "Всички възможности за запис в момента са заети",
"error": "Грешка при опит за запис. Моля опитайте отново.",
"expandedOff": "Записът спря",
"expandedOn": "Срещата се записва в момента",
"expandedOn": "Срещата се записва в момента.",
"expandedPending": "Записът започва...",
"failedToStart": "Неуспешен опит за записване",
"fileSharingdescription": "Споделете записа с участниците в срещата",
@@ -519,7 +532,9 @@
"selectMic": "Микрофон",
"startAudioMuted": "Всички започват заглушени",
"startVideoMuted": "Всички започват скрити",
"title": "Настройки"
"title": "Настройки",
"speakers": "Говорители",
"microphones": "Микрофони"
},
"settingsView": {
"advanced": "Разширени",
@@ -598,7 +613,10 @@
"tileView": "Превключване на изглед галерия",
"toggleCamera": "Пускане/спиране на камера",
"videomute": "Пускане/спиране на видеото",
"videoblur": "Пускане/спиране на замъгляване на видеото"
"videoblur": "Пускане/спиране на замъгляване на видеото",
"toggleFilmstrip": "Превключи видео миниатюрите",
"muteEveryone": "Заглуши всички",
"moreOptions": "Покажи повече опции"
},
"addPeople": "Добавяне на участници в разговора",
"audioOnlyOff": "Спиране режима с нисък трафик",
@@ -626,7 +644,7 @@
"mute": "Спиране/пускане на микрофона",
"noAudioSignalTitle": "Няма сигнал идващ от микрофона!",
"noAudioSignalDesc": "Ако не сте спрели звука на устройството от системните настройки, сменете с друго устройство.",
"noAudioSignalDescSuggestion": "Ако не сте спрели звука на устройството от системните настройки, използвайте някое от следните устройства:",
"noAudioSignalDescSuggestion": "Ако не сте спрели звука на устройството от системните настройки, използвайте някое от предложените устройства.",
"openChat": "Отвори съобщенията",
"pip": "Пусни Картина-в-Картина",
"privateMessage": "Изпрати лично съобщение",
@@ -648,7 +666,13 @@
"toggleCamera": "Пускане/спиране на камера",
"videomute": "Пускане/спиране на камерата",
"startvideoblur": "Замъгли фона ми",
"stopvideoblur": "Спиране замъгляването на фона"
"stopvideoblur": "Спиране замъгляването на фона",
"noisyAudioInputDesc": "Изглежда доста шум идва от микрофона ви, заглушете го или сменете устройството.",
"noisyAudioInputTitle": "Изглежда е шумно около вас!",
"noAudioSignalDialInLinkDesc": "Номера за обаждане",
"noAudioSignalDialInDesc": "Може да влезнете чрез обаждане на:",
"muteEveryone": "Заглуши всички",
"moreOptions": "Повече опции"
},
"transcribing": {
"ccButtonTooltip": "Пускане / Спиране на субтитри",
@@ -714,7 +738,8 @@
"muted": "Изключен микрофон",
"remoteControl": "Отдалечено управление",
"show": "Покажи на главния екран",
"videomute": "Участник е спрял камерата си"
"videomute": "Участник е спрял камерата си",
"domuteOthers": "Заглушете всички останали"
},
"welcomepage": {
"accessibilityLabel": {
@@ -744,6 +769,19 @@
"roomnameHint": "Въведете името или връзката на стаята в която искате да влезете. Също може да си измислите име. Само го споделете с някой, за да може и той да въведе същото име за да се срещнете.",
"sendFeedback": "Изпращане на отзиви",
"terms": "Условия",
"title": "Сигурна, с много възможности, и напълно безплатна платформа за видео конференции"
"title": "Сигурна, с много възможности, и напълно безплатна платформа за видео конференции",
"getHelp": "Търсене на помощ"
},
"helpView": {
"header": "Място за помощ"
},
"lonelyMeetingExperience": {
"youAreAlone": "Вие сте сами в срещата",
"button": "Поканете участници"
},
"chromeExtensionBanner": {
"dontShowAgain": "Не показвай повече",
"buttonText": "Инсталирайте разширението за Chrome",
"installExtensionText": "Инсталирайте разширенията за Google Calendar и Office 365"
}
}
}

View File

@@ -22,7 +22,7 @@
"headphones": "Auriculars",
"phone": "Telèfon",
"speaker": "Altaveu",
"none": "No hi ha disponible cap aparell d'àudio "
"none": "No hi ha disponible cap aparell d'àudio"
},
"audioOnly": {
"audioOnly": "Poc ample de banda"
@@ -65,7 +65,7 @@
"dontShowAgain": "No m'ho mostris més"
},
"connectingOverlay": {
"joiningRoom": "S'està connectat a la reunió..."
"joiningRoom": "S'està connectat a la reunió"
},
"connection": {
"ATTACHED": "Adjunt",
@@ -77,9 +77,9 @@
"DISCONNECTED": "Desconnectat",
"DISCONNECTING": "S'està desconnectant",
"ERROR": "Error",
"FETCH_SESSION_ID": "S'està obtenint un identificador de sessió...",
"FETCH_SESSION_ID": "S'està obtenint un identificador de sessió",
"GET_SESSION_ID_ERROR": "S'ha produït un error en obtenir l'identificador de la sessió: {{code}}",
"GOT_SESSION_ID": "Obtenció d'identificador de sessió.... Fet",
"GOT_SESSION_ID": "Obtenció d'identificador de sessió Fet",
"LOW_BANDWIDTH": "S'ha apagat el vídeo de {{displayName}} per a estalviar ample de banda"
},
"connectionindicator": {
@@ -125,7 +125,7 @@
"downloadApp": "Baixa l'aplicació",
"launchWebButton": "Inicia al web",
"openApp": "Continua en l'aplicació",
"title": "S'està iniciant la reunió en {{app}}....",
"title": "S'està iniciant la reunió en {{app}}",
"tryAgainButton": "Torna-ho a intentar en l'escriptori"
},
"defaultLink": "p. ex. {{url}}",
@@ -160,9 +160,9 @@
"cameraUnsupportedResolutionError": "La vostra càmera no permet la resolució de vídeo requerida.",
"Cancel": "Cancel·la",
"close": "Tanca",
"conferenceDisconnectMsg": "Potser vulgueu comprovar la connexió a la xarxa. Es tornarà a connecta en {{seconds}} segons...",
"conferenceDisconnectMsg": "Potser vulgueu comprovar la connexió a la xarxa. Es tornarà a connecta en {{seconds}} segons",
"conferenceDisconnectTitle": "Esteu desconnectat.",
"conferenceReloadMsg": "Estem intentat de corregir-ho. Tornem a connectar en {{seconds}} segons...",
"conferenceReloadMsg": "Estem intentat de corregir-ho. Tornem a connectar en {{seconds}} segons",
"conferenceReloadTitle": "Malauradament, alguna cosa no ha anat bé.",
"confirm": "Confirmo",
"confirmNo": "No",
@@ -188,7 +188,7 @@
"inlineInstallExtension": "Instal·la-ho ara",
"internalError": "Vaja! Alguna cosa no ha anat bé. S'ha produït l'error següent: {{error}}",
"internalErrorTitle": "Error intern",
"kickMessage": "Per a més detalls, podeu contactar amb {{participantDisplayName}}.",
"kickMessage": "Per a més detalls, podeu contactar amb {{participantDisplayName}}.",
"kickParticipantButton": "Expulsa",
"kickParticipantDialog": "Esteu segur que voleu expulsar aquest participant?",
"kickParticipantTitle": "Voleu expulsar aquest participant?",
@@ -220,7 +220,7 @@
"muteParticipantDialog": "Esteu segur que voleu silenciar aquest participant? No podreu activar-li el micròfon, però sí que podrà fer-ho ell mateix en qualsevol moment.",
"muteParticipantTitle": "Voleu silenciar aquest participant?",
"Ok": "D'acord",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordLabel": "Un participant ha blocat la reunió. Introduïu una $t(lockRoomPassword) per a unirvos-hi.",
"passwordNotSupported": "No és possible definir una $t(lockRoomPassword).",
"passwordNotSupportedTitle": "No se suporta la $t(lockRoomPassword)",
"passwordRequired": "Es requereix una $t(lockRoomPassword)",
@@ -246,7 +246,7 @@
"retry": "Torna a intentar-ho",
"screenSharingFailedToInstall": "Vaja! No s'ha pogut instal·lar l'extensió de compartició de pantalla.",
"screenSharingFailedToInstallTitle": "No s'ha pogut instal·lar l'extensió de compartició de pantalla",
"screenSharingFirefoxPermissionDeniedError": "Alguna cosa no ha anat bé en intentar compartir la pantalla. Assegureu-vos que heu donat el permís per a fer-ho.",
"screenSharingFirefoxPermissionDeniedError": "Alguna cosa no ha anat bé en intentar compartir la pantalla. Assegureu-vos que heu donat el permís per a fer-ho. ",
"screenSharingFirefoxPermissionDeniedTitle": "Vaja! No hem pogut iniciar la compartició de pantalla!",
"screenSharingPermissionDeniedError": "Vaja! Alguna cosa no ha anat bé amb els permisos de l'extensió de compartició de pantalla. Torneu a carregar i intenteu-ho una altra vegada.",
"sendPrivateMessage": "Fa poc que heu rebut un missatge privat. Voleu respondre'l de forma privada, o voleu enviar el missatge al grup?",
@@ -264,13 +264,13 @@
"startLiveStreaming": "Inicia la transmissió en directe",
"startRecording": "Inicia l'enregistrament",
"startRemoteControlErrorMessage": "S'ha produït un error en intentar iniciar la sessió de control remot!",
"stopLiveStreaming": "Inicia la transmissió en directe",
"stopRecording": "Inicia l'enregistrament",
"stopRecordingWarning": "Esteu segur de voler iniciar l'enregistrament?",
"stopLiveStreaming": "Atura la transmissió en directe",
"stopRecording": "Atura l'enregistrament",
"stopRecordingWarning": "Esteu segur de voler aturar l'enregistrament?",
"stopStreamingWarning": "Esteu segur de voler aturar la transmissió en directe?",
"streamKey": "Clau de transmissió en directe",
"Submit": "Tramet",
"thankYou": "Gràcies per usar {{appName}}!",
"thankYou": "Gràcies per emprar {{appName}}!",
"token": "identificador",
"tokenAuthFailed": "No esteu autoritzat a unir-vos a aquesta trucada.",
"tokenAuthFailedTitle": "L'autenticació ha fallat",
@@ -279,9 +279,10 @@
"userPassword": "contrasenya d'usuari",
"WaitForHostMsg": "La conferència <b>{{room}}</b> encara no ha començat. Si en sou l'amfitrió autentiqueu-vos. Altrament, espereu que arribi l'amfitrió.",
"WaitForHostMsgWOk": "La conferència <b>{{room}}</b> encara no ha començat. Si sou l'amfitrió aleshores pitgeu «D'acord» per a autenticar-vos. Altrament, espereu que arribi l'amfitrió.",
"WaitingForHost": "S'està esperant l'amfitrió...",
"WaitingForHost": "S'està esperant l'amfitrió",
"Yes": "Sí",
"yourEntireScreen": "La pantalla sencera"
"yourEntireScreen": "La pantalla sencera",
"screenSharingAudio": "Comparteix l'àudio"
},
"dialOut": {
"statusMessage": "ara és {{status}}"
@@ -320,7 +321,7 @@
"genericError": "Vaja, alguna cosa no ha anat bé.",
"inviteLiveStream": "Per a veure la transmissió en directe d'aquesta reunió, feu clic en aquest enllaç: {{url}}",
"invitePhone": "Per a unir-vos per telèfon, toqueu això: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Esteu cercant un número de marcatge diferent?\nVegeu els números de marcatge de la reunió: {{url}}\n\n\nSi també truqueu via un telèfon de reunió, uniu-vos-hi sense connectar l'àudio: {{silentUrl}}",
"invitePhoneAlternatives": "Esteu cercant un número de marcatge diferent?\nVegeu els números de marcatge de la reunió: {{url}}\n\n\nSi també truqueu via un telèfon de reunió, uniu-vos-hi sense connectar l'àudio: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Us han convidat a unir-vos a una reunió.",
"inviteURLFirstPartPersonal": "{{name}} us convida a una reunió.\n",
"inviteURLSecondPart": "\nUniu-vos a la reunió:\n{{url}}\n",
@@ -378,7 +379,7 @@
"errorLiveStreamNotEnabled": "La transmissió en directe no està activada a ̣{{email}}. Activeu-la o inicieu sessió en un compte que tingui la transmissió en directe activada.",
"expandedOff": "S'ha aturat la transmissió en directe",
"expandedOn": "Ara mateix, la reunió s'està transmetent a Youtube.",
"expandedPending": "S'ha iniciat la transmissió en directe...",
"expandedPending": "S'ha iniciat la transmissió en directe",
"failedToStart": "No s'ha pogut iniciar la transmissió en directe",
"getStreamKeyManually": "No hem pogut obtenir cap transmissió en directe. Intenteu d'obtenir la clau de transmissió en directe del YouTube.",
"invalidStreamKey": "La clau de transmissió en directe pot ser incorrecta.",
@@ -386,7 +387,7 @@
"offBy": "{{name}} ha aturat la transmissió en directe",
"on": "Transmissió en directe",
"onBy": "{{name}} ha iniciat la transmissió en directe",
"pending": "S'està iniciant la transmissió en directe...",
"pending": "S'està iniciant la transmissió en directe",
"serviceName": "Servei de transmissió en directe",
"signedInAs": "Teniu sessió iniciada com a:",
"signIn": "Inicia sessió amb Google",
@@ -394,7 +395,9 @@
"signOut": "Tanca la sessió",
"start": "Inicia la transmissió en directe",
"streamIdHelp": "Què és això?",
"unavailableTitle": "La transmissió en directe no és disponible"
"unavailableTitle": "La transmissió en directe no és disponible",
"googlePrivacyPolicy": "Política de privadesa de Google",
"youtubeTerms": "Condicions de servei del Youtube"
},
"localRecording": {
"clientState": {
@@ -448,7 +451,7 @@
"mutedRemotelyDescription": "Sempre podeu activar el micròfon quan hàgiu de parlar. Torneu a silenciar-lo quan hàgiu acabat per a mantenir el soroll lluny de la reunió.",
"passwordRemovedRemotely": "Un altre participant ha suprimit $t(lockRoomPasswordUppercase)",
"passwordSetRemotely": "Un altre participant ha establert la $t(lockRoomPassword)",
"raisedHand": " {{name}} vol parlar.",
"raisedHand": "{{name}} vol parlar.",
"somebody": "Algú",
"startSilentTitle": "Us hi heu unit sense cap sortida d'àudio!",
"startSilentDescription": "Torneu a entrar per a activar l'àudio",
@@ -464,9 +467,9 @@
"poweredby": "funciona amb",
"presenceStatus": {
"busy": "Ocupat",
"calling": "S'està trucant...",
"calling": "S'està trucant",
"connected": "Connectat",
"connecting": "Està connectant...",
"connecting": "Està connectant",
"connecting2": "Està connectant*...",
"disconnected": "Desconnectat",
"expired": "Ha expirat",
@@ -507,7 +510,7 @@
"serviceName": "Servei d'enregistrament",
"signIn": "Inicia la sessió",
"signOut": "Tanca la sessió",
"unavailable": "Vaja! El servei {{serviceName}} ara mateix no és disponible. Treballem per a resoldre el problema. Torneu-ho a intentar més tard.",
"unavailable": "Vaja! El servei {{serviceName}} ara mateix no és disponible. Treballem per a resoldre el problema. Torneu-ho a intentar més tard.",
"unavailableTitle": "L'enregistrament no és disponible"
},
"sectionList": {
@@ -534,7 +537,9 @@
"selectMic": "Micròfon",
"startAudioMuted": "Tothom comença silenciat",
"startVideoMuted": "Tothom comença amagat",
"title": "Configuració"
"title": "Configuració",
"speakers": "Altaveus",
"microphones": "Micròfons"
},
"settingsView": {
"advanced": "Avançat",
@@ -556,7 +561,7 @@
"version": "Versió"
},
"share": {
"dialInfoText": "\n\n=====\n\nNomés voleu marcar en el telèfon?\n\n{{defaultDialInNumber}}Feu clic en aquest enllaç per a veure el marcatge de números de telèfon per a aquesta reunió{{dialInfoPageUrl}}",
"dialInfoText": "\n\n=====\n\nNomés voleu marcar en el telèfon?\n\n{{defaultDialInNumber}}Feu clic en aquest enllaç per a veure el marcatge de números de telèfon per a aquesta reunió\n{{dialInfoPageUrl}}",
"mainText": "Feu clic a l'enllaç següent per a unir-vos a la reunió:\n{{roomUrl}}"
},
"speaker": "Altaveu",
@@ -569,7 +574,8 @@
"speakerTime": "Temps de l'interlocutor"
},
"startupoverlay": {
"title": "{{app}} requereix usar el micròfon i la càmera."
"title": "{{app}} requereix usar el micròfon i la càmera.",
"policyText": " "
},
"suspendedoverlay": {
"rejoinKeyTitle": "Torna a entrar",
@@ -614,7 +620,8 @@
"tileView": "Activa o desactiva el mode mosaic",
"toggleCamera": "Activa o desactiva la càmera",
"videomute": "Activa o desactiva el vídeo",
"videoblur": "Activa o desactiva el difuminat"
"videoblur": "Activa o desactiva el difuminat",
"toggleFilmstrip": "Activa o desactiva la tira"
},
"addPeople": "Afegeix persones a la trucada",
"audioOnlyOff": "Desactiva el mode de poc ample de banda",
@@ -646,7 +653,7 @@
"noAudioSignalDesc": "Si no l'heu silenciat intencionadament en la configuració del sistema o per maquinari, considereu canviar l'aparell.",
"noAudioSignalDescSuggestion": "Si no l'heu silenciat intencionadament en la configuració del sistema o per maquinari, considereu canviar a l'aparell suggerit.",
"noAudioSignalDialInDesc": "També podeu marcar usant:",
"noAudioSignalDialInLinkDesc" : "Números de marcatge",
"noAudioSignalDialInLinkDesc": "Números de marcatge",
"noisyAudioInputTitle": "Sembla que el micròfon fa soroll!",
"noisyAudioInputDesc": "Sembla que el vostre micròfon fa soroll, considereu de silenciar-lo o canviar l'aparell.",
"openChat": "Obre el xat",
@@ -679,7 +686,7 @@
"failedToStart": "No s'ha pogut iniciar la transcripció",
"labelToolTip": "La reunió s'està transcrivint",
"off": "La transcripció s'ha aturat",
"pending": "S'està preparant per a enregistrar la reunió...",
"pending": "S'està preparant per a enregistrar la reunió",
"start": "Activa els subtítols",
"stop": "Desactiva els subtítols",
"tr": "TR"
@@ -719,7 +726,7 @@
"ldTooltip": "Vídeo en baixa definició",
"lowDefinition": "Baixa definició",
"onlyAudioAvailable": "Només hi ha disponible l'àudio",
"onlyAudioSupported": "Només es permet àudio en aquest navegador",
"onlyAudioSupported": "Només es permet àudio en aquest navegador.",
"p2pEnabled": "Mode d'igual a igual activat",
"p2pVideoQualityDescription": "En el mode d'igual a igual, la qualitat del vídeo rebut només es pot canviar entre alta i només àudio. La resta de configuracions no es compliran fins sortir del mode d'igual a igual.",
"recHighDefinitionOnly": "L'alta definició serà preferent.",
@@ -744,7 +751,7 @@
"join": "Toqueu per a unir-vos-hi",
"roomname": "Introduïu el nom de la sala"
},
"appDescription": "Endavant, xat de vídeo amb tot l'equip. De fet, convideu tothom que conegueu. {{app}} és una solució de videoconferència de codi obert 100% completament xifrada que podeu utilitzar durant tot el dia, tots els dies, gratuïtament, sense necessitat de compte.",
"appDescription": "Endavant, xat de vídeo amb tot l'equip. De fet, convideu tothom que conegueu. {{app}} és una solució de videoconferència de codi obert 100% completament xifrada que podeu utilitzar durant tot el dia, tots els dies, gratuïtament, sense necessitat de compte.",
"audioVideoSwitch": {
"audio": "Veu",
"video": "Vídeo"
@@ -767,10 +774,14 @@
"roomnameHint": "Introduïu el nom o l'URL de la sala on voleu entrar. Podeu crear un nom, només cal que les persones amb qui us reuniu el coneguin i introdueixin el mateix nom.",
"sendFeedback": "Envia comentaris",
"terms": "Condicions",
"title": "Videoconferència segura, plena de funcionalitats i completament gratuïta i lliure"
"title": "Videoconferència segura, plena de funcionalitats i completament gratuïta i lliure",
"getHelp": "Ajuda"
},
"lonelyMeetingExperience": {
"button": "Convideu altres persones",
"youAreAlone": "Sou l'únic participant de la reunió"
},
"helpView": {
"header": "Centre d'ajuda"
}
}

View File

@@ -1,86 +1,99 @@
{
"addPeople": {
"add": "",
"countryNotSupported": "",
"countryReminder": "",
"disabled": "",
"failedToAdd": "",
"footerText": "",
"loading": "",
"loadingNumber": "",
"loadingPeople": "",
"noResults": "",
"noValidNumbers": "",
"searchNumbers": "",
"searchPeople": "",
"searchPeopleAndNumbers": "",
"telephone": "",
"title": ""
"add": "Pozvat",
"countryNotSupported": "Toto místo zatím nepodporujeme.",
"countryReminder": "Voláte mimo USA? Nezapomeňte začít kódem své země!",
"disabled": "Nemůžete pozvat lidi.",
"failedToAdd": "Nepodařilo se přidat účastníky",
"footerText": "Vytáčení je zakázáno.",
"loading": "Hledání lidí a telefonních čísel",
"loadingNumber": "Ověření telefonního čísla",
"loadingPeople": "Hledání lidí pro pozvání",
"noResults": "Žádné odpovídající výsledky vyhledávání",
"noValidNumbers": "Zadejte telefonní číslo",
"searchNumbers": "Přidat telefonní čísla",
"searchPeople": "Hledat lidi",
"searchPeopleAndNumbers": "Hledat lidi nebo přidat jejich telefonní čísla",
"telephone": "Telefonní číslo: {{number}}",
"title": "Pozvěte lidi na toto setkání"
},
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Sluchátka",
"phone": "Telefon",
"speaker": "Řečník"
"speaker": "Reproduktor",
"none": "Nejsou k dispozici žádná zvuková zařízení"
},
"audioOnly": {
"audioOnly": "Pouze zvuk"
"audioOnly": "Nízká přenosová rychlost"
},
"calendarSync": {
"addMeetingURL": "",
"confirmAddLink": "",
"addMeetingURL": "Přidejte odkaz na schůzku",
"confirmAddLink": "Chcete k této události přidat odkaz Jitsi?",
"error": {
"appConfiguration": "",
"generic": "",
"notSignedIn": ""
"appConfiguration": "Integrace kalendáře není správně nakonfigurována.",
"generic": "Došlo k chybě. Zkontrolujte nastavení kalendáře nebo zkuste aktualizovat kalendář.",
"notSignedIn": "Při ověřování k zobrazení kalendářových událostí došlo k chybě. Zkontrolujte prosím nastavení kalendáře a zkuste se znovu přihlásit."
},
"join": "",
"joinTooltip": "",
"nextMeeting": "",
"noEvents": "",
"ongoingMeeting": "",
"permissionButton": "",
"permissionMessage": "",
"refresh": "",
"today": ""
"join": "Připojit se",
"joinTooltip": "Připojit se k videohovoru",
"nextMeeting": "další videohovor",
"noEvents": "Nejsou naplánovány žádné události.",
"ongoingMeeting": "současný videohovor",
"permissionButton": "Otevřít nastavení",
"permissionMessage": "K zobrazení videohovorů v aplikaci je potřeba oprávnění Kalendář.",
"refresh": "Obnovit kalendář",
"today": "Dnes"
},
"chat": {
"error": "",
"messagebox": "Prostor pro zprávu",
"error": "Chyba: vaše zpráva nebyla odeslána. Důvod: {{error}}",
"messagebox": "Napište zprávu",
"nickname": {
"popover": "Zvolte si přezdívku",
"title": ""
"title": "K zahájení chatu vložte přezdívku"
},
"title": ""
"title": "Chat",
"fieldPlaceHolder": "Zde napište svou zprávu",
"messageTo": "Soukromá zpráva pro {{recipient}}",
"you": "vy",
"privateNotice": "Soukromá zpráva pro {{recipient}}",
"noMessagesMessage": "V tomto videohovoru ještě nejsou žádné zprávy. Začněte konverzaci!"
},
"connectingOverlay": {
"joiningRoom": ""
"joiningRoom": "Probíhá připojování k videohovoru..."
},
"connection": {
"ATTACHED": "",
"AUTHENTICATING": "Ověřit",
"AUTHFAIL": "",
"CONNECTED": "",
"CONNECTING": "Připoje:",
"CONNFAIL": "",
"DISCONNECTED": "odpojeno",
"DISCONNECTING": "odpojeno",
"ERROR": "",
"RECONNECTING": ""
"ATTACHED": "Přiložený",
"AUTHENTICATING": "Ověřování",
"AUTHFAIL": "Ověřování selhalo",
"CONNECTED": "Připojeno",
"CONNECTING": "Připojování",
"CONNFAIL": "Připojení selhalo",
"DISCONNECTED": "Odpojeno",
"DISCONNECTING": "Odpojování",
"ERROR": "Chyba",
"RECONNECTING": "",
"LOW_BANDWIDTH": "Video pro {{displayName}} bylo vypnuto pro snížení přenosové rychlosti",
"GOT_SESSION_ID": "Získávání session-id... Hotovo",
"GET_SESSION_ID_ERROR": "Chyba při získávání session-id: {{code}}",
"FETCH_SESSION_ID": "Získává se session-id..."
},
"\u0005connection": {},
"connectionindicator": {
"address": "Adresa:",
"bandwidth": "Odhadovaná šířka pásma:",
"bitrate": "Přenosová rychlost:",
"bridgeCount": "Počet serverů:",
"connectedTo": "",
"bridgeCount": "Počet serverů: ",
"connectedTo": "Připojeno k:",
"framerate": "Rychlost snímkování:",
"less": "Zobrazit méně",
"localaddress": "Místní adresa:",
"localaddress_0": "Místní adresa:",
"localaddress_1": "Místní adresy:",
"localaddress_2": "Místní adresy:",
"localaddress_plural_2": "Místní adresy:",
"localaddress_plural_5": "Místních adres:",
"localport": "Místní port:",
"localport_0": "Místní port:",
"localport_1": "Místní porty:",
"localport_2": "Místní porty:",
"localport_plural_2": "Místní porty:",
"localport_plural_5": "Místních portů:",
"more": "Zobrazit více",
@@ -92,33 +105,40 @@
"nonoptimal": "Není optimální",
"poor": "Slabý"
},
"remoteaddress": "Vzdálená adresa:",
"remoteaddress_0": "Vzdálená adresa:",
"remoteaddress_1": "Vzdálené adresy:",
"remoteaddress_2": "Vzdálené adresy:",
"remoteaddress_plural_2": "Vzdálené adresy:",
"remoteaddress_plural_5": "Vzdálených adres:",
"remoteport": "Vzdálený port:",
"remoteport_0": "Vzdálený port:",
"remoteport_1": "Vzdálené porty:",
"remoteport_2": "Vzdálené porty:",
"remoteport_plural_2": "Vzdálené porty:",
"remoteport_plural_5": "Vzdálených portů:",
"resolution": "Rozlišení:",
"status": "Připojení:",
"transport": "Přenos:",
"transport_0": "Přenos:",
"transport_1": "Přenosy:",
"transport_2": "Přenosy:",
"transport_plural_2": "Přenosy:",
"transport_plural_5": "Přenosů:",
"turn": "(otočit)"
"turn": "(otočit)",
"e2e_rtt": "E2E RTT:"
},
"dateUtils": {
"earlier": "",
"today": "",
"yesterday": ""
"earlier": "Dříve",
"today": "Dnes",
"yesterday": "Včera"
},
"deepLinking": {
"appNotInstalled": "",
"description": "",
"descriptionWithoutWeb": "",
"appNotInstalled": "Pro připojení k tomuto videohovoru potřebujete mít na svém telefonu aplikaci {{app}}.",
"description": "Nic se nestalo? Zkusili jsme spustit videohovor v desktopové aplikaci {{app}}. Zkuste to znovu nebo spusťte webovou aplikaci {{app}}.",
"descriptionWithoutWeb": "Nic se nestalo? Zkusili jsme spustit videohovor v desktopové aplikaci {{app}}.",
"downloadApp": "Stažení aplikace",
"launchWebButton": "",
"openApp": "",
"title": "",
"tryAgainButton": ""
"launchWebButton": "Spustit na webu",
"openApp": "Pokračovat do aplikace",
"title": "Spustit videohovor v {{app}}...",
"tryAgainButton": "Zkusit znovu na desktopu"
},
"defaultLink": "např. {{url}}",
"deviceError": {
@@ -135,115 +155,115 @@
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": ""
"liveStreaming": "Živý stream"
},
"allow": "Povolit",
"alreadySharedVideoMsg": "",
"alreadySharedVideoTitle": "",
"applicationWindow": "",
"Back": "",
"cameraConstraintFailedError": "",
"cameraNotFoundError": "",
"cameraNotSendingData": "",
"cameraNotSendingDataTitle": "",
"cameraPermissionDeniedError": "",
"cameraUnknownError": "",
"cameraUnsupportedResolutionError": "",
"alreadySharedVideoMsg": "Video už sdílí jiný účastník. Tato konference umožňuje sdílet jen jedno video současně.",
"alreadySharedVideoTitle": "Je povoleno jen jedno sdílené video",
"applicationWindow": "Okno aplikace",
"Back": "Zpět",
"cameraConstraintFailedError": "Vaše kamera nesplňuje některé požadované parametry.",
"cameraNotFoundError": "Kamera nebyla nalezena.",
"cameraNotSendingData": "Nelze přistupovat ke kameře. Zkontrolujte prosím, zda ji už nepoužívá jiná aplikace, vyberte jiné zařízení v nabídce nastavení nebo zkuste aplikaci znovu načíst.",
"cameraNotSendingDataTitle": "Nelze přistupovat ke kameře",
"cameraPermissionDeniedError": "Neudělili jste oprávnění k použití kamery. Můžete se sice připojit ke konferenci, ale ostatní vás neuvidí. Opravíte to stiskem tlačítka kamery v adresním řádku.",
"cameraUnknownError": "Z neznámého důvodu nelze používat kameru.",
"cameraUnsupportedResolutionError": "Vaše kamera nepodporuje požadované rozlišení obrazu.",
"Cancel": "Storno",
"close": "Zavřít",
"conferenceDisconnectMsg": "Možná byste měli zkontrolovat připojení k síti. Znovu se připojíte za {{seconds}} s...",
"conferenceDisconnectTitle": "Byl jste odhlášen.",
"conferenceReloadMsg": "Pokoušíme se to opravit. Znovu se připojíte za {{seconds}} s...",
"conferenceReloadMsg": "Pokoušíme se to opravit. Znovu se připojíte za {{seconds}} s...",
"conferenceReloadTitle": "Bohužel, něco se pokazilo.",
"confirm": "",
"confirmNo": "",
"confirmYes": "",
"confirm": "Potvrdit",
"confirmNo": "Ne",
"confirmYes": "Ano",
"connectError": "Jejda! Něco se pokazilo a do konference se nepodařilo připojit.",
"connectErrorWithMsg": "Jejda! Něco se pokazilo a do konference se nepodařilo připojit: {{msg}}",
"connecting": "Připojení:",
"connecting": "Připojení",
"contactSupport": "Kontaktovat podporu",
"copy": "Kopírovat",
"dismiss": "OK",
"displayNameRequired": "",
"displayNameRequired": "Ahoj! Jak se jmenuješ?",
"done": "Hotovo",
"enterDisplayName": "",
"error": "",
"externalInstallationMsg": "",
"externalInstallationTitle": "",
"goToStore": "",
"gracefulShutdown": "",
"IamHost": "",
"incorrectRoomLockPassword": "",
"enterDisplayName": "Vložte prosím své jméno",
"error": "Chyba",
"externalInstallationMsg": "Je potřeba nainstalovat rozšíření pro sdílení plochy.",
"externalInstallationTitle": "Požadováno rozšíření",
"goToStore": "Jít do webového obchodu",
"gracefulShutdown": "Naše služba je nyní mimo provoz kvůli údržbě. Zkuste to prosím znovu později.",
"IamHost": "Jsem hostitel",
"incorrectRoomLockPassword": "Chybné heslo",
"incorrectPassword": "Uživatelské jméno nebo heslo není správně",
"inlineInstallationMsg": "",
"inlineInstallExtension": "",
"inlineInstallationMsg": "Je potřeba nainstalovat rozšíření pro sdílení plochy.",
"inlineInstallExtension": "Nainstalovat",
"internalError": "Jejda! Něco se pokazilo. Objevila se následující chyba: {{error}}",
"internalErrorTitle": "Vnitřní chyba",
"kickMessage": "",
"kickParticipantButton": "",
"kickParticipantDialog": "",
"kickParticipantTitle": "",
"kickTitle": "",
"liveStreaming": "",
"liveStreamingDisabledForGuestTooltip": "",
"kickMessage": "Pro více informací můžete kontaktovat {{participantDisplayName}}.",
"kickParticipantButton": "Vyhodit",
"kickParticipantDialog": "Opravdu chcete vyhodit tohoto účastníka?",
"kickParticipantTitle": "Vyhodit tohoto účastníka?",
"kickTitle": "Au! {{participantDisplayName}} vás vyhodil z videohovoru",
"liveStreaming": "Živý streaming",
"liveStreamingDisabledForGuestTooltip": "Hosté nemohou spustit živý streaming.",
"liveStreamingDisabledTooltip": "",
"lockMessage": "Konferenci se nepodařilo uzamknout.",
"lockRoom": "",
"lockRoom": "Přidat videohovor $t(lockRoomPasswordUppercase)",
"lockTitle": "Zamknutí selhalo",
"logoutQuestion": "Jste si jistí, že se chcete odhlásit a ukončit konferenci?",
"logoutTitle": "Odhlásit",
"maxUsersLimitReached": "",
"maxUsersLimitReachedTitle": "",
"micConstraintFailedError": "",
"micNotFoundError": "",
"micNotSendingData": "",
"micNotSendingDataTitle": "",
"micPermissionDeniedError": "",
"micUnknownError": "",
"maxUsersLimitReached": "Byl dosažen limit počtu účastníků. Konference je plná. Kontaktujte prosím vlastníka videohovoru nebo to zkuste znovu později!",
"maxUsersLimitReachedTitle": "Dosažen limit počtu účastníků",
"micConstraintFailedError": "Váš mikrofon nesplňuje některé požadované parametry.",
"micNotFoundError": "Mikrofon nebyl nalezen.",
"micNotSendingData": "Jít do nastavení počítače, zapnout mikrofon a nastavit jeho citlivost",
"micNotSendingDataTitle": "Váš mikrofon je vypnutý v nastavení systému",
"micPermissionDeniedError": "Neudělili jste oprávnění pro použití mikrofonu. Můžete se sice připojit ke konferenci, ale ostatní vás neuslyší. Opravíte to stiskem tlačítka kamery v adresním řádku.",
"micUnknownError": "Z neznámého důvodu nelze použít mikrofon.",
"muteParticipantBody": "",
"muteParticipantButton": "Ztlumený zvuk",
"muteParticipantDialog": "",
"muteParticipantTitle": "",
"muteParticipantTitle": "Umlčet tohoto účastníka?",
"Ok": "Ok",
"passwordLabel": "",
"passwordNotSupported": "Nastavení hesla pro konferenci není podporováno.",
"passwordNotSupportedTitle": "",
"passwordRequired": "",
"passwordNotSupported": "Nastavení konference $t(lockRoomPassword) není podporováno.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) není podporováno",
"passwordRequired": "Požadováno $t(lockRoomPasswordUppercase)",
"popupError": "Váš prohlížeč blokuje vyskakovací okna. V nastavení zabezpečení prosím povolte vyskakování oken a zkuste to znovu.",
"popupErrorTitle": "Vyskakovací okno je zablokované",
"recording": "",
"recordingDisabledForGuestTooltip": "",
"recordingDisabledTooltip": "",
"recording": "Záznam",
"recordingDisabledForGuestTooltip": "Hosté nemohou spustit záznam.",
"recordingDisabledTooltip": "Zahájení záznamu vypnuto.",
"rejoinNow": "Znovu se připojit",
"remoteControlAllowedMessage": "",
"remoteControlDeniedMessage": "",
"remoteControlErrorMessage": "",
"remoteControlRequestMessage": "",
"remoteControlShareScreenWarning": "",
"remoteControlStopMessage": "",
"remoteControlTitle": "",
"remoteControlAllowedMessage": "{{user}} přijal(a) vaši žádost o dálkové ovládání!",
"remoteControlDeniedMessage": "{{user}} odmítl(a) vaši žádost o dálkové ovládání!",
"remoteControlErrorMessage": "Při požadavku na oprávnění k dálkového ovládání od {{user}} došlo k chybě!",
"remoteControlRequestMessage": "Umožníte {{user}} dálkově ovládat váš počítač?",
"remoteControlShareScreenWarning": "Nezapomeňte, že stiskem \"Povolit\" budete sdílet svou obrazovku!",
"remoteControlStopMessage": "Relace dálkového ovládání skončila!",
"remoteControlTitle": "Dálkové ovládání počítače",
"Remove": "Odstranit",
"removePassword": "Zrušit heslo",
"removeSharedVideoMsg": "",
"removeSharedVideoTitle": "",
"reservationError": "",
"reservationErrorMsg": "",
"removePassword": "Odstranit $t(lockRoomPassword)",
"removeSharedVideoMsg": "Opravdu chcete odstranit sdílené video?",
"removeSharedVideoTitle": "Odstranit sdílené video",
"reservationError": "Systémová chyba rezervace",
"reservationErrorMsg": "Chyba: {{code}}, zpráva: {{msg}}",
"retry": "Opakovat",
"screenSharingFailedToInstall": "Doplněk pro sdílení obrazovky se nepodařilo nainstalovat",
"screenSharingFailedToInstall": "Doplněk pro sdílení obrazovky se nepodařilo nainstalovat.",
"screenSharingFailedToInstallTitle": "Doplněk pro sdílení obrazovky se nepodařilo nainstalovat",
"screenSharingFirefoxPermissionDeniedError": "",
"screenSharingFirefoxPermissionDeniedTitle": "",
"screenSharingPermissionDeniedError": "",
"serviceUnavailable": "",
"serviceUnavailable": "Služba není dostupná",
"sessTerminated": "Volání ukončeno",
"Share": "Sdílet",
"shareVideoLinkError": "Zadejte prosím správný odkaz na youtube video.",
"shareVideoTitle": "Sdílet obraz",
"shareYourScreen": "Sdílet obrazovku",
"shareYourScreenDisabled": "",
"shareYourScreenDisabledForGuest": "",
"startLiveStreaming": "",
"startRecording": "",
"shareYourScreenDisabled": "Sdílení obrazovky vypnuto.",
"shareYourScreenDisabledForGuest": "Hosté nemohou sdílet obrazovku.",
"startLiveStreaming": "Spustit živý stream",
"startRecording": "Spustit záznam",
"startRemoteControlErrorMessage": "",
"stopLiveStreaming": "",
"stopRecording": "",
@@ -254,79 +274,85 @@
"thankYou": "Děkujeme, že používáte {{appName}}!",
"token": "token",
"tokenAuthFailed": "Bohužel nemáte povoleno se k tomuto volání připojit.",
"tokenAuthFailedTitle": "",
"tokenAuthFailedTitle": "Ověření selhalo",
"transcribing": "",
"unlockRoom": "",
"unlockRoom": "Odstranit videohovor $t(lockRoomPassword)",
"userPassword": "uživatelské heslo",
"WaitForHostMsg": "",
"WaitForHostMsgWOk": "",
"WaitingForHost": "",
"Yes": "",
"yourEntireScreen": ""
"Yes": "Ano",
"yourEntireScreen": "Celá vaše obrazovka",
"sendPrivateMessageTitle": "Poslat soukromě?",
"sendPrivateMessageOk": "Poslat soukromě",
"sendPrivateMessageCancel": "Poslat do skupiny",
"sendPrivateMessage": "Nedávno vám přišla soukromá zpráva. Chcete na ni odpovědět soukromě, nebo chcete poslat zprávu do skupiny?",
"screenSharingAudio": "Sdílet zvuk",
"muteEveryoneStartMuted": "Nyní jsou všichni umlčeni",
"muteEveryoneTitle": "Umlčet všechny?",
"muteEveryoneElseTitle": "Umlčet všechny kromě {{whom}}?"
},
"\u0005dialog": {},
"dialOut": {
"statusMessage": ""
"statusMessage": "je nyní {{status}}"
},
"feedback": {
"average": "",
"bad": "",
"detailsLabel": "",
"good": "",
"rateExperience": "",
"veryBad": "",
"veryGood": ""
"average": "Průměrná",
"bad": "Špatná",
"detailsLabel": "Řekněte nám o tom víc.",
"good": "Dobrá",
"rateExperience": "Ohodnoťte svoji zkušenost s videohovorem",
"veryBad": "Velmi špatná",
"veryGood": "Velmi dobrá"
},
"incomingCall": {
"answer": "",
"audioCallTitle": "",
"answer": "Odpovědět",
"audioCallTitle": "Příchozí hovor",
"decline": "OK",
"productLabel": "",
"videoCallTitle": ""
"productLabel": "od Jitsi Meet",
"videoCallTitle": "Příchozí videohovor"
},
"info": {
"accessibilityLabel": "Více info",
"addPassword": "Nastavit heslo",
"cancelPassword": "Zrušit heslo",
"addPassword": "Přidat $t(lockRoomPassword)",
"cancelPassword": "Zrušit $t(lockRoomPassword)",
"conferenceURL": "Odkaz:",
"country": "Země",
"dialANumber": "",
"dialInConferenceID": "",
"dialInNotSupported": "",
"dialANumber": "Pro připojení k videohovoru vytočte tato čísla a vložte PIN.",
"dialInConferenceID": "PIN:",
"dialInNotSupported": "Omlouváme se, ale vytáčení není nyní podporováno.",
"dialInNumber": "",
"dialInSummaryError": "",
"dialInTollFree": "",
"dialInTollFree": "Zdarma",
"genericError": "Ups, něco se pokazilo.",
"inviteLiveStream": "K zobrazení živého vysílání tohoto meetingu, klikněte na tento odkaz: {{url}}",
"invitePhone": "One tap audio Dial In: {{number}},,{{conferenceID}}#",
"invitePhone": "Pro připojení telefonicky použijte: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "",
"inviteURLFirstPartGeneral": "",
"inviteURLFirstPartGeneral": "Připojte se k meetingu.",
"inviteURLFirstPartPersonal": "",
"inviteURLSecondPart": "",
"liveStreamURL": "Živé vysílání:",
"moreNumbers": "More numbers",
"noNumbers": "No dial-in numbers.",
"moreNumbers": "Více čísel",
"noNumbers": "Žádná čísla pro připojení po telefonu.",
"noPassword": "Bez hesla",
"noRoom": "No room was specified to dial-in into.",
"numbers": "Dial-in Numbers",
"password": "Heslo:",
"noRoom": "Nebyla vybrána místnost pro připojení po telefonu.",
"numbers": "Čísla pro připojení telefonicky",
"password": "$t(lockRoomPasswordUppercase):",
"title": "Sdílet",
"tooltip": "Sdílet odkaz k tomuto meetingu",
"label": "Informace o meetingu"
},
"\u0005info": {},
"inviteDialog": {
"alertText": "",
"header": "",
"searchCallOnlyPlaceholder": "",
"searchPeopleOnlyPlaceholder": "",
"searchPlaceholder": "",
"send": ""
"alertText": "Pozvání některých účastníků selhalo.",
"header": "Pozvat",
"searchCallOnlyPlaceholder": "Vložte telefonní číslo",
"searchPeopleOnlyPlaceholder": "Hledat účastníky",
"searchPlaceholder": "Účastník nebo telefonní číslo",
"send": "Odeslat"
},
"inlineDialogFailure": {
"msg": "",
"retry": "",
"support": "",
"retry": "Zkusit znovu",
"support": "Podpora",
"supportMsg": ""
},
"keyboardShortcuts": {
@@ -343,9 +369,9 @@
"toggleFilmstrip": "Zobrazit / Skrýt videonáhledy účastníků",
"toggleScreensharing": "Přepnutí mezi kamerou a sdílením obrazovky",
"toggleShortcuts": "Zobrazení / Skrytí klávesových zkratek",
"videoMute": "Spuštění / Vypnutí vaší kamery"
"videoMute": "Spuštění / Vypnutí vaší kamery",
"videoQuality": "Spravovat kvalitu hovoru"
},
"\u0005keyboardShortcuts": {},
"liveStreaming": {
"busy": "",
"busyTitle": "",
@@ -366,25 +392,25 @@
"on": "",
"pending": "",
"serviceName": "",
"signedInAs": "",
"signIn": "",
"signInCTA": "",
"signOut": "",
"signedInAs": "Nyní jste přihlášen(a) jako:",
"signIn": "Přihlásit se účtem Google",
"signInCTA": "Přihlaste se nebo vložte svůj klíč ze služby YouTube.",
"signOut": "Odhlásit se",
"start": "",
"streamIdHelp": "",
"streamIdHelp": "Co je tohle?",
"unavailableTitle": ""
},
"localRecording": {
"clientState": {
"off": "",
"on": "",
"unknown": ""
"off": "Vyp",
"on": "Zap",
"unknown": "Neznámý"
},
"dialogTitle": "",
"duration": "",
"durationNA": "",
"encoding": "",
"label": "",
"dialogTitle": "Ovládání místních záznamů",
"duration": "Doba trvání",
"durationNA": "N/A",
"encoding": "Kódování",
"label": "LOR",
"labelToolTip": "",
"localRecording": "",
"me": "Já",
@@ -395,13 +421,13 @@
"notModerator": ""
},
"moderator": "Moderátor",
"no": "",
"participant": "",
"no": "Ne",
"participant": "Účastník",
"participantStats": "Zobrazit statistiku účastníků",
"sessionToken": "",
"start": "",
"stop": "",
"yes": ""
"start": "Spustit záznam",
"stop": "Zastavit záznam",
"yes": "Ano"
},
"lockRoomPassword": "heslo",
"lockRoomPasswordUppercase": "Heslo",
@@ -433,13 +459,12 @@
"suboptimalExperienceDescription": "Sakra... všimli jsme si, že vaše zkušenost s {{appName}} není úplně skvělá. Hledáme cesty, jak bychom to mohli zlepšit. Než se tak stane, vyzkoušejte některý z <a href='static/recommendedBrowsers.html' target='_blank'>plně podporovaných prohlížečů</a>.",
"suboptimalExperienceTitle": "Varování prohlížeče",
"unmute": "",
"newDeviceCameraTitle": "",
"newDeviceAudioTitle": "",
"newDeviceAction": ""
"newDeviceCameraTitle": "Detekována nová kamera",
"newDeviceAudioTitle": "Detekováno nové zvukové zařízení",
"newDeviceAction": "Použít"
},
"\u0005notify": {},
"passwordSetRemotely": "",
"passwordDigitsOnly": "",
"passwordSetRemotely": "nastaveno jiným účastníkem",
"passwordDigitsOnly": "Až {{number}} číslic",
"poweredby": "Poháněno",
"presenceStatus": {
"busy": "Obsazeno",
@@ -455,17 +480,16 @@
"rejected": "Odmítnuto",
"ringing": "Zvoní..."
},
"\u0005presenceStatus": {},
"profile": {
"setDisplayNameLabel": "Nastavte si jméno",
"setEmailInput": "Zadejte e-mail",
"setEmailLabel": "Nastavte si email vašeho gravataru",
"setEmailLabel": "Nastavte si e-mail vašeho Gravataru",
"title": "Profil"
},
"recording": {
"authDropboxText": "",
"availableSpace": "",
"beta": "",
"authDropboxText": "Nahrát na Dropbox",
"availableSpace": "Dostupný prostor: {{spaceLeft}} MB (přibližně {{duration}} minut záznamu)",
"beta": "BETA",
"busy": "",
"busyTitle": "",
"error": "",
@@ -494,7 +518,7 @@
"calendar": {
"about": "",
"disconnect": "odpojeno",
"microsoftSignIn": "",
"microsoftSignIn": "Přihlásit se účtem Microsoft",
"signedIn": "",
"title": "Kalendář"
},
@@ -511,25 +535,26 @@
"selectMic": "Mikrofon",
"startAudioMuted": "Při připojení všem zlumit zvuk",
"startVideoMuted": "Všechny připojovat jako skrýté",
"title": "Nastavení"
},
"\u0005settings": {
"calendar": {}
"title": "Nastavení",
"speakers": "Reproduktory",
"microphones": "Mikrofony"
},
"settingsView": {
"alertOk": "",
"alertTitle": "",
"alertOk": "OK",
"alertTitle": "Varování",
"alertURLText": "",
"buildInfoSection": "",
"conferenceSection": "",
"displayName": "",
"email": "",
"header": "",
"profileSection": "",
"serverURL": "",
"displayName": "Zobrazované jméno",
"email": "E-mail",
"header": "Nastavení",
"profileSection": "Profil",
"serverURL": "URL serveru",
"startWithAudioMuted": "",
"startWithVideoMuted": "",
"version": ""
"version": "",
"showAdvanced": "Zobrazit pokročilá nastavení",
"advanced": "Pokročilé"
},
"share": {
"dialInfoText": "",
@@ -632,9 +657,6 @@
"startvideoblur": "Rozmazat pozadí",
"stopvideoblur": "Zrušit rozmazání"
},
"\u0005toolbar": {
"accessibilityLabel": {}
},
"transcribing": {
"ccButtonTooltip": "",
"error": "",
@@ -660,51 +682,51 @@
"safariGrantPermissions": "Pokud se váš prohlížeč ptá na práva, vyberte <b><i>OK</i></b> a potvrďte."
},
"videoSIPGW": {
"busy": "",
"busyTitle": "",
"errorAlreadyInvited": "",
"errorInvite": "",
"errorInviteFailed": "",
"errorInviteFailedTitle": "",
"errorInviteTitle": "",
"pending": ""
"busy": "Pracujeme na uvolnění prostředků. Zkuste to prosím znovu za několik minut.",
"busyTitle": "Služba Místnost je nyní zaneprázdněna",
"errorAlreadyInvited": "{{displayName}} byl(a) již pozván(a)",
"errorInvite": "Konference ještě nebyla založena. Zkuste to prosím později.",
"errorInviteFailed": "Na vyřešení problému pracujeme. Zkuste to prosím znovu později.",
"errorInviteFailedTitle": "Pozvání {{displayName}} selhalo",
"errorInviteTitle": "Chyba při pozvání do místnosti",
"pending": "{{displayName}} byl(a) pozván(a)"
},
"videoStatus": {
"audioOnly": "AU",
"audioOnlyExpanded": "",
"audioOnlyExpanded": "Jste v režimu nízké přenosové rychlosti. V tomto režimu je k dispozici jen zvuk a sdílení obrazovky.",
"callQuality": "Nastavení kvality hovoru",
"hd": "",
"hd": "HD",
"hdTooltip": "Sledujete obraz ve vysoké kvalitě",
"highDefinition": "Vysoká kvalita",
"labelTooiltipNoVideo": "",
"labelTooltipAudioOnly": "",
"ld": "",
"labelTooiltipNoVideo": "Žádné video",
"labelTooltipAudioOnly": "Zapnut režim nízké přenosové rychlosti",
"ld": "LD",
"ldTooltip": "Sledujete obraz v nízké kvalitě",
"lowDefinition": "Nizká kvalita",
"onlyAudioAvailable": "",
"onlyAudioSupported": "",
"p2pEnabled": "",
"p2pVideoQualityDescription": "",
"recHighDefinitionOnly": "",
"sd": "",
"onlyAudioAvailable": "Je k dispozici jen zvuk",
"onlyAudioSupported": "V tomto prohlížeči podporujeme jen zvuk.",
"p2pEnabled": "Zapnut režim peer to peer",
"p2pVideoQualityDescription": "V režimu peer to peer lze kvalitu videa přepínat jen mezi vysokou a pouhým zvukem. Ostatní nastavení se ignorují, dokud tento režim neopustíte.",
"recHighDefinitionOnly": "Bude preferována vysoká kvalita.",
"sd": "SD",
"sdTooltip": "Sledujete obraz v běžné kvalitě",
"standardDefinition": "Běžná kvalita"
},
"videothumbnail": {
"domute": "Ztlumený zvuk",
"domute": "Umlčet",
"flip": "Převrátit",
"kick": "Vyhodit",
"moderator": "Moderátor",
"mute": "",
"mute": "Účastník je umlčen",
"muted": "Ztlumený zvuk",
"remoteControl": "Vzdálené ovládání",
"show": "",
"videomute": ""
"videomute": "Účastník si vypnul kameru",
"domuteOthers": "Umlčet všechny ostatní"
},
"\u0005videothumbnail": {},
"welcomepage": {
"accessibilityLabel": {
"join": "",
"join": "Dotykem se připojíte",
"roomname": "Zadejte jméno místnosti"
},
"appDescription": "Videokonference pro celý Váš tým, zdarma, bez nároků na Vaše data. Do konference můžete pozvat kohokoliv. Veškerá komunikace přes aplikaci {{app}} je plně šifrovaná, 100% open source zajištuje, že aplikaci můžete využívat bez omezení a navíc se nemusíte ani registrovat.",
@@ -713,21 +735,41 @@
"video": "Obraz"
},
"calendar": "Kalendář",
"connectCalendarButton": "",
"connectCalendarText": "",
"connectCalendarButton": "Připojit váš kalendář",
"connectCalendarText": "Připojte si kalendář a uvidíte všechny videohovory v {{app}}. Můžete si také přidat videohovory {{provider}} do kalendáře a spouštět je jedním klikem.",
"enterRoomTitle": "Začít nový videohovor",
"go": "ZAČÍT",
"join": "PŘIPOJIT",
"info": "",
"info": "Informace",
"privacy": "Soukromí",
"recentList": "",
"recentListDelete": "",
"recentList": "Nedávné",
"recentListDelete": "Smazat",
"recentListEmpty": "Váš seznam nedávných hovorů je prázdný. Spojte se s kolegy z Vašeho týmu, poté zde naleznete seznam nedávných hovorů.",
"reducedUIText": "",
"reducedUIText": "Vítejte v {{app}}!",
"roomname": "Zadejte jméno místnosti",
"roomnameHint": "Zadejte název nebo URL odkaz místnosti ke které se chcete připojit. Pokud jste místnost vytvořili, ujistěte se, že ostatní účastníci schůzky zadají stejné jméno jako vy.",
"sendFeedback": "Poslat zpětnou vazbu",
"terms": "Podmínky používání",
"title": "Bezpečné, plnotučné videokonference, zcela zdarma a soukromě, od lidí pro lidi."
"title": "Bezpečná, plnohodnotná a zdarma dostupná videokonference",
"roomNameAllowedChars": "Název videohovoru nesmí obsahovat žádný z těchto znaků: ?, &, :, ', \", %, #.",
"getHelp": "Získat pomoc",
"goSmall": "ZAČÍT"
},
"lonelyMeetingExperience": {
"youAreAlone": "Jste jediný/á v tomto videohovoru",
"button": "Pozvat další"
},
"helpView": {
"header": "Centrum pomoci"
},
"chromeExtensionBanner": {
"dontShowAgain": "Toto už znovu neukazovat",
"buttonText": "Nainstalovat rozšíření Chrome",
"installExtensionText": "Nainstalovat rozšíření pro integraci Google Calendar a Office 365"
},
"defaultNickname": "Franta Uživatel",
"raisedHand": "Chtěl(a) bych mluvit",
"documentSharing": {
"title": "Sdílený dokument"
}
}

View File

@@ -65,7 +65,7 @@
"dontShowAgain": "Vis ikke dette igen"
},
"connectingOverlay": {
"joiningRoom": "Forbinder dig til mødet..."
"joiningRoom": "Forbinder dig til mødet"
},
"connection": {
"ATTACHED": "Forbundet",
@@ -79,7 +79,7 @@
"ERROR": "Fejl",
"RECONNECTING": "Et netværksproblem opstod. Forbinder igen...",
"GET_SESSION_ID_ERROR": "Hent session-id fejl: {{code}}",
"GOT_SESSION_ID": "HEnter session-id... Udført",
"GOT_SESSION_ID": "Henter session-ID… Udført",
"LOW_BANDWIDTH": "Video for {{displayName}} er slået fra for at spare båndbredde"
},
"connectionindicator": {
@@ -104,8 +104,8 @@
"nonoptimal": "Ikke optimal",
"poor": "Dårlig"
},
"remoteaddress": "Fjern adresse:",
"remoteaddress_plural": "Fjern adresser:",
"remoteaddress": "Fjernadresse:",
"remoteaddress_plural": "Fjernadresser:",
"remoteport": "Fjern port:",
"remoteport_plural": "Fjern porte:",
"resolution": "Opløsning:",
@@ -126,7 +126,7 @@
"downloadApp": "Download appen",
"launchWebButton": "Start på web",
"openApp": "Fortsæt til appen",
"title": "Start dit møde i {{app}}...",
"title": "Start dit møde i {{app}}",
"tryAgainButton": "Prøv igen"
},
"defaultLink": "e.g. {{url}}",
@@ -157,13 +157,13 @@
"cameraNotSendingData": "Vi kan ikke tilgå dit kamera. Kontroller venligst om der er en anden applikation der gør brug af dit kamera, eller vælg en andet kamera og genindlæs siden.",
"cameraNotSendingDataTitle": "Kan ikke tilgå kamera",
"cameraPermissionDeniedError": "Du har ikke givet tilladelse til at bruge dit kamera. Du kan stadig deltage i mødet men de andre deltagere vil ikke kunne se dig. Gør brug af kamera knappen i adressebaren for at give tilladelse.",
"cameraUnknownError": "Kan ikke gør brug af dit kamera, årsag ukendt.",
"cameraUnknownError": "Kan ikke gør brug af dit kamera, årsag ukendt.",
"cameraUnsupportedResolutionError": "Dit kamera supporterer ikke den nødvendige opløsning.",
"Cancel": "Afbryd",
"close": "Luk",
"conferenceDisconnectMsg": "Kontroller venligst din netværksforbindelse. Forbinder igen om {{seconds}} sekunder...",
"conferenceDisconnectMsg": "Kontroller venligst din netværksforbindelse. Forbinder igen om {{seconds}} sekunder",
"conferenceDisconnectTitle": "Din forbindelse er blevet afbrudt.",
"conferenceReloadMsg": "Forsøger at genoprette forbindelsen. Forbinder igen om {{seconds}} sekunder...",
"conferenceReloadMsg": "Forsøger at genoprette forbindelsen. Forbinder igen om {{seconds}} sekunder",
"conferenceReloadTitle": "Der er desværre gået noget galt.",
"confirm": "Bekræft",
"confirmNo": "Nej",
@@ -280,7 +280,7 @@
"userPassword": "bruger adgangskode",
"WaitForHostMsg": "Mødet <b>{{room}}</b> er ikke startet endnu. Hvis du er hosten log venligst ind, ellers vent på at hosten kommer.",
"WaitForHostMsgWOk": "Mødet <b>{{room}}</b> er ikke startet endnu. Hvis du er hosten tryk venligst på OK for at logge ind, ellers vent på at hosten kommer.",
"WaitingForHost": "Venter på host ...",
"WaitingForHost": "Venter på host ",
"Yes": "Ja",
"yourEntireScreen": "Hele din skærm"
},
@@ -320,7 +320,7 @@
"dialInTollFree": "Gratis",
"genericError": "Der er opstået en fejl",
"inviteLiveStream": "For at se en live stream i dette møde klik på dette link: {{url}}",
"invitePhone": "Ring-ind: {{number}},,{{conferenceID}}#",
"invitePhone": "Ring-ind: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "",
"inviteURLFirstPartGeneral": "Der er blevet inviteret til at deltage i et møde.",
"inviteURLFirstPartPersonal": "{{name}} inviterer dig til at deltage i et møde.\n",
@@ -375,11 +375,11 @@
"chooseCTA": "Vælg en stream mulighed. Du er pt. logget ind som {{email}}.",
"enterStreamKey": "Indtast din Youtube live stream her.",
"error": "Fejl under live streaming. Forsøg venligst igen.",
"errorAPI": "En fejl opstod ved forsøg på at tilgå din YouTube broadcast. Forsøg venligst at logge ind igen.",
"errorAPI": "En fejl opstod ved forsøg på at tilgå din YouTube-broadcast. Forsøg venligst at logge ind igen.",
"errorLiveStreamNotEnabled": "Live Streaming er ikke slpet til for {{email}}. Slå venligst live streaming til eller log ind på en konto der har live streaming slået til.",
"expandedOff": "Live stream er stoppet",
"expandedOn": "Mødet bliver pt. streamet til Youtube.",
"expandedPending": "Live streaming starter...",
"expandedPending": "Live streaming starter",
"failedToStart": "Kunne ikke starte live streaming",
"getStreamKeyManually": "Vi kunne ikke hente nogle live streams. Forsøg at hente din live stream nøgle fra Youtube.",
"invalidStreamKey": "Live stream nøgle er muligvis forkert.",
@@ -387,7 +387,7 @@
"offBy": "{{name}} stoppede live streaming",
"on": "Live Streaming",
"onBy": "{{name}} startede live streaming",
"pending": "Starter Live Stream...",
"pending": "Starter Live Stream",
"serviceName": "Live Streaming service",
"signedInAs": "Du er pt. logget ind som:",
"signIn": "Log ind med Google",
@@ -465,22 +465,22 @@
"poweredby": "powered by",
"presenceStatus": {
"busy": "Optaget",
"calling": "Ringer op...",
"calling": "Ringer op",
"connected": "Forbundet",
"connecting": "Forbinder...",
"connecting": "Forbinder",
"connecting2": "Forbinder*...",
"disconnected": "Forbindelse afbrudt",
"expired": "Udløbet",
"ignored": "Ignoreret",
"initializingCall": "Starter opkald...",
"initializingCall": "Starter opkald",
"invited": "Inviteret",
"rejected": "Afvist",
"ringing": "Ringer..."
"ringing": "Ringer"
},
"profile": {
"setDisplayNameLabel": "Vælg navn/alias",
"setEmailInput": "Indtast email",
"setEmailLabel": "Indtast gravatar email",
"setEmailLabel": "Indtast Gravatar-e-post",
"title": "Profil"
},
"raisedHand": "Ønsker at tale",
@@ -493,7 +493,7 @@
"error": "Fejl under optagelse, forsøg venligst igen om lidt.",
"expandedOff": "Optagelse er stoppet½",
"expandedOn": "Mødet bliver pt. optaget.",
"expandedPending": "Optagelse starter...",
"expandedPending": "Optagelse starter",
"failedToStart": "Kunne ikke start optagelse",
"fileSharingdescription": "Del optagelse med deltagere",
"live": "LIVE",
@@ -502,7 +502,7 @@
"offBy": "{{name}} stoppede optagelsen",
"on": "Optager",
"onBy": "{{name}} startede optagelsen",
"pending": "Gør klar til at optage mødet...",
"pending": "Gør klar til at optage mødet",
"rec": "REC",
"serviceDescription": "Din optagelse bliver gemt af optager servicen",
"serviceName": "Optager service",
@@ -607,7 +607,7 @@
"recording": "Slå optagelse til/fra",
"remoteMute": "Slå lyd fra for deltager",
"Settings": "Slå indstillinger fra/til",
"sharedvideo": "Slå Youtube video deling fra/til",
"sharedvideo": "Slå YouTube video deling fra/til",
"shareRoom": "Invitér nogen",
"shareYourScreen": "Slå skærmdeling fra/til",
"shortcuts": "Slå genveje fra/til",
@@ -681,7 +681,7 @@
"failedToStart": "Transkription kunne ikke starte",
"labelToolTip": "Mødet transkriberes",
"off": "Transkription stoppet",
"pending": "Forbereder sig til at transkribere mødet ...",
"pending": "Forbereder sig til at transkribere mødet ",
"start": "Begynd at vise undertekster",
"stop": "Stop med at få vist undertekster",
"tr": "TR"
@@ -769,4 +769,4 @@
"betingelser": "Betingelser",
"title": "Skærmbesøg & videomøder"
}
}
}

View File

@@ -25,15 +25,15 @@
"none": "Keine Audiogeräte verfügbar"
},
"audioOnly": {
"audioOnly": "Nur Audio"
"audioOnly": "Geringe Bandbreite"
},
"calendarSync": {
"addMeetingURL": "Meeting-Link hinzufügen",
"confirmAddLink": "Wollen Sie einen Jitsi-Link zu diesem Termin hinzufügen?",
"confirmAddLink": "Möchten Sie einen Jitsi-Link zu diesem Termin hinzufügen?",
"error": {
"appConfiguration": "Kalenderintegration ist nicht richtig konfiguriert.",
"generic": "Ein Fehler ist aufgetreten. Prüfen Sie Ihre Kalendereinstellungen oder versuchen Sie, den Kalender zu aktualisieren.",
"notSignedIn": "Ein Fehler ist während der Authentifizierung zur Anzeige von Kalenderertermine aufgetreten. Prüfen Sie Ihre Kalendereinstellungen oder versuchen Sie, sich erneut anzumelden."
"notSignedIn": "Ein Fehler ist während der Authentifizierung zur Anzeige von Kalenderterminen aufgetreten. Prüfen Sie Ihre Kalendereinstellungen oder versuchen Sie, sich erneut anzumelden."
},
"join": "Teilnehmen",
"joinTooltip": "Am Meeting teilnehmen",
@@ -69,7 +69,7 @@
},
"connection": {
"ATTACHED": "Angehängt",
"AUTHENTICATING": "Anmeldung läuft",
"AUTHENTICATING": "Authentifizierung läuft",
"AUTHFAIL": "Authentifizierung fehlgeschlagen",
"CONNECTED": "Verbunden",
"CONNECTING": "Verbindung wird hergestellt",
@@ -121,7 +121,7 @@
"deepLinking": {
"appNotInstalled": "Sie benötigen die „{{app}}“-App, um der Konferenz auf dem Smartphone beizutreten.",
"description": "Nichts passiert? Wir haben versucht, die Konferenz in {{app}} zu öffnen. Versuchen Sie es erneut oder treten Sie der Konferenz in {{app}} im Web bei.",
"descriptionWithoutWeb": "Ist nichts passiert? Wir haben versucht, Ihre Besprechung in der „{{{app}}}“-Desktop-App zu starten.",
"descriptionWithoutWeb": "Ist nichts passiert? Wir haben versucht, Ihre Besprechung in der „{{app}}“-Desktop-App zu starten.",
"downloadApp": "App herunterladen",
"launchWebButton": "Im Web öffnen",
"openApp": "In der App fortfahren",
@@ -144,7 +144,7 @@
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": "Livestream:"
"liveStreaming": "Livestream"
},
"allow": "Erlauben",
"alreadySharedVideoMsg": "Ein anderer Teilnehmer gibt bereits ein Video weiter. Bei dieser Konferenz ist jeweils nur ein geteiltes Video möglich.",
@@ -155,7 +155,7 @@
"cameraNotFoundError": "Kamera nicht gefunden.",
"cameraNotSendingData": "Die Kamera ist nicht verfügbar. Bitte prüfen, ob eine andere Applikation die Kamera verwendet, eine andere Kamera vom Einstellungs-Menü auswählen oder die Applikation neu laden.",
"cameraNotSendingDataTitle": "Zugriff auf Kamera nicht möglich",
"cameraPermissionDeniedError": "Die Berechtigung zur Verwendung der Kamera wurde nicht erteilt. Sie können trotzdem an der Konferenz teilnehmen, aber die anderen Teilnehmer können Sie nicht sehen. Verwenden Sie die Kamera-Schaltfläche in der Adressleiste um die Berechtigungen zu erteilen.",
"cameraPermissionDeniedError": "Die Berechtigung zur Verwendung der Kamera wurde nicht erteilt. Sie können trotzdem an der Konferenz teilnehmen, aber die anderen Teilnehmer können Sie nicht sehen. Verwenden Sie die Kamera-Schaltfläche in der Adressleiste, um die Berechtigungen zu erteilen.",
"cameraUnknownError": "Die Kamera kann aus einem unbekannten Grund nicht verwendet werden.",
"cameraUnsupportedResolutionError": "Die Kamera unterstützt die erforderliche Auflösung nicht.",
"Cancel": "Abbrechen",
@@ -188,16 +188,16 @@
"inlineInstallExtension": "Jetzt installieren",
"internalError": "Oh! Es hat etwas nicht funktioniert. Der folgende Fehler ist aufgetreten: {{error}}",
"internalErrorTitle": "Interner Fehler",
"kickMessage": "Sie können sich für weitere Einzelheiten an {{participantDisplayName}}} wenden.",
"kickMessage": "Sie können sich für mehr Details an {{participantDisplayName}} wenden.",
"kickParticipantButton": "Entfernen",
"kickParticipantDialog": "Wollen Sie diesen Teilnehmer wirklich entfernen?",
"kickParticipantTitle": "Teilnehmer stummschalten?",
"kickTitle": "Autsch! {{participantDisplayName}} hat Sie aus dem Meeting geworfen.",
"kickParticipantTitle": "Teilnehmer entfernen?",
"kickTitle": "Autsch! {{participantDisplayName}} hat Sie aus dem Meeting geworfen",
"liveStreaming": "Livestreaming",
"liveStreamingDisabledForGuestTooltip": "Gäste können kein Livestreaming starten.",
"liveStreamingDisabledTooltip": "Starten des Livestreams deaktiviert.",
"lockMessage": "Die Konferenz konnte nicht gesperrt werden.",
"lockRoom": "Meeting $t(lockRoomPasswordUppercase) hinzufügen",
"lockRoom": "Meeting-$t(lockRoomPasswordUppercase) hinzufügen",
"lockTitle": "Sperren fehlgeschlagen",
"logoutQuestion": "Sind Sie sicher, dass Sie sich abmelden und die Konferenz verlassen möchten?",
"logoutTitle": "Abmelden",
@@ -205,9 +205,9 @@
"maxUsersLimitReachedTitle": "Maximales Teilnehmerlimit erreicht",
"micConstraintFailedError": "Ihr Mikrofon erfüllt die notwendigen Anforderungen nicht.",
"micNotFoundError": "Mikrofon nicht gefunden.",
"micNotSendingData": "Gehen Sie zu den Einstellungen Ihres Computers, um die Stummschaltung Ihres Mikrofons aufzuheben und seinen Pegel einzustellen.",
"micNotSendingDataTitle": "Ihr Mikrofon ist durch Ihre Systemeinstellungen stumm geschaltet.",
"micPermissionDeniedError": "Die Berechtigung zur Verwendung des Mikrofons wurde nicht erteilt. Sie können trotzdem an der Konferenz teilnehmen, aber die anderen Teilnehmer können Sie nicht hören. Verwenden Sie die Kamera-Schaltfläche in der Adressleiste um die Berechtigungen zu erteilen.",
"micNotSendingData": "Gehen Sie zu den Einstellungen Ihres Computers, um die Stummschaltung Ihres Mikrofons aufzuheben und seinen Pegel einzustellen",
"micNotSendingDataTitle": "Ihr Mikrofon ist durch Ihre Systemeinstellungen stumm geschaltet",
"micPermissionDeniedError": "Die Berechtigung zur Verwendung des Mikrofons wurde nicht erteilt. Sie können trotzdem an der Konferenz teilnehmen, aber die anderen Teilnehmer können Sie nicht hören. Verwenden Sie die Kamera-Schaltfläche in der Adressleiste, um die Berechtigungen zu erteilen.",
"micUnknownError": "Das Mikrofon kann aus einem unbekannten Grund nicht verwendet werden.",
"muteEveryoneElseDialog": "Einmal stummgeschaltet, können Sie deren Stummschaltung nicht mehr beenden, aber sie können ihre Stummschaltung jederzeit selbst beenden.",
"muteEveryoneElseTitle": "Alle außer {{whom}} stummschaten?",
@@ -220,8 +220,8 @@
"muteParticipantDialog": "Wollen Sie diesen Teilnehmer wirklich stummschalten? Sie können die Stummschaltung nicht wieder aufheben, der Teilnehmer kann dies aber jederzeit selbst tun.",
"muteParticipantTitle": "Teilnehmer stummschalten?",
"Ok": "OK",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordNotSupported": "Setzen eines Konferenz-Passworts ist nicht unterstützt",
"passwordLabel": "Das Treffen wurde von einem Teilnehmer geslerrt. Bitte geben Sie die $t(lockRoomPassword) zu verbinden.",
"passwordNotSupported": "Das Festlegen von einem $t(lockRoomPassword) für das Meeting wird nicht unterstützt.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) nicht unterstützt",
"passwordRequired": "$t(lockRoomPasswordUppercase) erforderlich",
"popupError": "Ihr Browser blockiert Pop-ups von dieser Website. Bitte aktivieren Sie Pop-ups in den Sicherheitseinstellungen des Browsers und versuchen Sie es erneut.",
@@ -230,24 +230,24 @@
"recordingDisabledForGuestTooltip": "Gäste können keine Aufzeichnungen starten.",
"recordingDisabledTooltip": "Start der Aufzeichnung deaktiviert.",
"rejoinNow": "Jetzt erneut beitreten",
"remoteControlAllowedMessage": "{{user}} hat die Anfrage zur Fernsteuerung angenommen.",
"remoteControlDeniedMessage": "{{user}} hat die Anfrage zur Fernsteuerung verweigert.",
"remoteControlErrorMessage": "Beim Anfordern der Fernsteuerungsberechtigung von {{user}} ist ein Fehler aufgetreten.",
"remoteControlAllowedMessage": "{{user}} hat die Anfrage zur Fernsteuerung angenommen!",
"remoteControlDeniedMessage": "{{user}} hat die Anfrage zur Fernsteuerung verweigert!",
"remoteControlErrorMessage": "Beim Anfordern der Fernsteuerungsberechtigung von {{user}} ist ein Fehler aufgetreten!",
"remoteControlRequestMessage": "Möchten Sie {{user}} erlauben, den Computer fernzusteuern?",
"remoteControlShareScreenWarning": "Achtung, wenn Sie die Anfrage genehmigen, starten Sie die Bildschirmfreigabe!",
"remoteControlStopMessage": "Die Fernsteuerung wurde beendet.",
"remoteControlStopMessage": "Die Fernsteuerung wurde beendet!",
"remoteControlTitle": "Fernsteuerung",
"Remove": "Entfernen",
"removePassword": "$t(lockRoomPassword) entfernen",
"removeSharedVideoMsg": "Sind Sie sicher, dass Sie das geteilte Video entfernen möchten?",
"removeSharedVideoTitle": "Freigegebenes Video entfernen",
"reservationError": "Fehler im Reservationssystem",
"reservationError": "Fehler im Reservierungssystem",
"reservationErrorMsg": "Fehler, Nummer: {{code}}, Nachricht: {{msg}}",
"retry": "Wiederholen",
"screenSharingFailedToInstall": "Oh! Die Erweiterung für die Bildschirmfreigabe konnte nicht installiert werden.",
"screenSharingFailedToInstallTitle": "Bildschirmfreigabe-Erweiterung konnte nicht installiert werden",
"screenSharingFirefoxPermissionDeniedError": "Die Bildschirmfreigabe ist leider fehlgeschlagen. Bitte stellen Sie sicher, dass die Berechtigung für die Bildschirmfreigabe im Browser erteilt wurde.",
"screenSharingFirefoxPermissionDeniedTitle": "Die Bildschirmfreigabe konnte nicht gestartet werden.",
"screenSharingFirefoxPermissionDeniedError": "Die Bildschirmfreigabe ist leider fehlgeschlagen. Bitte stellen Sie sicher, dass die Berechtigung für die Bildschirmfreigabe im Browser erteilt wurde. ",
"screenSharingFirefoxPermissionDeniedTitle": "Die Bildschirmfreigabe konnte nicht gestartet werden!",
"screenSharingPermissionDeniedError": "Oh! Beim Anfordern der Bildschirmfreigabe-Berechtigungen hat etwas nicht funktioniert. Bitte aktualisieren und erneut versuchen.",
"sendPrivateMessage": "Sie haben kürzlich eine private Nachricht erhalten. Hatten Sie die Absicht, darauf privat zu antworten, oder wollen Sie Ihre Nachricht an die Gruppe senden?",
"sendPrivateMessageCancel": "An die Gruppe senden",
@@ -263,25 +263,26 @@
"shareYourScreenDisabledForGuest": "Gäste können den Bildschirm nicht freigeben.",
"startLiveStreaming": "Einen Livestream starten",
"startRecording": "Aufnahme starten",
"startRemoteControlErrorMessage": "Beim Versuch die Fernsteuerung zu starten ist ein Fehler aufgetreten.",
"startRemoteControlErrorMessage": "Beim Versuch, die Fernsteuerung zu starten, ist ein Fehler aufgetreten!",
"stopLiveStreaming": "Livestreaming stoppen",
"stopRecording": "Aufnahme stoppen",
"stopRecordingWarning": "Sind Sie sicher, dass Sie die Aufnahme stoppen möchten?",
"stopStreamingWarning": "Sind Sie sicher, dass Sie das Livestreaming stoppen möchten?",
"streamKey": "Name/Schlüssel für den Stream",
"streamKey": "Streamschlüssel",
"Submit": "OK",
"thankYou": "Danke für die Verwendung von {{appName}}!",
"token": "Token",
"tokenAuthFailed": "Sie sind nicht berechtigt, dieser Konferenz beizutreten.",
"tokenAuthFailedTitle": "Authentifizierung fehlgeschlagen",
"transcribing": "Wird transkribiert",
"unlockRoom": "Meeting $t(lockRoomPassword) entfernen",
"unlockRoom": "Meeting-$t(lockRoomPassword) entfernen",
"userPassword": "Benutzerpasswort",
"WaitForHostMsg": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Organisator sind, authentifizieren Sie sich. Warten Sie andernfalls, bis der Veranstalter erscheint.",
"WaitForHostMsgWOk": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Organisator sind, drücken Sie zum Authentifizieren auf OK. Warten Sie andernfalls, bis der Veranstalter erscheint.",
"WaitForHostMsg": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Organisator sind, authentifizieren Sie sich. Warten Sie andernfalls, bis der Organisator erscheint.",
"WaitForHostMsgWOk": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Organisator sind, drücken Sie zum Authentifizieren auf OK. Warten Sie andernfalls, bis der Organisator erscheint.",
"WaitingForHost": "Warten auf den Organisator...",
"Yes": "Ja",
"yourEntireScreen": "Ganzer Bildschirm"
"yourEntireScreen": "Ganzer Bildschirm",
"screenSharingAudio": "Audio austauschen"
},
"dialOut": {
"statusMessage": "ist jetzt {{status}}"
@@ -315,24 +316,24 @@
"dialInConferenceID": "PIN:",
"dialInNotSupported": "Entschuldigung, leider wird das Einwählen derzeit nicht unterstützt.",
"dialInNumber": "Einwählen:",
"dialInSummaryError": "Fehler beim Abrufen der Einwählinformationen. Versuchen Sie es später erneut.",
"dialInSummaryError": "Fehler beim Abrufen der Einwahlinformationen. Versuchen Sie es später erneut.",
"dialInTollFree": "Gebührenfrei",
"genericError": "Es ist leider etwas schiefgegangen.",
"inviteLiveStream": "Klicken Sie auf {{url}} um den Livestream dieser Konferenz zu öffnen",
"inviteLiveStream": "Klicken Sie auf {{url}}, um den Livestream dieser Konferenz zu öffnen",
"invitePhone": "Wenn Sie stattdessen per Telefon beitreten möchten, tippen Sie hier: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Suche nach einer anderen Einwahlnummer?\nMeetings-Einwahlnummern sehen: {{{url}}\n\n\n\nWenn Sie sich auch über ein Raumtelefon einwählen, nehmen Sie teil, ohne sich mit dem Ton zu verbinden: {{silentUrl}}",
"invitePhoneAlternatives": "Suche nach einer anderen Einwahlnummer?\nMeetings-Einwahlnummern sehen: {{url}}\n\n\nWenn Sie sich auch über ein Raumtelefon einwählen, nehmen Sie teil, ohne sich mit dem Ton zu verbinden: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Sie wurden zur Teilnahme an einem Meeting eingeladen.",
"inviteURLFirstPartPersonal": "{{name}} lädt Sie zu einem Meeting ein.\n",
"inviteURLSecondPart": "\nAm Meeting teilnehmen:\n{{url}}\n",
"liveStreamURL": "Livestream:",
"moreNumbers": "Weitere Telefonnummern",
"noNumbers": "Keine Telefonnummern verfügbar.",
"noPassword": "Kein",
"noRoom": "Keine Konferenz für die Einwähl-Informationen angegeben.",
"numbers": "Einwählnummern",
"noPassword": "Keines",
"noRoom": "Keine Konferenz für die Einwahlinformationen angegeben.",
"numbers": "Einwahlnummern",
"password": "$t(lockRoomPasswordUppercase):",
"title": "Teilen",
"tooltip": "Freigabe-Link und Einwählinformationen für dieses Meeting",
"tooltip": "Freigabe-Link und Einwahlinformationen für dieses Meeting",
"label": "Meeting-Informationen"
},
"inviteDialog": {
@@ -352,7 +353,7 @@
"keyboardShortcuts": {
"focusLocal": "Lokales Video fokussieren",
"focusRemote": "Auf das Video eines anderen Teilnehmers fokussieren",
"fullScreen": "Vollbildmodus aktivieren / deaktivieren",
"fullScreen": "Vollbildmodus aktivieren oder deaktivieren",
"keyboardShortcuts": "Tastenkürzel",
"localRecording": "Lokale Aufzeichnungssteuerelemente ein- oder ausblenden",
"mute": "Stummschaltung aktivieren oder deaktivieren",
@@ -367,12 +368,12 @@
"videoQuality": "Anrufqualität verwalten"
},
"liveStreaming": {
"busy": "Es werden Resourcen zum Streamen bereitgestellt. Bitte in ein paar Minuten erneut versuchen.",
"busy": "Es werden Ressourcen zum Streamen bereitgestellt. Bitte in ein paar Minuten erneut versuchen.",
"busyTitle": "Alle Streaming-Instanzen sind in Gebrauch",
"changeSignIn": "Konten wechseln.",
"choose": "Livestream auswählen",
"chooseCTA": "Streaming-Option auswählen. Sie sind aktuell als {{email}} angemeldet.",
"enterStreamKey": "Name/Schlüssel für den YouTube-Livestream hier eingeben.",
"enterStreamKey": "Streamschlüssel für den YouTube-Livestream hier eingeben.",
"error": "Das Livestreaming ist fehlgeschlagen. Bitte versuchen Sie es erneut.",
"errorAPI": "Beim Abrufen der YouTube-Livestreams ist ein Fehler aufgetreten. Bitte versuchen Sie, sich erneut anzumelden.",
"errorLiveStreamNotEnabled": "Livestreaming ist für {{email}} nicht aktiviert. Aktivieren Sie das Livestreaming oder melden Sie sich bei einem Konto mit aktiviertem Livestreaming an.",
@@ -390,11 +391,13 @@
"serviceName": "Livestreaming-Dienst",
"signedInAs": "Sie sind derzeit angemeldet als:",
"signIn": "Mit Google anmelden",
"signInCTA": "Anmelden oder den Namen/Schlüssel des YouTube-Livestreams eingeben.",
"signInCTA": "Anmelden oder den Streamschlüssel des YouTube-Livestreams eingeben.",
"signOut": "Abmelden",
"start": "Einen Livestream starten",
"streamIdHelp": "Was ist das?",
"unavailableTitle": "Livestreaming nicht verfügbar"
"unavailableTitle": "Livestreaming nicht verfügbar",
"youtubeTerms": "YouTube-Nutzungsbedingungen",
"googlePrivacyPolicy": "Google-Datenschutzerklärung"
},
"localRecording": {
"clientState": {
@@ -405,13 +408,13 @@
"dialogTitle": "Lokale Aufzeichnungssteuerelemente",
"duration": "Dauer",
"durationNA": "N. v.",
"encoding": "Codierung",
"encoding": "Kodierung",
"label": "LOR",
"labelToolTip": "Lokale Aufzeichnung ist aktiviert",
"localRecording": "Lokale Aufzeichnung",
"me": "Ich",
"messages": {
"engaged": "Lokale Aufzeichnung ist aktiviert",
"engaged": "Lokale Aufzeichnung ist aktiviert.",
"finished": "Aufzeichnung der Sitzung {{token}} ist beendet. Senden Sie die aufgezeichnete Datei an den Moderator.",
"finishedModerator": "Aufzeichnung der Sitzung {{token}} ist beendet. Die Aufzeichnung des lokalen Verlaufs wurde gespeichert. Bitten Sie die anderen Teilnehmer, ihre Aufzeichnungen zu übermitteln.",
"notModerator": "Sie sind nicht der Moderator. Sie können die lokale Aufzeichnung nicht starten oder stoppen."
@@ -435,24 +438,24 @@
"disconnected": "getrennt",
"focus": "Konferenz-Organisator",
"focusFail": "{{component}} ist im Moment nicht verfügbar - wiederholen in {{ms}} Sekunden",
"grantedTo": "Moderatorenrechte an {{to}} vergeben.",
"invitedOneMember": "{{displayName}} wurde eingeladen",
"grantedTo": "Moderatorenrechte an {{to}} vergeben!",
"invitedOneMember": "{{name}} wurde eingeladen",
"invitedThreePlusMembers": "{{name}} und {{count}} andere wurden eingeladen",
"invitedTwoMembers": "{{first}} und {{second}} wurden eingeladen",
"kickParticipant": "Sie können sich für weitere Einzelheiten an {{participantDisplayName}}} wenden.",
"kickParticipant": "{{kicked}} wurde von {{kicker}} ausgewiesen",
"me": "Ich",
"moderator": "Moderatorenrechte vergeben",
"moderator": "Moderatorenrechte vergeben!",
"muted": "Der Konferenz wurde stumm beigetreten.",
"mutedTitle": "Stummschaltung aktiv!",
"mutedRemotelyTitle": "Sie wurden von {{participantDisplayName}} stummgeschaltet!",
"mutedRemotelyDescription": "Sie können jederzeit die Stummschaltung aufheben, wenn Sie bereit sind zu sprechen. Wenn Sie fertig sind, können sich wieder stummschalten, um Geräusche vom Meeting fernzuhalten.",
"mutedRemotelyDescription": "Sie können jederzeit die Stummschaltung aufheben, wenn Sie bereit sind zu sprechen. Wenn Sie fertig sind, können Sie sich wieder stummschalten, um Geräusche vom Meeting fernzuhalten.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) von einem anderen Teilnehmer entfernt",
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) von einem anderen Teilnehmer gesetzt",
"raisedHand": "{{name}} möchte sprechen.",
"somebody": "Jemand",
"startSilentTitle": "Sie sind ohne Audioausgabe beigetreten!",
"startSilentDescription": "Treten Sie dem Meeting noch einmal bei, um Ihr Audio zu aktivieren",
"suboptimalExperienceDescription": "Tut uns leid, aber die Konferenz wird mit {{appName}} kein großartiges Erlebnis. Wir versuchen immer die Situation zu verbessern, bis dahin empfehlen wir aber die Verwendung einer der <a href=\"static/recommendedBrowsers.html\" target=\"_blank\">vollständig unterstützen Browser</a>.",
"suboptimalBrowserWarning": "Tut uns leid, aber die Konferenz wird mit {{appName}} kein großartiges Erlebnis. Wir versuchen immer die Situation zu verbessern, bis dahin empfehlen wir aber die Verwendung einer der <a href=\"static/recommendedBrowsers.html\" target=\"_blank\">vollständig unterstützen Browser</a>.",
"suboptimalExperienceTitle": "Browserwarnung",
"unmute": "Stummschaltung aufheben",
"newDeviceCameraTitle": "Neue Kamera erkannt",
@@ -464,9 +467,9 @@
"poweredby": "Betrieben von",
"presenceStatus": {
"busy": "Beschäftigt",
"calling": "Wird angerufen…",
"calling": "Wird angerufen …",
"connected": "Verbunden",
"connecting": "Verbindung wird hergestellt",
"connecting": "Verbindung wird hergestellt",
"connecting2": "Wird verbunden*…",
"disconnected": "Getrennt",
"expired": "Abgelaufen",
@@ -474,7 +477,7 @@
"initializingCall": "Anruf wird initialisiert…",
"invited": "Einladen",
"rejected": "Abgelehnt",
"ringing": "Es klingelt…"
"ringing": "Es klingelt …"
},
"profile": {
"setDisplayNameLabel": "Anzeigename festlegen",
@@ -525,6 +528,7 @@
"followMe": "Follow-me für alle Teilnehmer",
"language": "Sprache",
"loggedIn": "Als {{name}} angemeldet",
"microphones": "Mikrofon",
"moderator": "Moderator",
"more": "Mehr",
"name": "Name",
@@ -532,6 +536,7 @@
"selectAudioOutput": "Audioausgabe",
"selectCamera": "Kamera",
"selectMic": "Mikrofon",
"speakers": "Lautsprecher",
"startAudioMuted": "Alle Teilnehmer treten stumm geschaltet bei",
"startVideoMuted": "Alle Teilnehmer treten ohne Video bei",
"title": "Einstellungen"
@@ -556,7 +561,7 @@
"version": "Version"
},
"share": {
"dialInfoText": "\n\n=====\n\nWollen Sie sich nur auf Ihrem Telefon einwählen?\n\n{{{defaultDialInNumber}}}Klicken Sie auf diesen Link, um die eingewählten Telefonnummern für dieses Meeting zu sehen\n{{dialInfoPageUrl}}",
"dialInfoText": "\n\n=====\n\nWollen Sie sich nur auf Ihrem Telefon einwählen?\n\n{{defaultDialInNumber}}Klicken Sie auf diesen Link, um die eingewählten Telefonnummern für dieses Meeting zu sehen\n{{dialInfoPageUrl}}",
"mainText": "Klicken Sie auf den folgenden Link, um dem Meeting beizutreten:\n{{roomUrl}}"
},
"speaker": "Sprecher",
@@ -647,7 +652,7 @@
"noAudioSignalDesc": "Wenn Sie das Gerät nicht absichtlich über die Systemeinstellungen oder die Hardware stumm geschaltet haben, sollten Sie einen Wechsel des Geräts in Erwägung ziehen.",
"noAudioSignalDescSuggestion": "Wenn Sie das Gerät nicht absichtlich über die Systemeinstellungen oder die Hardware stummgeschaltet haben, sollten Sie einen Wechsel auf das vorgeschlagene Gerät in Erwägung ziehen.",
"noAudioSignalDialInDesc": "Sie können sich auch über die Einwahlnummer einwählen:",
"noAudioSignalDialInLinkDesc" : "Einwahlnummern:",
"noAudioSignalDialInLinkDesc": "Einwahlnummern",
"noisyAudioInputTitle": "Ihr Mikrofon scheint lärmintensiv zu sein!",
"noisyAudioInputDesc": "Es klingt, als ob Ihr Mikrofon Störgeräusche verursacht. Bitte überlegen Sie, ob Sie das Gerät stummschalten oder austauschen wollen.",
"openChat": "Chat öffnen",
@@ -686,14 +691,14 @@
"tr": "TR"
},
"userMedia": {
"androidGrantPermissions": "Wählen Sie <b><i>Erlauben</i></b>, wenn der Browser um Berechtigungen bittet.",
"chromeGrantPermissions": "Wählen Sie <b><i>Erlauben</i></b>, wenn der Browser um Berechtigungen bittet.",
"androidGrantPermissions": "Wählen Sie <b><i>Zulassen</i></b>, wenn der Browser um Berechtigungen bittet.",
"chromeGrantPermissions": "Wählen Sie <b><i>Zulassen</i></b>, wenn der Browser um Berechtigungen bittet.",
"edgeGrantPermissions": "Wählen Sie <b><i>Ja</i></b>, wenn der Browser um Berechtigungen bittet.",
"electronGrantPermissions": "Bitte Berechtigungen zur Verwendung der Kamera und des Mikrofons erteilen",
"firefoxGrantPermissions": "Wählen Sie <b><i>Markiertes Gerät teilen</i></b>, wenn der Browser um Berechtigungen bittet.",
"firefoxGrantPermissions": "Wählen Sie <b><i>Erlauben</i></b>, wenn der Browser um Berechtigungen bittet.",
"iexplorerGrantPermissions": "Wählen Sie <b><i>OK</i></b>, wenn der Browser um Berechtigungen bittet.",
"nwjsGrantPermissions": "Bitte Berechtigungen zur Verwendung der Kamera und des Mikrofons erteilen",
"operaGrantPermissions": "Wählen Sie <b><i>Erlauben</i></b>, wenn der Browser um Berechtigungen bittet.",
"operaGrantPermissions": "Wählen Sie <b><i>Zulassen</i></b>, wenn der Browser um Berechtigungen bittet.",
"react-nativeGrantPermissions": "Wählen Sie <b><i>Erlauben</i></b>, wenn der Browser um Berechtigungen bittet.",
"safariGrantPermissions": "Wählen Sie <b><i>OK</i></b>, wenn der Browser um Berechtigungen bittet."
},
@@ -745,7 +750,7 @@
"join": "Zum Teilnehmen tippen",
"roomname": "Konferenzname eingeben"
},
"appDescription": "Auf geht's! Starten Sie eine Videokonferenz mit dem ganzen Team. Oder besser noch: Laden Sie alle ein, die Sie kennen. {{app}} ist eine vollständig verschlüsselte, aus 100% Open-Source-Software bestehende Videokonferenzlösung, die Sie den ganzen Tag kostenlos verwenden können — ohne Registrierung.",
"appDescription": "Auf geht's! Starten Sie eine Videokonferenz mit dem ganzen Team. Oder besser noch: Laden Sie alle ein, die Sie kennen. {{app}} ist eine vollständig verschlüsselte, aus 100 % Open-Source-Software bestehende Videokonferenzlösung, die Sie den ganzen Tag kostenlos verwenden können — ohne Registrierung.",
"audioVideoSwitch": {
"audio": "Audio",
"video": "Video"
@@ -769,5 +774,9 @@
"sendFeedback": "Feedback senden",
"terms": "AGB",
"title": "Sichere, mit umfassenden Funktionen ausgestattete und vollkommen kostenlose Videokonferenzen"
},
"lonelyMeetingExperience": {
"button": "Andere einladen",
"youAreAlone": "Nur Sie sind in diesem Meeting"
}
}

Some files were not shown because too many files have changed in this diff Show More