Compare commits

...

95 Commits

Author SHA1 Message Date
Boris Grozev
528204fb81 ref: Clean up password generation, use 16 characters. 2020-04-05 16:04:18 -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
paweldomas
c170970992 feat(Filmstrip): accessibility label for toggle filmstrip button 2020-04-01 08:49:12 -05:00
Saúl Ibarra Corretgé
d19a659871 ios: update Crasshlytics and fix uploadding symbols 2020-04-01 15:31:28 +02:00
Saúl Ibarra Corretgé
955b24be9d rn,cc: add feature-flag to disable close captions 2020-04-01 15:29:21 +02:00
Saúl Ibarra Corretgé
de6c7e0117 rn,invite: add share button to add people dialog 2020-04-01 15:26:29 +02:00
Bettenbuk Zoltan
feb8fe9e34 api: add private message flag to outgoingMessage 2020-04-01 11:58:48 +02:00
Steve Frécinaux
aff6d4b36d Fix mod_muc_max_occupants to properly ignore whitelisted users
In a typical Jitsi Meet setup, this plugin can be used to limit the number of
occupants in a meeting room, while ignoring "utility" users. Such a
configuration could be:

    muc_max_occupants = 2
    muc_access_whitelist = {
        "focus@auth.meet.jitsi";
    }

It would be expected that this configuration allows two users to attend the
meeting room, but in practice only one is allowed, because the whitelist is not
honoured.

This commit fixes it by actually updating the `user` and `domain` variables
being checked. After this change, the scenario above works just fine.
2020-03-31 16:38:23 -05:00
damencho
45c60717d6 debian: add post remove script for jitsi-meet-turnserver package
Reloads the webserver as the config had changed.
2020-03-31 16:27:25 -05:00
Saúl Ibarra Corretgé
6596e27f69 Prevent meetings from being crawled by Google 2020-03-31 21:45:28 +02:00
Saúl Ibarra Corretgé
8cba7e91d3 ci: build the frontend in GH actions
It should help catch bugs such as bundle bloat easier.
2020-03-31 21:44:48 +02:00
Hristo Terezov
3a871cbed8 feat(remote-menu):option for disable mute and kick 2020-03-31 10:06:30 -05:00
Bettenbuk Zoltan
a46fd60788 fix: accented room name display 2020-03-31 14:16:21 +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
Juri
97735ff548 lang: fix Estonian translations 2020-03-31 13:10:38 +02:00
James Baird
9fdc18d1ec welcome: hide tabs if nothing to show 2020-03-31 13:06:04 +02:00
Bartosz Dziewoński
4a21882345 lang: translation improvements and corrections for Polish 2020-03-31 09:43:13 +02:00
damencho
cb0cea4ebd Adds a note to re-run Let’s Encrypt script on jetty upgrade. 2020-03-31 09:36:30 +02:00
damencho
b894daa9cf Cleans created users on purging. 2020-03-31 09:36:30 +02:00
damencho
06641a7dd6 This is to prevent item-not-found when multiple users try to join at the same time.
This is to prevent item-not-found when multiple users try to join while jicofo is still configuring the room. Credits @paweldomas
2020-03-31 09:36:30 +02:00
Saúl Ibarra Corretgé
94f7b570d7 debian: fix creating internal MUC 2020-03-30 17:01:27 -05:00
Saúl Ibarra Corretgé
ca5605620a rn: update versions, apps 20.2, sdk 2.7 2020-03-30 15:45:16 +02:00
nicolae-stroncea
8d0202113a doc: clarify required Node / npm versions 2020-03-30 15:09:43 +02:00
Julian1203
f2e59226c0 lang: update german translation 2020-03-30 15:05:31 +02:00
Julian1203
951086e499 lang: update german translation
Added the missing languages
2020-03-30 15:03:39 +02:00
Saúl Ibarra Corretgé
d3a26f9b4e rn,welcome-page: use random room name generator 2020-03-30 14:40:29 +02:00
Asura Enkhbayar
e1a4478a06 doc: jitsi-videobridge -> jitsi-videobridge2
Update commands provided to reload and check the status of videobridge.
2020-03-30 11:48:32 +02:00
Saúl Ibarra Corretgé
ed8009883b avatars: ensure no remote avatar is loaded when disableThirdPartyRequests is set 2020-03-29 08:42:25 +02:00
Saúl Ibarra Corretgé
4fd5dc0ee0 analytics: don't enable callstats when disableThirdPartyRequests is set 2020-03-29 08:42:25 +02:00
Saúl Ibarra Corretgé
1bbb937d9d analytics: fix enabling analytics when disableThirdPartyRequests is set 2020-03-29 08:42:25 +02:00
Saúl Ibarra Corretgé
c1fb276937 config: whitelist disableThirdPartyRequests 2020-03-29 08:42:25 +02:00
Keunes
3867d5d62e lang: update Dutch translation 2020-03-28 15:48:00 +01:00
damencho
08ab513d4e Updates nat config and uninstall part in qi guide. 2020-03-28 08:29:05 +01:00
Esteban Badilla A
a2eca4f029 lang: fixes for the spanish translation
Signed-off-by: Esteban Badilla A <ebadilla10@gmail.com>
2020-03-27 23:30:34 +01:00
Saúl Ibarra Corretgé
3121494d4b config: use Jitsi's STUN servers by default, instead of Google's 2020-03-27 22:55:16 +01:00
Juri
92e81c3dbf lang: added estonian translation 2020-03-27 22:19:42 +01:00
damencho
2761a6dbb3 Warn that turn will need port 443. 2020-03-27 15:13:19 -05:00
Saúl Ibarra Corretgé
faf24ca7ec Revert "feat(prejoin_page) Add settings buttons" (#5424)
This reverts commit 08f55ccb94.
2020-03-27 12:17:27 -05:00
James Addison
c5ce44f09d doc(quick install): streamline documentation (#5227)
* Prioritize messaging re: using hosted Jitsi if self-hosted is not required

* Update wording for self-hosting vs hosted

* Expand requirements sentence into document section

* Simplify Ubuntu universe step

* Condense repository and package installation steps

* Add comments for package installation steps

* Simplify wording around hostname configuration

* Simplify lets-encrypt wording

* Move certificate generation step before package installation

* Expand certificate instructions

* Move conference test step to post-installation

* Rephrase installation testing / confirmation step

* Extract platform-specific installation notes

* Rephrase superuser guidance

* Replace lists.jitsi.org link with web.archive.org pointer

* Place /etc/hosts example in code block

* Remove space before colon

* Add spacing before/after 'or' (improves github markdown rendering)

* Revert "Add spacing before/after 'or' (improves github markdown rendering)"

This reverts commit 9f33beb2ab.

* Nit: clarify apt/HTTPS relationship

* Revert "Expand requirements sentence into document section"

This reverts commit cf630983c0.

* Relocate Ubuntu universe repository advice

* More concise Ubuntu universe messaging

* Revert "Extract platform-specific installation notes"

This reverts commit 7161a700cb.

* Revert "Expand certificate instructions"

This reverts commit 5c479e7ffb.

* Revert "Move conference test step to post-installation"

This reverts commit a0ee279b7c.

* Revert "Simplify wording around hostname configuration"

This reverts commit ceab0ab9cf.

* Revert "Revert "Simplify wording around hostname configuration""

This reverts commit a7127d03dc.

* Revert "Revert "Revert "Simplify wording around hostname configuration"""

This reverts commit 1e5413690e.

* Revert "Remove space before colon"

This reverts commit 35cae52722.

* Mark Let's Encrypt step as optional

* Mark Let's Encrypt step as recommended

* Clarify Jitsi repository-add heading

* Nit: remove superfluous newline

* Fixup: restore Let's Encrypt descriptive text from master branch

* Update supported Ubuntu version to 18.04 (LTS)

* Add Ubuntu release codename

* Update minimum supported Debian version to 9 (Stretch)

* Undo relocation of Let's Encrypt script instructions

* Add Jitsi Meet mobile app certificate requirement notice

* 'Note' formatting consistency

* Rephrase sudo language
2020-03-27 12:15:43 -05:00
lenhart
6969114675 lang: Fix "toggleCamera" description
Fix "toggleCamera" description. switch instead of turn off/on
2020-03-27 16:56:29 +01:00
Wikinaut
1aba57e6bb config: change language detection to "true" 2020-03-27 16:40:17 +01:00
Kaor
e9785c8b3d lang: correct bad translation
"toggle camera" is to switch front to rear or rear to front.
The french translation said "on/off camera", it's not exactly that
2020-03-27 16:36:18 +01:00
Paul Menzel
03215d8906 config: fix wording in comment 2020-03-27 15:50:04 +01:00
Дамян Минков
9a5b19babe Migrates jetty config to nginx one (#5413)
* Completely removes jetty config and defaults to nginx.

* Force configuring nginx or apache.

* Fixes certs when upgrading from jetty.

* Fixes certs and restarts jvb.

* Turnserver config conflicts apache2.

* Multi-domain sed only for nginx.

* Updates docs removing jetty.
2020-03-27 09:07:47 -05:00
Sean McBride
e5d87e66bf Various improvements to quick-install document
- removed paragraph about old Debian Wheezy, the link is broken, and Wheezy doesn't even get security updates anymore, so seems unlikely anyone would do a new install with it.
- clarified that Let's Encrypt script uses only the HTTP challenge.
- added links to a few things that newbies might want to look up (nginx, apache, jetty, SIP, FQDN, Let's Encrypt, etc.
- added some basic debugging starting points, based on my experience
- some minor grammatical tweaks
- other minor tweaks
2020-03-26 23:30:12 -05:00
Дамян Минков
e00036d44a Merge pull request #5216 from gbonfiglio/master
fix broken nginx ipv6 listeners
2020-03-26 18:22:41 -05:00
Saúl Ibarra Corretgé
d8059fd0ee lang: fix italian translation 2020-03-26 18:22:24 -05:00
Jaya Allamsetty
6fc7456196 fix(blur): Decrease the blur amount and improve the accuracy 2020-03-26 16:49:51 -04:00
Hristo Terezov
0bd96b9c0e fix(static): Add base. 2020-03-26 12:34:00 -05:00
Andrei Gavrilescu
f502e13edc feat(screenSharing): Add system audio screen sharing 2020-03-26 14:17:44 +02:00
Vlad Piersec
08f55ccb94 feat(prejoin_page) Add settings buttons 2020-03-25 10:50:47 -05:00
Joan Montané
17ca9722b7 lang: update Catalan translation 2020-03-25 12:16:05 +01:00
Bettenbuk Zoltan
8cc9b78e21 feat: add column layout to settings fields 2020-03-25 11:59:48 +01:00
Bettenbuk Zoltan
25b4843327 fix: irregular cursor movement in settings 2020-03-25 11:48:06 +01:00
bgrozev
d13edd8f63 Updates js-utils (pruning the word list). (#5371) 2020-03-24 21:06:41 -05:00
Giorgio Bonfiglio
4e81a7abd3 fix turnserver postinst for ipv6 listener 2020-03-17 22:37:39 +00:00
Giorgio Bonfiglio
5d8d0b9a01 fix broken ipv6 listener 2020-03-17 22:31:56 +00:00
172 changed files with 7784 additions and 1611 deletions

View File

@@ -1,10 +1,10 @@
name: Linter
name: Simple CI
on: [pull_request]
jobs:
run-linter:
name: Run Linter
run-ci:
name: Build Frontend
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
@@ -13,3 +13,4 @@ jobs:
node-version: '12.x'
- run: npm install
- run: npm run lint
- run: make

View File

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

View File

@@ -0,0 +1 @@
<base href="/" />

View File

@@ -120,6 +120,7 @@ import {
import { mediaPermissionPromptVisibilityChanged } from './react/features/overlay';
import { suspendDetected } from './react/features/power-monitor';
import { setSharedVideoStatus } from './react/features/shared-video';
import { AudioMixerEffect } from './react/features/stream-effects/audio-mixer/AudioMixerEffect';
import { createPresenterEffect } from './react/features/stream-effects/presenter';
import { endpointMessageReceived } from './react/features/subtitles';
import { createRnnoiseProcessorPromise } from './react/features/rnnoise';
@@ -659,10 +660,10 @@ export default {
startAudioOnly: config.startAudioOnly,
startScreenSharing: config.startScreenSharing,
startWithAudioMuted: config.startWithAudioMuted
|| config.startSilent
|| isUserInteractionRequiredForUnmute(APP.store.getState()),
|| config.startSilent
|| isUserInteractionRequiredForUnmute(APP.store.getState()),
startWithVideoMuted: config.startWithVideoMuted
|| isUserInteractionRequiredForUnmute(APP.store.getState())
|| isUserInteractionRequiredForUnmute(APP.store.getState())
}))
.then(([ tracks, con ]) => {
tracks.forEach(track => {
@@ -1287,6 +1288,13 @@ export default {
options.confID = `${locationURL.host}${locationURL.pathname}`;
options.createVADProcessor = createRnnoiseProcessorPromise;
// Disable CallStats, if requessted.
if (options.disableThirdPartyRequests) {
delete options.callStatsID;
delete options.callStatsSecret;
delete options.getWiFiStatsMethod;
}
return options;
},
@@ -1417,7 +1425,7 @@ export default {
* in case it fails.
* @private
*/
_turnScreenSharingOff(didHaveVideo) {
async _turnScreenSharingOff(didHaveVideo) {
this._untoggleScreenSharing = null;
this.videoSwitchInProgress = true;
const { receiver } = APP.remoteControl;
@@ -1446,6 +1454,20 @@ export default {
}
});
// If system audio was also shared stop the AudioMixerEffect and dispose of the desktop audio track.
if (this._mixerEffect) {
await this.localAudio.setEffect(undefined);
await this._desktopAudioStream.dispose();
this._mixerEffect = undefined;
this._desktopAudioStream = undefined;
// In case there was no local audio when screen sharing was started the fact that we set the audio stream to
// null will take care of the desktop audio stream cleanup.
} else if (this._desktopAudioStream) {
await this.useAudioStream(null);
this._desktopAudioStream = undefined;
}
if (didHaveVideo) {
promise = promise.then(() => createLocalTracksF({ devices: [ 'video' ] }))
.then(([ stream ]) => this.useVideoStream(stream))
@@ -1585,26 +1607,31 @@ export default {
}
});
return getDesktopStreamPromise.then(([ desktopStream ]) => {
return getDesktopStreamPromise.then(desktopStreams => {
// Stores the "untoggle" handler which remembers whether was
// there any video before and whether was it muted.
this._untoggleScreenSharing
= this._turnScreenSharingOff.bind(this, didHaveVideo);
desktopStream.on(
JitsiTrackEvents.LOCAL_TRACK_STOPPED,
() => {
// If the stream was stopped during screen sharing
// session then we should switch back to video.
this.isSharingScreen
&& this._untoggleScreenSharing
&& this._untoggleScreenSharing();
}
);
const desktopVideoStream = desktopStreams.find(stream => stream.getType() === MEDIA_TYPE.VIDEO);
if (desktopVideoStream) {
desktopVideoStream.on(
JitsiTrackEvents.LOCAL_TRACK_STOPPED,
() => {
// If the stream was stopped during screen sharing
// session then we should switch back to video.
this.isSharingScreen
&& this._untoggleScreenSharing
&& this._untoggleScreenSharing();
}
);
}
// close external installation dialog on success.
externalInstallation && $.prompt.close();
return desktopStream;
return desktopStreams;
}, error => {
DSExternalInstallationInProgress = false;
@@ -1755,7 +1782,29 @@ export default {
this.videoSwitchInProgress = true;
return this._createDesktopTrack(options)
.then(stream => this.useVideoStream(stream))
.then(async streams => {
const desktopVideoStream = streams.find(stream => stream.getType() === MEDIA_TYPE.VIDEO);
if (desktopVideoStream) {
this.useVideoStream(desktopVideoStream);
}
this._desktopAudioStream = streams.find(stream => stream.getType() === MEDIA_TYPE.AUDIO);
if (this._desktopAudioStream) {
// If there is a localAudio stream, mix in the desktop audio stream captured by the screen sharing
// api.
if (this.localAudio) {
this._mixerEffect = new AudioMixerEffect(this._desktopAudioStream);
await this.localAudio.setEffect(this._mixerEffect);
} else {
// If no local stream is present ( i.e. no input audio devices) we use the screen share audio
// stream as we would use a regular stream.
await this.useAudioStream(this._desktopAudioStream);
}
}
})
.then(() => {
this.videoSwitchInProgress = false;
if (config.enableScreenshotCapture) {
@@ -2288,7 +2337,17 @@ export default {
return stream;
})
.then(stream => this.useAudioStream(stream))
.then(async stream => {
// In case screen sharing audio is also shared we mix it with new input stream. The old _mixerEffect
// will be cleaned up when the existing track is replaced.
if (this._mixerEffect) {
this._mixerEffect = new AudioMixerEffect(this._desktopAudioStream);
await stream.setEffect(this._mixerEffect);
}
return this.useAudioStream(stream);
})
.then(() => {
logger.log(`switched local audio device: ${this.localAudio?.getDeviceId()}`);

View File

@@ -110,12 +110,11 @@ 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 independency from
// this config's resolution value. Defaults to requesting an ideal aspect
// ratio of 16:9 with an ideal resolution of 720.
// util#browser#usesNewGumFlow. The constraints are independent from
// this config's resolution value. Defaults to requesting an ideal
// resolution of 720p.
// constraints: {
// video: {
// aspectRatio: 16 / 9,
// height: {
// ideal: 720,
// max: 720,
@@ -344,9 +343,7 @@ var config = {
stunServers: [
// { urls: 'stun:jitsi-meet.example.com:443' },
{ urls: 'stun:stun.l.google.com:19302' },
{ urls: 'stun:stun1.l.google.com:19302' },
{ urls: 'stun:stun2.l.google.com:19302' }
{ urls: 'stun:meet-jit-si-turnrelay.jitsi.net:443' }
],
// Sets the ICE transport policy for the p2p connection. At the time
@@ -392,6 +389,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
@@ -461,6 +461,15 @@ var config = {
// downloadAppsUrl: 'https://docs.example.com/our-apps.html'
// },
// Options related to the remote participant menu.
// remoteVideoMenu: {
// // If set to true the 'Kick out' button will be disabled.
// disableKick: true
// },
// If set to true all muting operations of remote participants will be disabled.
// disableRemoteMute: true,
// List of undocumented settings used in jitsi-meet
/**
_immediateReloadThreshold

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

@@ -0,0 +1,130 @@
.audio-preview {
&-content {
font-size: 15px;
line-height: 24px;
max-height: 456px;
overflow: auto;
width: 328px;
}
&-header {
color: #fff;
display: flex;
padding: 16px;
&-icon {
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: 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;
}
}

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;
}
}
}

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;
}
}
}
}

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

@@ -0,0 +1,65 @@
.video-preview {
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

@@ -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 */

11
debian/control vendored
View File

@@ -16,8 +16,7 @@ Description: WebRTC JavaScript video conferences
Videobridge to provide high quality, scalable video conferences.
.
It is a web interface to Jitsi Videobridge for audio and video
forwarding and relaying, configured to work with jetty instance
running embedded into Jitsi Videobridge
forwarding and relaying.
Package: jitsi-meet-web-config
Architecture: all
@@ -27,9 +26,7 @@ Description: Configuration for web serving of Jitsi Meet
Videobridge to provide high quality, scalable video conferences.
.
It is a web interface to Jitsi Videobridge for audio and video
forwarding and relaying, configured to work with jetty instance
running embedded into Jitsi Videobridge or using a webserver Nginx or
Apache2.
forwarding and relaying, using a webserver Nginx or Apache2.
.
This package contains configuration for Nginx to be used with
Jitsi Meet.
@@ -43,8 +40,7 @@ Description: Prosody configuration for Jitsi Meet
Videobridge to provide high quality, scalable video conferences.
.
It is a web interface to Jitsi Videobridge for audio and video
forwarding and relaying, configured to work with jetty instance
running embedded into Jitsi Videobridge
forwarding and relaying.
.
This package contains configuration for Prosody to be used with
Jitsi Meet.
@@ -56,5 +52,6 @@ Description: Prosody token authentication plugin for Jitsi Meet
Package: jitsi-meet-turnserver
Architecture: all
Breaks: apache2
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"
@@ -136,7 +139,7 @@ case "$1" in
echo -e "\nComponent \"internal.auth.$JVB_HOSTNAME\" \"muc\"" >> $PROSODY_HOST_CONFIG
echo -e " storage = \"null\"" >> $PROSODY_HOST_CONFIG
echo -e " modules_enabled = { \"ping\"; }" >> $PROSODY_HOST_CONFIG
echo -e " admins = { \"focusUser@auth.jitmeet.example.com\", \"jvb@auth.jitmeet.example.com\" }" >> $PROSODY_HOST_CONFIG
echo -e " admins = { \"$JICOFO_AUTH_USER@auth.$JVB_HOSTNAME\", \"jvb@auth.$JVB_HOSTNAME\" }" >> $PROSODY_HOST_CONFIG
fi
if [ ! -f /var/lib/prosody/$JVB_HOSTNAME.crt ]; then

View File

@@ -36,13 +36,17 @@ case "$1" in
rm -f /etc/prosody/conf.avail/$JVB_HOSTNAME.cfg.lua
rm -f /etc/prosody/conf.d/$JVB_HOSTNAME.cfg.lua
JICOFO_AUTH_DOMAIN="auth.$JVB_HOSTNAME"
# clean up generated certificates
rm -f /etc/prosody/certs/$JVB_HOSTNAME.crt
rm -f /etc/prosody/certs/$JVB_HOSTNAME.key
rm -f /etc/prosody/certs/auth.$JVB_HOSTNAME.crt
rm -f /etc/prosody/certs/auth.$JVB_HOSTNAME.key
rm -rf /var/lib/prosody/auth.$JVB_HOSTNAME.*
rm -f /etc/prosody/certs/$JICOFO_AUTH_DOMAIN.crt
rm -f /etc/prosody/certs/$JICOFO_AUTH_DOMAIN.key
rm -rf /var/lib/prosody/$JICOFO_AUTH_DOMAIN.*
rm -rf /var/lib/prosody/$JVB_HOSTNAME.*
# clean created users
rm -rf /var/lib/prosody/`echo $JICOFO_AUTH_DOMAIN | sed -e "s/\./%2e/g"`
fi
# Clear the debconf variable

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"
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 not configured as other nginx sites use port 443"
echo ""
echo "------------------------------------------------"
db_stop
exit 0
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 ""
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,45 +105,53 @@ 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)
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
# SSL for nginx
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
# Hack Debian Buster coturn to be able to bind privileged port 443
COTURN_UNIT_FILE="/lib/systemd/system/coturn.service"
if [[ -f $COTURN_UNIT_FILE ]] && ! grep -q "CAP_NET_BIND_SERVICE" "$COTURN_UNIT_FILE" ; then
sed -i "s/\[Service\]/\[Service\]\nAmbientCapabilities=CAP_NET_BIND_SERVICE/g" $COTURN_UNIT_FILE
systemctl daemon-reload
fi
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"
# SSL for nginx
db_get jitsi-meet/cert-choice
CERT_CHOICE="$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
fi
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"
sed -i "s/#TURNSERVER_ENABLED/TURNSERVER_ENABLED/g" /etc/default/coturn
invoke-rc.d coturn restart || true
# 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
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
invoke-rc.d nginx reload || true
fi
sed -i "s/#TURNSERVER_ENABLED/TURNSERVER_ENABLED/g" /etc/default/coturn
invoke-rc.d coturn restart || true
# Enable turn server in config.js
if [ -f $JITSI_MEET_CONFIG ] ; then
sed -i "s/\/\/ useStunTurn: true/useStunTurn: true/g" $JITSI_MEET_CONFIG
fi
NGINX_STREAM_CONFIG="/etc/nginx/modules-enabled/60-jitsi-meet.conf"
if [ ! -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
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

63
debian/jitsi-meet-turnserver.postrm vendored Normal file
View File

@@ -0,0 +1,63 @@
#!/bin/sh
# postrm script for jitsi-meet-turnserver
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postrm> `remove'
# * <postrm> `purge'
# * <old-postrm> `upgrade' <new-version>
# * <new-postrm> `failed-upgrade' <old-version>
# * <new-postrm> `abort-install'
# * <new-postrm> `abort-install' <old-version>
# * <new-postrm> `abort-upgrade' <old-version>
# * <disappearer's-postrm> `disappear' <overwriter>
# <overwriter-version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
# Load debconf
. /usr/share/debconf/confmodule
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
if [ -x "/etc/init.d/apache2" ]; then
invoke-rc.d apache2 reload || true
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
if [ -x "/etc/init.d/apache2" ]; then
invoke-rc.d apache2 reload || true
fi
# Clear the debconf variable
db_purge
;;
upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
;;
*)
echo "postrm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
db_stop
exit 0

View File

@@ -68,12 +68,11 @@ case "$1" in
FORCE_APACHE="true"
fi
UPLOADED_CERT_CHOICE="I want to use my own certificate"
# if first time config ask for certs, or if we are reconfiguring
if [ -z "$JVB_HOSTNAME_OLD" ] || [ "$RECONFIGURING" = "true" ] ; then
# SSL for nginx
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
UPLOADED_CERT_CHOICE="I want to use my own certificate"
if [ "$CERT_CHOICE" = "$UPLOADED_CERT_CHOICE" ] ; then
db_set jitsi-meet/cert-path-key "/etc/ssl/$JVB_HOSTNAME.key"
@@ -104,24 +103,57 @@ case "$1" in
if [ ! -f $JITSI_MEET_CONFIG ] ; then
cp /usr/share/jitsi-meet-web-config/config.js $JITSI_MEET_CONFIG
# replaces needed config for multidomain as it works only with nginx
sed -i "s/conference.jitsi-meet.example.com/conference.<\!--# echo var=\"subdomain\" default=\"\" -->jitsi-meet.example.com/g" $JITSI_MEET_CONFIG
if [[ "$FORCE_NGINX" = "true" ]] ; then
sed -i "s/conference.jitsi-meet.example.com/conference.<\!--# echo var=\"subdomain\" default=\"\" -->jitsi-meet.example.com/g" $JITSI_MEET_CONFIG
fi
sed -i "s/jitsi-meet.example.com/$JVB_HOSTNAME/g" $JITSI_MEET_CONFIG
fi
# this is new install let's configure jvb to serve meet
# no-nginx, no-apache installed on machine, this is new install or reconfiguring old one which have jvb_serve set
# getting rid of jetty serving web
if [[ "$JVB_SERVE" = "true" ]] ; then
echo ""
echo "------------------------------------------------"
echo "You are using jetty to serve jitsi-meet, it is recommended to uninstall(purge) and use default installation that comes with nginx!"
echo ""
echo "When using the following command, any custom config will be LOST, please backup /etc/jitsi !!!"
echo ""
echo "You can purge your installation using the following command:"
echo "apt-get purge jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-web jicofo jitsi-videobridge"
echo "------------------------------------------------"
echo ""
elif [[ "$FORCE_NGINX" = "true" && ( -z "$JVB_HOSTNAME_OLD" || "$RECONFIGURING" = "true" ) ]] ; then
JVB_CONFIG="/etc/jitsi/videobridge/sip-communicator.properties"
# we will write to the file if missing create it
if [ -f $JVB_CONFIG ] ; then
echo ""
echo "------------------------------------------------"
echo ""
echo "You are using jetty to serve jitsi-meet, we are now upgrading you to use nginx!"
echo ""
echo "If you are using Lets Encrypt certificates please re-run the script."
echo ""
echo "------------------------------------------------"
echo ""
sed -i "s/org.jitsi.videobridge.rest.jetty/#org.jitsi.videobridge.rest.jetty/g" $JVB_CONFIG
sed -i "s/org.jitsi.videobridge.TCP_HARVESTER_PORT/#org.jitsi.videobridge.TCP_HARVESTER_PORT/g" $JVB_CONFIG
if [ -d /run/systemd/system ]; then
systemctl restart jitsi-videobridge2.service >/dev/null || true
fi
# Removing this value will force nginx or apache to be locally configured
JVB_HOSTNAME_OLD=""
db_get jitsi-meet/cert-choice
CERT_CHOICE="$RET"
# Fix certs on upgrade from jetty
if [ "$CERT_CHOICE" = "$UPLOADED_CERT_CHOICE" ] ; then
db_get jitsi-meet/cert-path-key
CERT_KEY="$RET"
db_get jitsi-meet/cert-path-crt
CERT_CRT="$RET"
else
# create self-signed certs
CERT_KEY="/etc/jitsi/meet/$JVB_HOSTNAME.key"
CERT_CRT="/etc/jitsi/meet/$JVB_HOSTNAME.crt"
fi
fi
db_set jitsi-meet/jvb-serve "false"
fi
if [[ "$FORCE_NGINX" = "true" && ( -z "$JVB_HOSTNAME_OLD" || "$RECONFIGURING" = "true" ) ]] ; then
# this is a reconfigure, lets just delete old links
if [ "$RECONFIGURING" = "true" ] ; then

View File

@@ -11,4 +11,5 @@ fonts /usr/share/jitsi-meet/
images /usr/share/jitsi-meet/
lang /usr/share/jitsi-meet/
connection_optimization /usr/share/jitsi-meet/
resources/robots.txt /usr/share/jitsi-meet/
resources/*.sh /usr/share/jitsi-meet/scripts/

43
doc/README.md Normal file
View File

@@ -0,0 +1,43 @@
# 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)

View File

@@ -50,6 +50,8 @@ Component "conference.jitmeet.example.com" "muc"
-- "token_verification";
}
admins = { "focusUser@auth.jitmeet.example.com" }
muc_room_locking = false
muc_room_default_public_jids = true
-- internal muc component
Component "internal.auth.jitmeet.example.com" "muc"

View File

@@ -11,3 +11,5 @@ no-tcp
listening-port=443
tls-listening-port=4445
external-ip=__external_ip_address__
syslog

View File

@@ -11,9 +11,8 @@ 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;
}

View File

@@ -2,6 +2,7 @@ server_names_hash_bucket_size 64;
server {
listen 80;
listen [::]:80;
server_name jitsi-meet.example.com;
location ^~ /.well-known/acme-challenge/ {
@@ -17,6 +18,7 @@ server {
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name jitsi-meet.example.com;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

View File

@@ -225,6 +225,8 @@ npm install
make
```
_NOTE: When installing on older distributions keep in mind that you need Node.js >= 10 and npm >= 6._
Edit host names in `/srv/jitsi-meet/config.js` (see also the example config file):
```
var config = {

View File

@@ -1,16 +1,12 @@
# Jitsi Meet quick install
This document describes the required steps for a quick Jitsi Meet installation on a Debian based GNU/Linux system. Debian 8 (Jessie) or later, and Ubuntu 14.04 or later are supported out-of-the-box.
This guide helps you ___host your own Jitsi server___. If you want to have a video conference without setting up any infrastructure, use https://meet.jit.si instead.
Debian Wheezy and other older systems may require additional things to be done. Specifically for Wheezy, [libc needs to be updated](http://lists.jitsi.org/pipermail/users/2015-September/010064.html).
This document describes the required steps for a quick Jitsi Meet installation on a Debian based GNU/Linux system. Debian 9 (Stretch) or later, and Ubuntu 18.04 (Bionic Beaver) or later are supported out-of-the-box.
Also note that a recent default Ubuntu installation has only the `main` repository enabled, and Jitsi Meet needs packages from `universe`. Check your `/etc/apt/sources.list` file, and if `universe` is not present refer to [Ubuntu's documentation](https://help.ubuntu.com/community/Repositories/Ubuntu) on how to enable it. (Usually it amounts to copying the `main` lines and changing to `universe`.)
On Ubuntu systems, Jitsi requires dependencies from Ubuntu's `universe` package repository. To ensure this is enabled, run `apt-add-repository universe` at the command-line.
N.B.:
a.) All commands are supposed to be run by root. If you are logged in as a regular user with sudo rights, please prepend ___sudo___ to each of the commands.
b.) You only need to do this if you want to ___host your own Jitsi server___. If you just want to have a video conference with someone, use https://meet.jit.si instead.
_Note_: Many of the installation steps require elevated privileges. If you are logged in using a regular user account, you may need to temporarily increase your permissions (for example, by using `sudo` for individual commands).
## Basic Jitsi Meet install
@@ -24,54 +20,55 @@ Then add the same FQDN in the `/etc/hosts` file, associating it with the loopbac
Finally on the same machine test that you can ping the FQDN with: `ping "$(hostname)"`-
### Add the repository
### 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 -
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
```
### Update the package lists
```sh
apt-get update
```
(If you get an error:
E: The method driver /usr/lib/apt/methods/https could not be found.
run:
```sh
apt-get install apt-transport-https
```
)
### Install Jitsi Meet
Note: Something to consider before installation is how you're planning to serve Jitsi Meet. The installer will check if Nginx or Apache is present (with this order) and configure a virtualhost within the web server it finds to serve Jitsi Meet. If none of the above is found it then configures itself to be served via jetty. So if for example you are planning on deploying Jitsi Meet with a web server, you have to make sure to install the server **before** installing 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`.
```sh
# Ensure support is available for apt repositories served via HTTPS
apt-get install apt-transport-https
# Retrieve the latest package versions across all repositories
apt-get update
# Perform jitsi-meet installation
apt-get -y install jitsi-meet
```
During the installation, you will be asked to enter the hostname of the Jitsi Meet instance. If you have a FQDN hostname for the instance already set up in DNS, enter it there. If you don't have a resolvable hostname, you can enter the IP address of the machine (if it is static or doesn't change).
During the installation, you will be asked to enter the hostname of the Jitsi Meet instance. If you have a [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) for the instance already set up in DNS, enter it there. If you don't have a resolvable hostname, you can enter the IP address of the machine (if it is static or doesn't change).
This hostname (or IP address) will be used for virtualhost configuration inside the Jitsi Meet and also, you and your correspondents will be using it to access the web conferences.
### Generate a Let's Encrypt certificate
### Generate a Let's Encrypt certificate (optional, recommended)
Simply run the following in your shell
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.
Simply run the following in your shell:
```sh
/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
```
Note that this script uses the [HTTP-01 challenge type](https://letsencrypt.org/docs/challenge-types/) and thus your instance needs to be accessible from the public internet. If you want to use a different challenge type, don't use this script and instead choose ___I want to use my own certificate___ during jitsi-meet installation.
#### Advanced configuration
If installation is on a machine [behind NAT](https://github.com/jitsi/jitsi-meet/blob/master/doc/faq.md) further configuration of jitsi-videobridge is needed in order for it to be accessible.
Provided that all required ports are routed (forwarded) to the machine that it runs on. By default these ports are (TCP/443 or TCP/4443 and UDP 10000).
The following extra lines need to be added the file `/etc/jitsi/videobridge/sip-communicator.properties`:
If the installation is on a machine [behind NAT](https://github.com/jitsi/jitsi-meet/blob/master/doc/faq.md) jitsi-videobridge should configure itself automatically on boot. If three way call does not work further configuration of jitsi-videobridge is needed in order for it to be accessible from outside.
Provided that all required ports are routed (forwarded) to the machine that it runs on. By default these ports are (TCP/443 or TCP/4443 and UDP/10000).
The following extra lines need to be added to the file `/etc/jitsi/videobridge/sip-communicator.properties`:
```
org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=<Local.IP.Address>
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=<Public.IP.Address>
```
And comment the existing `org.ice4j.ice.harvest.STUN_MAPPING_HARVESTER_ADDRESSES`.
See [the documentation of ice4j](https://github.com/jitsi/ice4j/blob/master/doc/configuration.md)
for details.
@@ -86,18 +83,22 @@ To load the values and check them look [here](#systemd-details) for details.
By default, anyone who has access to your jitsi instance will be able to start a conference: if your server is open to the world, anyone can have a chat with anyone else. If you want to limit the ability to start a conference to registered users, set up a "secure domain". Follow the instructions at https://github.com/jitsi/jicofo#secure-domain.
### Open a conference
### Confirm that your installation is working
Launch a web browser (Chrome, Chromium or latest Opera) and enter in the URL bar the hostname (or IP address) you used in the previous step.
Launch a web browser (Chrome, Chromium or latest Opera) and enter the hostname or IP address from the previous step into the address bar.
Confirm that you trust the self-signed certificate of the newly installed Jitsi Meet.
If you used a self-signed certificate (as opposed to using Let's Encrypt), your web browser will ask you to confirm that you trust the certificate.
Enjoy!
You should see a web page prompting you to create a new meeting. Make sure that you can successfully create a meeting and that other participants are able to join the session.
If this all worked, then congratulations! You have an operational Jitsi conference service.
## Adding sip-gateway to Jitsi Meet
### Install Jigasi
Jigasi is a server-side application acting as a gateway to Jitsi Meet conferences. It allows regular [SIP](https://en.wikipedia.org/wiki/Session_Initiation_Protocol) clients to join meetings and provides transcription capabilities.
```sh
apt-get -y install jigasi
```
@@ -119,7 +120,7 @@ Enjoy!
## Uninstall
```sh
apt-get purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge
apt-get purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge2
```
Sometimes the following packages will fail to uninstall properly:
@@ -129,13 +130,25 @@ Sometimes the following packages will fail to uninstall properly:
When this happens, just run the uninstall command a second time and it should be ok.
The reason for failure is that sometimes, the uninstall script is faster than the process that stops the daemons. The second run of the uninstall command fixes this, as by then the jigasi or jvb daemons are already stopped.
The reason for the failure is that sometimes the uninstall script is faster than the process that stops the daemons. The second run of the uninstall command fixes this, as by then the jigasi or jitsi-videobridge daemons are already stopped.
#### Systemd details
To reload the systemd changes on a running system execute `systemctl daemon-reload` and `service jitsi-videobridge restart`.
To check the tasks part execute `service jitsi-videobridge status` and you should see `Tasks: XX (limit: 65000)`.
To reload the systemd changes on a running system execute `systemctl daemon-reload` and `service jitsi-videobridge2 restart`.
To check the tasks part execute `service jitsi-videobridge2 status` and you should see `Tasks: XX (limit: 65000)`.
To check the files and process part execute ```cat /proc/`cat /var/run/jitsi-videobridge/jitsi-videobridge.pid`/limits``` and you should see:
```
Max processes 65000 65000 processes
Max open files 65000 65000 files
```
## Debugging problems
If you run into problems, one thing to try is using a different web browser. Some versions of some browsers are known to have issues with Jitsi Meet. You can also visit https://test.webrtc.org to test your browser's [WebRTC](https://en.wikipedia.org/wiki/WebRTC) support.
Another place to look is the various log files:
```
/var/log/jitsi/jvb.log
/var/log/jitsi/jicofo.log
/var/log/prosody/prosody.log
```

View File

@@ -31,7 +31,7 @@ var interfaceConfig = {
APP_NAME: 'Jitsi Meet',
NATIVE_APP_NAME: 'Jitsi Meet',
PROVIDER_NAME: 'Jitsi',
LANG_DETECTION: false, // Allow i18n to detect the system language
LANG_DETECTION: true, // Allow i18n to detect the system language
INVITATION_POWERED_BY: true,
/**

View File

@@ -5,10 +5,10 @@ require_relative '../node_modules/@react-native-community/cli-platform-ios/nativ
target 'jitsi-meet' do
project 'app/app.xcodeproj'
pod 'Crashlytics', '~> 3.12.0'
pod 'Fabric', '~> 1.9.0'
pod 'Firebase/Core', '~> 5.18.0'
pod 'Firebase/DynamicLinks', '~> 5.18.0'
pod 'Crashlytics', '~> 3.14.0'
pod 'Fabric', '~> 1.10.2'
pod 'Firebase/Core', '~> 6.16.0'
pod 'Firebase/DynamicLinks', '~> 6.16.0'
end
target 'JitsiMeet' do

View File

@@ -11,10 +11,10 @@ PODS:
- CocoaLumberjack (3.5.3):
- CocoaLumberjack/Core (= 3.5.3)
- CocoaLumberjack/Core (3.5.3)
- Crashlytics (3.12.0):
- Fabric (~> 1.9.0)
- Crashlytics (3.14.0):
- Fabric (~> 1.10.2)
- DoubleConversion (1.1.6)
- Fabric (1.9.0)
- Fabric (1.10.2)
- FBLazyVector (0.61.5-jitsi.1)
- FBReactNativeSpec (0.61.5-jitsi.1):
- Folly (= 2018.10.22.00)
@@ -23,34 +23,48 @@ PODS:
- React-Core (= 0.61.5-jitsi.1)
- React-jsi (= 0.61.5-jitsi.1)
- ReactCommon/turbomodule/core (= 0.61.5-jitsi.1)
- Firebase/Core (5.18.0):
- Firebase/Core (6.16.0):
- Firebase/CoreOnly
- FirebaseAnalytics (= 5.7.0)
- Firebase/CoreOnly (5.18.0):
- FirebaseCore (= 5.3.1)
- Firebase/DynamicLinks (5.18.0):
- FirebaseAnalytics (= 6.2.2)
- Firebase/CoreOnly (6.16.0):
- FirebaseCore (= 6.6.1)
- Firebase/DynamicLinks (6.16.0):
- Firebase/CoreOnly
- FirebaseDynamicLinks (= 3.4.1)
- FirebaseAnalytics (5.7.0):
- FirebaseCore (~> 5.3)
- FirebaseInstanceID (~> 3.6)
- GoogleAppMeasurement (= 5.7.0)
- GoogleUtilities/AppDelegateSwizzler (~> 5.2)
- GoogleUtilities/MethodSwizzler (~> 5.2)
- GoogleUtilities/Network (~> 5.2)
- "GoogleUtilities/NSData+zlib (~> 5.2)"
- nanopb (~> 0.3)
- FirebaseAnalyticsInterop (1.2.0)
- FirebaseCore (5.3.1):
- GoogleUtilities/Logger (~> 5.2)
- FirebaseDynamicLinks (3.4.1):
- FirebaseAnalytics (~> 5.1)
- FirebaseAnalyticsInterop (~> 1.0)
- FirebaseCore (~> 5.2)
- FirebaseInstanceID (3.7.0):
- FirebaseCore (~> 5.2)
- GoogleUtilities/Environment (~> 5.2)
- GoogleUtilities/UserDefaults (~> 5.2)
- FirebaseDynamicLinks (~> 4.0.6)
- FirebaseAnalytics (6.2.2):
- FirebaseCore (~> 6.6)
- FirebaseInstanceID (~> 4.3)
- GoogleAppMeasurement (= 6.2.2)
- GoogleUtilities/AppDelegateSwizzler (~> 6.0)
- GoogleUtilities/MethodSwizzler (~> 6.0)
- GoogleUtilities/Network (~> 6.0)
- "GoogleUtilities/NSData+zlib (~> 6.0)"
- nanopb (= 0.3.9011)
- FirebaseAnalyticsInterop (1.5.0)
- FirebaseCore (6.6.1):
- FirebaseCoreDiagnostics (~> 1.2)
- FirebaseCoreDiagnosticsInterop (~> 1.2)
- GoogleUtilities/Environment (~> 6.5)
- GoogleUtilities/Logger (~> 6.5)
- FirebaseCoreDiagnostics (1.2.2):
- FirebaseCoreDiagnosticsInterop (~> 1.2)
- GoogleDataTransportCCTSupport (~> 2.0)
- GoogleUtilities/Environment (~> 6.5)
- GoogleUtilities/Logger (~> 6.5)
- nanopb (~> 0.3.901)
- FirebaseCoreDiagnosticsInterop (1.2.0)
- FirebaseDynamicLinks (4.0.8):
- FirebaseAnalyticsInterop (~> 1.3)
- FirebaseCore (~> 6.2)
- FirebaseInstallations (1.1.1):
- FirebaseCore (~> 6.6)
- GoogleUtilities/UserDefaults (~> 6.5)
- PromisesObjC (~> 1.2)
- FirebaseInstanceID (4.3.2):
- FirebaseCore (~> 6.6)
- FirebaseInstallations (~> 1.0)
- GoogleUtilities/Environment (~> 6.5)
- GoogleUtilities/UserDefaults (~> 6.5)
- Folly (2018.10.22.00):
- boost-for-react-native
- DoubleConversion
@@ -61,33 +75,37 @@ PODS:
- DoubleConversion
- glog
- glog (0.3.5)
- GoogleAppMeasurement (5.7.0):
- GoogleUtilities/AppDelegateSwizzler (~> 5.2)
- GoogleUtilities/MethodSwizzler (~> 5.2)
- GoogleUtilities/Network (~> 5.2)
- "GoogleUtilities/NSData+zlib (~> 5.2)"
- nanopb (~> 0.3)
- GoogleAppMeasurement (6.2.2):
- GoogleUtilities/AppDelegateSwizzler (~> 6.0)
- GoogleUtilities/MethodSwizzler (~> 6.0)
- GoogleUtilities/Network (~> 6.0)
- "GoogleUtilities/NSData+zlib (~> 6.0)"
- nanopb (= 0.3.9011)
- GoogleDataTransport (5.1.0)
- GoogleDataTransportCCTSupport (2.0.1):
- GoogleDataTransport (~> 5.1)
- nanopb (~> 0.3.901)
- GoogleSignIn (5.0.1):
- AppAuth (~> 1.2)
- GTMAppAuth (~> 1.0)
- GTMSessionFetcher/Core (~> 1.1)
- GoogleUtilities/AppDelegateSwizzler (5.4.1):
- GoogleUtilities/AppDelegateSwizzler (6.5.2):
- GoogleUtilities/Environment
- GoogleUtilities/Logger
- GoogleUtilities/Network
- GoogleUtilities/Environment (5.4.1)
- GoogleUtilities/Logger (5.4.1):
- GoogleUtilities/Environment (6.5.2)
- GoogleUtilities/Logger (6.5.2):
- GoogleUtilities/Environment
- GoogleUtilities/MethodSwizzler (5.4.1):
- GoogleUtilities/MethodSwizzler (6.5.2):
- GoogleUtilities/Logger
- GoogleUtilities/Network (5.4.1):
- GoogleUtilities/Network (6.5.2):
- GoogleUtilities/Logger
- "GoogleUtilities/NSData+zlib"
- GoogleUtilities/Reachability
- "GoogleUtilities/NSData+zlib (5.4.1)"
- GoogleUtilities/Reachability (5.4.1):
- "GoogleUtilities/NSData+zlib (6.5.2)"
- GoogleUtilities/Reachability (6.5.2):
- GoogleUtilities/Logger
- GoogleUtilities/UserDefaults (5.4.1):
- GoogleUtilities/UserDefaults (6.5.2):
- GoogleUtilities/Logger
- GTMAppAuth (1.0.0):
- AppAuth/Core (~> 1.0)
@@ -97,12 +115,13 @@ PODS:
- GTMSessionFetcher/Core (1.2.2)
- GTMSessionFetcher/Full (1.2.2):
- GTMSessionFetcher/Core (= 1.2.2)
- nanopb (0.3.901):
- nanopb/decode (= 0.3.901)
- nanopb/encode (= 0.3.901)
- nanopb/decode (0.3.901)
- nanopb/encode (0.3.901)
- nanopb (0.3.9011):
- nanopb/decode (= 0.3.9011)
- nanopb/encode (= 0.3.9011)
- nanopb/decode (0.3.9011)
- nanopb/encode (0.3.9011)
- ObjectiveDropboxOfficial (3.9.4)
- PromisesObjC (1.2.8)
- RCTRequired (0.61.5-jitsi.1)
- RCTTypeSafety (0.61.5-jitsi.1):
- FBLazyVector (= 0.61.5-jitsi.1)
@@ -352,13 +371,13 @@ DEPENDENCIES:
- Amplitude-iOS (~> 4.0.4)
- BVLinearGradient (from `../node_modules/react-native-linear-gradient`)
- CocoaLumberjack (~> 3.5.3)
- Crashlytics (~> 3.12.0)
- Crashlytics (~> 3.14.0)
- DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`)
- Fabric (~> 1.9.0)
- Fabric (~> 1.10.2)
- FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector/`)
- FBReactNativeSpec (from `../node_modules/react-native/Libraries/FBReactNativeSpec/`)
- Firebase/Core (~> 5.18.0)
- Firebase/DynamicLinks (~> 5.18.0)
- Firebase/Core (~> 6.16.0)
- Firebase/DynamicLinks (~> 6.16.0)
- Folly (from `../node_modules/react-native/third-party-podspecs/Folly.podspec`)
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
- ObjectiveDropboxOfficial (~> 3.9.4)
@@ -401,23 +420,29 @@ SPEC REPOS:
- Amplitude-iOS
- boost-for-react-native
- CocoaLumberjack
- ObjectiveDropboxOfficial
trunk:
- AppAuth
- Crashlytics
- Fabric
- Firebase
- FirebaseAnalytics
- FirebaseAnalyticsInterop
- FirebaseCore
- FirebaseCoreDiagnostics
- FirebaseCoreDiagnosticsInterop
- FirebaseDynamicLinks
- FirebaseInstallations
- FirebaseInstanceID
- GoogleAppMeasurement
- GoogleUtilities
- nanopb
- ObjectiveDropboxOfficial
trunk:
- AppAuth
- GoogleDataTransport
- GoogleDataTransportCCTSupport
- GoogleSignIn
- GoogleUtilities
- GTMAppAuth
- GTMSessionFetcher
- nanopb
- PromisesObjC
EXTERNAL SOURCES:
BVLinearGradient:
@@ -501,26 +526,32 @@ SPEC CHECKSUMS:
boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c
BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872
CocoaLumberjack: 2f44e60eb91c176d471fdba43b9e3eae6a721947
Crashlytics: 07fb167b1694128c1c9a5a5cc319b0e9c3ca0933
Crashlytics: 540b7e5f5da5a042647227a5e3ac51d85eed06df
DoubleConversion: 5805e889d232975c086db112ece9ed034df7a0b2
Fabric: f988e33c97f08930a413e08123064d2e5f68d655
Fabric: 706c8b8098fff96c33c0db69cbf81f9c551d0d74
FBLazyVector: 4a5251159a3ed05dc11cc8b74cf937869935814b
FBReactNativeSpec: 6fa602a20993212cc9877a81838578ffb0008bc9
Firebase: 02f3281965c075426141a0ce1277e9de6649cab9
FirebaseAnalytics: 23851fe602c872130a2c5c55040b302120346cc2
FirebaseAnalyticsInterop: efbe45c8385ec626e29f9525e5ebd38520dfb6c1
FirebaseCore: 52f851b30e11360f1e67cf04b1edfebf0a47a2d3
FirebaseDynamicLinks: f209c3caccd82102caa0e91d393e3ccc593501fd
FirebaseInstanceID: bd6fc5a258884e206fd5c474ebe4f5b00e21770e
Firebase: 497158b816d0a86fc31babbd05546fcd7e6083ff
FirebaseAnalytics: cf95d3aab897612783020fbd98401d5366f135ee
FirebaseAnalyticsInterop: 3f86269c38ae41f47afeb43ebf32a001f58fcdae
FirebaseCore: 85064903ed6c28e47fec9c7bd149d94ba1b6b6e7
FirebaseCoreDiagnostics: e9b4cd8ba60dee0f2d13347332e4b7898cca5b61
FirebaseCoreDiagnosticsInterop: 296e2c5f5314500a850ad0b83e9e7c10b011a850
FirebaseDynamicLinks: 417dc6dbb6013233c77558290d73296f429656a6
FirebaseInstallations: acb3216eb9784d3b1d2d2d635ff74fa892cc0c44
FirebaseInstanceID: 7ee0d6777013bb952f377b41965bf132b6a075be
Folly: 30e7936e1c45c08d884aa59369ed951a8e68cf51
glog: 1f3da668190260b06b429bb211bfbee5cd790c28
GoogleAppMeasurement: 6cf307834da065863f9faf4c0de0a936d81dd832
GoogleAppMeasurement: d0560d915abf15e692e8538ba1d58442217b6aff
GoogleDataTransport: b29a21d813e906014ca16c00897827e40e4a24ab
GoogleDataTransportCCTSupport: 6f15a89b0ca35d6fa523e1f752ef818588885988
GoogleSignIn: 3a51b9bb8e48b635fd7f4272cee06ca260345b86
GoogleUtilities: 1e25823cbf46540b4284f6ef8e17b3a68ee12bbc
GoogleUtilities: ad0f3b691c67909d03a3327cc205222ab8f42e0e
GTMAppAuth: 4deac854479704f348309e7b66189e604cf5e01e
GTMSessionFetcher: 61bb0f61a4cb560030f1222021178008a5727a23
nanopb: 2901f78ea1b7b4015c860c2fdd1ea2fee1a18d48
nanopb: 18003b5e52dab79db540fe93fe9579f399bd1ccd
ObjectiveDropboxOfficial: a5afefc83f6467c42c45f2253f583f2ad1ffc701
PromisesObjC: c119f3cd559f50b7ae681fa59dc1acd19173b7e6
RCTRequired: f63dd90a89a60602acdd44c42e5d2645ca60ab79
RCTTypeSafety: 24a3c6d55684046ed550b1d0ef083a9bf71c8bd4
React: 71c5a51135f291c3b32c0b558e167b858ae50e84
@@ -553,6 +584,6 @@ SPEC CHECKSUMS:
RNWatch: 09738b339eceb66e4d80a2371633ca5fb380fa42
Yoga: 7b4209fda2441f99d54dd6cf4c82b094409bb68f
PODFILE CHECKSUM: 0fdfa45ae809c9460c80be3e0d4bbb822fccc418
PODFILE CHECKSUM: f615794fb9184757b00cd16e534824ba6ee2fc98
COCOAPODS: 1.8.4

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

@@ -293,7 +293,7 @@
B35383AD1DDA0083008F406A /* Adjust embedded framework architectures */,
0BB7DA181EC9E695007AAE98 /* Adjust ATS */,
DEF4813D224925A2002AD03A /* Copy Google Plist file */,
DEC2069321CBBD6900072F03 /* Setup Fabric */,
DEC2069321CBBD6900072F03 /* Setup Crashlytics */,
DE11877A21EE09640078D059 /* Setup Google reverse URL handler */,
DE4F6D6E22005C0400DE699E /* Setup Dropbox */,
0BEA5C491F7B8F73000D0AB4 /* Embed Watch Content */,
@@ -492,7 +492,7 @@
shellPath = /bin/sh;
shellScript = "INFO_PLIST=\"$BUILT_PRODUCTS_DIR/$INFOPLIST_PATH\"\nDROPBOX_KEY_FILE=\"$PROJECT_DIR/dropbox.key\"\n\nif [[ -f $DROPBOX_KEY_FILE ]]; then\n /usr/libexec/PlistBuddy -c \"Delete :LSApplicationQueriesSchemes\" $INFO_PLIST\n /usr/libexec/PlistBuddy -c \"Add :LSApplicationQueriesSchemes array\" $INFO_PLIST\n /usr/libexec/PlistBuddy -c \"Add :LSApplicationQueriesSchemes:0 string 'dbapi-2'\" $INFO_PLIST\n /usr/libexec/PlistBuddy -c \"Add :LSApplicationQueriesSchemes:1 string 'dbapi-8-emm'\" $INFO_PLIST\n\n DROPBOX_KEY=$(head -n 1 $DROPBOX_KEY_FILE)\n /usr/libexec/PlistBuddy -c \"Add :CFBundleURLTypes:2:CFBundleURLName string dropbox\" $INFO_PLIST\n /usr/libexec/PlistBuddy -c \"Add :CFBundleURLTypes:2:CFBundleURLSchemes array\" $INFO_PLIST\n /usr/libexec/PlistBuddy -c \"Add :CFBundleURLTypes:2:CFBundleURLSchemes:0 string $DROPBOX_KEY\" $INFO_PLIST\nfi\n";
};
DEC2069321CBBD6900072F03 /* Setup Fabric */ = {
DEC2069321CBBD6900072F03 /* Setup Crashlytics */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -501,14 +501,14 @@
);
inputPaths = (
);
name = "Setup Fabric";
name = "Setup Crashlytics";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "${PODS_ROOT}/Fabric/run\n";
shellScript = "GOOGLE_PLIST=\"$PROJECT_DIR/GoogleService-Info.plist\"\n\nif [[ -f $GOOGLE_PLIST ]]; then\n if [ \"${CONFIGURATION}\" != \"Debug\" ]; then\n find \"${DWARF_DSYM_FOLDER_PATH}\" -name \"*.dSYM\" | xargs -I \\{\\} ${PODS_ROOT}/Fabric/upload-symbols -gsp $GOOGLE_PLIST -p ios \\{\\}\n fi\nfi\n";
};
DEF4813D224925A2002AD03A /* Copy Google Plist file */ = {
isa = PBXShellScriptBuildPhase;

View File

@@ -17,7 +17,7 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>20.1.0</string>
<string>20.2.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.1.0</string>
<string>20.2.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.1.0</string>
<string>20.2.0</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CLKComplicationPrincipalClass</key>

View File

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

View File

@@ -4,6 +4,7 @@
"bg": "Búlgar",
"ca": "Català",
"cs": "Txec",
"da": "Danès",
"de": "Alemany",
"el": "Grec",
"enGB": "Anglès (Regne Unit)",
@@ -12,9 +13,9 @@
"esUS": "Espanyol (Amèrica llatina)",
"fi": "Finès",
"fr": "Francès",
"frCA": "Francès (Canadenc)",
"frCA": "Francès (Canadà)",
"hr": "Croat",
"hu": "",
"hu": "Hongarès",
"hy": "Armeni",
"it": "Italià",
"ja": "Japonès",
@@ -28,5 +29,5 @@
"tr": "Turc",
"vi": "Vietnamita",
"zhCN": "Xinès (Xina)",
"zhTW": "Coreà"
}
"zhTW": "Xinès (Taiwan)"
}

View File

@@ -1,18 +1,18 @@
{
"en": "Englisch",
"af": "",
"az": "",
"af": "Afrikaans",
"az": "Aserbaidschanisch",
"bg": "Bulgarisch",
"cs": "",
"cs": "Tschechisch",
"de": "Deutsch",
"el": "",
"el": "Griechisch",
"eo": "Esperanto",
"es": "Spanisch",
"fr": "Französisch",
"hy": "Armenisch",
"it": "Italienisch",
"ja": "",
"ko": "",
"ja": "Japanisch",
"ko": "Koreanisch",
"nb": "Norwegisch (Bokmal)",
"oc": "Okzitanisch",
"pl": "Polnisch",
@@ -22,6 +22,6 @@
"sl": "Slowenisch",
"sv": "Schwedisch",
"tr": "Türkisch",
"vi": "",
"vi": "Vietnamesisch",
"zhCN": "Chinesisch (China)"
}
}

View File

@@ -28,5 +28,5 @@
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chino (China)",
"zhTW": "Chino (Taiwan)\"msgstr \""
"zhTW": "Chino (Taiwan)"
}

View File

@@ -28,5 +28,5 @@
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chino (China)",
"zhTW": "Chino (Taiwan)\"msgstr \""
"zhTW": "Chino (Taiwan)"
}

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

@@ -0,0 +1,33 @@
{
"en": "Inglise keel",
"af": "Afrikaani keel",
"bg": "Bulgaaria keel",
"ca": "Katalaani keel",
"cs": "Tšehhi keel",
"de": "Saksa keel",
"el": "Kreeka keel",
"enGB": "Inglise keel (Ühendkuningriik)",
"eo": "Esperanto keel",
"es": "Hispaania keel",
"esUS": "Hispaania keel (Ladina-Ameerika)",
"et": "Eesti keel",
"fi": "Soome keel",
"fr": "Prantsuse keel",
"frCA": "Prantsuse keel (Kanada)",
"hr": "Horvaadi keel",
"hu": "Ungari keel",
"hy": "Armeenia keel",
"it": "Itaalia keel",
"ja": "Jaapani keel",
"ko": "Korea keel",
"nl": "Hollandi keel",
"oc": "Oksitaani keel",
"pl": "Poola keel",
"ptBR": "Portigali keel (Brasiilia)",
"ru": "Vene keel",
"sv": "Roosi keel",
"tr": "Türgi keel",
"vi": "Vietnami keel",
"zhCN": "Hiina keel (Hiina)",
"zhTW": "Hiina keel (Tai)"
}

View File

@@ -28,5 +28,5 @@
"tr": "Török",
"vi": "Vietnámi",
"zhCN": "Kínai (Kína)",
"zhTW": "Kínai (Tajvan)\"msgstr \""
"zhTW": "Kínai (Tajvan)"
}

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

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

View File

@@ -1,32 +1,32 @@
{
"en": "Angielski",
"af": "Afrykanerski",
"bg": "Bułgarski",
"ca": "Kataloński",
"cs": "Czeski",
"de": "Niemiecki",
"el": "Grecki",
"enGB": "Angielski (Zjednoczone Królestwo)",
"eo": "Esperanto",
"es": "Hiszpański",
"esUS": "Hiszpański (Ameryka Łacińska)",
"fi": "Fiński",
"fr": "Francuski",
"frCA": "Francuski (kanadyjski)",
"hr": "Chorwacki",
"hu": "Węgierski",
"hy": "Ormiański",
"it": "Włoski",
"ja": "Japoński",
"ko": "Koreański",
"nl": "Holenderski",
"oc": "Oksytański",
"pl": "Polski",
"ptBR": "Portugalski (brazylijski)",
"ru": "Rosyjski",
"sv": "Szwedzki",
"tr": "Turecki",
"vi": "Wietnamski",
"zhCN": "Chiński (Chiny)",
"zhTW": "Chiński (Tajwan)\"msgstr \""
"en": "angielski",
"af": "afrykanerski",
"bg": "bułgarski",
"ca": "kataloński",
"cs": "czeski",
"de": "niemiecki",
"el": "grecki",
"enGB": "angielski (Zjednoczone Królestwo)",
"eo": "esperanto",
"es": "hiszpański",
"esUS": "hiszpański (Ameryka Łacińska)",
"fi": "fiński",
"fr": "francuski",
"frCA": "francuski (kanadyjski)",
"hr": "chorwacki",
"hu": "węgierski",
"hy": "ormiański",
"it": "włoski",
"ja": "japoński",
"ko": "koreański",
"nl": "holenderski",
"oc": "oksytański",
"pl": "polski",
"ptBR": "portugalski (brazylijski)",
"ru": "rosyjski",
"sv": "szwedzki",
"tr": "turecki",
"vi": "wietnamski",
"zhCN": "chiński (Chiny)",
"zhTW": "chiński (Tajwan)"
}

View File

@@ -28,5 +28,5 @@
"tr": "Turco",
"vi": "Vietnamita",
"zhCN": "Chinês (China)",
"zhTW": "Chinês (Taiwan)\"msgstr \""
"zhTW": "Chinês (Taiwan)"
}

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

@@ -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 (Tayvan)",
"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"
}

View File

@@ -28,5 +28,5 @@
"tr": "Turkish",
"vi": "Vietnamese",
"zhCN": "中文 简体 (中国)",
"zhTW": "中文 正體 (台灣)\"msgstr \""
"zhTW": "中文 正體 (台灣)"
}

View File

@@ -11,6 +11,7 @@
"eo": "Esperanto",
"es": "Spanish",
"esUS": "Spanish (Latin America)",
"et": "Estonian",
"fi": "Finnish",
"fr": "French",
"frCA": "French (Canadian)",

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": "Засечена е нова камера",
@@ -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"
}
}
}

File diff suppressed because it is too large Load Diff

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,7 +480,6 @@
"rejected": "Odmítnuto",
"ringing": "Zvoní..."
},
"\u0005presenceStatus": {},
"profile": {
"setDisplayNameLabel": "Nastavte si jméno",
"setEmailInput": "Zadejte e-mail",
@@ -463,9 +487,9 @@
"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

@@ -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:",
@@ -769,4 +769,4 @@
"betingelser": "Betingelser",
"title": "Skærmbesøg & videomøder"
}
}
}

View File

@@ -20,7 +20,7 @@
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Kopfhörer",
"phone": "Telefon",
"phone": "Hörer",
"speaker": "Lautsprecher",
"none": "Keine Audiogeräte verfügbar"
},
@@ -29,19 +29,19 @@
},
"calendarSync": {
"addMeetingURL": "Meeting-Link hinzufügen",
"confirmAddLink": "Wollen Sie einen Jitsi-Link zu dieser Veranstaltung hinzufügen?",
"confirmAddLink": "Wollen 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 Kalendererveranstaltungen 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",
"nextMeeting": "Nächste Konferenz",
"noEvents": "Es sind keine bevorstehenden Veranstaltungen geplant.",
"noEvents": "Es gibt keine bevorstehenden Termine.",
"ongoingMeeting": "Laufendes Meeting",
"permissionButton": "Einstellungen öffnen",
"permissionMessage": "Die App benötigt Zugriff auf den Kalender, um die Termine und Konferenzen anzuzeigen.",
"permissionMessage": "Die App benötigt Zugriff auf den Kalender, um Termine und Konferenzen anzuzeigen.",
"refresh": "Kalender aktualisieren",
"today": "Heute"
},
@@ -78,9 +78,9 @@
"DISCONNECTING": "Verbindung wird getrennt",
"ERROR": "Fehler",
"FETCH_SESSION_ID": "Sitzungs-ID erhalten...",
"GET_SESSION_ID_ERROR": "Session-ID-Fehler erhalten: {{code}}",
"GET_SESSION_ID_ERROR": "Sitzungs-ID-Fehler erhalten: {{code}}",
"GOT_SESSION_ID": "Sitzungs-ID erhalten... Beendet",
"LOW_BANDWIDTH": "Video für {{displayName}} wurde ausgeschaltet um Bandbreite einzusparen"
"LOW_BANDWIDTH": "Video für {{displayName}} wurde ausgeschaltet, um Bandbreite einzusparen"
},
"connectionindicator": {
"address": "Adresse:",
@@ -119,9 +119,9 @@
"yesterday": "Gestern"
},
"deepLinking": {
"appNotInstalled": "Sie benötigen die {{app}}-App, um der Konferenz auf dem Smartphone beizutreten.",
"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",
@@ -153,13 +153,13 @@
"Back": "Zurück",
"cameraConstraintFailedError": "Ihre Kamera erfüllt die notwendigen Anforderungen nicht.",
"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-Menu auswählen oder die Applikation neu laden.",
"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.",
"cameraUnknownError": "Die Kamera kann aus einem unbekannten Grund nicht verwendet werden.",
"cameraUnsupportedResolutionError": "Die Kamera unterstützt die erforderliche Auflösung nicht.",
"Cancel": "Abbrechen",
"close": "Schliessen",
"close": "Schließen",
"conferenceDisconnectMsg": "Prüfen Sie allenfalls Ihre Netzwerkverbindung. Verbinde in {{seconds}} Sekunden...",
"conferenceDisconnectTitle": "Ihre Verbindung ist getrennt worden.",
"conferenceReloadMsg": "Wir versuchen das zu beheben. Verbinde in {{seconds}} Sekunden...",
@@ -177,25 +177,25 @@
"done": "Fertig",
"enterDisplayName": "Bitte geben Sie hier Ihren Namen ein",
"error": "Fehler",
"externalInstallationMsg": "Die Bildschirmfreigabeerweiterung muss installiert werden.",
"externalInstallationMsg": "Die Bildschirmfreigabe-Erweiterung muss installiert werden.",
"externalInstallationTitle": "Erweiterung erforderlich",
"goToStore": "Zum Store",
"gracefulShutdown": "Der Dienst steht momentan wegen Wartungsarbeiten nicht zur Verfügung. Bitte versuchen Sie es später noch einmal.",
"IamHost": "Ich bin der Organisator",
"incorrectRoomLockPassword": "Falsches Passwort",
"incorrectPassword": "Benutzername oder Passwort ungültig",
"inlineInstallationMsg": "Die Bildschirmfreigabeerweiterung muss installiert werden.",
"inlineInstallationMsg": "Die Bildschirmfreigabe-Erweiterung muss installiert werden.",
"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.",
"kickParticipantButton": "Entfernen",
"kickParticipantDialog": "Wollen Sie diesen Teilnehmer wirklich entfernen?",
"kickParticipantTitle": "Teilnehmer stummschalten?",
"kickParticipantTitle": "Teilnehmer entfernen?",
"kickTitle": "Autsch! {{participantDisplayName}} hat Sie aus dem Meeting geworfen.",
"liveStreaming": "Live-Streaming",
"liveStreamingDisabledForGuestTooltip": "Gäste können kein Live-Streaming starten.",
"liveStreamingDisabledTooltip": "Starten des Live-Streams deaktiviert.",
"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",
"lockTitle": "Sperren fehlgeschlagen",
@@ -210,7 +210,7 @@
"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 ausser {{whom}} stummschaten?",
"muteEveryoneElseTitle": "Alle außer {{whom}} stummschaten?",
"muteEveryoneDialog": "Wollen Sie wirklich alle stummschalten? Sie können deren Stummschaltung nicht mehr beenden, aber sie können ihre Stummschaltung jederzeit selbst beenden.",
"muteEveryoneTitle": "Alle stummschalten?",
"muteEveryoneSelf": "sich selbst",
@@ -224,7 +224,7 @@
"passwordNotSupported": "Setzen eines Konferenz-Passworts ist 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 Popups in den Sicherheitseinstellungen des Browsers und versuchen Sie es erneut.",
"popupError": "Ihr Browser blockiert Pop-ups von dieser Website. Bitte aktivieren Sie Pop-ups in den Sicherheitseinstellungen des Browsers und versuchen Sie es erneut.",
"popupErrorTitle": "Pop-up blockiert",
"recording": "Aufnahme",
"recordingDisabledForGuestTooltip": "Gäste können keine Aufzeichnungen starten.",
@@ -233,7 +233,7 @@
"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?",
"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.",
"remoteControlTitle": "Fernsteuerung",
@@ -241,7 +241,7 @@
"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.",
@@ -264,21 +264,21 @@
"startLiveStreaming": "Einen Livestream starten",
"startRecording": "Aufnahme starten",
"startRemoteControlErrorMessage": "Beim Versuch die Fernsteuerung zu starten ist ein Fehler aufgetreten.",
"stopLiveStreaming": "Live-Streaming stoppen",
"stopLiveStreaming": "Livestreaming stoppen",
"stopRecording": "Aufnahme stoppen",
"stopRecordingWarning": "Sind Sie sicher, dass Sie die Aufnahme stoppen möchten?",
"stopStreamingWarning": "Sind Sie sicher, dass Sie das Live-Streaming stoppen möchten?",
"stopStreamingWarning": "Sind Sie sicher, dass Sie das Livestreaming stoppen möchten?",
"streamKey": "Name/Schlüssel für den Stream",
"Submit": "OK",
"thankYou": "Danke für die Verwendung von {{appName}}!",
"token": "Token",
"tokenAuthFailed": "Sie sind nicht berechtigt dieser Konferenz beizutreten.",
"tokenAuthFailed": "Sie sind nicht berechtigt, dieser Konferenz beizutreten.",
"tokenAuthFailedTitle": "Authentifizierung fehlgeschlagen",
"transcribing": "Wird transkribiert",
"unlockRoom": "Meeting $t(lockRoomPassword) entfernen",
"userPassword": "Benutzerpasswort",
"WaitForHostMsg": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Veranstalter sind, authentifizieren Sie sich. Warten Sie andernfalls, bis der Veranstalter erscheint.",
"WaitForHostMsgWOk": "Die Konferenz <b>{{room}}</b> wurde noch nicht gestartet. Wenn Sie der Veranstalter 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 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.",
"WaitingForHost": "Warten auf den Organisator...",
"Yes": "Ja",
"yourEntireScreen": "Ganzer Bildschirm"
@@ -315,7 +315,7 @@
"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",
@@ -328,11 +328,11 @@
"moreNumbers": "Weitere Telefonnummern",
"noNumbers": "Keine Telefonnummern verfügbar.",
"noPassword": "Kein",
"noRoom": "Keine Konferenz für die Einwähl-Informationen angegeben.",
"noRoom": "Keine Konferenz für die Einwahlinformationen angegeben.",
"numbers": "Einwählnummern",
"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": {
@@ -347,7 +347,7 @@
"msg": "Es ist ein Fehler aufgetreten.",
"retry": "Erneut versuchen",
"support": "Support",
"supportMsg": "Wenn der Fehler erneut auftritt, bitte kontaktieren sie"
"supportMsg": "Wenn der Fehler erneut auftritt, bitte kontaktieren Sie"
},
"keyboardShortcuts": {
"focusLocal": "Lokales Video fokussieren",
@@ -356,7 +356,7 @@
"keyboardShortcuts": "Tastenkürzel",
"localRecording": "Lokale Aufzeichnungssteuerelemente ein- oder ausblenden",
"mute": "Stummschaltung aktivieren oder deaktivieren",
"pushToTalk": "Drücken, um zu sprechen",
"pushToTalk": "Push-to-Talk (Sprechtaste)",
"raiseHand": "Hand erheben",
"showSpeakerStats": "Statistiken für Sprecher anzeigen",
"toggleChat": "Chat öffnen oder schließen",
@@ -367,34 +367,34 @@
"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": "Live stream auswählen",
"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.",
"error": "Das Live-Streaming ist fehlgeschlagen. Bitte versuchen Sie es erneut.",
"errorAPI": "Beim abrufen der YouTube Livestreams ist ein Fehler aufgetreten. Bitte versuchen Sie sich erneut anzumelden.",
"errorLiveStreamNotEnabled": "Live-Streaming ist für {{email}} nicht aktiviert. Aktivieren Sie das Live-Streaming oder melden Sie sich bei einem Konto mit aktiviertem Live-Streaming an.",
"expandedOff": "Live-Streaming wurde angehalten",
"enterStreamKey": "Name/Schlü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.",
"expandedOff": "Livestreaming wurde angehalten",
"expandedOn": "Das Meeting wird momentan an YouTube gestreamt.",
"expandedPending": "Live-Streaming wird gestartet...",
"failedToStart": "Live-Streaming konnte nicht gestartet werden",
"getStreamKeyManually": "Wir waren nicht in der Lage, Live-Streams abzurufen. Versuchen Sie, Ihren Live-Stream-Schlüssel von YouTube zu erhalten.",
"invalidStreamKey": "Der Live-Stream-Schlüssel ist u. U. falsch.",
"off": "Live-Streaming gestoppt",
"offBy": "{{name}} stoppte das Live-Streaming",
"on": "Live-Streaming",
"onBy": "{{name}} startete das Live-Streaming",
"pending": "Live-Stream wird gestartet...",
"serviceName": "Live Streaming-Dienst",
"expandedPending": "Livestreaming wird gestartet...",
"failedToStart": "Livestreaming konnte nicht gestartet werden",
"getStreamKeyManually": "Wir waren nicht in der Lage, Livestreams abzurufen. Versuchen Sie, Ihren Livestream-Schlüssel von YouTube zu erhalten.",
"invalidStreamKey": "Der Livestream-Schlüssel ist u. U. falsch.",
"off": "Livestreaming gestoppt",
"offBy": "{{name}} stoppte das Livestreaming",
"on": "Livestreaming",
"onBy": "{{name}} startete das Livestreaming",
"pending": "Livestream wird gestartet...",
"serviceName": "Livestreaming-Dienst",
"signedInAs": "Sie sind derzeit angemeldet als:",
"signIn": "Mit Google anmelden",
"signInCTA": "Anmelden oder den Name/Schlüssel des YouTube Livestreams eingeben.",
"signInCTA": "Anmelden oder den Namen/Schlüssel des YouTube-Livestreams eingeben.",
"signOut": "Abmelden",
"start": "Einen Livestream starten",
"streamIdHelp": "Was ist das?",
"unavailableTitle": "Live-Streaming nicht verfügbar"
"unavailableTitle": "Livestreaming nicht verfügbar"
},
"localRecording": {
"clientState": {
@@ -405,7 +405,7 @@
"dialogTitle": "Lokale Aufzeichnungssteuerelemente",
"duration": "Dauer",
"durationNA": "N. v.",
"encoding": "Codierung",
"encoding": "Kodierung",
"label": "LOR",
"labelToolTip": "Lokale Aufzeichnung ist aktiviert",
"localRecording": "Lokale Aufzeichnung",
@@ -413,7 +413,7 @@
"messages": {
"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 der lokalen Verlaufs wurde gespeichert. Bitten Sie die anderen Teilnehmer, ihre Aufzeichnungen zu übermitteln.",
"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."
},
"moderator": "Moderator",
@@ -451,8 +451,8 @@
"raisedHand": "{{name}} möchte sprechen.",
"somebody": "Jemand",
"startSilentTitle": "Sie sind ohne Audioausgabe beigetreten!",
"startSilentDescription": "Treten Sie dem Meeting noch einma bei, um Ihr Audio zu aktivieren",
"suboptimalExperienceDescription": "Tut uns leid, aber die Konferenz wird mit {{appName}} kein grossartiges 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>.",
"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>.",
"suboptimalExperienceTitle": "Browserwarnung",
"unmute": "Stummschaltung aufheben",
"newDeviceCameraTitle": "Neue Kamera erkannt",
@@ -479,7 +479,7 @@
"profile": {
"setDisplayNameLabel": "Anzeigename festlegen",
"setEmailInput": "E-Mail eingeben",
"setEmailLabel": "E-Mail Adresse für Gravatar",
"setEmailLabel": "E-Mail-Adresse für Gravatar",
"title": "Profil"
},
"raisedHand": "Ich möchte sprechen",
@@ -487,7 +487,7 @@
"authDropboxText": "In Dropbox hochladen",
"availableSpace": "Verfügbarer Speicherplatz: {{spaceLeft}} MB (ca. {{duration}} Minuten Aufzeichnung)",
"beta": "BETA",
"busy": "Es werden Resourcen für eine Aufnahme bereitgestellt. Bitte in ein paar Minuten erneut versuchen.",
"busy": "Es werden Ressourcen für eine Aufnahme bereitgestellt. Bitte in ein paar Minuten erneut versuchen.",
"busyTitle": "Alle Aufnahme-Instanzen sind in Gebrauch",
"error": "Die Aufzeichnung ist fehlgeschlagen. Bitte versuchen Sie es erneut.",
"expandedOff": "Aufzeichnung wurde gestoppt",
@@ -511,14 +511,14 @@
"unavailableTitle": "Aufnahme nicht verfügbar"
},
"sectionList": {
"pullToRefresh": "Ziehen um zu aktualisieren"
"pullToRefresh": "Ziehen, um zu aktualisieren"
},
"settings": {
"calendar": {
"about": "Die Kalenderintegration von {{appName}} wird verwendet, um ein sicheres Zugreifen auf Ihren Kalender und Auslesen der bevorstehenden Veranstaltungen zu ermöglichen.",
"about": "Die Kalenderintegration von {{appName}} wird verwendet, um ein sicheres Zugreifen auf Ihren Kalender und Auslesen der bevorstehenden Termine zu ermöglichen.",
"disconnect": "Getrennt",
"microsoftSignIn": "Mit Microsoft anmelden",
"signedIn": "Momentan wird auf Kalenderveranstaltungen von {{email}} zugegriffen. Klicken Sie auf die folgende Schaltfläche „Trennen“, um den Zugriff auf die Kalenderveranstaltungen zu stoppen.",
"signedIn": "Momentan wird auf Kalendertermine von {{email}} zugegriffen. Klicken Sie auf die folgende Schaltfläche „Trennen“, um den Zugriff auf die Kalendertermine zu stoppen.",
"title": "Kalender"
},
"devices": "Geräte",
@@ -540,7 +540,7 @@
"advanced": "Erweitert",
"alertOk": "OK",
"alertTitle": "Warnung",
"alertURLText": "Die angegebene Server URL ist ungültig",
"alertURLText": "Die angegebene Server-URL ist ungültig",
"buildInfoSection": "Build-Informationen",
"conferenceSection": "Konferenz",
"disableCallIntegration": "Native Anrufintegration deaktivieren",
@@ -549,7 +549,7 @@
"email": "E-Mail",
"header": "Einstellungen",
"profileSection": "Profil",
"serverURL": "Server URL",
"serverURL": "Server-URL",
"showAdvanced": "Erweiterte Einstellungen anzeigen",
"startWithAudioMuted": "Stumm beitreten",
"startWithVideoMuted": "Ohne Video beitreten",
@@ -574,20 +574,20 @@
},
"suspendedoverlay": {
"rejoinKeyTitle": "Erneut teilnehmen",
"text": "<i>Erneut teilnehmen</i> Schaltfläche betätigen um erneut zu verbinden.",
"title": "Die Konferenz wurde unterbrochen, weil der Standbymodus aktiviert wurde."
"text": "<i>Erneut teilnehmen</i>“-Schaltfläche betätigen, um erneut zu verbinden.",
"title": "Die Konferenz wurde unterbrochen, weil der Standby-Modus aktiviert wurde."
},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "Nur Audio ein-/ausschalten",
"audioOnly": "Nur Audio ein-/ausschalten",
"audioRoute": "Audiogerät auswählen",
"callQuality": "Qualitätseinstellungen",
"cc": "Untertitel ein-/ausschalten",
"chat": "Chatfenster ein-/ausblenden",
"document": "Geteiltes Dokument schliessen",
"document": "Geteiltes Dokument schließen",
"download": "Unsere Apps herunterladen",
"feedback": "Feedback hinterlassen",
"fullScreen": "Vollbildschirm ein-/ausblenden",
"fullScreen": "Vollbildmodus aktivieren/deaktivieren",
"hangup": "Anruf beenden",
"help": "Hilfe",
"invite": "Teilnehmer einladen",
@@ -623,9 +623,9 @@
"audioRoute": "Audiogerät auswählen",
"authenticate": "Anmelden",
"callQuality": "Qualitätseinstellungen",
"chat": "Chat öffnen / schliessen",
"chat": "Chat öffnen / schließen",
"closeChat": "Chat schließen",
"documentClose": "Geteiltes Dokument schliessen",
"documentClose": "Geteiltes Dokument schließen",
"documentOpen": "Geteiltes Dokument öffnen",
"download": "Unsere Apps herunterladen",
"enterFullScreen": "Vollbildmodus",
@@ -649,7 +649,7 @@
"noAudioSignalDialInDesc": "Sie können sich auch über die Einwahlnummer einwählen:",
"noAudioSignalDialInLinkDesc" : "Einwahlnummern:",
"noisyAudioInputTitle": "Ihr Mikrofon scheint lärmintensiv zu sein!",
"noisyAudioInputDesc": "Es klingt, als ob Ihr Mikrofon Geräusche macht. Bitte überlegen Sie, ob Sie das Gerät stummschalten oder austauschen wollen.",
"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",
"pip": "Bild-in-Bild-Modus einschalten",
"privateMessage": "Private Nachricht senden",
@@ -666,7 +666,7 @@
"stopScreenSharing": "Bildschirmfreigabe stoppen",
"stopSubtitles": "Untertitel ausschalten",
"stopSharedVideo": "YouTube-Video stoppen",
"talkWhileMutedPopup": "Versuchen sie zu sprechen? Ihr Mikrofon ist stummgeschaltet.",
"talkWhileMutedPopup": "Versuchen Sie zu sprechen? Ihr Mikrofon ist stummgeschaltet.",
"tileViewToggle": "Kachelansicht ein-/ausschalten",
"toggleCamera": "Kamera wechseln",
"videomute": "Kamera starten / stoppen",
@@ -710,19 +710,19 @@
"videoStatus": {
"audioOnly": "AUD",
"audioOnlyExpanded": "Sie befinden sich im Modus „Nur Audio“. Dieser Modus benötigt weniger Bandbreite, Sie sehen jedoch nicht die Videos der anderen.",
"callQuality": "Video-Qualität",
"callQuality": "Videoqualität",
"hd": "HD",
"hdTooltip": "Video wird in hoher Auflösung angezeigt",
"highDefinition": "Hohe Auflösung",
"labelTooiltipNoVideo": "Kein Video",
"labelTooltipAudioOnly": "Nur-Audio Modus aktiv",
"labelTooltipAudioOnly": "Nur Audio“-Modus aktiv",
"ld": "LD",
"ldTooltip": "Video wird in niedriger Auflösung angezeigt",
"lowDefinition": "Niedrige Auflösung",
"onlyAudioAvailable": "Nur Ton",
"onlyAudioSupported": "In diesem Browser wird nur Audio unterstützt.",
"p2pEnabled": "Ende-zu-Ende aktiviert",
"p2pVideoQualityDescription": "Im Ende-zu-Ende-Modus kann die empfangene Videoqualität nur zwischen hoch und Nur-Audio umgeschaltet werden. Andere Einstellungen werden erst beim Verlassen des Ende-zu-Ende-Modus berücksichtigt.",
"p2pVideoQualityDescription": "Im Ende-zu-Ende-Modus kann die empfangene Videoqualität nur zwischen „Hoch und Nur Audio umgeschaltet werden. Andere Einstellungen werden erst beim Verlassen des Ende-zu-Ende-Modus berücksichtigt.",
"recHighDefinitionOnly": "Hohe Qualität wird bevorzugt.",
"sd": "SD",
"sdTooltip": "Video wird in Standardauflösung angezeigt",
@@ -745,9 +745,9 @@
"join": "Zum Teilnehmen tippen",
"roomname": "Konferenzname eingeben"
},
"appDescription": "Auf geht's! Beginne eine Videokonferenz mit dem ganzen Team. Oder besser noch, lade alle ein, die du kennst. {{app}} ist eine vollständig verschlüsselte, aus 100% Open-Source-Software bestehende Videokonferenzlösung, die du den ganzen Tag kostenlos verwenden kannst — 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": "Sprache",
"audio": "Audio",
"video": "Video"
},
"calendar": "Kalender",
@@ -759,15 +759,19 @@
"goSmall": "Los",
"join": "Beitreten",
"info": "Informationen",
"privacy": "Privatsphäre",
"privacy": "Datenschutz",
"recentList": "Letzte",
"recentListDelete": "Löschen",
"recentListEmpty": "Die Liste „Letzte“ ist momentan leer. Chatten Sie mit Ihrem Team. Sie finden all Ihre letzten Meetings hier.",
"reducedUIText": "Willkommen bei {{app}}!",
"roomname": "Konferenzname eingeben",
"roomnameHint": "Name oder URL der Konferenz, der Sie beitreten möchten. Sie können einen Namen erfinden, er muss nur den anderen Teilnehmern übermittelt werden, damit sie der gleichen Konferenz beitreten.",
"sendFeedback": "Senden Sie uns Ihr Feedback",
"terms": "Bedingungen",
"roomnameHint": "Name oder URL der Konferenz, der Sie beitreten möchten. Sie können einen Namen erfinden, er muss nur den anderen Teilnehmern übermittelt werden, damit diese der gleichen Konferenz beitreten.",
"sendFeedback": "Feedback senden",
"terms": "AGB",
"title": "Sichere, mit umfassenden Funktionen ausgestattete und vollkommen kostenlose Videokonferenzen"
},
"lonelyMeetingExperience": {
"button": "Weitere einladen",
"youAreAlone": "Sie sind der einzige in diesem Meeting"
}
}

View File

@@ -1,7 +1,7 @@
{
"addPeople": {
"add": "Invitar",
"countryNotSupported": "Aun no contamos con soporte a este destino.",
"countryNotSupported": "Aún no contamos con soporte a este destino.",
"countryReminder": "¿Llamando fuera de los Estados Unidos? ¡Por favor, asegúrese de empezar con el código de país!",
"disabled": "No puede invitar a otras personas.",
"failedToAdd": "Error al agregar participantes",
@@ -31,7 +31,7 @@
"addMeetingURL": "Agregar un vínculo a la reunión",
"confirmAddLink": "¿Quiere añadir un enlace de Jitsi a este evento?",
"error": {
"appConfiguration": "La integración del calendario no se está configurada correctamente",
"appConfiguration": "La integración del calendario no está configurada correctamente",
"generic": "Se ha producido un error. Compruebe la configuración del calendario o pruebe a recargarlo",
"notSignedIn": "Se ha producido un error de autenticación para ver los eventos del calendario. Compruebe la configuración del calendario e intente iniciar sesión de nuevo"
},
@@ -628,6 +628,7 @@
"logout": "Cerrar sesión",
"lowerYourHand": "Bajar la mano",
"moreActions": "Más acciones",
"moreOptions": "Más opciones",
"mute": "Activar / Desactivar Silencio",
"noAudioSignalTitle": "¡No hay entrada proveniente de su micrófono!",
"noAudioSignalDesc": "Si no lo silenció a propósito desde la configuración del sistema o el dispositivo, considere cambiar el dispositivo.",
@@ -713,7 +714,7 @@
"standardDefinition": "Definición estándar"
},
"videothumbnail": {
"domute": "Control de escritorio remoto",
"domute": "Silenciar",
"flip": "Voltear",
"kick": "Expulsar",
"moderator": "Moderador",
@@ -752,5 +753,9 @@
"sendFeedback": "Enviar comentarios",
"terms": "Términos",
"title": "Seguro, lleno de funcionalidades y videoconferencias completamente gratuitas"
},
"lonelyMeetingExperience": {
"button": "Invitar a otros",
"youAreAlone": "Eres el único en la reunión"
}
}
}

View File

@@ -31,7 +31,7 @@
"addMeetingURL": "Agregar un vínculo a la reunión",
"confirmAddLink": "¿Quiere añadir un enlace de Jitsi a este evento?",
"error": {
"appConfiguration": "La integración del calendario no se está configurada correctamente",
"appConfiguration": "La integración del calendario no está configurada correctamente",
"generic": "Se ha producido un error. Compruebe la configuración del calendario o pruebe cargarlo nuevamente.",
"notSignedIn": "Se ha producido un error de autenticación para ver los eventos del calendario. Compruebe la configuración del calendario e intente iniciar sesión de nuevo"
},
@@ -60,9 +60,9 @@
"you": "usted"
},
"chromeExtensionBanner": {
"installExtensionText": "",
"buttonText": "",
"dontShowAgain": ""
"installExtensionText": "Instalar la extensión para Google Calendar y la integración con Office 365",
"buttonText": "Instalar extensión de Chrome",
"dontShowAgain": "No mostrar nuevamente"
},
"connectingOverlay": {
"joiningRoom": "Conectando a su reunión..."
@@ -77,7 +77,11 @@
"DISCONNECTED": "Desconectado",
"DISCONNECTING": "Desconectando",
"ERROR": "Error",
"RECONNECTING": "Ocurrió un problema en la red. Reconectando..."
"RECONNECTING": "Ocurrió un problema en la red. Reconectando...",
"FETCH_SESSION_ID": "Obteniendo session-id...",
"GET_SESSION_ID_ERROR": "Obtener session-id error: {{code}}",
"GOT_SESSION_ID": "Obteniendo session-id... Listo",
"LOW_BANDWIDTH": "Video para {{displayName}} ha sido deshabilitado para economizar ancho de banda"
},
"connectionindicator": {
"address": "Dirección:",
@@ -125,9 +129,9 @@
"tryAgainButton": "Intentar de nuevo en el escritorio"
},
"defaultLink": "p.ej. {{url}}",
"defaultNickname": "p. ej. Jane Pink",
"defaultNickname": "p. ej. Juan Pérez",
"deviceError": {
"cameraError": "Error al acceder a su cámara",
"cameraError": "Error al acceder a tu cámara",
"cameraPermission": "Error de permisos en la cámara",
"microphoneError": "Error al acceder a tu micrófono",
"microphonePermission": "Error al obtener permiso del micrófono"
@@ -187,7 +191,7 @@
"kickMessage": "Puede ponerse en contacto con {{participantDisplayName}} para obtener más detalles.",
"kickParticipantButton": "Expulsar",
"kickParticipantDialog": "¿Seguro que quiere expulsar a este participante?",
"kickParticipantTitle": "Sacar este participante ?",
"kickParticipantTitle": "¿Sacar este participante?",
"kickTitle": "¡Ay! {{participantDisplayName}} te expulsó de la reunión",
"liveStreaming": "Transmisión en vivo",
"liveStreamingDisabledForGuestTooltip": "Los invitados no pueden iniciar la transmisión en vivo.",
@@ -205,10 +209,16 @@
"micNotSendingDataTitle": "Su micrófono está silenciado en la configuración de su sistema",
"micPermissionDeniedError": "No ha otorgado permisos para usar su micrófono. Puede unirse a la conferencia, pero no lo podrán escuchar. Utilice el botón en la barra de dirección para solucionar esto.",
"micUnknownError": "No se puede usar su micrófono por motivos desconocidos.",
"muteEveryoneElseDialog": "Una vez silenciados, No podrás quitarles el modo en silencio, pero ellos pueden quitárselo en cualquier momento.",
"muteEveryoneElseTitle": "¿Silenciar a todos excepto a {{whom}}?",
"muteEveryoneDialog": "¿Está seguro que quiere silenciar a todos? No podrás quitarles el modo en silencio, pero ellos pueden quitárselo en cualquier momento.",
"muteEveryoneTitle": "¿Silenciar a todos?",
"muteEveryoneSelf": "Usted mismo",
"muteEveryoneStartMuted": "Todos inician silenciados desde ahora",
"muteParticipantBody": "No podrás quitarles el modo en silencio, pero ellos pueden quitárselo en cualquier momento.",
"muteParticipantButton": "Silenciar",
"muteParticipantDialog": "¿Seguro que quiere silenciar a este participante? No podrá revertir esta acción, pero el participante podrá hacerlo en cualquier momento",
"muteParticipantTitle": "Silenciar este participante ?",
"muteParticipantTitle": "Silenciar este participante?",
"Ok": "Aceptar",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordNotSupported": "No se soporta $t(lockRoomPassword) en la reunión",
@@ -220,9 +230,9 @@
"recordingDisabledForGuestTooltip": "Los invitados no pueden iniciar grabaciones.",
"recordingDisabledTooltip": "Inicio de grabación desactivado.",
"rejoinNow": "Reunirse ahora",
"remoteControlAllowedMessage": "{{user}} ha aceptado tu solicitud de control remoto!",
"remoteControlDeniedMessage": "{{user}} ha rechazado tu solicitud de control remoto!",
"remoteControlErrorMessage": "Ha ocurrido un error tratando de solicitar permiso de control remoto de {{user}}!",
"remoteControlAllowedMessage": "¡{{user}} ha aceptado tu solicitud de control remoto!",
"remoteControlDeniedMessage": "¡{{user}} ha rechazado tu solicitud de control remoto!",
"remoteControlErrorMessage": "¡Ha ocurrido un error tratando de solicitar permiso de control remoto de {{user}}!",
"remoteControlRequestMessage": "¿Permitirá que {{user}} controle remotamente su escritorio?",
"remoteControlShareScreenWarning": "¡Tenga en cuenta que si presiona \"Permitir\" usted compartirá su pantalla!",
"remoteControlStopMessage": "¡La sesión de control remoto ha finalizado!",
@@ -242,7 +252,7 @@
"sendPrivateMessage": "Recientemente ha recibido un mensaje privado. ¿Pretendía responder a eso en privado, o quería enviar su mensaje al grupo?",
"sendPrivateMessageCancel": "Enviar al grupo",
"sendPrivateMessageOk": "Enviar en privado",
"sendPrivateMessageTitle": "Enviar en privado ?",
"sendPrivateMessageTitle": "¿Enviar en privado?",
"serviceUnavailable": "Servicio no disponible",
"sessTerminated": "Llamada finalizada",
"Share": "Compartir",
@@ -310,7 +320,7 @@
"genericError": "Epa, algo salió mal.",
"inviteLiveStream": "Para ver la transmisión en vivo de esta reunión, haz clic en este enlace: {{url}}",
"invitePhone": "Para unirse por teléfono, marque: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Busca un número de acceso diferente?\nConsulte los números de acceso a las reuniones : {{url}}\n\n\nSi también marca a través de un teléfono externo, ingrese sin conectarse al audio: {{silentUrl}}",
"invitePhoneAlternatives": "¿Busca un número de acceso diferente?\nConsulte los números de acceso a las reuniones : {{url}}\n\n\nSi también marca a través de un teléfono externo, ingrese sin conectarse al audio: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Estás invitado a unirte a una reunión.",
"inviteURLFirstPartPersonal": "{{name}} lo invita a una reunión.\n",
"inviteURLSecondPart": "\nIngrese a la reunión :\n{{url}}\n",
@@ -434,13 +444,13 @@
"moderator": "Derechos de moderador otorgados.",
"muted": "Has iniciado la conversación con el silencio activado.",
"mutedTitle": "Tienes el silencio activado.",
"mutedRemotelyTitle": "Su micrófono fue silenciado por {{participantDisplayName}}!",
"mutedRemotelyTitle": "¡Su micrófono fue silenciado por {{participantDisplayName}}!",
"mutedRemotelyDescription": "Siempre puede reactivar sur micrófono cuando esté listo para hablar. Desactívelo de nuevo cuando termine para mantener el ruido al mínimo en la reunión.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) retirada por otro participante",
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) agregada por otro participante",
"raisedHand": "{{name}} desea hablar.",
"somebody": "Alguien",
"startSilentTitle": "Ingresó sin salida de audio!",
"startSilentTitle": "¡Ingresó sin salida de audio!",
"startSilentDescription": "Vuelva a ingresar para activar el audio",
"suboptimalBrowserWarning": "Nos tememos que su experiencia de reunión no será tan buena aquí. Estamos buscando formas de mejorar esto, pero hasta entonces, por favor, intente utilizar uno de los <a href='static/recommendedBrowsers.html' target='_blank'>navegadores soportados</a>.",
"suboptimalExperienceTitle": "Advertencia del navegador",
@@ -464,7 +474,7 @@
"initializingCall": "Inicializando llamada...",
"invited": "Invitado",
"rejected": "Rechazado",
"ringing": "Sonando..."
"ringing": "Timbrando..."
},
"profile": {
"setDisplayNameLabel": "Configurar su nombre para mostrar",
@@ -546,7 +556,7 @@
"version": "Versión"
},
"share": {
"dialInfoText": "\n\n=====\n\nDesea llamar desde su teléfono ?\n\n{{defaultDialInNumber}}La lista de números disponibles para la reunión está disponible aquí : \n{{dialInfoPageUrl}}",
"dialInfoText": "\n\n=====\n\n¿Desea llamar desde su teléfono?\n\n{{defaultDialInNumber}}La lista de números disponibles para la reunión está disponible aquí : \n{{dialInfoPageUrl}}",
"mainText": "Haz clic en el enlace siguiente para unirte a la reunión:\n{{roomUrl}}"
},
"speaker": "Altavoz",
@@ -560,7 +570,7 @@
},
"startupoverlay": {
"policyText": " ",
"title": "{{app}} tiene que usar el micrófono y la cámara."
"title": "{{app}} necesita usar el micrófono y la cámara."
},
"suspendedoverlay": {
"rejoinKeyTitle": "Volver a unirme",
@@ -586,7 +596,9 @@
"lockRoom": "Alternar contraseña de reunión",
"moreActions": "Alternar menú de más acciones",
"moreActionsMenu": "Menú de más acciones",
"moreOptions": "Mostrar más opciones",
"mute": "Alternar silenciar audio",
"muteEveryone": "Silenciar a todos",
"pip": "Alternar modo de imagen en imagen",
"privateMessage": "Enviar un mensaje privado",
"profile": "Editar el perfil",
@@ -628,12 +640,16 @@
"logout": "Cierre de sesión",
"lowerYourHand": "Bajar la mano",
"moreActions": "Más acciones",
"moreOptions": "Más opciones",
"mute": "Silenciar/anular silencio",
"noAudioSignalTitle": "No hay ninguna entrada que provenga de su micrófono!",
"muteEveryone": "Silenciar a todos",
"noAudioSignalTitle": "¡No hay ninguna entrada que provenga de su micrófono!",
"noAudioSignalDesc": "Si no lo silenció intencionalmente desde la configuración del sistema o el hardware, considere la posibilidad de cambiar el dispositivo.",
"noAudioSignalDescSuggestion": "Si no lo silenció intencionalmente desde la configuración del sistema o el hardware, considere utilizar el siguiente dispositivo:",
"noisyAudioInputTitle": "",
"noisyAudioInputDesc": "",
"noAudioSignalDialInDesc": "Usted puede además llamar usando:",
"noAudioSignalDialInLinkDesc" : "Números de llamada",
"noisyAudioInputTitle": "Su micrófono parece estar ruidoso",
"noisyAudioInputDesc": "Parece que su micráfono está haciendo ruido, por favor considere silenciarlo o cambiar de dispositivo.",
"openChat": "Abrir chat",
"pip": "Introducir modo de imagen en imagen",
"privateMessage": "Enviar un mensaje privado",
@@ -714,6 +730,7 @@
},
"videothumbnail": {
"domute": "Silenciar",
"domuteOthers": "Silenciar a todos",
"flip": "Dar vuelta",
"kick": "Echar",
"moderator": "Moderador",
@@ -746,11 +763,11 @@
"recentList": "Reciente",
"recentListDelete": "Eliminar",
"recentListEmpty": "Su lista reciente está actualmente vacía. Abra una sesión de chat con su equipo y encontrará todas sus reuniones recientes aquí.",
"reducedUIText": "BIenvenid@ a {{app}}!",
"reducedUIText": "¡Bienvenid@ a {{app}}!",
"roomname": "Introducir nombre de sala",
"roomnameHint": "Introduce el nombre o la dirección URL de la sala a la que deseas unirte. Puedes inventar un nombre, simplemente infórmaselo a las personas con las que te reunirás para que introduzcan el mismo nombre.",
"sendFeedback": "Enviar comentario",
"terms": "Términos",
"title": "Conferencias en video seguras, con gran variedad de funciones y completamente gratuitas"
}
}
}

777
lang/main-et.json Normal file
View File

@@ -0,0 +1,777 @@
{
"addPeople": {
"add": "Lisa",
"countryNotSupported": "Valitud riik ei ole toetatud.",
"countryReminder": "Veendu, et suunakood oleks lisatud.",
"disabled": "Uusi kontakte ei saa kõnesse lisada.",
"failedToAdd": "Uue kontakti kõnesse lisamine ebaõnnestus",
"footerText": "Numbri valimine on keelatud.",
"loading": "Kontaktide otsimine...",
"loadingNumber": "Telefoninumbri kontrollimine...",
"loadingPeople": "Kontaktide otsimine kõnesse lisamiseks...",
"noResults": "Vasteid ei leitud",
"noValidNumbers": "Sisesta telefoninumber",
"searchNumbers": "Lisa telefoninumber",
"searchPeople": "Kontaktide otsimine",
"searchPeopleAndNumbers": "Otsi kontakti või lisa telefoninumber",
"telephone": "Telefoninumber: {{number}}",
"title": "Lisa kontakte kõnesse"
},
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Kõrvaklapid",
"phone": "Telefon",
"speaker": "Kõlar",
"none": "Heli vahendid pole kättesaadavad"
},
"audioOnly": {
"audioOnly": "Ainult heli"
},
"calendarSync": {
"addMeetingURL": "Lisa kõne link",
"confirmAddLink": "Kas soovid käesolevale kõnele lisada lingi?",
"error": {
"appConfiguration": "Ühendus kalendriga ei ole õigesti seadistatud.",
"generic": "Viga! Palun kontrolli kalendri seadistusi või värskenda kalendrit.",
"notSignedIn": "Viga kalendri autentimisel! Palun kontrolli kalendri seadistusi ja logi uuesti sisse."
},
"join": "Liitu",
"joinTooltip": "Liitu kõnega",
"nextMeeting": "järgmine kõne",
"noEvents": "Uusi kõnesid pole planeeritud..",
"ongoingMeeting": "aktiivne kõne",
"permissionButton": "Ava seadistused",
"permissionMessage": "Planeeritud kõne nägemiseks on vajalik kalendri ligipääsuõigus.",
"refresh": "Värskenda kalendrit",
"today": "Täna"
},
"chat": {
"error": "Viga: sõnumi \"{{originalText}}\" saatmine ebaõnnestus. Põhjus: {{error}}",
"fieldPlaceHolder": "Sisesta oma sõnum siia",
"messagebox": "Sisesta sõnum",
"messageTo": "Privaatsõnum kasutajale {{recipient}}",
"noMessagesMessage": "Kirjavahetust pole veel alustatud. Alusta kirjavahetust siin!",
"nickname": {
"popover": "Sisesta nimi",
"title": "Sisesta nimi, et kõnega alustada"
},
"privateNotice": "Privaatsõnum kasutajale {{recipient}}",
"title": "Kõne",
"you": "you"
},
"chromeExtensionBanner": {
"installExtensionText": "Paigalda Google Kalendri laiendus ja Office 365 integratsioon",
"buttonText": "Paigalda Chrome'i laiendus",
"dontShowAgain": "Ära rohkem näita"
},
"connectingOverlay": {
"joiningRoom": "Kõnega ühendamine..."
},
"connection": {
"ATTACHED": "Ühendatud",
"AUTHENTICATING": "Autentimine...",
"AUTHFAIL": "Autentimine ebaõnnestus",
"CONNECTED": "Ühendatud",
"CONNECTING": "Ühendamine...",
"CONNFAIL": "Ühendamine ebaõnnestus",
"DISCONNECTED": "Ühendus katkestatud",
"DISCONNECTING": "Ühenduse katkestamine...",
"ERROR": "Viga",
"FETCH_SESSION_ID": "Sessiooni-ID püüdmine...",
"GET_SESSION_ID_ERROR": "Sessiooni-ID püüdmisel tekkis viga: {{code}}",
"GOT_SESSION_ID": "Sessiooni-ID püüdmine... Tehtud",
"LOW_BANDWIDTH": "Kasutaja {{displayName}} video on ülekandekiiruse parandamiseks välja lülitatud"
},
"connectionindicator": {
"address": "Aadress:",
"bandwidth": "Eeldatav ülekandekiirus:",
"bitrate": "Andmeedastuskiirus:",
"bridgeCount": "Serverite arv: ",
"connectedTo": "Ühendatud:",
"e2e_rtt": "E2E RTT:",
"framerate": "Ekraani eraldusvõime:",
"less": "Näita vähem",
"localaddress": "Lokaalne aadress:",
"localaddress_plural": "Lokaalsed aadressid:",
"localport": "Lokaalne port:",
"localport_plural": "Lokaalsed pordid:",
"more": "Näita rohkem",
"packetloss": "Andmepaketi kaotus:",
"quality": {
"good": "Hea",
"inactive": "Mitteaktiivne",
"lost": "Kaotatud",
"nonoptimal": "Mitteoptimaalne",
"poor": "Nõrk"
},
"remoteaddress": "Kaugtöö aadress:",
"remoteaddress_plural": "Kaugtöö aadressid:",
"remoteport": "Kaugtöö port:",
"remoteport_plural": "Kaugtöö pordid:",
"resolution": "Resolutsioon:",
"status": "Ühendus:",
"transport": "Transport:",
"transport_plural": "Transpordid:"
},
"dateUtils": {
"earlier": "Varem",
"today": "Täna",
"yesterday": "Eile"
},
"deepLinking": {
"appNotInstalled": "Kõnega liitumiseks läbi mobiiltelefoni on vaja paigaldada {{app}} rakendus.",
"description": "Midagi ei juhtunud? Proovisime ühendust luua töölaua rakendusega. Proovi uuesti või käivita {{app}} rakendus.",
"descriptionWithoutWeb": "Midagi ei juhtunud? Televastuvõttu prooviti avada töölaua rakendusest {{app}}.",
"downloadApp": "Laadi rakendus alla",
"launchWebButton": "Käivita veebis",
"openApp": "Jätka töölaua rakendusega",
"title": "Kõne avamine rakenduses {{app}}...",
"tryAgainButton": "Proovi töölaua rakendusega uuesti "
},
"defaultLink": "nt {{url}}",
"defaultNickname": "nt. Mari Maasikas",
"deviceError": {
"cameraError": "Ei saanud kaameraga ühendust",
"cameraPermission": "Puudub õigus kasutada kaamerat",
"microphoneError": "Ei saanud mikrofoniga ühendust",
"microphonePermission": "Puudub õigus kasutada mikrofoni"
},
"deviceSelection": {
"noPermission": "Luba pole antud",
"previewUnavailable": "Eelvaade pole kättesaadav",
"selectADevice": "Vali seade",
"testAudio": "Mängi testimiseks heli"
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": "Otseülekanne"
},
"allow": "Luba",
"alreadySharedVideoMsg": "Teine kasutaja jagab videot. Selles kõnes on ainult ühe video jagamine korraga lubatud.",
"alreadySharedVideoTitle": "Korraga on lubatud ainult ühe video jagamine.",
"applicationWindow": "Rakenduse aken",
"Back": "Tagasi",
"cameraConstraintFailedError": "Kaamera ei vasta teatud piirangutele.",
"cameraNotFoundError": "Kaamerat ei leitud.",
"cameraNotSendingData": "Ei saa ühendust kaameraga. Kontrolli, kas vahend on mõne teise rakenduse poolt kasutusel, vali menüüst teine vahend või värskenda rakendust.",
"cameraNotSendingDataTitle": "Kaamera pole kättesaadav.",
"cameraPermissionDeniedError": "Kaamera kasutamine on keelatud. Kõnega on võimalik ühineda ilma kaamerata. Kaamera kasutamiseks vajuta aadressiribal kaamera nupule.",
"cameraUnknownError": "Kaamerat ei saa kasutada! Põhjus teadmata.",
"cameraUnsupportedResolutionError": "Kaamera ei toeta nõutud resolutsiooni.",
"Cancel": "Tühista",
"close": "Sulge",
"conferenceDisconnectMsg": "Kontrolli võrguühendust. Taasühendamine {{seconds}}...",
"conferenceDisconnectTitle": "Ühendus on katkenud.",
"conferenceReloadMsg": "Lahenduse otsime. Taasühendus {{seconds}} sek...",
"conferenceReloadTitle": "Midagi läks valesti!",
"confirm": "Kinnita",
"confirmNo": "Ei",
"confirmYes": "Kinnita",
"connectError": "Oih, midagi läks valesti! Kõnega ühendamine ebaõnnestus.",
"connectErrorWithMsg": "Oih, midagi läks valesti! Kõnega ühendamine ebaõnnestus. Põhjus: {{msg}}.",
"connecting": "Ühendamine.",
"contactSupport": "Võta ühendust kasutustoega",
"copy": "Kopeeri",
"dismiss": "Lõpeta",
"displayNameRequired": "Nimi on kohustuslik",
"done": "Valmis",
"enterDisplayName": "Sisesta nimi",
"error": "Viga",
"externalInstallationMsg": "Töölauale on vaja paigaldada jagamise laiendus.",
"externalInstallationTitle": "Laiendus on kohustuslik",
"goToStore": "Mine veebipoodi",
"gracefulShutdown": "Rakendus on hoolduseks ajutiselt maas. Proovi hiljem uuesti!",
"IamHost": "Mina olen võõrustaja",
"incorrectRoomLockPassword": "Vale parool",
"incorrectPassword": "Vale kasutajanimi või parool",
"inlineInstallationMsg": "Töölauale tuleb paigaldada jagamise laiendus.",
"inlineInstallExtension": "Paiglada kohe",
"internalError": "Oih, midagi läks valesti! Veateate: {{error}}.",
"internalErrorTitle": "Sisemine viga",
"kickMessage": "Oih, oled kõnest eemaldatud!",
"kickParticipantButton": "Eemalda kõnest",
"kickParticipantDialog": "Oled kindel, et tahad kasutaja kõnest eemaldada?",
"kickParticipantTitle": "Eemalda kasutaja kõnest?",
"kickTitle": "Kõnest eemaldatud",
"liveStreaming": "Otseülekanne",
"liveStreamingDisabledForGuestTooltip": "Külalised ei saa otseülekannet alustada.",
"liveStreamingDisabledTooltip": "Otseülekande alustamine on keelatud.",
"lockMessage": "Ebaõnnestunud lukustada kõnet.",
"lockRoom": "Lisa kõnele parool",
"lockTitle": "Lukustamine ebaõnnestus",
"logoutQuestion": "Oled kindel, et tahad kõne peatada ja välja logida?",
"logoutTitle": "Logi välja",
"maxUsersLimitReached": "Maksimaalne kõnes osalejate arv on täis. Võta ühendust kõne omanikuga või proovi hiljem uuesti!",
"maxUsersLimitReachedTitle": "Maksimaalne kõnes osalejate arv on täis",
"micConstraintFailedError": "Mikrofon ei vasta teatud piirangutele.",
"micNotFoundError": "Mikrofoni ei leitud.",
"micNotSendingData": "Ei saa ühendust mikrofoniga. Vali menüüst teine vahend või värskenda rakendust.",
"micNotSendingDataTitle": "Mikrofon pole kättesaadav.",
"micPermissionDeniedError": "Mikrofoni kasutamine on keelatud. Kõnega on võimalik ühineda, aga teised Sind ei kuule. Mikrofoni kasutamiseks vajuta aadressiribal mikrofoni nupule.",
"micUnknownError": "Mikrofoni ei saa kasutada. Põhjus teadmata.",
"muteEveryoneElseDialog": "Peale mikrofoni vaigistamist saab ainult kasutaja ise oma mikrofoni tagasi sisse lülitada.",
"muteEveryoneElseTitle": "Vaigista kõikide teiste mikrofonid, välja arvatud {{whom}}?",
"muteEveryoneDialog": "Oled kindel, et soovid kõikide teiste mikrofonid vaigistada? Neid saab tagasi sisse lülitada ainult kasutaja ise.",
"muteEveryoneTitle": "Vaigista kõik?",
"muteEveryoneSelf": "Sina ise",
"muteEveryoneStartMuted": "Edaspidi alustavad kõik välja lülitatud mikrofonidega",
"muteParticipantBody": "Teiste kasutajate mikrofoni ei saa sisse lülitada. Kasutaja saab ise otsutada, kas mikrofon on sees või väljas.",
"muteParticipantButton": "Lülita mikrofon välja",
"muteParticipantDialog": "Oled kindel, et soovid kasutaja mikrofoni välja lülitada? Seda saab ainult kasutaja ise sisse tagasi lülitada.",
"muteParticipantTitle": "Lülita kasutaja mikrofon välja?",
"Ok": "Jah",
"passwordLabel": "Parool",
"passwordNotSupported": "Kõnele ei saa parooli määrata.",
"passwordNotSupportedTitle": "Parooli lisamine pole toetatud",
"passwordRequired": "Parool on kohustuslik",
"popupError": "Modaalaknad on veebilehitsejas keelatud. Palun luba modaalakende kasutamine veebilehitseja turvalisuse seadistuses ning proovi uuesti.",
"popupErrorTitle": "Modaalaknad on keelatud",
"recording": "Salvetamine",
"recordingDisabledForGuestTooltip": "Külalised ei saa kõne salvestada.",
"recordingDisabledTooltip": "Kõne salvestamine on keelatud.",
"rejoinNow": "Ühine uuesti",
"remoteControlAllowedMessage": "{{user}} andis kaugjuhtimiseks loa!",
"remoteControlDeniedMessage": "{{user}} keelas kaugjuhtimise!",
"remoteControlErrorMessage": "Viga kaugjuhtimiseks loa küsimisel kasutajalt {{user}}!",
"remoteControlRequestMessage": "Kas lubad kasutajal {{user}} oma töölauda kaugjuhtida?",
"remoteControlShareScreenWarning": "Kui vajutad nupule \"Luba\", siis jagad oma ekraani.",
"remoteControlStopMessage": "Kaugjuhtimise sessioon on lõppenud!",
"remoteControlTitle": "Kaugjuhtimine",
"Remove": "Eemalda",
"removePassword": "Eemalda parool",
"removeSharedVideoMsg": "Oled kindel, et soovid oma jagatud video eemaldada?",
"removeSharedVideoTitle": "Eemalda jagatud video",
"reservationError": "Broneerimise süsteemi viga",
"reservationErrorMsg": "Veakood: {{code}}, sõnum: {{msg}}",
"retry": "Proovi uuesti",
"screenSharingFailedToInstall": "Oih, ekraanijagamise laienduse paigaldamine ebaõnnestus!",
"screenSharingFailedToInstallTitle": "Ekraanijagamise laienduse paigaldamine ebaõnnestus",
"screenSharingFirefoxPermissionDeniedError": "Ekraani jagamisega läks midagi valesti! Veendu, et oled ekraani jagamiseks loa andnud.",
"screenSharingFirefoxPermissionDeniedTitle": "Oih, ekraani jagamist ei saanud alustada!",
"screenSharingPermissionDeniedError": "Oih, midagi läks valesti ekraanijagamise laienduse õigustega! Värskenda ja proovi uuesti.",
"sendPrivateMessage": "Sulle saabus privaatsõnum. Kas soovid vastata privaatselt või avalikult?",
"sendPrivateMessageCancel": "Saada sõnum avalikult",
"sendPrivateMessageOk": "Saada sõnum privaatselt",
"sendPrivateMessageTitle": "Saada privaatselt?",
"serviceUnavailable": "Teenus pole kättesaadav",
"sessTerminated": "Kõne lõpetatud",
"Share": "Jaga",
"shareVideoLinkError": "Sisesta korrektne Youtubei link.",
"shareVideoTitle": "Jaga videot",
"shareYourScreen": "Jaga ekraani",
"shareYourScreenDisabled": "Ekraani jagamine on keelatud.",
"shareYourScreenDisabledForGuest": "Külalised ei saa ekraani jagada.",
"startLiveStreaming": "Alusta otseülekannet",
"startRecording": "Alusta salvestamist",
"startRemoteControlErrorMessage": "Kaugjuhtimise sessiooni alustamisel tekkis viga!",
"stopLiveStreaming": "Lõpeta otseülekanne",
"stopRecording": "Lõpeta salvestamine",
"stopRecordingWarning": "Oled kindel, et soovid salvestamist lõpetada?",
"stopStreamingWarning": "Oled kindel, et soovid otseülekannet lõpetada?",
"streamKey": "Otseülekande võti",
"Submit": "Esita",
"thankYou": "Aitäh, et kasutasid rakendust {{appName}}!",
"token": "token",
"tokenAuthFailed": "Kahjuks ei ole kõnega ühinemine lubatud.",
"tokenAuthFailedTitle": "Autentimine ebaõnnestus",
"transcribing": "Transkribeerimine",
"unlockRoom": "Eemalda kõne parool",
"userPassword": "kasutaja parool",
"WaitForHostMsg": "Kõne <b>{{room}}</b> ei ole veel alanud. Autendi ennast, kui oled võõrustaja. Külalisena oota, kuni võõrustaja saabub.",
"WaitForHostMsgWOk": "Kõne <b>{{room}}</b> ei ole veel alanud. Kui oled võõrustaja, vajuta OK, et ennast autentida. Külalisena oota, kuni võõrustaja saabub.",
"WaitingForHost": "Võõrustaja ootamine...",
"Yes": "Jah",
"yourEntireScreen": "Täisekraan"
},
"dialOut": {
"statusMessage": "on staatusega {{status}}"
},
"documentSharing": {
"title": "Jagatud dokument"
},
"feedback": {
"average": "Keskmine",
"bad": "Halb",
"detailsLabel": "Kirjelda täpsemalt.",
"good": "Hea",
"rateExperience": "Hinda kõne kvaliteeti",
"veryBad": "Väga halb",
"veryGood": "Väga hea"
},
"incomingCall": {
"answer": "Vasta",
"audioCallTitle": "Sissetulev kõne",
"decline": "Lõpeta",
"productLabel": "Jitsi",
"videoCallTitle": "Sissetulev videokõne"
},
"info": {
"accessibilityLabel": "Näita infot",
"addPassword": "Lisa parool",
"cancelPassword": "Tühista parool",
"conferenceURL": "Link:",
"country": "Riik",
"dialANumber": "Kõnega ühinemiseks vali number ja sisesta pin-kood.",
"dialInConferenceID": "PIN:",
"dialInNotSupported": "Oih, sissehelistamine ei ole toetatud!",
"dialInNumber": "Sissehelistamine:",
"dialInSummaryError": "Sissehelistamise info pole kättesaadav. Proovi hiljem uuesti!",
"dialInTollFree": "Maksuvaba",
"genericError": "Oih, midagi läks valesti!",
"inviteLiveStream": "Otseülekande nägemiseks vajuta lingile: {{url}}",
"invitePhone": "Üks klikk heliga sissehelistamiseks: {{number}},,{{conferenceID}}#",
"invitePhoneAlternatives": "Otsid teist sissehelistamise numbrit?\nVaata sissehelistamise numbreid: {{url}}\n\n\nKui helistad läbi ruumi, ühine kõnega väljalülitatud mikrofoni režiimis: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Oled kõnesse kutsutud.",
"inviteURLFirstPartPersonal": "{{name}} kutsub Sind kõnesse.\n",
"inviteURLSecondPart": "\nÜhine kõnega:\n{{url}}\n",
"liveStreamURL": "Otseülekanne:",
"moreNumbers": "Rohkem numbreid",
"noNumbers": "Sissehelistamise numbrid puuduvad.",
"noPassword": "Andmed puuduvad",
"noRoom": "Sissehelistamise ruum pole täpsustatud.",
"numbers": "Sissehelistamise numbrid",
"password": "Parool:",
"title": "Jaga",
"tooltip": "Jaga linki ja helista, et kõnega ühineda",
"label": "Kõne info"
},
"inviteDialog": {
"alertText": "Osade kasutajate kutsumine ebaõnnestus.",
"header": "Kutsu",
"searchCallOnlyPlaceholder": "Sisesta telefoninumber",
"searchPeopleOnlyPlaceholder": "Otsi kasutajaid",
"searchPlaceholder": "Kasutaja telefoninumber",
"send": "Saada"
},
"inlineDialogFailure": {
"msg": "Midagi läks valesti.",
"retry": "Proovi uuesti",
"support": "Kasutajatugi",
"supportMsg": "Kui see juhtub uuesti, võta ühendust"
},
"keyboardShortcuts": {
"focusLocal": "Keskendu videole",
"focusRemote": "Keskendu teise kasutaja videole",
"fullScreen": "Ava/sulge täisekraani vaade",
"keyboardShortcuts": "Klaviatuuri kiirvalikud",
"localRecording": "Näita/peida salvestamise võimalused",
"mute": "Lülita mikrofon sisse/välja",
"pushToTalk": "Vajuta, et rääkida",
"raiseHand": "Tõsta/langeta kätt",
"showSpeakerStats": "Näita kõnelejate statistikat",
"toggleChat": "Ava/sulge vestluse aken",
"toggleFilmstrip": "Näita/peida video eelvaade",
"toggleScreensharing": "Vaheta kaamera ja ekraanijagamise vahel",
"toggleShortcuts": "Näita/peida klaviatuuri kiirvalikud",
"videoMute": "Lülita kaamera sisse/välja",
"videoQuality": "Halda kõne kvaliteeti"
},
"liveStreaming": {
"busy": "Toimub ülekande ressursi vabastamine. Proovi mõne minuti pärast uuesti.",
"busyTitle": "Kõik ülekandjad on hetkel hõivatud",
"changeSignIn": "Vaheta kontot.",
"choose": "Vali otseülekanne",
"chooseCTA": "Vali ülekande viis. Oled sisse logitud e-mailiga {{email}}.",
"enterStreamKey": "Sisesta siia oma YouTubei ülekande võti.",
"error": "Otseülekanne ebaõnnestus. Proovi uuesti.",
"errorAPI": "YouTubei kanaliga ühendumisel tekkis viga. Palun logi uuesti sisse.",
"errorLiveStreamNotEnabled": "Otseülekanne ei ole e-mailiga {{email}} sisse lülitatud. Luba kasutajaga otseülekanded või vaheta kontot.",
"expandedOff": "Otseülekanne on peatatud",
"expandedOn": "Kõnest tehakse otseülekanne YouTubei.",
"expandedPending": "Otseülekanne algab...",
"failedToStart": "Otseülekandega alustamine ebaõnnestus.",
"getStreamKeyManually": "Ülekandjaid ei leitud. Leia YouTubest otseülekande võti.",
"invalidStreamKey": "Otseülekande võti võib olla vale.",
"off": "Otseülekanne on peatatud",
"offBy": "{{name}} lõpetas otseülekande",
"on": "Otseülekanne",
"onBy": "{{name}} alustas otseülekandega",
"pending": "Otseülekande alustamine...",
"serviceName": "Otseülekande teenus",
"signedInAs": "Oled sisse logitud kasutajana:",
"signIn": "Googlega sisselogimine",
"signInCTA": "Logi sisse või sisesta otseülekande võti YouTubest.",
"signOut": "Logi välja",
"start": "Alusta otseülekannet.",
"streamIdHelp": "Mis see on?",
"unavailableTitle": "Otseülekanne pole kättesaadav."
},
"localRecording": {
"clientState": {
"off": "Väljas",
"on": "Sees",
"unknown": "Teadmata"
},
"dialogTitle": "Kohalikud salvestamise nupud",
"duration": "Kestvus",
"durationNA": "N/A",
"encoding": "Kodeerimine",
"label": "LOR",
"labelToolTip": "Kohalik salvestamine on alustatud",
"localRecording": "Kohalik salvestamine",
"me": "Mina",
"messages": {
"engaged": "Local recording engaged.",
"finished": "Salvestamise sessioon {{token}} on lõppenud. Palun saada salvestatud fail moderaatorile.",
"finishedModerator": "Salvestamise sessioon {{token}} on lõppenud ja salvestatud. Küsi teistelt kontaktidelt nende koopiaid.",
"notModerator": "Sa ei ole moderaator. Sa ei saa alustada ega lõpetada kohalikku salvestamist."
},
"moderator": "Moderaator",
"no": "Ei",
"participant": "Osaleja",
"participantStats": "Osaleja andmed",
"sessionToken": "Sessiooni token",
"start": "Alusta salvestamist",
"stop": "Lõpeta salvestamine",
"yes": "Jah"
},
"lockRoomPassword": "parool",
"lockRoomPasswordUppercase": "Parool",
"me": "mina",
"notify": {
"connectedOneMember": "{{name}} ühines kõnega",
"connectedThreePlusMembers": "{{name}} ja {{count}} teist kasutajat ühines kõnega",
"connectedTwoMembers": "{{first}} ja {{second}} ühinesid kõnega",
"disconnected": "lahti ühendatud",
"focus": "Konverentsi fookus",
"focusFail": "{{component}} pole kättesaadav - proovi uuesti {{ms}} sekundi pärast.",
"grantedTo": "Moderaatori õigused on antud kasutajale {{to}}!",
"invitedOneMember": "{{name}} on kutsutud",
"invitedThreePlusMembers": "{{name}} ja {{count}} teist kasutajat on kutsutud",
"invitedTwoMembers": "{{first}} ja {{second}} on kutsutud",
"kickParticipant": "{{kicked}} eemaldati kõnest kasutaja {{kicker}} poolt",
"me": "Mina",
"moderator": "Moderaatori õigused jagatud!",
"muted": "Alustasid kõnet väljalülitatud mikrofoniga.",
"mutedTitle": "Mikrofon on välja lülitatud!",
"mutedRemotelyTitle": "Sinu mikrofon lülitati välja kasutaja {{participantDisplayName}} poolt!",
"mutedRemotelyDescription": "Saad alati oma mikrofoni sisse lülitada, kui soovid rääkida. Lülita mikrofon peale rääkimist uuesti välja liigse müra ja kaja vältimiseks.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) eemaldatud teise kasutaja poolt",
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) lisatud teise kasutaja poolt",
"raisedHand": "{{name}} soovib rääkida.",
"somebody": "Keegi",
"startSilentTitle": "Ühinesid ilma mikrofonita!",
"startSilentDescription": "Mikrofoni kasutamiseks ühine kõnega uuesti",
"suboptimalExperienceDescription": "Rakenduse {{appName}} parima kvaliteedi tagamiseks palun kasuta <a href='static/recommendedBrowsers.html' target='_blank'>ühte nendest veebilehitsejatest</a>.",
"suboptimalExperienceTitle": "Veebilehitseja hoiatus",
"unmute": "Lülita mikrofon sisse",
"newDeviceCameraTitle": "Leitud uus kaamera",
"newDeviceAudioTitle": "Leitud uus heliseadeldis",
"newDeviceAction": "Kasuta"
},
"passwordSetRemotely": "määratud teise kasutaja poolt",
"passwordDigitsOnly": "Kuni {{number}} tähemärki",
"poweredby": "teieni toodud",
"presenceStatus": {
"busy": "Hõivatud",
"calling": "Helistamine...",
"connected": "Ühendatud",
"connecting": "Ühendamine...",
"connecting2": "Ühendamine*...",
"disconnected": "Lahti ühendatud",
"expired": "Aegunud",
"ignored": "Eiratud",
"initializingCall": "Kõne alustamine...",
"invited": "Kutsutud",
"rejected": "Tagasi lükatud",
"ringing": "Kutsumine..."
},
"profile": {
"setDisplayNameLabel": "Sisesta nimi",
"setEmailInput": "Sisesta e-mail",
"setEmailLabel": "Sisesta gravatar email",
"title": "Profiil"
},
"raisedHand": "Soovin rääkida",
"recording": {
"authDropboxText": "Lisa Dropboxi",
"availableSpace": "Vaba ruum: {{spaceLeft}} MB (ca {{duration}} minutit salvestamist)",
"beta": "BETA",
"busy": "Salvestamise ressursi vabastamine... Proovi mõne minuti pärast uuesti.",
"busyTitle": "Kõik salvestajad on praegu kinni",
"error": "Salvestamine ebaõnnestus. Proovi uuesti.",
"expandedOff": "Salvestamine peatatud",
"expandedOn": "Kõne salvestatakse.",
"expandedPending": "Salvestamine on alustatud...",
"failedToStart": "Salvestamine ebaõnnestus",
"fileSharingdescription": "Jaga salvestust kõnelejatega",
"live": "Otse",
"loggedIn": "Sisseloginud kasutajana {{userName}}",
"off": "Salvestamine on lõpetatud",
"offBy": "{{name}} lõpetas salvestamise",
"on": "Salvestatakse",
"onBy": "{{name}} alustas salvestamist",
"pending": "Kõne salvestamise ettevalmistus...",
"rec": "REC",
"serviceDescription": "Salvestus toimub teenuse kaudu",
"serviceName": "Salvestamise teenus",
"signIn": "Logi sisse",
"signOut": "Logi välja",
"unavailable": "Oih! {{serviceName}} ei ole hetkel kättesaadav! Proovi hiljem uuesti.",
"unavailableTitle": "Salvestamine ei ole võimalik."
},
"sectionList": {
"pullToRefresh": "Tõmba uuendamiseks"
},
"settings": {
"calendar": {
"about": "Rakenduse {{appName}} kalender kasutab turvalist ühendust ning näeb eesolevaid kõnesid.",
"disconnect": "Ühenda lahti",
"microsoftSignIn": "Logi sisse Microsofti kontoga",
"signedIn": "Hetkel nähakse kasutaja {{email}} kalendrit. Kalendrikutsete peitmiseks vajuta “Ühenda lahti” nupule.",
"title": "Kalender"
},
"devices": "Seaded",
"followMe": "Kõik jälgivad mind",
"language": "Keel",
"loggedIn": "Logitud sisse nimega: {{name}}",
"moderator": "Moderaator",
"more": "Rohkem",
"name": "Nimi",
"noDevice": "Andmed puuduvad",
"selectAudioOutput": "Heli väljund",
"selectCamera": "Kaamera",
"selectMic": "Mikrofon",
"startAudioMuted": "Kõik alustavad väljalülitatud mikrofoniga",
"startVideoMuted": "Kõik alustavad väljalülitatud kaameraga",
"title": "Seaded"
},
"settingsView": {
"advanced": "Täpsem",
"alertOk": "OK",
"alertTitle": "Hoiatus",
"alertURLText": "Sisestatud link ei ole õige",
"buildInfoSection": "Versioon",
"conferenceSection": "Kõne",
"disableCallIntegration": "Lülita kohaliku kõne integratsioon välja",
"disableP2P": "Lülita otseühendus välja",
"displayName": "Kasutatav nimi",
"email": "E-mail",
"header": "Seaded",
"profileSection": "Profiil",
"serverURL": "Serveri link",
"showAdvanced": "Näita täpsemaid seadistusi",
"startWithAudioMuted": "Alusta väljalülitatud heliga",
"startWithVideoMuted": "Alusta väljalülitatud videoga",
"version": "Versioon"
},
"share": {
"dialInfoText": "\n\n=====\n\nSoovid sisse helistada oma telefonilt?\n\n{{defaultDialInNumber}}Vajuta lingile, et näha telefoninumbreid sisse helistamiseks\n{{dialInfoPageUrl}}",
"mainText": "Vajuta lingile, et kõnega ühineda:\n{{roomUrl}}"
},
"speaker": "Kõneleja",
"speakerStats": {
"hours": "{{count}}t",
"minutes": "{{count}}m",
"name": "Nimi",
"seconds": "{{count}}s",
"speakerStats": "Kõneleja andmed",
"speakerTime": "Kõnelemise aeg"
},
"startupoverlay": {
"policyText": " ",
"title": "{{app}} vajab ligipääsu mikrofonile ja kaamerale."
},
"suspendedoverlay": {
"rejoinKeyTitle": "Ühine uuesti",
"text": "Vajuta <i>Ühine uuesti</i> nupule, et uuesti ühineda.",
"title": "Kõne katkestati, sest arvuti läks magama."
},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "Kasuta ainult heli",
"audioRoute": "Vali heli vahend",
"callQuality": "Halda kõne kvaliteeti",
"cc": "Kasuta subtiitreid",
"chat": "Kasuta vestluse akent",
"document": "Kasuta jagatud dokumente",
"download": "Laadi rakendus alla",
"feedback": "Jäta tagasiside",
"fullScreen": "Kasuta täisekraani",
"hangup": "Lahku kõnest",
"help": "Abi",
"invite": "Kutsu inimesi",
"kick": "Eemalda kõneleja",
"localRecording": "Näita salvestamise paneeli",
"lockRoom": "Kasuta kõne parooli",
"moreActions": "Kasuta toimingute menüüd",
"moreActionsMenu": "Toimingute menüü",
"moreOptions": "Näita rohkem valikuid",
"mute": "Lülita heli välja",
"muteEveryone": "Vaigista kõikide mikrofonid",
"pip": "Kasuta pilt-pildis vaadet",
"privateMessage": "Saada privaatsõnum",
"profile": "Muuda profiili",
"raiseHand": "Käe tõstmine",
"recording": "Salvestamine",
"remoteMute": "Lülita kasutaja mikrofon välja",
"Settings": "Seadistused",
"sharedvideo": "Kasuta Youtubei video jagamist",
"shareRoom": "Kutsu",
"shareYourScreen": "Jaga ekraani",
"shortcuts": "Kasuta kiirvalikuid",
"show": "Näita laval",
"speakerStats": "Kõnelejate statistika",
"tileView": "Paneelvaade",
"toggleCamera": "Kasuta kaamerat",
"videomute": "Video väljalülitamine",
"videoblur": "Video hägustamine"
},
"addPeople": "Lisa kõnesse inimesi",
"audioOnlyOff": "Lülita “ainult heli” valik välja",
"audioOnlyOn": "Lülita “ainult heli” valik sisse",
"audioRoute": "Vali heli vahend",
"authenticate": "Autendi",
"callQuality": "Halda kõne kvaliteeti",
"chat": "Ava/sulge vestlus",
"closeChat": "Sulge vestlus",
"documentClose": "Sulge jagatud dokument",
"documentOpen": "Ava jagatud dokument",
"download": "Laadi rakendus alla",
"enterFullScreen": "Vaata täisekraanil",
"enterTileView": "Vaata paneelvaates",
"exitFullScreen": "Välju täisekraani vaatest",
"exitTileView": "Välju paneelvaatest",
"feedback": "Jäta tagasiside",
"hangup": "Lahku",
"help": "Abi",
"invite": "Kutsu",
"login": "Logi sisse",
"logout": "Logi välja",
"lowerYourHand": "Langeta kätt",
"moreActions": "Rohkem tegevusi",
"moreOptions": "Rohkem valikuid",
"mute": "Mikrofon sisse/välja",
"muteEveryone": "Vaigista kõikide mikrofonid",
"noAudioSignalTitle": "Mikrofon ei püüa sisendit kinni!",
"noAudioSignalDesc": "Kui Sa ei lülitanud mikrofoni seadistustest tahtlikult välja, kaalu seadme vahetamist.",
"noAudioSignalDescSuggestion": "Kui Sa ei lülitanud mikrofoni seadistustest tahtlikult välja, kaalu seadme vahetamist.",
"noAudioSignalDialInDesc": "Võid sisse helistada valides:",
"noAudioSignalDialInLinkDesc" : "Sissehelistamise numbrid",
"noisyAudioInputTitle": "Mikrofonis on müra! Tundub, et läbi mikrofoni kostub palju helisid. Kaalu mikrofoni välja lülitamist või seadme vahetamist.",
"noisyAudioInputDesc": "Tundub, et läbi mikrofoni kostub palju helisid. Kaalu mikrofoni välja lülitamist või seadme vahetamist.",
"openChat": "Ava vestlus",
"pip": "Ava pilt-pildis vaade",
"privateMessage": "Saada privaatsõnum",
"profile": "Muuda profiili",
"raiseHand": "Tõsta/langeta kätt",
"raiseYourHand": "Tõsta kätt",
"Settings": "Seaded",
"sharedvideo": "Jaga YouTubei videot",
"shareRoom": "Kutsu",
"shortcuts": "Vaata kiirvalikuid",
"speakerStats": "Kõneleja andmed",
"startScreenSharing": "Alust ekraani jagamist",
"startSubtitles": "Alusta subtiitrite näitamist",
"stopScreenSharing": "Lõpeta ekraani jagamine",
"stopSubtitles": "Lõpeta subtiitrite näitamine",
"stopSharedVideo": "Lõpeta YouTubei video",
"talkWhileMutedPopup": "Soovid rääkida? Mikrofon on välja lülitatud.",
"tileViewToggle": "Näita paneelvaadet",
"toggleCamera": "Kasuta kaamerat",
"videomute": "Kaamera sisse/välja",
"startvideoblur": "Tausta hägustamine",
"stopvideoblur": "Lülita tausta hägustamine välja"
},
"transcribing": {
"ccButtonTooltip": "Subtiitrid sisse/välja",
"error": "Transkribeerimine ebaõnnestus. Proovi uuesti.",
"expandedLabel": "Transkribeerimine on sisse lülitatud",
"failedToStart": "Transkribeerimise alustamine ebaõnnestus",
"labelToolTip": "Kõne transkribeeritakse",
"off": "Transkribeerimine peatatud",
"pending": "Transkribeerimise ettevalmistus...",
"start": "Alusta subtiitrite kuvamist",
"stop": "Lõpeta subtiitrite kuvamine",
"tr": "TR"
},
"userMedia": {
"androidGrantPermissions": "Vali <b><i>Luba</i></b>, kui veebilehitseja küsib nõusolekut.",
"chromeGrantPermissions": "Vali <b><i>Luba</i></b>, kui veebilehitseja küsib nõusolekut.",
"edgeGrantPermissions": "Vali <b><i>Jah</i></b>, kui veebilehitseja küsib nõusolekut.",
"electronGrantPermissions": "Luba kasutada kaamerat ja mikrofoni",
"firefoxGrantPermissions": "Vali <b><i>Jaga valitud vahendit</i></b>, kui veebilehitseja küsib nõusolekut.",
"iexplorerGrantPermissions": "Vali <b><i>OK</i></b>, kui veebilehitseja küsib nõusolekut.",
"nwjsGrantPermissions": "Luba kasutada kaamerat ja mikrofoni",
"operaGrantPermissions": "Vali <b><i>Luba</i></b>, kui veebilehitseja küsib nõusolekut.",
"react-nativeGrantPermissions": "Vali <b><i>Luba</i></b>, kui veebilehitseja küsib nõusolekut.",
"safariGrantPermissions": "Vali <b><i>OK</i></b>, kui veebilehitseja küsib nõusolekut."
},
"videoSIPGW": {
"busy": "Vabastatakse ressurssi... Proovi mõne minuti pärast uuesti.",
"busyTitle": "Ruumi teenus on hetkel hõivatud",
"errorAlreadyInvited": "{{displayName}} on juba kutsutud",
"errorInvite": "Ühendus ei ole veel saavutatud. Proovi hiljem uuesti.",
"errorInviteFailed": "Probleemi lahendatakse. Proovi hiljem uuesti.",
"errorInviteFailedTitle": "Kasutaja {{displayName}} kutsumine ebaõnnestus",
"errorInviteTitle": "Ruumi kutsumine ebaõnnestus",
"pending": "{{displayName}} on kutsutud"
},
"videoStatus": {
"audioOnly": "AUD",
"audioOnlyExpanded": "Kasutad kõnes ainult heli. See hõivab ülekandekiirust vähem, aga video jagamine on välja lülitatud.",
"callQuality": "Kõne kvaliteet",
"hd": "HD",
"hdTooltip": "Video vaatamine kõrgkvaliteediga",
"highDefinition": "Kõrgresolutsioon",
"labelTooiltipNoVideo": "Video puudub",
"labelTooltipAudioOnly": "Valitud on “ainult heli” seadistus",
"ld": "LD",
"ldTooltip": "Video vaatamine madala kvaliteediga",
"lowDefinition": "Madal",
"onlyAudioAvailable": "Saab kasutada ainult heli",
"onlyAudioSupported": "Selles veebilehitsejas on toetatud ainult heli.",
"p2pEnabled": "Otseühendus on sisse lülitatud",
"p2pVideoQualityDescription": "Otseühenduse režiimis saab vastuvõetava kõne heli olla “ainult heli“, või kõrge. Teisi seadistusi ei saa valida.",
"recHighDefinitionOnly": "Eelistan kõrgresolutsiooni.",
"sd": "SD",
"sdTooltip": "Video vaatamine vaikekvaliteediga",
"standardDefinition": "Vaike resolutsioon"
},
"videothumbnail": {
"domute": "Lülita mikrofon välja",
"domuteOthers": "Vaigista teiste mikrofonid",
"flip": "Pööra",
"kick": "Eemalda kõnest",
"moderator": "Moderaator",
"mute": "Kasutaja mikrofon välja lülitatud",
"muted": "Mikrofon välja lülitatud",
"remoteControl": "Kaugjuhtimine",
"show": "Näita laval",
"videomute": "Kasutaja on kaamera peatanud"
},
"welcomepage": {
"accessibilityLabel": {
"join": "Vajuta, et ühineda",
"roomname": "Sisesta ruumi nimi"
},
"appDescription": "Lase käia, tee videoülekanne kogu meeskonnaga! Kutsu kõik, keda soovid. Rakendus {{app}} on krüpteeritud. 100% vabavara ülekannete tegemiseks, mida saab kasutada iga päev tasuta - ilma konto loomiseta.",
"audioVideoSwitch": {
"audio": "Heli",
"video": "Video"
},
"calendar": "Kalender",
"connectCalendarButton": "Ühenda kalender",
"connectCalendarText": "Ühenda oma kalender, et kõiki kohtumisi näha rakenduses {{app}}. Lisa {{provider}} kohtumised kalendrisse ja alusta kõnesid ühe klikiga.",
"enterRoomTitle": "Alusta uut kõnet",
"roomNameAllowedChars": "Televastuvõtu nimi ei tohi sisaldada sümboleid: ?, &, :, ', \", %, #.",
"go": "Mine",
"goSmall": "Mine",
"join": "Ühine",
"info": "Info",
"privacy": "Privaatsus",
"recentList": "Hiljutised",
"recentListDelete": "Kustuta",
"recentListEmpty": "Hiljutiste valikute nimekiri on tühi. Vestle kasutajatega ja leia oma hiljutised kõned siit.",
"reducedUIText": "Tere tulemast rakendusse {{app}}!",
"roomname": "Sisesta ruumi nimi",
"roomnameHint": "Sisesta ruumi nimi või link, millega soovid ühinega. Võid nime välja mõelda, aga anna osalejatele sellest teada, et nad saaksid ruumiga ühineda.",
"sendFeedback": "Saada tagasiside",
"terms": "Tingimused",
"title": "Turvaline, võimalusi täis ja tasuta keskkond videokõnede jaoks."
},
"lonelyMeetingExperience": {
"button": "Kutsu teisi",
"youAreAlone": "Asud hetkel ruumis üksi"
}
}

View File

@@ -601,7 +601,7 @@
"show": "Afficher en premier plan",
"speakerStats": "Afficher/cacher les statistiques de parole",
"tileView": "Activer/désactiver la vue mosaïque",
"toggleCamera": "Activer/désactiver la caméra",
"toggleCamera": "Changer de caméra",
"videomute": "Activer/désactiver la vidéo",
"videoblur": "Activer/désactiver le flou de la vidéo"
},
@@ -628,6 +628,7 @@
"logout": "Déconnexion",
"lowerYourHand": "Baisser la main",
"moreActions": "Plus d'actions",
"moreOptions": "Plus d'options",
"mute": "Muet / Actif",
"noAudioSignalTitle": "Il n'y a pas d'entrée provenant de votre micro !",
"noAudioSignalDesc": "Si vous n'avez pas délibérément coupé le son des paramètres du système ou du matériel, envisagez de changer le périphérique.",
@@ -752,5 +753,12 @@
"sendFeedback": "Envoyer votre avis",
"terms": "Termes",
"title": "Vidéoconférence Sécurisée, entièrement en vedette et gratuite"
},
"lonelyMeetingExperience": {
"button": "Inviter d'autres personnes",
"youAreAlone": "Vous êtes le seul participant de la réunion"
},
"helpView": {
"header": "Centre d'aide"
}
}

787
lang/main-is.json Normal file
View File

@@ -0,0 +1,787 @@
{
"addPeople": {
"add": "Bjóða",
"countryNotSupported": "Við eru ekki byrjuð með sambönd á þessum stað.",
"countryReminder": "Ertu að hringja út fyrir BNA? Gakktu úr skugga um að númerið byrji með landskóða!",
"disabled": "Þú getur ekki boðið fólki.",
"failedToAdd": "Mistókst að bæta við þátttakendum",
"footerText": "Úthringing er óvirk.",
"loading": "Leita að fólki og símanúmerum",
"loadingNumber": "Sannreyni símanúmer",
"loadingPeople": "Leita að fólki til að bjóða",
"noResults": "Engar leitarniðurstöður samsvara",
"noValidNumbers": "Settu inn símanúmer",
"searchNumbers": "Bæta við símanúmerum",
"searchPeople": "Leita að fólki",
"searchPeopleAndNumbers": "Leita að fólki og bæta við símanúmerum þess",
"telephone": "Símanúmer: {{number}}",
"title": "Bjóða fólki á þennan fund"
},
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Heyrnartól",
"phone": "Sími",
"speaker": "Ræðumaður",
"none": "Engin hljóðtæki tiltæk"
},
"audioOnly": {
"audioOnly": "Lítil bandbreidd"
},
"calendarSync": {
"addMeetingURL": "Bæta við fundartengli",
"confirmAddLink": "Viltu bæta við Jitsi-tengli í þennan atburð?",
"error": {
"appConfiguration": "Samþætting dagatals er ekki rétt uppsett.",
"generic": "Villa kom upp. Athugaðu stillingar dagatalsins eða prófaðu að endurlesa það.",
"notSignedIn": "Villa kom upp við auðkenningu til að skoða atburði dagatals. Athugaðu stillingar dagatalsins og prófaðu að skrá þig aftur inn á það."
},
"join": "Taka þátt",
"joinTooltip": "Taka þátt í fundinum",
"nextMeeting": "næsti fundur",
"noEvents": "Það eru engir áætlaðir atburðir á næstunni.",
"ongoingMeeting": "fundur í gangi",
"permissionButton": "Opna stillingar",
"permissionMessage": "Krafist er heimilda til að nota dagatal til að geta séð fundina þína í forritinu.",
"refresh": "Uppfæra dagatal",
"today": "Í dag"
},
"chat": {
"error": "Villa: skilaboðin þín voru ekki send. Ástæða: {{error}}",
"fieldPlaceHolder": "Skrifaðu skilaboðin þín hér",
"messagebox": "Skrifaðu skilaboð",
"messageTo": "Einkaskilaboð til {{recipient}}",
"noMessagesMessage": "Það eru ennþá engin skilaboð á fundinum. Byrjaðu umræðuna hér!",
"nickname": {
"popover": "Veldu gælunafn",
"title": "Settu inn gælunafn/stuttnefni til að nota við spjall"
},
"privateNotice": "Einkaskilaboð til {{recipient}}",
"title": "Spjall",
"you": "þú"
},
"chromeExtensionBanner": {
"installExtensionText": "Settu inn viðbót fyrir Google Calendar og samþættingu við Office 365",
"buttonText": "Setja inn Chrome-viðbót",
"dontShowAgain": "Ekki sýna mér þetta aftur"
},
"connectingOverlay": {
"joiningRoom": "Tengist við fundinn þinn ..."
},
"connection": {
"ATTACHED": "Tengt",
"AUTHENTICATING": "Auðkenning",
"AUTHFAIL": "Auðkenning mistókst",
"CONNECTED": "Tengt",
"CONNECTING": "Tengist",
"CONNFAIL": "Tenging mistókst",
"DISCONNECTED": "Aftengt",
"DISCONNECTING": "Aftengist",
"ERROR": "Villa",
"FETCH_SESSION_ID": "Næ í auðkenni setu (session-ID)...",
"GET_SESSION_ID_ERROR": "Villa við að ná í auðkenni setu: {{code}}",
"GOT_SESSION_ID": "Næ í auðkenni setu... Lokið",
"LOW_BANDWIDTH": "Slökkt var á myndmerki frá {{displayName}} til að spara bandbreidd"
},
"connectionindicator": {
"address": "Vistfang:",
"bandwidth": "Áætluð bandbreidd:",
"bitrate": "Bitahraði:",
"bridgeCount": "Fjöldi netþjóna: ",
"connectedTo": "Tengt við:",
"e2e_rtt": "E2E RTT:",
"framerate": "Rammatíðni:",
"less": "Sýna minna",
"localaddress": "Staðvært vistfang:",
"localaddress_plural": "Staðvær vistföng:",
"localport": "Staðvær gátt:",
"localport_plural": "Staðværar gáttir:",
"more": "Sýna meira",
"packetloss": "Pakkatap:",
"quality": {
"good": "Góð",
"inactive": "Óvirk",
"lost": "Tapað",
"nonoptimal": "Ekki sem best",
"poor": "Léleg"
},
"remoteaddress": "Fjartengt vistfang:",
"remoteaddress_plural": "Fjartengd vistföng:",
"remoteport": "Fjartengd gátt:",
"remoteport_plural": "Fjartengdar gáttir:",
"resolution": "Upplausn:",
"status": "Tenging:",
"transport": "Flutningsleið:",
"transport_plural": "Flutningsleiðir:"
},
"dateUtils": {
"earlier": "Fyrr",
"today": "Í dag",
"yesterday": "Í gær"
},
"deepLinking": {
"appNotInstalled": "Þú þarft {{app}} farsímaforritið til að geta tekið þátt í þessum fundi á símanum þínum.",
"description": "Gerðist ekkert? Við reyndum að ræsa fundinn þinn í {{app}} skjáborðsforritinu. Prófaðu aftur eða ræstu hann í {{app}} vefútgáfunni.",
"descriptionWithoutWeb": "Gerðist ekkert? Við reyndum að ræsa fundinn þinn í {{app}} skjáborðsforritinu.",
"downloadApp": "Ná í forritið",
"launchWebButton": "Ræsa í vafra",
"openApp": "Halda áfram í forritið",
"title": "Ræsi fundinn þinn í {{app}}...",
"tryAgainButton": "Prófa aftur í vafra"
},
"defaultLink": "t.d. {{url}}",
"defaultNickname": "dæmi: Jóna Péturs",
"deviceError": {
"cameraError": "Mistókst að ná aðgangi að myndavélinni þinni",
"cameraPermission": "Villa við að fá heimild fyrir myndavél",
"microphoneError": "Mistókst að ná aðgangi að hljóðnemanum þínum",
"microphonePermission": "Villa við að fá heimild fyrir hljóðnema"
},
"deviceSelection": {
"noPermission": "Heimild ekki veitt",
"previewUnavailable": "Forskoðun ekki tiltæk",
"selectADevice": "Veldu tæki",
"testAudio": "Spila prufuhljóð"
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": "Beint streymi"
},
"allow": "Leyfa",
"alreadySharedVideoMsg": "Annar þátttakandi er þegar að deila myndmerkinu sínu. Þessi fjarfundur leyfir aðeins að einu myndmerki sé deilt í einu.",
"alreadySharedVideoTitle": "Aðeins er leyft að deila einu myndmerki í einu",
"applicationWindow": "Forritsgluggi",
"Back": "Til baka",
"cameraConstraintFailedError": "Myndavélin þín uppfyllir ekki sumt af uppsettum skilyrðum.",
"cameraNotFoundError": "Myndavél fannst ekki.",
"cameraNotSendingData": "Við náum ekki að tengjast myndavélinni þinni. Athugaðu hvort eitthvað annað forrit sé að nota hana, veldu annað tæki í stillingavalmyndinni eða reyndu að endurhlaða forritið.",
"cameraNotSendingDataTitle": "Gat ekki tengst myndavél",
"cameraPermissionDeniedError": "Þú hefur ekki gefið leyfi til að nota myndavélina þína. Þú getur samt tekið þátt í fundinum, en aðrir munu ekki sjá þig. Notaðu myndavélarhnappinn í vistfangastikunni til að laga þetta.",
"cameraUnknownError": "Get ekki notað myndavélina af óþekktum ástæðum.",
"cameraUnsupportedResolutionError": "Myndavélin þín styður ekki umbeðna upplausn myndmerkis.",
"Cancel": "Hætta við",
"close": "Loka",
"conferenceDisconnectMsg": "Þú ættir kannski að athuga nettenginguna þína. Tengist aftur eftir {{seconds}} sek...",
"conferenceDisconnectTitle": "Þú hefur verið aftengd(ur).",
"conferenceReloadMsg": "Við erum að reyna að laga þetta. Tengist aftur eftir {{seconds}} sek...",
"conferenceReloadTitle": "Því miður, eitthvað hefur farið úrskeiðis.",
"confirm": "Staðfesta",
"confirmNo": "Nei",
"confirmYes": "Já",
"connectError": "Úbbs! Eitthvað fór úrskeiðis og við náðum ekki að tengjast fjarfundinum.",
"connectErrorWithMsg": "Úbbs! Eitthvað fór úrskeiðis og við náðum ekki að tengjast fjarfundinum: {{msg}}",
"connecting": "Tengist",
"contactSupport": "Hafa samband við aðstoð",
"copy": "Afrita",
"dismiss": "Hunsa",
"displayNameRequired": "Hæ, hvað heitir þú?",
"done": "Lokið",
"enterDisplayName": "Settu hér inn nafnið þitt",
"error": "Villa",
"externalInstallationMsg": "Þú þarft að setja upp skjáborðsdeilingar-viðbótina.",
"externalInstallationTitle": "Krafist er forritsviðbótar",
"goToStore": "Fara í vefsafnið",
"gracefulShutdown": "Þjónustan okkar er ekki aðgengileg í augnablikinu. Endilega reyndu aftur síðar.",
"IamHost": "Ég er gestgjafinn",
"incorrectRoomLockPassword": "Rangt lykilorð",
"incorrectPassword": "Rangt notandanafn eða lykilorð",
"inlineInstallationMsg": "Þú þarft að setja upp skjáborðsdeilingar-viðbótina.",
"inlineInstallExtension": "Setja upp núna",
"internalError": "Úbbs! Eitthvað fór úrskeiðis. Eftirfarandi villa kom upp: {{error}}",
"internalErrorTitle": "Innri villa",
"kickMessage": "Þú getur haft samband við {{participantDisplayName}} til að sjá frekari upplýsingar.",
"kickParticipantButton": "Sparka",
"kickParticipantDialog": "Ertu viss um að þú viljir henda þessum þátttakanda út?",
"kickParticipantTitle": "Henda þessum þátttakanda út?",
"kickTitle": "Æi! {{participantDisplayName}} henti þér út af fundinum",
"liveStreaming": "Beint streymi",
"liveStreamingDisabledForGuestTooltip": "Gestir geta ekki hafið bein streymi.",
"liveStreamingDisabledTooltip": "Aðhefja beint streymi er óvirkt.",
"lockMessage": "Gat ekki læst fjarfundinum.",
"lockRoom": "Bæta við $t(lockRoomPasswordUppercase)i fyrir fund",
"lockTitle": "Læsing mistókst",
"logoutQuestion": "Ertu viss um að þú viljir skrá þig út og loka fjarfundinum?",
"logoutTitle": "Útskráning",
"maxUsersLimitReached": "Takmörkum á hámarksfjölda þátttakenda hefur verið náð. Fjarfundurinn er fullskipaður. Hafðu samband við eiganda fundarins eða reyndu aftur síðar!",
"maxUsersLimitReachedTitle": "Hámarksfjölda þátttakenda hefur verið náð",
"micConstraintFailedError": "Hljóðneminn þinn uppfyllir ekki sumt af uppsettum skilyrðum.",
"micNotFoundError": "Hljóðnemi fannst ekki.",
"micNotSendingData": "Farðu í stillingar tölvunnar þinnar til að kveikja á hljóðnemanum og aðlaga styrk hans",
"micNotSendingDataTitle": "Þaggað er niður í hljóðnemanum þínum í kerfisstillingunum",
"micPermissionDeniedError": "Þú hefur ekki gefið leyfi til að nota hljóðnemann þinn. Þú getur samt tekið þátt í fundinum, en aðrir munu ekki heyra í þér. Notaðu myndavélarhnappinn í vistfangastikunni til að laga þetta.",
"micUnknownError": "Get ekki notað hljóðnemann af óþekktum ástæðum.",
"muteEveryoneElseDialog": "Ef þaggað er niður í þeim muntu ekki geta afþaggað þá, en þeir munu geta afþaggað sig hvenær sem er .",
"muteEveryoneElseTitle": "Þagga niður í öllum nema {{whom}}?",
"muteEveryoneDialog": "Ertu viss um að þú viljir þagga niður í öllum? Þú munt ekki geta afþaggað þá, en þeir munu geta afþaggað sig hvenær sem er .",
"muteEveryoneTitle": "Þagga niður í öllum?",
"muteEveryoneSelf": "þig sjálfan",
"muteEveryoneStartMuted": "Allir byrja hljóðlaust héðan í frá",
"muteParticipantBody": "Þú munt ekki geta afþaggað þá, en þeir munu geta afþaggað sig hvenær sem er .",
"muteParticipantButton": "Þagga niður",
"muteParticipantDialog": "Ertu viss um að þú viljir þagga niður í þessum þátttakanda? Þú munt ekki geta afþaggað hann, en hann munu geta afþaggað sig hvenær sem er .",
"muteParticipantTitle": "Þagga niður í þessum þátttakanda?",
"Ok": "Í lagi",
"passwordLabel": "Þátttakandi hefur læst fundinum. Settu inn $t(lockRoomPassword) til að taka þátt í honum.",
"passwordNotSupported": "Að setja $t(lockRoomPassword) fyrir fund er ekki stutt.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) er ekki stutt",
"passwordRequired": "$t(lockRoomPasswordUppercase) er nauðsynlegt",
"popupError": "Vafrinn þinn er að loka á sprettglugga frá þessu vefsvæði. Virkjaðu sprettglugga í öryggisstillingum vafrans þíns og prófaðu svo aftur.",
"popupErrorTitle": "Lokað á sprettglugga",
"recording": "Upptaka",
"recordingDisabledForGuestTooltip": "Gestir geta ekki hafið upptökur.",
"recordingDisabledTooltip": "Að hefja upptöku er óvirkt.",
"rejoinNow": "Taka þátt aftur",
"remoteControlAllowedMessage": "{{user}} samþykkti beiðni þína um fjarstýringu!",
"remoteControlDeniedMessage": "{{user}} hafnaði beiðni þinni um fjarstýringu!",
"remoteControlErrorMessage": "Villa kom upp þegar reynt var að biðja um heimild til fjarstýringar frá {{user}}!",
"remoteControlRequestMessage": "Viltu leyfa {{user}} að stýra skjáborðinu þínu fjartengt?",
"remoteControlShareScreenWarning": "Athugaðu að ef þú ýtir á \"Leyfa\" muntu deila skjánum þínum!",
"remoteControlStopMessage": "Fjarstýringarsetan endaði!",
"remoteControlTitle": "Fjarstýring skjáborðs",
"Remove": "Fjarlægja",
"removePassword": "Fjarlægja $t(lockRoomPassword)",
"removeSharedVideoMsg": "Ertu viss um að þú viljir fjarlægja deilda myndmerkið þitt?",
"removeSharedVideoTitle": "Fjarlægja deilt myndmerki",
"reservationError": "Villa í pöntunarkerfi",
"reservationErrorMsg": "Villukóði: {{code}}, skilaboð: {{msg}}",
"retry": "Reyna aftur",
"screenSharingAudio": "Deila hljóði",
"screenSharingFailedToInstall": "Úbbs! Það mistókst að setja inn viðbótina fyrir skjádeilingu.",
"screenSharingFailedToInstallTitle": "Mistókst að setja inn viðbót fyrir skjádeilingu",
"screenSharingFirefoxPermissionDeniedError": "Eitthvað fór úrskeiðis við að reyna að deila skjánum þinum. Gakktu úr skugga um að þú hafir gefið okkur heimild til að gera þetta. ",
"screenSharingFirefoxPermissionDeniedTitle": "Úbbs! Ekki var hægt að hefja skjádeilingu!",
"screenSharingPermissionDeniedError": "Úbbs! Eitthvað fór úrskeiðis varðandi heimildir skjádeiliviðbótarinnar. Þú ættir að hlaða henni aftur inn og prófa svo aftur.",
"sendPrivateMessage": "Þú fékkst nýlega einkaskilaboð. Hafðirðu hugsað þér að svara þeim í einkaskilaboðum eða ætlarðu að senda skilaboð til hópsins?",
"sendPrivateMessageCancel": "Senda á hópinn",
"sendPrivateMessageOk": "Senda sem einkamál",
"sendPrivateMessageTitle": "Senda sem einkamál?",
"serviceUnavailable": "Þjónustan er ekki tiltæk",
"sessTerminated": "Símtali er lokið",
"Share": "Deila",
"shareVideoLinkError": "Settu inn réttan YouTube-tengil.",
"shareVideoTitle": "Deila myndmerki",
"shareYourScreen": "Deila skjánum þínum",
"shareYourScreenDisabled": "Skjádeiling er óvirk.",
"shareYourScreenDisabledForGuest": "Gestir geta ekki notað skjádeilingu.",
"startLiveStreaming": "Hefja beint streymi",
"startRecording": "Hefja upptöku",
"startRemoteControlErrorMessage": "Villa kom upp þegar reynt var að ræsa fjarstýringarsetu!",
"stopLiveStreaming": "Stöðva beint streymi",
"stopRecording": "Stöðva upptöku",
"stopRecordingWarning": "Ertu viss um að þú viljir stöðva þessa upptöku?",
"stopStreamingWarning": "Ertu viss um að þú viljir stöðva þetta beina streymi?",
"streamKey": "Lykill fyrir beint streymi",
"Submit": "Senda inn",
"thankYou": "Takk fyrir að nota {{appName}}!",
"token": "teikn",
"tokenAuthFailed": "Því miður, þú hefur ekki heimild til að taka þátt í þessu samtali.",
"tokenAuthFailedTitle": "Auðkenning mistókst",
"transcribing": "Umrita (transcribing)",
"unlockRoom": "Fjarlægja $t(lockRoomPassword) fundar",
"userPassword": "lykilorð notandans",
"WaitForHostMsg": "Fjarfundurinn <b>{{room}}</b> er ekki byrjaður. Ef þú ert gestgjafinn skaltu auðkenna þig. Annars ættiðu að bíða eftir að gestgjafinn skrái sig inn.",
"WaitForHostMsgWOk": "Fjarfundurinn <b>{{room}}</b> er ekki byrjaður. Ef þú ert gestgjafinn skaltu ýta á 'Í lagi' til að auðkenna þig. Annars ættiðu að bíða eftir að gestgjafinn skrái sig inn.",
"WaitingForHost": "Bíð eftir að gestgjafanum ...",
"Yes": "Já",
"yourEntireScreen": "Allur skjárinn þinn"
},
"dialOut": {
"statusMessage": "er núna {{status}}"
},
"documentSharing": {
"title": "Sameiginlegt skjal"
},
"feedback": {
"average": "Meðaltal",
"bad": "Slæmt",
"detailsLabel": "Segðu okkur meira um þetta.",
"good": "Gott",
"rateExperience": "Gefðu upplifun þinni af fundinum einkunn",
"veryBad": "Mjög slæm",
"veryGood": "Mjög góð"
},
"incomingCall": {
"answer": "Svara",
"audioCallTitle": "Innhringing",
"decline": "Hunsa",
"productLabel": "frá Jitsi Meet",
"videoCallTitle": "Innhringing myndsamtals"
},
"info": {
"accessibilityLabel": "Birta upplýsingar",
"addPassword": "Bæta við $t(lockRoomPassword)i",
"cancelPassword": "Hætta við $t(lockRoomPassword)",
"conferenceURL": "Tengill:",
"country": "Land",
"dialANumber": "Til að tengjast við fundinn þinn skaltu hringja í eitt af þessum númerum og setja inn PIN-kóðann.",
"dialInConferenceID": "PIN:",
"dialInNotSupported": "Því miður, innhringing er ekki ennþá studd.",
"dialInNumber": "Innhringing:",
"dialInSummaryError": "Villa við að sækja innhringingarupplýsingar. Reyndu aftur síðar.",
"dialInTollFree": "Gjaldfrjálst",
"genericError": "Úbbs! Eitthvað fór úrskeiðis.",
"inviteLiveStream": "Til að skoða beint streymi frá þessum fundi skaltu smella á þennan tengil: {{url}}",
"invitePhone": "Til að tengjast frekar með síma skaltu ýta á þetta: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Ertu að leita að öðru innhringinúmeri?\nSkoðaðu innhringinúmerin fyrir þennan fund: {{url}}\n\n\nEf einnig er verið að hringja inn í gegnum símanúmer fjarfundar, skaltu taka þátt án þess að tengjast með hljóði: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Þér hefur verið boðið að taka þátt í fundi.",
"inviteURLFirstPartPersonal": "{{name}} er að bjóða þér á fund.\n",
"inviteURLSecondPart": "\nTaka þátt í fundinum:\n{{url}}\n",
"liveStreamURL": "Beint streymi:",
"moreNumbers": "Fleiri símanúmer",
"noNumbers": "Engin innhringinúmer.",
"noPassword": "Ekkert",
"noRoom": "Enginn fjarfundur var tilgreindur til að hringja inn í.",
"numbers": "Innhringinúmer",
"password": "$t(lockRoomPasswordUppercase):",
"title": "Deila",
"tooltip": "Deila tengli og innhringingarupplýsingum um þennan fund",
"label": "Upplýsingar um fund"
},
"inviteDialog": {
"alertText": "Mistókst að bjóða sumum þátttakendum.",
"header": "Bjóða",
"searchCallOnlyPlaceholder": "Settu inn símanúmer",
"searchPeopleOnlyPlaceholder": "Leita að þátttakendum",
"searchPlaceholder": "Þátttakandi eða símanúmer",
"send": "Senda"
},
"inlineDialogFailure": {
"msg": "Við eigum í smá erfiðleikum.",
"retry": "Reyndu aftur",
"support": "Stuðningur",
"supportMsg": "Ef þetta heldur áfram að koma upp, skaltu hafa samband við"
},
"keyboardShortcuts": {
"focusLocal": "Gera myndmerkið þitt virkt",
"focusRemote": "Gera myndmerkið einhvers annars virkt",
"fullScreen": "Skoða skjá eða fara úr skjáfylliham",
"keyboardShortcuts": "Flýtilyklar",
"localRecording": "Birta eða fela stýringar fyrir upptöku á tölvunni",
"mute": "Þagga niður eða kveikja á hljóðnema",
"pushToTalk": "Ýta til að tala",
"raiseHand": "Rétta upp eða leggja niður höndina",
"showSpeakerStats": "Birta tölfræði ræðumanns",
"toggleChat": "Opna eða loka spjallinu",
"toggleFilmstrip": "Birta eða fela smámyndir myndmerkja",
"toggleScreensharing": "Skipta á milli myndavélar og deilingar á skjá",
"toggleShortcuts": "Birta eða fela flýtivísanir á lyklaborði",
"videoMute": "Ræsa eða stöðva myndavélina þína",
"videoQuality": "Sýsla með gæði símtals"
},
"liveStreaming": {
"busy": "Við erum að reyna að losa um einhver tilföng fyrir streymi. Reyndu aftur eftir nokkrar mínútur.",
"busyTitle": "Allar streymisvélar eru uppteknar í augnablikinu",
"changeSignIn": "Skipta um notandaaðgang.",
"choose": "Veldu beint streymi",
"chooseCTA": "Veldu valkost fyrir streymi. Þú ert núna skráð/ur inn sem {{email}}.",
"enterStreamKey": "Settu hér inn lykil fyrir beint streymi frá YouTube.",
"error": "Beint streymi mistókst. Reyndu aftur.",
"errorAPI": "Villa kom upp við að fá aðgang að útsendingum þínum á YouTube. Prófaðu að skrá þig inn aftur.",
"errorLiveStreamNotEnabled": "Beint streymi er ekki virkt fyrir {{email}}. Virkjaðu beint streymi eða skráðu þig inn á notandaaðgang þar sem beint streymi er virkjað.",
"expandedOff": "Beina streymið hefur verið stöðvað",
"expandedOn": "Verið er að taka streyma fundinum á YouTube.",
"expandedPending": "Verið er að ræsa beina streymið...",
"failedToStart": "Tókst ekki að ræsa beint streymi",
"getStreamKeyManually": "Við gátum ekki nálgast nein bein streymi. Reyndu að ná þér í lykil fyrir beint streymi frá YouTube.",
"invalidStreamKey": "Lykill fyrir beint streymi gæti verið rangur.",
"off": "Beint streymi stöðvað",
"offBy": "{{name}} stöðvaði beina streymið",
"on": "Beint streymi",
"onBy": "{{name}} byrjaði beint streymi",
"pending": "Ræsi beint streymi...",
"serviceName": "Þjónusta fyrir beint streymi",
"signedInAs": "Þú ert núna skráð/ur inn sem:",
"signIn": "Skrá inn með Google",
"signInCTA": "Skráðu þig inn eða settu inn lykil fyrir beint streymi frá YouTube.",
"signOut": "Skrá út",
"start": "Hefja beint streymi",
"streamIdHelp": "Hvað er þetta?",
"unavailableTitle": "Beint streymi er ekki tiltækt",
"youtubeTerms": "Þjónustuskilmálar YouTube",
"googlePrivacyPolicy": "Meðferð persónuupplýsinga hjá Google"
},
"localRecording": {
"clientState": {
"off": "Slökkt",
"on": "Kveikt",
"unknown": "Óþekkt"
},
"dialogTitle": "Stýringar fyrir upptöku á tölvunni",
"duration": "Tímalengd",
"durationNA": "Ekki tiltækt",
"encoding": "Kóðun",
"label": "LOR",
"labelToolTip": "Upptaka á tölvunni er í gangi",
"localRecording": "Upptaka á tölvunni",
"me": "Ég",
"messages": {
"engaged": "Upptaka á tölvunni í gangi.",
"finished": "Upptökusetu {{token}} lokið. Sendu upptökuskrána til stjórnandans.",
"finishedModerator": "Upptökusetu {{token}} lokið. Upptaka hljóðrásar á þessari tölvu hefur verið vistuð. Biddu aðra þáttakendur um að senda inn upptökur þeirra.",
"notModerator": "Þú ert ekki stjórnandinn. Þú getur ekki byrjað eða stöðvað upptöku á tölvunni."
},
"moderator": "Stjórnandi",
"no": "Nei",
"participant": "Þátttakandi",
"participantStats": "Tölfræði þátttakanda",
"sessionToken": "Setuteikn",
"start": "Hefja upptöku",
"stop": "Stöðva upptöku",
"yes": "Já"
},
"lockRoomPassword": "lykilorð",
"lockRoomPasswordUppercase": "Lykilorð",
"me": "ég",
"notify": {
"connectedOneMember": "{{name}} hefur bæst við á fundinn",
"connectedThreePlusMembers": "{{name}} og {{count}} til viðbótar hafa bæst við á fundinn",
"connectedTwoMembers": "{{first}} og {{second}} hafa bæst við á fundinn",
"disconnected": "aftengt",
"focus": "Fjarfundur virkur",
"focusFail": "{{component}} er ekki tiltækt - prófa aftur eftir {{ms}} sek",
"grantedTo": "Stjórnandaréttindi veitt til {{to}}!",
"invitedOneMember": "{{name}} hefur verið boðið",
"invitedThreePlusMembers": "{{name}} og {{count}} til viðbótar hefur verið boðið",
"invitedTwoMembers": "{{first}} og {{second}} hefur verið boðið",
"kickParticipant": "{{kicked}} var hent út af {{kicker}}",
"me": "Ég",
"moderator": "Stjórnandaréttindi veitt!",
"muted": "Þú byrjaðir samtalið með þaggað niður í þér.",
"mutedTitle": "Það er þaggað niður í þér!",
"mutedRemotelyTitle": "{{participantDisplayName}} hefur þaggað niður í þér!",
"mutedRemotelyDescription": "Þú getur alltaf afþaggað þig þegar þú ert tilbúinn til að tala. Þaggaðu svo aftur niður í hljóðnemanum svo að aukahávaði sé ekki að trufla fundinn.",
"passwordRemovedRemotely": "$t(lockRoomPasswordUppercase) fjarlægt af öðrum þátttakanda",
"passwordSetRemotely": "$t(lockRoomPasswordUppercase) stillt af öðrum þátttakanda",
"raisedHand": "{{name}} myndi vilja taka til máls.",
"somebody": "Einhver",
"startSilentTitle": "Þú mættir með ekkert hljóðúttak!",
"startSilentDescription": "Tengstu fundinum aftur til að virkja hljóð",
"suboptimalBrowserWarning": "Við erum ekki viss um að upplifun þín af fundinum verði neitt sérstök. Við erum alltaf að reyna að bæta þetta, en þangað til ættirðu frekar að nota einhvern af <a href='static/recommendedBrowsers.html' target='_blank'>þeim vöfrum sem eru studdir að fullu</a>.",
"suboptimalExperienceTitle": "Aðvörun vafra",
"unmute": "Afþagga",
"newDeviceCameraTitle": "Ný myndavél fannst",
"newDeviceAudioTitle": "Nýtt hljóðtæki fannst",
"newDeviceAction": "Nota"
},
"passwordSetRemotely": "sett af öðrum þátttakanda",
"passwordDigitsOnly": "Allt að {{number}} stafir",
"poweredby": "keyrt með",
"presenceStatus": {
"busy": "Upptekinn",
"calling": "Hringi...",
"connected": "Tengt",
"connecting": "Tengist...",
"connecting2": "Tengist*...",
"disconnected": "Aftengt",
"expired": "Útrunnið",
"ignored": "Hunsað",
"initializingCall": "Ræsi símtal...",
"invited": "Boðið",
"rejected": "Hafnað",
"ringing": "Hringing..."
},
"profile": {
"setDisplayNameLabel": "Settu inn birtingarnafnið þitt",
"setEmailInput": "Settu inn tölvupóstfang",
"setEmailLabel": "Settu inn gravatar-tölvupóstfangið þitt",
"title": "Persónusnið"
},
"raisedHand": "Myndi vilja taka til máls",
"recording": {
"authDropboxText": "Senda inn á Dropbox",
"availableSpace": "Laust pláss: {{spaceLeft}} MB (um það bil {{duration}} mínútur í upptöku)",
"beta": "BETA",
"busy": "Við erum að reyna að losa um einhver tilföng fyrir upptöku. Reyndu aftur eftir nokkrar mínútur.",
"busyTitle": "Allar upptökuvélar eru uppteknar í augnablikinu",
"error": "Upptaka mistókst. Reyndu aftur.",
"expandedOff": "Upptaka hefur verið stöðvuð",
"expandedOn": "Verið er að taka upp fundinn.",
"expandedPending": "Verið er að ræsa upptöku...",
"failedToStart": "Tókst ekki að ræsa upptöku",
"fileSharingdescription": "Deila upptöku með þátttakendum á fundinum",
"live": "BEINT",
"loggedIn": "Skráð inn sem {{userName}}",
"off": "Upptaka stöðvuð",
"offBy": "{{name}} stöðvaði upptökuna",
"on": "Upptaka",
"onBy": "{{name}} byrjaði upptökuna",
"pending": "Undirbý að taka upp fundinn...",
"rec": "REC",
"serviceDescription": "Upptakan þín verður vistuð af upptökuþjónustunni",
"serviceName": "Upptökuþjónusta",
"signIn": "Skrá inn",
"signOut": "Skrá út",
"unavailable": "Úbbs! {{serviceName}} er upptekið í augnablikinu. Við erum að vinna í þessu vandamáli. Reyndu aftur síðar.",
"unavailableTitle": "Upptaka er ekki tiltæk"
},
"sectionList": {
"pullToRefresh": "Toga til að endurlesa"
},
"settings": {
"calendar": {
"about": "Samþætting dagatals við {{appName}} er notuð til að tryggja öruggan aðgang að dagatalinu þínu þannig að hægt sé að lesa fyrirliggjandi viðburði.",
"disconnect": "Aftengjast",
"microsoftSignIn": "Skrá inn með Microsoft",
"signedIn": "Er núna með aðgang að atburðum í dagatali fyrir {{email}}. Smelltu á 'Aftengjast' til að hætta að ná í atburði í dagatali.",
"title": "Dagatal"
},
"devices": "Tæki",
"followMe": "Allir fylgjast með mér",
"language": "Tungumál",
"loggedIn": "Skráð inn sem {{name}}",
"microphones": "Hljóðnemar",
"moderator": "Stjórnandi",
"more": "Meira",
"name": "Nafn",
"noDevice": "Ekkert",
"selectAudioOutput": "Hljóðúttak",
"selectCamera": "Myndavél",
"selectMic": "Hljóðnemi",
"speakers": "Ræðumenn",
"startAudioMuted": "Allir byrja hljóðlaust",
"startVideoMuted": "Allir byrja faldir",
"title": "Stillingar"
},
"settingsView": {
"advanced": "Nánar",
"alertOk": "Í lagi",
"alertTitle": "Aðvörun",
"alertURLText": "Slóðin á netþjóninn sem sett var inn er ógild",
"buildInfoSection": "Byggingarupplýsingar",
"conferenceSection": "Fjarfundur",
"disableCallIntegration": "Gera samþættingu raunverulegra símtala óvirka",
"disableP2P": "Gera jafningjaham (peer-to-peer) óvirkan",
"displayName": "Birtingarnafn",
"email": "Tölvupóstfang",
"header": "Stillingar",
"profileSection": "Persónusnið",
"serverURL": "Slóð á netþjón",
"showAdvanced": "Birta ítarlegar stillingar",
"startWithAudioMuted": "Byrja með þaggað niður í hljóði",
"startWithVideoMuted": "Byrja með myndmerki án hljóðs",
"version": "Útgáfa"
},
"share": {
"dialInfoText": "\n\n=====\n\nViltu bara hringja inn með símanum þínum?\n\n{{defaultDialInNumber}}Smelltu hér til að sjá innhringinúmerin fyrir þennan fund\n{{dialInfoPageUrl}}",
"mainText": "Smelltu á eftirfarandi tengil til að taka þátt í fundinum:\n{{roomUrl}}"
},
"speaker": "Ræðumaður",
"speakerStats": {
"hours": "{{count}}klst",
"minutes": "{{count}}mín",
"name": "Nafn",
"seconds": "{{count}}sek",
"speakerStats": "Tölfræði ræðumanns",
"speakerTime": "Tími ræðumanns"
},
"startupoverlay": {
"policyText": " ",
"title": "{{app}} þarf að nota hljóðnema og myndavél."
},
"suspendedoverlay": {
"rejoinKeyTitle": "Taka þátt aftur",
"text": "Ýttu á <i>Taka þátt aftur</i> til að tengjast aftur.",
"title": "Myndsamtalið þitt var trufla vegna þess að tölvan þín svæfðist."
},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "Víxla einungis hljóð af/á",
"audioRoute": "Veldu hljóðtæki",
"callQuality": "Sýsla með gæði myndmerkis",
"cc": "Víxla skjátextum af/á",
"chat": "Víxla spjallglugga af/á",
"document": "Víxla deildu skjali af/á",
"download": "Sækja forritin okkar",
"feedback": "Senda inn umsögn",
"fullScreen": "Víxla skjáfylli af/á",
"hangup": "Hætta í símtalinu",
"help": "Hjálp",
"invite": "Bjóða fólki",
"kick": "Henda þátttakanda út",
"localRecording": "Víxla stýringum fyrir upptöku á tölvunni af/á",
"lockRoom": "Víxla lykilorði fundar af/á",
"moreActions": "Víxla af/á valmynd fyrir fleiri aðgerðir",
"moreActionsMenu": "Valmynd fyrir fleiri aðgerðir",
"moreOptions": "Birta fleiri valkosti",
"mute": "Víxla hljóði af/á",
"muteEveryone": "Þagga niður í öllum",
"pip": "Víxla mynd-í-mynd-ham af/á",
"privateMessage": "Senda einkaskilaboð",
"profile": "Breyta persónusniðinu þínu",
"raiseHand": "Víxla á milli uppréttrar og niðurlagðrar handar",
"recording": "Víxla upptöku af/á",
"remoteMute": "Þagga niður í þátttakanda",
"Settings": "Víxla stillingum af/á",
"sharedvideo": "Víxla deilingu Youtube-myndskeiðs af/á",
"shareRoom": "Bjóddu einhverjum",
"shareYourScreen": "Víxla skjádeilingu af/á",
"shortcuts": "Víxla flýtilyklum af/á",
"show": "Birta í glugga",
"speakerStats": "Víxla tölfræði ræðumanna af/á",
"tileView": "Víxla reitasýn af/á",
"toggleCamera": "Víxla myndavél",
"toggleFilmstrip": "Víxla filmubút af/á",
"videomute": "Víxla hljóði myndmerkis af/á",
"videoblur": "Víxla móðun myndmerkis af/á"
},
"addPeople": "Bæta fólki við símtalið þitt",
"audioOnlyOff": "Gera ham fyrir litla bandbreidd óvirkan",
"audioOnlyOn": "Virkja ham fyrir litla bandbreidd",
"audioRoute": "Veldu hljóðtæki",
"authenticate": "Auðkenna",
"callQuality": "Sýsla með gæði myndmerkis",
"chat": "Opna / Loka spjalli",
"closeChat": "Loka spjalli",
"documentClose": "Loka deildu skjali",
"documentOpen": "Opna deilt skjal",
"download": "Sækja forritin okkar",
"enterFullScreen": "Skoða á öllum skjánum",
"enterTileView": "Opna reitasýn",
"exitFullScreen": "Fara úr skjáfylliham",
"exitTileView": "Loka reitasýn",
"feedback": "Senda inn umsögn",
"hangup": "Leggja á",
"help": "Hjálp",
"invite": "Bjóða fólki",
"login": "Innskráning",
"logout": "Útskráning",
"lowerYourHand": "Leggja niður höndina",
"moreActions": "Fleiri aðgerðir",
"moreOptions": "Fleiri valkostir",
"mute": "Þagga/Kveikja á hljóði",
"muteEveryone": "Þagga niður í öllum",
"noAudioSignalTitle": "Það er ekkert inntak að koma frá hljóðnemanum þínum!",
"noAudioSignalDesc": "Ef þú þaggaðir ekki viljandi niður í þessu í kerfisstillingunum eða með vélbúnaðarrofa, þá ættirðu að íhuga að skipta um hljóðtæki.",
"noAudioSignalDescSuggestion": "Ef þú þaggaðir ekki viljandi niður í þessu í kerfisstillingunum eða með vélbúnaðarrofa, þá ættirðu að íhuga að skipta yfir á hljóðtækið sem stungið er upp á.",
"noAudioSignalDialInDesc": "Þú getur einnig hringt þig inn með:",
"noAudioSignalDialInLinkDesc": "Innhringinúmer",
"noisyAudioInputTitle": "Hljóðneminn þinn lítur út fyrir að gefa frá sér truflanir!",
"noisyAudioInputDesc": "Það lítur út fyrir að hljóðneminn þinn sé að gefa frá sér truflanir, íhugaðu að þagga niður í honum eða skipta um hljóðtæki.",
"openChat": "Opna spjall",
"pip": "Fara í mynd-í-mynd-ham",
"privateMessage": "Senda einkaskilaboð",
"profile": "Breyta persónusniðinu þínu",
"raiseHand": "Rétta upp / Leggja niður hönd",
"raiseYourHand": "Rétta upp höndina",
"Settings": "Stillingar",
"sharedvideo": "Deila YouTube-myndskeiði",
"shareRoom": "Bjóddu einhverjum",
"shortcuts": "Skoða flýtilykla",
"speakerStats": "Tölfræði ræðumanns",
"startScreenSharing": "Hefja skjádeilingu",
"startSubtitles": "Hefja birtingu skjátexta",
"stopScreenSharing": "Hætta skjádeilingu",
"stopSubtitles": "Hætta birtingu skjátexta",
"stopSharedVideo": "Stöðva YouTube-myndskeið",
"talkWhileMutedPopup": "Ertu að reyna að tala? Þaggað er niður í þér.",
"tileViewToggle": "Víxla reitasýn af/á",
"toggleCamera": "Víxla myndavél",
"videomute": "Ræsa / Stöðva myndavél",
"startvideoblur": "Móða bakgrunninn minn",
"stopvideoblur": "Gera móðun bakgrunns óvirka"
},
"transcribing": {
"ccButtonTooltip": "Hefja / Hætta birtingu skjátexta",
"error": "Umritun mistókst. Reyndu aftur.",
"expandedLabel": "Umritun er virk",
"failedToStart": "Tókst ekki að ræsa umritun",
"labelToolTip": "Verið er að taka umrita (transcribe) fundinn",
"off": "Umritun stöðvuð",
"pending": "Undirbý að taka umrita fundinn...",
"start": "Hefja birtingu skjátexta",
"stop": "Hætta birtingu skjátexta",
"tr": "UR"
},
"userMedia": {
"androidGrantPermissions": "Veldu <b><i>Leyfa</i></b> þegar vafrinn þinn biður um heimildir.",
"chromeGrantPermissions": "Veldu <b><i>Leyfa</i></b> þegar vafrinn þinn biður um heimildir.",
"edgeGrantPermissions": "Veldu <b><i>Já</i></b> þegar vafrinn þinn biður um heimildir.",
"electronGrantPermissions": "Gefðu heimild til að nota myndavél og hljóðnema",
"firefoxGrantPermissions": "Veldu <b><i>Deila völdu tæki</i></b> þegar vafrinn þinn biður um heimildir.",
"iexplorerGrantPermissions": "Veldu <b><i>Í lagi</i></b> þegar vafrinn þinn biður um heimildir.",
"nwjsGrantPermissions": "Gefðu heimild til að nota myndavél og hljóðnema",
"operaGrantPermissions": "Veldu <b><i>Leyfa</i></b> þegar vafrinn þinn biður um heimildir.",
"react-nativeGrantPermissions": "Veldu <b><i>Leyfa</i></b> þegar vafrinn þinn biður um heimildir.",
"safariGrantPermissions": "Veldu <b><i>Í lagi</i></b> þegar vafrinn þinn biður um heimildir."
},
"videoSIPGW": {
"busy": "Við erum að reyna að losa um einhver tilföng. Reyndu aftur eftir nokkrar mínútur.",
"busyTitle": "Fjarfundaþjónustan er upptekin í augnablikinu",
"errorAlreadyInvited": "{{displayName}} hefur þegar verið boðið",
"errorInvite": "Fjarfundi hefur ekki verið komið á. Reyndu aftur síðar.",
"errorInviteFailed": "Við erum að vinna í þessu vandamáli. Reyndu aftur síðar.",
"errorInviteFailedTitle": "Mistókst að bjóða {{displayName}}",
"errorInviteTitle": "Villa við að bjóða á fjarfund",
"pending": "{{displayName}} hefur verið boðið"
},
"videoStatus": {
"audioOnly": "HLJ",
"audioOnlyExpanded": "Þú ert í ham fyrir litla bandbreidd. Í þessum ham geturðu einungis heyrt hljóð og séð deilda skjái.",
"callQuality": "Gæði myndmerkisúttaks",
"hd": "HD",
"hdTooltip": "Skoða myndmerki í hágæðum",
"highDefinition": "Hágæði",
"labelTooiltipNoVideo": "Ekkert myndmerki",
"labelTooltipAudioOnly": "Hamur fyrir litla bandbreidd er virkur",
"ld": "LD",
"ldTooltip": "Skoða myndmerki í lággæðum",
"lowDefinition": "Lággæði",
"onlyAudioAvailable": "Aðeins hljóð er í boði",
"onlyAudioSupported": "Við styðjum aðeins við hljóð í þessum vafra.",
"p2pEnabled": "Jafningjahamur (peer-to-peer) virkur",
"p2pVideoQualityDescription": "Í jafningjaham (peer-to-peer) eru gæði myndmerkis takmörkuð við að víxla á milli hágæða og einungis hljóðs. Aðrar stillingar eru ekki virtar nema að fara út úr jafningjaham.",
"recHighDefinitionOnly": "Kýs frekar myndmerki í hágæðum.",
"sd": "SD",
"sdTooltip": "Skoða myndmerki í staðalgæðum",
"standardDefinition": "Staðalgæði"
},
"videothumbnail": {
"domute": "Þagga niður",
"domuteOthers": "Þagga niður í öllum öðrum",
"flip": "Spegla",
"kick": "Henda út",
"moderator": "Stjórnandi",
"mute": "Þaggað niður í þáttakanda",
"muted": "Þaggað",
"remoteControl": "Ræsa / Stöðva fjarstýringu",
"show": "Birta í glugga",
"videomute": "Þátttakandi hefur stöðvað myndavél"
},
"welcomepage": {
"accessibilityLabel": {
"join": "Ýttu til að taka þátt",
"roomname": "Settu inn nafn á fjarfundi"
},
"appDescription": "Leggðu í'ann, spjallaðu í mynd við allt teymið þitt. Eiginlega ættirðu að bjóða öllum sem þú þekkir. {{app}} er að fullu dulrituð fjarfundalausn, með 100% opinn grunnkóða, sem þú getur notað allan daginn, alla daga, ókeypis — án þess að þurfa skráðan aðgang.",
"audioVideoSwitch": {
"audio": "Tal",
"video": "Myndmerki"
},
"calendar": "Dagatal",
"connectCalendarButton": "Tengdu dagatalið þitt",
"connectCalendarText": "Tengdu dagatalið þitt til að geta séð alla fundina þína í {{app}}. Að auki geturðu bætt fundum {{provider}} við dagatalið og ræst þá með einum smelli.",
"enterRoomTitle": "Byrja nýjan fund",
"getHelp": "Fá aðstoð",
"roomNameAllowedChars": "Heiti fundar ætti ekki að innihalda neinn eftirfarandi stafa: ?, &, :, ', \", %, #.",
"go": "Af stað",
"goSmall": "Af stað",
"join": "BÚA TIL / TAKA ÞÁTT",
"info": "Upplýsingar",
"privacy": "Gagnaleynd",
"recentList": "Nýlegt",
"recentListDelete": "Eyða",
"recentListEmpty": "Listinn þinn yfir nýlega atburði er tómur. Spjallaðu við teymið þitt og muntu þá finna alla nýlega fundi hér.",
"reducedUIText": "Velkomin í {{app}}!",
"roomname": "Settu inn nafn á fjarfundi",
"roomnameHint": "Settu inn nafn eða slóð á fjarfundinum sem þú ætlar að taka þátt í. Þú getur skáldað eitthvað nafn, þú verður bara að láta aðra þáttakendur vita svo þeir setji inn sama nafnið.",
"sendFeedback": "Senda inn umsögn",
"terms": "Hugtök",
"title": "Öruggir og fullkomlega frjálsir myndfundir með fullt af eiginleikum"
},
"lonelyMeetingExperience": {
"button": "Bjóddu öðrum",
"youAreAlone": "Þú ert sá eini á fundinum"
},
"helpView": {
"header": "Hjálparmiðstöð"
}
}

View File

@@ -594,6 +594,7 @@
"logout": "Logout",
"lowerYourHand": "Abbassa la mano",
"moreActions": "Più azioni",
"moreOptions": "Più opzioni",
"mute": "Microfono Attiva / Disattiva",
"openChat": "Apri una chat",
"pip": "Abilita visualizzazione immagine nellimmagine",
@@ -654,7 +655,7 @@
"videoStatus": {
"audioOnly": "AUD",
"audioOnlyExpanded": "Modalita' solo audio attiva. Questa modalità permette di rispamiare banda ma non vedrai gli altri partecipanti.",
"callQuality": "Qualità audio",
"callQuality": "Qualità video",
"hd": "HD",
"highDefinition": "Alta definizione",
"labelTooiltipNoVideo": "Nessun video",
@@ -707,5 +708,9 @@
"sendFeedback": "Invia feedback",
"terms": "Termini di utilizzo",
"title": "Il sistema di conferenza sicuro, funzionale e completamente gratuito."
},
"lonelyMeetingExperience": {
"button": "Invita gli altri",
"youAreAlone": "Sei l'unico in riunione"
}
}

View File

@@ -1,120 +1,125 @@
{
"addPeople": {
"add": "",
"add": "Inviter",
"countryNotSupported": "",
"countryReminder": "",
"disabled": "",
"failedToAdd": "",
"footerText": "",
"loading": "",
"loadingNumber": "",
"loadingPeople": "",
"disabled": "Du kan ikke invitere folk.",
"failedToAdd": "Klarte ikke å lagge til deltagere",
"footerText": "Å ringe ut er avskrudd",
"loading": "Søker etter folk og telefonnumre",
"loadingNumber": "Bekrefter telefonnummer",
"loadingPeople": "Søker etter folk å inviterte",
"noResults": "",
"noValidNumbers": "",
"searchNumbers": "",
"searchPeople": "",
"searchPeopleAndNumbers": "",
"telephone": "",
"title": ""
"noValidNumbers": "Skriv inn et telefonnummer",
"searchNumbers": "Legg til telefonnumre",
"searchPeople": "Søk etter folk",
"searchPeopleAndNumbers": "Søk etter folk eller legg til telefonnumrene deres",
"telephone": "Telefon: {{number}}",
"title": "Inviter folk til dette møtet"
},
"audioDevices": {
"bluetooth": "",
"headphones": "",
"phone": "",
"speaker": ""
"bluetooth": "Blåtann",
"headphones": "Hodetelefoner",
"phone": "Telefon",
"speaker": "Høyttaler",
"none": "Ingen lydenheter tilgjengelig"
},
"audioOnly": {
"audioOnly": ""
"audioOnly": "Lav båndbredde"
},
"calendarSync": {
"addMeetingURL": "",
"confirmAddLink": "",
"addMeetingURL": "Legg til en møtelenke",
"confirmAddLink": "Ønsker du å legge til en Jitsi-lenke til denne hendelsen?",
"error": {
"appConfiguration": "",
"generic": "",
"notSignedIn": ""
},
"join": "",
"joinTooltip": "",
"nextMeeting": "",
"join": "Ta del",
"joinTooltip": "Ta del i møtet",
"nextMeeting": "neste møte",
"noEvents": "",
"ongoingMeeting": "",
"permissionButton": "",
"ongoingMeeting": "pågående møte",
"permissionButton": "Åpne innstillinger",
"permissionMessage": "",
"refresh": "",
"today": ""
"today": "I dag"
},
"chat": {
"error": "",
"messagebox": "",
"messagebox": "Skriv en melding",
"nickname": {
"popover": "",
"popover": "Velg et kallenavn",
"title": ""
},
"title": ""
"title": "",
"messageTo": "Privat melding til {{recipient}}",
"fieldPlaceHolder": "Skriv inn din melding her"
},
"connectingOverlay": {
"joiningRoom": ""
},
"connection": {
"ATTACHED": "",
"AUTHENTICATING": "",
"ATTACHED": "Vedlagt",
"AUTHENTICATING": "Bekrefter",
"AUTHFAIL": "",
"CONNECTED": "",
"CONNECTING": "",
"CONNECTED": "Tilkoblet",
"CONNECTING": "Kobler til",
"CONNFAIL": "",
"DISCONNECTED": "",
"DISCONNECTING": "",
"ERROR": "",
"RECONNECTING": ""
"DISCONNECTED": "Frakoblet",
"DISCONNECTING": "Kobler fra",
"ERROR": "Feil",
"RECONNECTING": "",
"GOT_SESSION_ID": "Henter økt-ID… Ferdig",
"FETCH_SESSION_ID": "Henter økt-ID…"
},
"connectionindicator": {
"address": "",
"bandwidth": "",
"address": "Adresse:",
"bandwidth": "Anslått båndbredde:",
"bitrate": "",
"bridgeCount": "",
"connectedTo": "",
"connectedTo": "Ansluttet til:",
"framerate": "",
"less": "",
"localaddress": "",
"localaddress_plural": "",
"localport": "",
"localport_plural": "",
"more": "",
"packetloss": "",
"less": "Vis mindre",
"localaddress": "Lokal adresse:",
"localaddress_plural": "Lokale adresser:",
"localport": "Lokal port:",
"localport_plural": "Lokale porter:",
"more": "Vis mer",
"packetloss": "Pakketap:",
"quality": {
"good": "",
"inactive": "",
"lost": "",
"nonoptimal": "",
"poor": ""
"good": "God",
"inactive": "Inaktiv",
"lost": "Tapt",
"nonoptimal": "Suboptimal",
"poor": "Dårlig"
},
"remoteaddress": "",
"remoteaddress_plural": "",
"remoteaddress": "Fjernadresser:",
"remoteaddress_plural": "Fjernadresser:",
"remoteport": "",
"remoteport_plural": "",
"resolution": "",
"status": "",
"resolution": "Oppløsning:",
"status": "Tilknytning:",
"transport": "",
"transport_plural": "",
"turn": ""
},
"dateUtils": {
"earlier": "",
"today": "",
"yesterday": ""
"earlier": "Tidligere",
"today": "I dag",
"yesterday": "I går"
},
"deepLinking": {
"appNotInstalled": "",
"description": "",
"descriptionWithoutWeb": "",
"downloadApp": "",
"downloadApp": "Last ned programmet",
"launchWebButton": "",
"openApp": "",
"openApp": "Fortsett til programmet",
"title": "",
"tryAgainButton": ""
},
"defaultLink": "",
"defaultLink": "f.eks.",
"deviceError": {
"cameraError": "",
"cameraPermission": "",
@@ -122,20 +127,20 @@
"microphonePermission": ""
},
"deviceSelection": {
"noPermission": "",
"previewUnavailable": "",
"selectADevice": "",
"testAudio": ""
"noPermission": "Tilgang ikke innvilget",
"previewUnavailable": "Forhåndsvisning utilgjengelig",
"selectADevice": "Velg en enhet",
"testAudio": "Spill en testlyd"
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": ""
},
"allow": "",
"allow": "Tillat",
"alreadySharedVideoMsg": "",
"alreadySharedVideoTitle": "",
"applicationWindow": "",
"Back": "",
"Back": "Tilbake",
"cameraConstraintFailedError": "",
"cameraNotFoundError": "",
"cameraNotSendingData": "",
@@ -143,49 +148,49 @@
"cameraPermissionDeniedError": "",
"cameraUnknownError": "",
"cameraUnsupportedResolutionError": "",
"Cancel": "",
"Cancel": "Avbryt",
"close": "",
"conferenceDisconnectMsg": "",
"conferenceDisconnectTitle": "",
"conferenceDisconnectTitle": "Du har blitt frakoblet.",
"conferenceReloadMsg": "",
"conferenceReloadTitle": "",
"confirm": "",
"confirmNo": "",
"confirmYes": "",
"confirm": "Bekreft",
"confirmNo": "Nei",
"confirmYes": "Ja",
"connectError": "",
"connectErrorWithMsg": "",
"connecting": "",
"contactSupport": "",
"copy": "",
"dismiss": "",
"displayNameRequired": "",
"done": "",
"enterDisplayName": "",
"error": "",
"connecting": "Kobler til",
"contactSupport": "Kontakt brukerstøtte",
"copy": "Kopier",
"dismiss": "Forkast",
"displayNameRequired": "Hei. Hva heter du?",
"done": "Ferdig",
"enterDisplayName": "Skriv inn navnet ditt her",
"error": "Feil",
"externalInstallationMsg": "",
"externalInstallationTitle": "",
"externalInstallationTitle": "Programtillegg kreves",
"goToStore": "",
"gracefulShutdown": "",
"IamHost": "",
"IamHost": "Jeg er vertsskap",
"incorrectRoomLockPassword": "",
"incorrectPassword": "",
"inlineInstallationMsg": "",
"inlineInstallExtension": "",
"inlineInstallExtension": "Installer nå",
"internalError": "",
"internalErrorTitle": "",
"kickMessage": "",
"kickParticipantButton": "",
"kickParticipantDialog": "",
"kickParticipantTitle": "",
"kickTitle": "",
"kickParticipantButton": "Kast ut",
"kickParticipantDialog": "Er du sikker på at du vil kaste ut denne deltageren?",
"kickParticipantTitle": "Kast ut denne deltageren?",
"kickTitle": "Oida. {{participantDisplayName}} kastet deg ut av møtet",
"liveStreaming": "",
"liveStreamingDisabledForGuestTooltip": "",
"liveStreamingDisabledTooltip": "",
"lockMessage": "",
"lockMessage": "Klarte ikke å låse konferansen.",
"lockRoom": "",
"lockTitle": "",
"logoutQuestion": "",
"logoutTitle": "",
"logoutTitle": "Logg ut",
"maxUsersLimitReached": "",
"maxUsersLimitReachedTitle": "",
"micConstraintFailedError": "",
@@ -194,17 +199,17 @@
"micNotSendingDataTitle": "",
"micPermissionDeniedError": "",
"micUnknownError": "",
"muteParticipantBody": "",
"muteParticipantButton": "",
"muteParticipantBody": "Du vil ikke kunne oppheve forstumming av dem, men de kan oppheve forstumming selv når som helst.",
"muteParticipantButton": "Forstum",
"muteParticipantDialog": "",
"muteParticipantTitle": "",
"Ok": "",
"Ok": "OK",
"passwordLabel": "",
"passwordNotSupported": "",
"passwordNotSupportedTitle": "",
"passwordRequired": "",
"popupError": "",
"popupErrorTitle": "",
"popupErrorTitle": "Oppsprett blokkert",
"recording": "",
"recordingDisabledForGuestTooltip": "",
"recordingDisabledTooltip": "",
@@ -216,73 +221,81 @@
"remoteControlShareScreenWarning": "",
"remoteControlStopMessage": "",
"remoteControlTitle": "",
"Remove": "",
"removePassword": "",
"Remove": "Fjern",
"removePassword": "Fjern",
"removeSharedVideoMsg": "",
"removeSharedVideoTitle": "",
"removeSharedVideoTitle": "Fjern delt video",
"reservationError": "",
"reservationErrorMsg": "",
"retry": "",
"retry": "Prøv igjen",
"screenSharingFailedToInstall": "",
"screenSharingFailedToInstallTitle": "",
"screenSharingFirefoxPermissionDeniedError": "",
"screenSharingFirefoxPermissionDeniedTitle": "",
"screenSharingPermissionDeniedError": "",
"serviceUnavailable": "",
"serviceUnavailable": "Tjenesten er utilgjengelig",
"sessTerminated": "",
"Share": "",
"Share": "Del",
"shareVideoLinkError": "",
"shareVideoTitle": "",
"shareYourScreen": "",
"shareYourScreenDisabled": "",
"shareVideoTitle": "Del en video",
"shareYourScreen": "Del skjermen din",
"shareYourScreenDisabled": "Skjermdeling er avskrudd.",
"shareYourScreenDisabledForGuest": "",
"startLiveStreaming": "",
"startRecording": "",
"startRecording": "Start opptak",
"startRemoteControlErrorMessage": "",
"stopLiveStreaming": "",
"stopRecording": "",
"stopRecording": "Stopp opptak",
"stopRecordingWarning": "",
"stopStreamingWarning": "",
"streamKey": "",
"Submit": "",
"thankYou": "",
"token": "",
"Submit": "Send inn",
"thankYou": "Takk for at du bruker {{appName}}.",
"token": "symbol",
"tokenAuthFailed": "",
"tokenAuthFailedTitle": "",
"transcribing": "",
"unlockRoom": "",
"userPassword": "",
"userPassword": "brukerpassord",
"WaitForHostMsg": "",
"WaitForHostMsgWOk": "",
"WaitingForHost": "",
"Yes": "",
"yourEntireScreen": ""
"Yes": "Ja",
"yourEntireScreen": "Hele skjermen din",
"sendPrivateMessageTitle": "Send privat?",
"sendPrivateMessageOk": "Send privat",
"sendPrivateMessageCancel": "Send til gruppen",
"screenSharingAudio": "Del lyd",
"muteEveryoneStartMuted": "Alle starter forstummet fra nå av",
"muteEveryoneSelf": "deg selv",
"muteEveryoneTitle": "Forstum alle?",
"muteEveryoneElseTitle": "Forstum alle unntatt {{whom}}?"
},
"dialOut": {
"statusMessage": ""
"statusMessage": "er nå {{status}}"
},
"feedback": {
"average": "",
"bad": "",
"detailsLabel": "",
"good": "",
"rateExperience": "",
"veryBad": "",
"veryGood": ""
"average": "Middels",
"bad": "Dårlig",
"detailsLabel": "Fortell oss om det.",
"good": "God",
"rateExperience": "Vurder din møteopplevelse",
"veryBad": "Veldig dårlig",
"veryGood": "Veldig god"
},
"incomingCall": {
"answer": "",
"answer": "Svar",
"audioCallTitle": "",
"decline": "",
"productLabel": "",
"videoCallTitle": ""
},
"info": {
"accessibilityLabel": "",
"addPassword": "",
"cancelPassword": "",
"conferenceURL": "",
"country": "",
"accessibilityLabel": "Vis info",
"addPassword": "Legg til $t(lockRoomPassword)",
"cancelPassword": "Avbryt $t(lockRoomPassword)",
"conferenceURL": "Lenke:",
"country": "Land",
"dialANumber": "",
"dialInConferenceID": "",
"dialInNotSupported": "",
@@ -297,35 +310,35 @@
"inviteURLFirstPartPersonal": "",
"inviteURLSecondPart": "",
"liveStreamURL": "",
"moreNumbers": "",
"moreNumbers": "Flere nummer",
"noNumbers": "",
"noPassword": "",
"noRoom": "",
"numbers": "",
"password": "",
"title": "",
"title": "Del",
"tooltip": "",
"label": ""
},
"inviteDialog": {
"alertText": "",
"header": "",
"header": "Inviter",
"searchCallOnlyPlaceholder": "",
"searchPeopleOnlyPlaceholder": "",
"searchPlaceholder": "",
"send": ""
"send": "Send"
},
"inlineDialogFailure": {
"msg": "",
"retry": "",
"support": "",
"retry": "Prøv igjen",
"support": "Brukerstøtte",
"supportMsg": ""
},
"keyboardShortcuts": {
"focusLocal": "",
"focusRemote": "",
"fullScreen": "",
"keyboardShortcuts": "",
"keyboardShortcuts": "Tastatursnarveier",
"localRecording": "",
"mute": "",
"pushToTalk": "",
@@ -357,7 +370,7 @@
"on": "",
"pending": "",
"serviceName": "",
"signedInAs": "",
"signedInAs": "©",
"signIn": "",
"signInCTA": "",
"signOut": "",
@@ -708,5 +721,11 @@
"sendFeedback": "",
"terms": "",
"title": ""
},
"documentSharing": {
"title": "Delt dokument"
},
"chromeExtensionBanner": {
"dontShowAgain": "Ikke vis meg dette igjen"
}
}
}

View File

@@ -21,16 +21,16 @@
"bluetooth": "Bluetooth",
"headphones": "Hoofdtelefoon",
"phone": "Telefoon",
"speaker": "Spreker"
"speaker": "Speaker"
},
"audioOnly": {
"audioOnly": "Alleen audio"
},
"calendarSync": {
"addMeetingURL": "Een link naar de vergadering toevoegen",
"confirmAddLink": "Wilt u een Jitsi-link naar deze gebeurtenis toevoegen?",
"confirmAddLink": "Wilt u een Jitsi-link aan deze gebeurtenis toevoegen?",
"error": {
"appConfiguration": "De Agenda-integratie is niet naar behoren geconfigureerd.",
"appConfiguration": "De agenda-integratie is niet juist ingesteld.",
"generic": "Er is een fout opgetreden. Controleer de agenda-instellingen of vernieuw de agenda.",
"notSignedIn": "Er is een fout opgetreden tijdens de verificatie voor het weergeven van agendagebeurtenissen. Controleer de agenda-instellingen en probeer u opnieuw aan te melden."
},
@@ -40,18 +40,23 @@
"noEvents": "Er zijn geen gebeurtenissen gepland.",
"ongoingMeeting": "actieve vergadering",
"permissionButton": "Instellingen openen",
"permissionMessage": "U hebt een machtiging voor Agenda nodig om uw vergaderingen weer te geven in de app.",
"permissionMessage": "U hebt een machtiging voor Agenda nodig om uw afspraken weer te geven in de app.",
"refresh": "Agenda vernieuwen",
"today": "Vandaag"
},
"chat": {
"error": "Fout: uw bericht \"{{originalText}}\" is niet verzonden. Reden: {{error}}",
"fieldPlaceHolder": "Type hier je bericht",
"messagebox": "Typ een bericht",
"messageTo": "Privébericht aan {{recipient}}",
"noMessagesMessage": "Er zijn nog geen berichten in deze bijkeenkomst. Begin een gesprek!",
"nickname": {
"popover": "Kies een bijnaam",
"title": "Voer een bijnaam in om de chatfunctie te gebruiken"
},
"title": "Chat"
"privateNotice": "Privébericht aan {{recipient}}",
"title": "Chat",
"you": "jij"
},
"connectingOverlay": {
"joiningRoom": "Er wordt verbinding gemaakt met de vergadering..."
@@ -503,16 +508,18 @@
"title": "Instellingen"
},
"settingsView": {
"advanced": "Geavanceerd",
"alertOk": "OK",
"alertTitle": "Waarschuwing",
"alertURLText": "De ingevoerde server-URL is ongeldig",
"buildInfoSection": "Buildgegevens",
"conferenceSection": "Conferentie",
"conferenceSection": "Bijeenkomsten",
"displayName": "Weergavenaam",
"email": "Email",
"header": "Instellingen",
"profileSection": "Profiel",
"serverURL": "Server-URL",
"showAdvanced": "Toon geavanceerde instellingen",
"startWithAudioMuted": "Starten met audio gedempt",
"startWithVideoMuted": "Starten met video gedempt",
"version": "Versie"
@@ -595,6 +602,7 @@
"logout": "Afmelden",
"lowerYourHand": "Uw hand laten zakken",
"moreActions": "Meer acties",
"moreOptions": "Meer opties",
"mute": "Dempen/dempen opheffen",
"openChat": "Chat openen",
"pip": "Beeld-in-beeld-modus activeren",
@@ -705,8 +713,12 @@
"reducedUIText": "",
"roomname": "Naam van ruimte invoeren",
"roomnameHint": "Voer de naam of URL in van de ruimte die u wilt betreden. U kunt een naam verzinnen, maar geef de naam wel door aan de andere deelnemers, zodat zij dezelfde naam kunnen invoeren.",
"sendFeedback": "Feedback verzenden",
"sendFeedback": "Feedback sturen",
"terms": "Voorwaarden",
"title": "Veilige, volledig uitgeruste en geheel gratis videovergaderingen"
},
"lonelyMeetingExperience": {
"button": "Anderen uitnodigen",
"youAreAlone": "Je bent de enige in dit gesprek"
}
}
}

View File

@@ -53,7 +53,7 @@
"noMessagesMessage": "",
"nickname": {
"popover": "Wybierz swój nick",
"title": "Wpisz swoje imię i nazwisko, aby użyć rozmowy"
"title": "Wpisz swoją nazwę, aby użyć rozmowy"
},
"privateNotice": "Prywatna wiadomość do {{recipient}}",
"title": "Rozmowa",
@@ -76,38 +76,38 @@
},
"connectionindicator": {
"address": "Adres:",
"bandwidth": "Zakładana przepustowość:",
"bandwidth": "Szacowana przepustowość:",
"bitrate": "Szybkość transmisji:",
"bridgeCount": "Liczba serwerów: ",
"connectedTo": "Podłączone do:",
"framerate": "Częstotliwość wyświetlania klatek:",
"framerate": "Klatek na sekundę:",
"less": "Pokaż mniej",
"localaddress_0": "Adres lokalny:",
"localaddress_1": "Adresy lokalne:",
"localaddress_2": "Adresów lokalnych:",
"localaddress_2": "Adresy lokalne:",
"localport_0": "Port lokalny:",
"localport_1": "Porty lokalne:",
"localport_2": "Portów lokalnych:",
"localport_2": "Porty lokalne:",
"more": "Pokaż więcej",
"packetloss": "Strata pakietów:",
"packetloss": "Utrata pakietów:",
"quality": {
"good": "Prawdziwy",
"inactive": "Nieaktywny",
"lost": "Zaginiony",
"good": "Dobre",
"inactive": "Nieaktywne",
"lost": "Utracone",
"nonoptimal": "Nieoptymalne",
"poor": "Słaby"
"poor": "Słabe"
},
"remoteaddress_0": "Adres zdalny:",
"remoteaddress_1": "Adresy zdalne:",
"remoteaddress_2": "Adresów zdalnych:",
"remoteaddress_2": "Adresy zdalne:",
"remoteport_0": "Port zdalny:",
"remoteport_1": "Porty zdalne:",
"remoteport_2": "Portów zdalnych:",
"remoteport_2": "Porty zdalne:",
"resolution": "Rozdzielczość:",
"status": "Połączenie:",
"transport_0": "Przekazywanie:",
"transport_1": "Przekazywania:",
"transport_2": "Przekazywań:"
"transport_0": "Transport:",
"transport_1": "Transporty:",
"transport_2": "Transporty:"
},
"dateUtils": {
"earlier": "Wcześniej",
@@ -128,7 +128,7 @@
"defaultNickname": "np. Ziutek Kowalski",
"deviceError": {
"cameraError": "Błąd dostępu do Twojej kamery",
"cameraPermission": "Błąd podczas przetwarzania uprawnień do kamery",
"cameraPermission": "Błąd podczas otrzymywania uprawnień do kamery",
"microphoneError": "Błąd dostępu do Twojego mikrofonu",
"microphonePermission": "Błąd podczas otrzymywania uprawnień do mikrofonu"
},
@@ -209,7 +209,7 @@
"muteParticipantButton": "Wyciszenie",
"muteParticipantDialog": "Czy na pewno wyciszyć tego uczestnika? Nie będziesz mógł wyłączyć wyciszenia uczestników, ale oni mogą samodzielnie wyłączyć wyciszenie w dowolnym momencie.",
"muteParticipantTitle": "Wyciszyć tego uczestnika?",
"Ok": "Ok",
"Ok": "OK",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordNotSupported": "Ustanowienie spotkania $t(lockRoomPassword) nie jest obsługiwane.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) nie jest obsługiwane",
@@ -280,16 +280,16 @@
"title": "Współdzielony dokument"
},
"feedback": {
"average": "Średni",
"bad": "Źle",
"average": "Średnio",
"bad": "Źle",
"detailsLabel": "Powiedz nam o tym więcej.",
"good": "Prawdziwy",
"rateExperience": "Oceń proszę swoje doświadczenia z konferencji",
"good": "Dobrze",
"rateExperience": "Jak oceniasz tę konferencję?",
"veryBad": "Bardzo źle",
"veryGood": "1: Bardzo dobrze"
"veryGood": "Bardzo dobrze"
},
"incomingCall": {
"answer": "Odpowiedz",
"answer": "Odbierz",
"audioCallTitle": "Przychodzące połączenie",
"decline": "Odrzuć",
"productLabel": "z Jitsi Meet",
@@ -512,18 +512,18 @@
"title": "Kalendarz"
},
"devices": "Urządzenia",
"followMe": "Wszyscy za mną",
"followMe": "Wszyscy widzą mnie",
"language": "Język",
"loggedIn": "Zalogowano jako {{name}}",
"moderator": "Moderujący",
"moderator": "Moderacja",
"more": "Więcej",
"name": "Nazwa",
"noDevice": "Brak",
"selectAudioOutput": "Wyjście audio",
"selectCamera": "Kamera",
"selectMic": "Mikrofon",
"startAudioMuted": "Wszyscy się wyciszyli",
"startVideoMuted": "Wszyscy się ukryli",
"startAudioMuted": "Wycisz wszystkich dołączających",
"startVideoMuted": "Ukryj wszystkich dołączających",
"title": "Ustawienia"
},
"settingsView": {
@@ -600,7 +600,7 @@
"shortcuts": "Przełączanie skrótów klawiszowych",
"show": "",
"speakerStats": "Przełączanie statystyk dotyczących mówców",
"tileView": "Przełączanie kafelkowego widoku",
"tileView": "Przełącz widok kafelkowy",
"toggleCamera": "Przełączanie kamery",
"videomute": "Przełączanie wyciszonego filmu wideo",
"videoblur": "Przełącz rozmazanie obrazu"
@@ -626,9 +626,9 @@
"invite": "Zapraszaj ludzi",
"login": "Zaloguj",
"logout": "Wyloguj",
"lowerYourHand": "Opuść swą rękę",
"lowerYourHand": "Opuść rękę",
"moreActions": "Więcej działań",
"mute": "Wycisz / Pogłośnij",
"mute": "Włącz / Wyłącz mikrofon",
"noAudioSignalTitle": "",
"noAudioSignalDesc": "",
"noAudioSignalDescSuggestion": "",
@@ -636,13 +636,13 @@
"pip": "Wprowadź tryb obrazu w obrazie",
"privateMessage": "Wyślij wiadomość prywatną",
"profile": "Edytuj swój profil",
"raiseHand": "Podnieś / Opuść swą rękę",
"raiseYourHand": "Podnieś swą rękę",
"raiseHand": "Podnieś / Opuść rękę",
"raiseYourHand": "Podnieś rękę",
"Settings": "Ustawienia",
"sharedvideo": "Udostępniaj wideo w Youtube",
"sharedvideo": "Udostępnij wideo w Youtube",
"shareRoom": "Zaproś kogoś",
"shortcuts": "Wyświetlanie skrótów",
"speakerStats": "Statystyki głośników",
"shortcuts": "Wyświetl skróty",
"speakerStats": "Statystyki mówców",
"startScreenSharing": "Zacznij współdzielenie ekranu",
"startSubtitles": "Uruchom napisy",
"stopScreenSharing": "Zatrzymaj współdzielenie ekranu",

View File

@@ -47,10 +47,10 @@
},
"chat": {
"error": "Erro: sua mensagem não foi enviada. Motivo: {{error}}",
"fieldPlaceHolder": "",
"fieldPlaceHolder": "Digite sua mensagem aqui",
"messagebox": "Digite uma mensagem",
"messageTo": "Mensagem privada para {{recipient}}",
"noMessagesMessage": "",
"noMessagesMessage": "Não há mensagens na reunião ainda. Inicie uma conversa aqui!",
"nickname": {
"popover": "Escolha um apelido",
"title": "Digite um apelido para usar o bate-papo"
@@ -72,7 +72,11 @@
"DISCONNECTED": "Desconectado",
"DISCONNECTING": "Desconectando",
"ERROR": "Erro",
"RECONNECTING": "Ocorreu um problema de rede. Reconectando..."
"RECONNECTING": "Ocorreu um problema de rede. Reconectando...",
"LOW_BANDWIDTH": "O vídeo de {{displayName}} foi desativado para economizar largura de banda",
"GOT_SESSION_ID": "Obtendo ID da sessão... Feito",
"GET_SESSION_ID_ERROR": "Erro ao obter o ID da sessão: {{code}}",
"FETCH_SESSION_ID": "Obtendo ID da sessão..."
},
"connectionindicator": {
"address": "Endereço:",
@@ -102,7 +106,8 @@
"resolution": "Resolução:",
"status": "Conexão:",
"transport": "Transporte:",
"transport_plural": "Transportes:"
"transport_plural": "Transportes:",
"e2e_rtt": "E2E RTT:"
},
"dateUtils": {
"earlier": "Mais cedo",
@@ -205,7 +210,7 @@
"muteParticipantDialog": "Tem certeza de que deseja silenciar este participante? Você não poderá desfazer isso, mas o participante pode reabilitar o áudio a qualquer momento.",
"muteParticipantTitle": "Deixar mudo este participante?",
"Ok": "Ok",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordLabel": "A reunião foi travada por um participante. Por favor, insira a $t(lockRoomPassword) para entrar.",
"passwordNotSupported": "A configuração de uma reunião $t(lockRoomPassword) não é suportada.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) não suportado",
"passwordRequired": "$t(lockRoomPasswordUppercase) requerido",
@@ -232,7 +237,7 @@
"screenSharingFailedToInstall": "Oops! Falhou a instalação da extensão de compartilhamento de tela.",
"screenSharingFailedToInstallTitle": "A extensão de compartilhamento de tela falhou ao instalar",
"screenSharingFirefoxPermissionDeniedError": "Algo deu errado enquanto estávamos tentando compartilhar sua tela. Por favor, certifique-se de que você nos deu permissão para fazê-lo. ",
"screenSharingFirefoxPermissionDeniedTitle": "Opa! Não foi possível iniciar o compartilhamento de tela.",
"screenSharingFirefoxPermissionDeniedTitle": "Opa! Não foi possível iniciar o compartilhamento de tela!",
"screenSharingPermissionDeniedError": "Oops! Alguma coisa está errada com suas permissões de compartilhamento de tela. Recarregue e tente de novo.",
"sendPrivateMessage": "Você enviou uma mensagem privada recentemente. Tem intenção de responder em privado, ou deseja enviar sua mensagem para o grupo?",
"sendPrivateMessageCancel": "Enviar para o grupo",
@@ -266,7 +271,14 @@
"WaitForHostMsgWOk": "A conferência <b>{{room}}</b> ainda não começou. Se você é o anfitrião, pressione Ok para autenticar. Do contrário, aguarde a chegada do anfitrião.",
"WaitingForHost": "Esperando o hospedeiro...",
"Yes": "Sim",
"yourEntireScreen": "Toda sua tela"
"yourEntireScreen": "Toda sua tela",
"screenSharingAudio": "Compartilhar áudio",
"muteEveryoneStartMuted": "Todos iniciam silenciados daqui para frente",
"muteEveryoneSelf": "a si próprio",
"muteEveryoneDialog": "Tem certeza que deseja silenciar todos? Você não poderá ativar o som deles, mas eles podem ativar o som eles mesmo a qualquer momento.",
"muteEveryoneTitle": "Silenciar todos?",
"muteEveryoneElseTitle": "Silenciar todo mundo exceto {{whom}}?",
"muteEveryoneElseDialog": "Uma vez silenciados, você não poderá reativar o som deles, mas eles poderão reativar o som a qualquer momento."
},
"dialOut": {
"statusMessage": "está agora {{status}}"
@@ -304,7 +316,7 @@
"dialInTollFree": "Chamada gratuita",
"genericError": "Oops, alguma coisa deu errado.",
"inviteLiveStream": "Para ver a transmissão ao vivo da reunião, clique no link: {{url}}",
"invitePhone": "Para participar por telefone, toque aqui: {{number}} ,, {{conferenceID}} # \\ n",
"invitePhone": "Para participar por telefone, toque aqui: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Procurando um número de discagem diferente?\nVeja os números de discagem da reunião: {{url}} \n\n\nSe você também estiver discando através de um telefone da sala, participe sem conectar-se ao áudio: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Você foi convidado para uma reunião.",
"inviteURLFirstPartPersonal": "{{name}} está convidando você para uma reunião.\n",
@@ -379,7 +391,9 @@
"signOut": "Sair",
"start": "Iniciar uma transmissão ao vivo",
"streamIdHelp": "O que é isso?",
"unavailableTitle": "Transmissão ao vivo indisponível"
"unavailableTitle": "Transmissão ao vivo indisponível",
"googlePrivacyPolicy": "Política de Privacidade do Google",
"youtubeTerms": "Termos de serviços do YouTube"
},
"localRecording": {
"clientState": {
@@ -419,9 +433,9 @@
"connectedTwoMembers": "{{first}} e {{second}} entraram na reunião",
"disconnected": "desconectado",
"focus": "Foco da conferência",
"focusFail": "{{component}} não disponĩvel - tente em {{ms}} seg.",
"focusFail": "{{component}} não disponível - tente em {{ms}} seg",
"grantedTo": "Direitos de moderador concedido para {{to}}!",
"invitedOneMember": "{{displayName}} foi convidado",
"invitedOneMember": "{{name}} foi convidado(a)",
"invitedThreePlusMembers": "{{name}} e {{count}} outros foram convidados",
"invitedTwoMembers": "{{first}} e {{second}} foram convidados",
"kickParticipant": "{{kicked}} foi chutado por {{kicker}}",
@@ -469,7 +483,7 @@
},
"raisedHand": "Gostaria de falar",
"recording": {
"authDropboxText": "Enviar para o Dropbox.",
"authDropboxText": "Enviar para o Dropbox",
"availableSpace": "Espaço disponível: {{spaceLeft}} MB (aproximadamente {{duration}} minutos de gravação)",
"beta": "BETA",
"busy": "Estamos trabalhando para liberar recursos de gravação. Tente novamente em alguns minutos.",
@@ -519,30 +533,32 @@
"selectMic": "Microfone",
"startAudioMuted": "Todos iniciam mudos",
"startVideoMuted": "Todos iniciam ocultos",
"title": "Configurações"
"title": "Configurações",
"speakers": "Alto-faltantes",
"microphones": "Microfones"
},
"settingsView": {
"advanced": "",
"advanced": "Avançado",
"alertOk": "OK",
"alertTitle": "Atenção",
"alertURLText": "A URL digitada do servidor é inválida",
"buildInfoSection": "Informações de compilação",
"conferenceSection": "Conferência",
"disableCallIntegration": "",
"disableP2P": "",
"disableCallIntegration": "Desativar integração de chamada nativa",
"disableP2P": "Desativar modo ponto a ponto",
"displayName": "Nome de exibição",
"email": "E-mail",
"header": "Configurações",
"profileSection": "Perfil",
"serverURL": "URL do servidor",
"showAdvanced": "",
"showAdvanced": "Mostrar configurações avançadas",
"startWithAudioMuted": "Iniciar sem áudio",
"startWithVideoMuted": "Iniciar sem vídeo",
"version": "Versão"
},
"share": {
"dialInfoText": "\n\n=====\n\nDeseja apenas discar no seu telefone?\n\n{{defaultDialInNumber}}Clique neste link para ver os números de telefone para esta reunião\n{{dialInfoPageUrl}}",
"mainText": "Clique no seguinte link para entrar na reunião:{{roomUrl}}\n"
"mainText": "Clique no seguinte link para entrar na reunião:\n{{roomUrl}}"
},
"speaker": "Alto-falantes",
"speakerStats": {
@@ -598,7 +614,10 @@
"tileView": "Alternar visualização em blocos",
"toggleCamera": "Alternar câmera",
"videomute": "Alternar mudo do vídeo",
"videoblur": "Alternar desfoque de vídeo"
"videoblur": "Alternar desfoque de vídeo",
"toggleFilmstrip": "Alterar tira de filme",
"muteEveryone": "Silenciar todos",
"moreOptions": "Mostrar mais opções"
},
"addPeople": "Adicionar pessoas à sua chamada",
"audioOnlyOff": "Desabilitar modo de largura de banda baixa",
@@ -624,9 +643,9 @@
"lowerYourHand": "Baixar a mão",
"moreActions": "Mais ações",
"mute": "Mudo / Não mudo",
"noAudioSignalTitle": "",
"noAudioSignalDesc": "",
"noAudioSignalDescSuggestion": "",
"noAudioSignalTitle": "Não há entrada de áudio vindo do seu microfone!",
"noAudioSignalDesc": "Se você não o desativou propositalmente das configurações do sistema ou do hardware, considere trocar o dispositivo.",
"noAudioSignalDescSuggestion": "Se você não o desativou propositalmente das configurações do sistema ou do hardware, considere trocar para o dispositivo sugerido.",
"openChat": "Abrir chat",
"pip": "Entrar em modo Quadro-a-Quadro",
"privateMessage": "Enviar mensagem privada",
@@ -648,7 +667,13 @@
"toggleCamera": "Alternar câmera",
"videomute": "Iniciar ou parar a câmera",
"startvideoblur": "Desfocar meu plano de fundo",
"stopvideoblur": "Desativar desfoque de fundo"
"stopvideoblur": "Desativar desfoque de fundo",
"noisyAudioInputDesc": "Parece que o microfone está fazendo barulho, considere silenciar ou alterar o dispositivo.",
"noisyAudioInputTitle": "O seu microfone parece estar barulhento!",
"noAudioSignalDialInLinkDesc": "Discar números",
"noAudioSignalDialInDesc": "Você também pode discar usando:",
"muteEveryone": "Silenciar todos",
"moreOptions": "Mais opções"
},
"transcribing": {
"ccButtonTooltip": "Iniciar/parar legendas",
@@ -700,7 +725,7 @@
"onlyAudioSupported": "Suportamos somente áudio neste navegador.",
"p2pEnabled": "Ponto-a-ponto habilitada",
"p2pVideoQualityDescription": "No modo ponto a ponto, a qualidade do vídeo recebido só pode ser alternada entre alta e apenas áudio. Outras configurações não serão respeitadas até que o ponto a ponto seja encerrado.",
"recHighDefinitionOnly": "Preferência para alta definição",
"recHighDefinitionOnly": "Preferência para alta definição.",
"sd": "SD",
"sdTooltip": "Ver vídeo em definição padrão",
"standardDefinition": "Definição padrão"
@@ -714,14 +739,15 @@
"muted": "Mudo",
"remoteControl": "Controle remoto",
"show": "Mostrar no palco",
"videomute": "O participante parou a câmera"
"videomute": "O participante parou a câmera",
"domuteOthers": "Silenciar todos os demais"
},
"welcomepage": {
"accessibilityLabel": {
"join": "Toque para entrar",
"roomname": "Digite o nome da sala"
},
"appDescription": "Vá em frente, converse por vídeo com toda a equipe. De fato, convide todos que você conhece. {{app}} é uma solução de videoconferência totalmente criptografada e 100% de código aberto que você pode usar todos os dias, a cada dia, gratuitamente — sem necessidade de conta.",
"appDescription": "Vá em frente, converse por vídeo com toda a equipe. De fato, convide todos que você conhece. {{app}} é uma solução de videoconferência totalmente criptografada e 100% de código aberto que você pode usar todos os dias, a cada dia, gratuitamente — sem necessidade de conta.",
"audioVideoSwitch": {
"audio": "Voz",
"video": "Vídeo"
@@ -733,7 +759,7 @@
"roomNameAllowedChars": "Nome da reunião não deve conter qualquer um destes caracteres: ?. &, :, ', \", %, #.",
"go": "IR",
"goSmall": "IR",
"join": "",
"join": "CRIAR / ENTRAR",
"info": "Informações",
"privacy": "Política de Privacidade",
"recentList": "Recente",
@@ -744,6 +770,19 @@
"roomnameHint": "Digite o nome ou a URL da sala que você deseja entrar. Você pode digitar um nome, e apenas deixe para as pessoas que você quer se reunir digitem o mesmo nome.",
"sendFeedback": "Enviar comentários",
"terms": "Termos",
"title": "Videoconferências mais seguras, flexíveis e totalmente gratuitas"
"title": "Videoconferências mais seguras, flexíveis e totalmente gratuitas",
"getHelp": "Obter ajuda"
},
"helpView": {
"header": "Centro de ajuda"
},
"lonelyMeetingExperience": {
"youAreAlone": "Você é o único na reunião",
"button": "Convidar outros"
},
"chromeExtensionBanner": {
"dontShowAgain": "Não me mostre isso de novo",
"buttonText": "Instalar extensão do Chrome",
"installExtensionText": "Instale a extensão par integração com Google Calendar e Office 365"
}
}
}

786
lang/main-sc.json Normal file
View File

@@ -0,0 +1,786 @@
{
"addPeople": {
"add": "Invita",
"countryNotSupported": "No est ancora possìbile de impreare custa destinatzione.",
"countryReminder": "Ses mutende in foras de is Istados Unidos? Verìfica chi insertas su còdighe de istadu!",
"disabled": "Non podes invitare gente.",
"failedToAdd": "Faddina in s'agiunta de partetzipantes",
"footerText": "Is mutidas in essida sunt disativadas.",
"loading": "Chirchende gente e nùmeros de telèfonu",
"loadingNumber": "Verifichende su nùmeru de telèfonu",
"loadingPeople": "Chirchende gente de invitare",
"noResults": "Non cointzidet perunu resultadu",
"noValidNumbers": "Inserta·nche unu nùmeru de telèfonu",
"searchNumbers": "Agiunghe nùmeros de telèfonu",
"searchPeople": "Chirca gente",
"searchPeopleAndNumbers": "Chirca gente o agiunghe is nùmeros de telèfonu issoro",
"telephone": "Telèfonu: {{number}}",
"title": "Invita gente a custa riunione"
},
"audioDevices": {
"bluetooth": "Bluetooth",
"headphones": "Auriculares",
"phone": "Telèfonu",
"speaker": "Altoparlante",
"none": "Perunu dispositivu de àudio a disponimentu"
},
"audioOnly": {
"audioOnly": "Àmpiu de banda bàsciu"
},
"calendarSync": {
"addMeetingURL": "Agiunghe unu ligàmene a s'addòbiu",
"confirmAddLink": "Boles agiùnghere unu ligàmene de Jitsi a custu addòbiu?",
"error": {
"appConfiguration": "S'integratzione de su calendàriu no est cunfigurada bene.",
"generic": "Faddina. Controlla sa cunfiguratzione de calendàriu o proa de atualizare su calendàriu.",
"notSignedIn": "Faddina in s'autenticatzione pro visualizare eventos de calendàriu. Controlla sa cunfiguratzione de calendàriu e proa de ti torrare a autenticare."
},
"join": "Aderi",
"joinTooltip": "Aderi a sa riunione",
"nextMeeting": "riunione imbeniente",
"noEvents": "Perunu eventu programmadu in futuru.",
"ongoingMeeting": "riunione in cursu",
"permissionButton": "Aberi sa cunfiguratzione",
"permissionMessage": "Su permissu de su calendàriu est rechèdidu pro bìdere is riuniones tuss in s'aplicatzione.",
"refresh": "Atualiza su calendàriu",
"today": "Oe"
},
"chat": {
"error": "Faddina: su messàgiu tuo no est istadu imbiadu. Resone: {{error}}",
"fieldPlaceHolder": "Iscrie su messàgiu inoghe",
"messagebox": "Iscrie unu messàgiu",
"messageTo": "Messàgiu privadu a {{recipient}}",
"noMessagesMessage": "Perunu messàgiu ancora in sa riunione. Cumintza una tzarrada inoghe!",
"nickname": {
"popover": "Sèbera unu nòmine",
"title": "Inserta su nòmine pro impreare sa tzarrada"
},
"privateNotice": "Messàgiu privadu a {{recipient}}",
"title": "Tzarrada",
"you": "tue"
},
"chromeExtensionBanner": {
"installExtensionText": "Installa s'estensione de integratzione cun Google Calendar e Office 365",
"buttonText": "Installa s'estensione de Google",
"dontShowAgain": "Non ddu torres a ammustrare"
},
"connectingOverlay": {
"joiningRoom": "Connetende a sa riunione..."
},
"connection": {
"ATTACHED": "Allegados",
"AUTHENTICATING": "Autenticatzione in cursu",
"AUTHFAIL": "Faddina in s'autenticatzione",
"CONNECTED": "Connessione istabilida",
"CONNECTING": "Connetende",
"CONNFAIL": "Faddina in sa connessione",
"DISCONNECTED": "Disconnètidu",
"DISCONNECTING": "Disconnetende",
"ERROR": "Faddina",
"FETCH_SESSION_ID": "Otenende id de sessione...",
"GET_SESSION_ID_ERROR": "Faddina in su ritzevimentu de s'ide de sessione: {{code}}",
"GOT_SESSION_ID": "Otenende id de sessione... Fatu",
"LOW_BANDWIDTH": "Vìdeu disativadu pro {{displayName}} pro istraviare àmpiu de banda"
},
"connectionindicator": {
"address": "Indiritzu:",
"bandwidth": "Àmpiu de banda istimadu:",
"bitrate": "Velotzidade de bits:",
"bridgeCount": "Nùmeru de servidores: ",
"connectedTo": "Connessione cun:",
"e2e_rtt": "E2E RTT:",
"framerate": "Velotzidade de fotogrammas:",
"less": "Prus pagu informatziones",
"localaddress": "Indiritzu locale:",
"localaddress_plural": "Indiritzos locales:",
"localport": "Portu locale:",
"localport_plural": "Portos locales:",
"more": "Àteras informatziones",
"packetloss": "Pèrdida de pachetes:",
"quality": {
"good": "Bonu",
"inactive": "Inativa",
"lost": "Pèrdida",
"nonoptimal": "No òtima",
"poor": "Pòbera"
},
"remoteaddress": "Indiritzu remotu:",
"remoteaddress_plural": "Indiritzos remotos:",
"remoteport": "Portu remotu:",
"remoteport_plural": "Portos remotos:",
"resolution": "Risolutzione:",
"status": "Connessione:",
"transport": "Trasportu:",
"transport_plural": "Trasportos:"
},
"dateUtils": {
"earlier": "Prus antigu",
"today": "Oe",
"yesterday": "Eris"
},
"deepLinking": {
"appNotInstalled": "Tenes bisòngiu de s'aplicatzione mòbile {{app}} pro aderire a custa tzarrada dae su telèfonu.",
"description": "No est sutzèdidu nudda? Amus chircadu de aviare sa riunione tua in s'aplicatzione de iscrivania {{app}}. Torra·bi a proare o avia·la dae s'aplicatzione web {{app}}.",
"descriptionWithoutWeb": "No est sutzèdidu nudda? Amus chircadu de aviare sa riunione tua in s'aplicatzione de iscrivania {{app}}.",
"downloadApp": "Iscàrriga s'aplicatzione",
"launchWebButton": "Avia in sa web",
"openApp": "Sighi in s'aplicatzione",
"title": "Aviende sa reunione in {{app}}...",
"tryAgainButton": "Torra·bi a proare in s'aplicatzione de iscrivania"
},
"defaultLink": "p. es. {{url}}",
"defaultNickname": "es. Rosa Pink",
"deviceError": {
"cameraError": "Impossìbile atzèdere a sa càmera",
"cameraPermission": "Faddina in is permissos pro sa càmera",
"microphoneError": "Impossìbile atzèdere a su micròfonu",
"microphonePermission": "Faddina in is permissos pro su micròfonu"
},
"deviceSelection": {
"noPermission": "No as cuntzèdidu permissos",
"previewUnavailable": "Sa pre-visualizatzione no est a disponimentu",
"selectADevice": "Sèbera unu dispositivu",
"testAudio": "Riprodue unu sonu de proa"
},
"dialog": {
"accessibilityLabel": {
"liveStreaming": "Trasmissione in direta"
},
"allow": "Permite",
"alreadySharedVideoMsg": "Un'àteru partetzipante est giai cumpartende unu vìdeu. Custa cunferèntzia permitit de cumpartzire isceti unu vìdeu in contemporànea.",
"alreadySharedVideoTitle": "Isceti unu vìdeu cumpartzidu in contemporànea",
"applicationWindow": "Ventana de s'aplicatzione",
"Back": "In segus",
"cameraConstraintFailedError": "La càmera no satisfà algun dels requeriments.",
"cameraNotFoundError": "Càmera no agatada.",
"cameraNotSendingData": "Impossìbile atzèdere a sa càmera tua. Controlla si un'àtera aplicatzione est impreende custu dispositivu, sèbera un'àteru dispositivu dae su menù de cunfiguratziones o torra a carrigare s'aplicatzione.",
"cameraNotSendingDataTitle": "Non si podet atzèdere a sa càmera",
"cameraPermissionDeniedError": "No as donadu permissos pro impreare sa càmera. Podes intrare in sa cunferèntzia su pròpiu, però s'àtera gente non ti at a bìdere. Imprea su butone de sa càmera in sa barra de indiritzos pro acontzare custu problema.",
"cameraUnknownError": "Non si podet impreare sa càmera (resone disconnota).",
"cameraUnsupportedResolutionError": "Sa càmera no est cumpatìbile cun sa risolutzione de vìdeu rechèdida.",
"Cancel": "Annulla",
"close": "Serra",
"conferenceDisconnectMsg": "Controlla sa cunfiguratzione de rete. Torrende a connètere in {{seconds}} segundos...",
"conferenceDisconnectTitle": "Mutida disconnètida.",
"conferenceReloadMsg": "Semus chirchende de acontzare custu problema. Torrende a connètere in {{seconds}} segundos...",
"conferenceReloadTitle": "B'est istada una faddina.",
"confirm": "Cunfirma",
"confirmNo": "Nono",
"confirmYes": "Eja",
"connectError": "B'àt àpidu una faddina e non podimus connètere cun sa cunferèntzia.",
"connectErrorWithMsg": "B'àt àpidu una faddina e non podimus connètere cun sa cunferèntzia: {{msg}}",
"connecting": "Connetende",
"contactSupport": "Cuntatu s'agiudu",
"copy": "Còpia",
"dismiss": "Iscarta",
"displayNameRequired": "Salude! Comente ti tzèrrias?",
"done": "Fatu",
"enterDisplayName": "Inserta su nòmine inoghe",
"error": "Faddina",
"externalInstallationMsg": "Installa s'estensione nostra pro sa cumpartzidura de iscrivania.",
"externalInstallationTitle": "Estensione rechèdida",
"goToStore": "Bae a sa butega",
"gracefulShutdown": "Su servìtziu nostru est in mantenimentu. Torra·bi a proare a pustis.",
"IamHost": "So mere",
"incorrectRoomLockPassword": "Sa crae no est curreta",
"incorrectPassword": "Su nòmine o sa crae no sunt curretos",
"inlineInstallationMsg": "Installa s'estensione nostra pro sa cumpartzidura de iscrivania.",
"inlineInstallExtension": "Installa immoe",
"internalError": "B'est istada una faddina: {{error}}",
"internalErrorTitle": "Faddina interna",
"kickMessage": "Podes cuntatare {{participantDisplayName}} pro àteras informatziones.",
"kickParticipantButton": "Boga",
"kickParticipantDialog": "Seguru chi boles bogare custa persone?",
"kickParticipantTitle": "Cheres bogare custa persone?",
"kickTitle": "{{participantDisplayName}} t'at bogadu de sa riunione",
"liveStreaming": "Trasmissione in direta",
"liveStreamingDisabledForGuestTooltip": "Is persones invitadas non podent aviare una trasmissione in direta.",
"liveStreamingDisabledTooltip": "Faddina in s'aviu de sa trasmissione in direta.",
"lockMessage": "Impossìbile blocare sa cunferèntzia.",
"lockRoom": "Agiunghe riunione $t(lockRoomPasswordUppercase)",
"lockTitle": "Faddina in su blocu",
"logoutQuestion": "Seguru chi boles essire e firmare sa cunferèntzia?",
"logoutTitle": "Essi",
"maxUsersLimitReached": "Lìmite de partetzipantes cròmpidu. Sa cunferèntzia est prena. Cuntata su mere de sa riunione o torra·bi a proare.",
"maxUsersLimitReachedTitle": "Lìmite de partetzipantes cròmpidu",
"micConstraintFailedError": "Su micròfonu no at soddisfatu is rechestas.",
"micNotFoundError": "Micròfonu no agatadu.",
"micNotSendingData": "Bae a sa cunfiguratzione de s'elaboradore tuo pro ativare su micròfonu tuo e acontzare su livellu",
"micNotSendingDataTitle": "Su micròfonu tuo est in silèntziu pro more de is cunfiguratziones de su sistema tuo",
"micPermissionDeniedError": "No as donadu permissos pro impreare su micròfonu. Podes intrare in sa cunferèntzia su pròpiu, però s'àtera gente non ti at a intèndere. Imprea su butone de sa càmera in sa barra de indiritzos pro acontzare custu problema.",
"micUnknownError": "Non si podet impreare su micròfonu (resone disconnota).",
"muteEveryoneElseDialog": "Una borta chi as postu calicunu a sa muda, no as a pòdere torrare a aviare s'àudio suo, però isse ddu at a pòdere fàghere in cale si siat momentu.",
"muteEveryoneElseTitle": "Boles pònnere totus a sa muda francu {{whom}}?",
"muteEveryoneDialog": "Seguru chi boles pònnere totus a sa muda? No as a pòdere torrare a ativare s'àudio issoro, però is utentes ddu ant a pòdere ativare in cale si siat momentu.",
"muteEveryoneTitle": "Boles pònnere totus a sa muda?",
"muteEveryoneSelf": "tue",
"muteEveryoneStartMuted": "Dae immoe, is tzarradas cumintzant cun is utentes a sa muda",
"muteParticipantBody": "No as a pòdere torrare a ativare s'àudio issoro, però is utentes ddu ant a pòdere ativare in cale si siat momentu.",
"muteParticipantButton": "A sa muda",
"muteParticipantDialog": "Seguru chi boles pònnere custa persone a sa muda? No as a pòdere torrare a ativare s'àudio issoro, però is utentes ddu ant a pòdere ativare in cale si siat momentu.",
"muteParticipantTitle": "Boles pònnere custa persone a sa muda?",
"Ok": "AB",
"passwordLabel": "Unu partetzipante at blocadu sa riunione. Inserta sa $t(lockRoomPassword) pro intrare.",
"passwordNotSupported": "No est possìbile istabilire una $t(lockRoomPassword).",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) non suportadu",
"passwordRequired": "$t(lockRoomPasswordUppercase) rechèdida",
"popupError": "Su navigadore tuo est blochende is ventanas emergentes de custu situ. Ativa is ventanas emergentes dae sa cunfiguratzione de seguresa de su navigadore e torra·bi a proare.",
"popupErrorTitle": "Finestres emergents blocades",
"recording": "Registrende",
"recordingDisabledForGuestTooltip": "Is persones invitadas non podent registrare.",
"recordingDisabledTooltip": "S'aviu de registratziones est istadu disativadu.",
"rejoinNow": "Torra a intrare",
"remoteControlAllowedMessage": "{{user}} at atzetadu sa rechesta tua de controllu remotu.",
"remoteControlDeniedMessage": "{{user}} at refudadu sa rechesta tua de controllu remotu.",
"remoteControlErrorMessage": "Faddina in sa rechesta de permissos pro su controllu remotu de {{user}}.",
"remoteControlRequestMessage": "Permitis chi {{user}} controllet in remotu s'elaboradore tuo?",
"remoteControlShareScreenWarning": "Si incarcas \"Permite\" as a cumpartzire s'ischermu tuo.",
"remoteControlStopMessage": "Sessione de controllu remotu acabada.",
"remoteControlTitle": "Controllu remotu de elaboradore",
"Remove": "Boga",
"removePassword": "Boga $t(lockRoomPassword)",
"removeSharedVideoMsg": "Seguru chi boles bogare su vìdeu chi as cumpartzidu?",
"removeSharedVideoTitle": "Boga vìdeu cumpartzidu",
"reservationError": "Faddina de riserva de sistema",
"reservationErrorMsg": "Còdighe de faddina: {{code}}, messàgiu: {{msg}}",
"retry": "Torra·bi a proare",
"screenSharingFailedToInstall": "Faddina in s'installatzione de s'estensione de cumpartzidura de ischermu.",
"screenSharingFailedToInstallTitle": "Faddina installatzione estensione cumpartzidura ischermu",
"screenSharingFirefoxPermissionDeniedError": "B'àt àpidu una faddina proende de cumpartzire s'ischermu tuo. Verìfica chi si as donadu permissos pro ddu fàghere. ",
"screenSharingFirefoxPermissionDeniedTitle": "No amus pòdidu aviare sa cumpartzidura de ischermu.",
"screenSharingPermissionDeniedError": "B'àt àpidu una faddina cun is permissos de s'estensione pro sa cumpartzidura de ischermu. Torra a carrigare e torra·bi a proare.",
"sendPrivateMessage": "As retzidu de reghente unu messàgiu privadu. Boles rispòndere a custu messàgiu in privadu, o boles imbiare su messàgiu a su grupu?",
"sendPrivateMessageCancel": "Imbia a su grupu",
"sendPrivateMessageOk": "Imbia in privadu",
"sendPrivateMessageTitle": "Boles imbiare custu messàgiu in privadu?",
"serviceUnavailable": "Su servìtziu no est a disponimentu",
"sessTerminated": "Mutida acabada",
"Share": "Cumpartzi",
"shareVideoLinkError": "Fruni unu ligàmene de youtube curretu.",
"shareVideoTitle": "Cumpartzi unu vìdeu",
"shareYourScreen": "Cumpartzi s'ischermu",
"shareYourScreenDisabled": "Cumpartzidura de ischermu disativada.",
"shareYourScreenDisabledForGuest": "Is persones invitadas non podent cumpartzire s'ischermu.",
"startLiveStreaming": "Avia sa trasmissione in direta",
"startRecording": "Avia sa registratzione",
"startRemoteControlErrorMessage": "Faddina aviende sa sessione de controllu remotu.",
"stopLiveStreaming": "Firma sa trasmissione in direta",
"stopRecording": "Firma sa registratzione",
"stopRecordingWarning": "Seguru chi boles firmare sa registratzione?",
"stopStreamingWarning": "Seguru chi boles firmare sa trasmissione in direta?",
"streamKey": "Crae de sa trasmissione in direta",
"Submit": "Imbia",
"thankYou": "Gràtzias de àere impreadu {{appName}}.",
"token": "còdighe",
"tokenAuthFailed": "No tenes permissu pro intrare in custa mutida.",
"tokenAuthFailedTitle": "Faddina in s'autenticatzione",
"transcribing": "Trascritzione",
"unlockRoom": "Boga riunione $t(lockRoomPassword)",
"userPassword": "crae de utente",
"WaitForHostMsg": "Sa cunferèntzia <b>{{room}}</b> no est cumintzada. Si ses mere de custa cunferèntzia, autèntica·ti. Si nono, iseta chi arribet.",
"WaitForHostMsgWOk": "Sa cunferèntzia <b>{{room}}</b> no est cumintzada. Si ses mere, incarca AB pro ti autenticare. Si nono, iseta chi arribet.",
"WaitingForHost": "Isetende mere...",
"Yes": "Eja",
"yourEntireScreen": "S'ischermu intreu",
"screenSharingAudio": "Cumpartzi s'àudio"
},
"dialOut": {
"statusMessage": "est immoe {{status}}"
},
"documentSharing": {
"title": "Documentu cumpartzidu"
},
"feedback": {
"average": "Mèdiu",
"bad": "Malu",
"detailsLabel": "Nara·si de prus.",
"good": "Bonu",
"rateExperience": "Vota s'esperièntzia tua in custa riunione",
"veryBad": "Mala meda",
"veryGood": "Bona meda"
},
"incomingCall": {
"answer": "Risponde",
"audioCallTitle": "Mutida in intrada",
"decline": "Iscarta",
"productLabel": "dae Jitsi Meet",
"videoCallTitle": "Mutida de vìdeu in intrada"
},
"info": {
"accessibilityLabel": "Ammustra informatziones",
"addPassword": "Agiunghe $t(lockRoomPassword)",
"cancelPassword": "Annulla $t(lockRoomPassword)",
"conferenceURL": "Ligàmene:",
"country": "Paisu",
"dialANumber": "Pro intrare in sa riunione, cumpone unu de custos nùmeros e inserta su PIN.",
"dialInConferenceID": "PIN:",
"dialInNotSupported": "Sa partetzipatzione telefònica ebbia no est suportada a oe.",
"dialInNumber": "Cumpone:",
"dialInSummaryError": "Faddina in su ritzevimentu de is nùmeros de telèfonu. Torra·bi a proare a pustis.",
"dialInTollFree": "Sena pedàgios",
"genericError": "Faddina.",
"inviteLiveStream": "Pro bìdere sa trasmissione in direta de custa riunione, incarca custu ligàmene: {{url}}",
"invitePhone": "Si boles fàghere una connessione telefònica, toca custu: {{number}},,{{conferenceID}}#\n",
"invitePhoneAlternatives": "Ses chirchende unu nùmeru diferente?\nControlla is nùmeros de telèfonu de sa riunione: {{url}}\n\n\nSi ses giai mutende tràmite unu telèfonu de sa riunione, intra sena ti connètere a s'àudio: {{silentUrl}}",
"inviteURLFirstPartGeneral": "Tenes un'invitu pro intrare in una riunione.",
"inviteURLFirstPartPersonal": "{{name}} t'at invitadu a sa riunione.\n",
"inviteURLSecondPart": "\nIntra in sa riunione:\n{{url}}\n",
"liveStreamURL": "Trasmissione in direta:",
"moreNumbers": "Àteros nùmeros",
"noNumbers": "Perunu nùmeru de mutire.",
"noPassword": "Perunu",
"noRoom": "No as ispetzificadu peruna sala de mutire.",
"numbers": "Nùmeros de mutire",
"password": "$t(lockRoomPasswordUppercase):",
"title": "Cumpartzi",
"tooltip": "Imbia su ligàmene e is nùmeros de telèfonu de custa riunione",
"label": "Informatziones de sa riunione"
},
"inviteDialog": {
"alertText": "Faddina in s'invitu de àtera gente.",
"header": "Invita",
"searchCallOnlyPlaceholder": "Inserta·nche unu nùmeru de telèfonu",
"searchPeopleOnlyPlaceholder": "Chirca gente",
"searchPlaceholder": "Partetzipante o nùmeru de telèfonu",
"send": "Imbia"
},
"inlineDialogFailure": {
"msg": "Bi amus postu unu pagu.",
"retry": "Torra·bi a proare",
"support": "Agiudu",
"supportMsg": "Si custu sighit a sutzèdere, nara·si·ddu a"
},
"keyboardShortcuts": {
"focusLocal": "Ammustra su vìdeu tuo",
"focusRemote": "Ammustra su vìdeu de s'àtera persone",
"fullScreen": "Visualiza in mannària prena o essi",
"keyboardShortcuts": "Incurtzaduras de tecladu",
"localRecording": "Ammustra o cua controllos de registratzione locale",
"mute": "Pone su micròfonu a sa muda o torra·ddu a ativare",
"pushToTalk": "Incarca pro chistionare",
"raiseHand": "Àrtzia o abassa sa manu",
"showSpeakerStats": "Ammustra istatìsticas de partetzipantes",
"toggleChat": "Aberi o serra sa tzarrada",
"toggleFilmstrip": "Ammustra o cua miniaturas de vìdeu",
"toggleScreensharing": "Cuncàmbia intre càmera e cumpartzidura de ischermu",
"toggleShortcuts": "Ammustra o cua incurtzaduras de tecladu",
"videoMute": "Avia o firma sa càmera tua",
"videoQuality": "Gesti sa calidade de sa mutida"
},
"liveStreaming": {
"busy": "Semus chirchende de liberare resursas de trasmissione. Torra·bi a proare dae immoe a carchi minutu.",
"busyTitle": "Is trasmitentes sunt ocupados immoe",
"changeSignIn": "Càmbia contos.",
"choose": "Sèbera una trasmissione in direta",
"chooseCTA": "Sèbera un'optzione pro sa trasmissione. Autenticatzione che a {{email}}.",
"enterStreamKey": "Inserta inoghe sa crae tua pro sa trasmissione in direta de YouTube.",
"error": "Faddina in sa trasmissione in direta. Torra·bi a proare.",
"errorAPI": "Faddina in s'atzessu a is trasmissiones tuas de Youtube. Torra·bi a proare.",
"errorLiveStreamNotEnabled": "Sa trasmissione in direta no est ativa in {{email}}. Ativa sa trasmissione in direta o autèntica·ti in unu contu chi tèngiat ativa sa trasmissione in direta.",
"expandedOff": "Trasmissione in direta firmada",
"expandedOn": "Custa riunione est trasmìtida in direta in YouTube.",
"expandedPending": "Trasmissione in direta aviada...",
"failedToStart": "Faddina in s'aviu de sa trasmissione in direta",
"getStreamKeyManually": "No amus pòdidu retzire peruna trasmissione in direta. Chirca de otènnere sa crae de YouTube tua pro is trasmissiones in idreta.",
"invalidStreamKey": "Sa crae pro is trasmissiones in direta podet èssere iscurreta.",
"off": "Trasmissione in direta firmada",
"offBy": "{{name}} at firmadu sa trasmissione in direta",
"on": "Trasmissione in direta",
"onBy": "{{name}} at aviadu sa trasmissione in direta",
"pending": "Aviende sa trasmissione in direta...",
"serviceName": "Servìtziu de trasmissione in direta",
"signedInAs": "Autenticatzione cun:",
"signIn": "Autèntica·ti cun Google",
"signInCTA": "Autèntica·ti o inserta sa crae tua pro sa trasmissione in direta de YouTube.",
"signOut": "Essi",
"start": "Avia sa trasmissione in direta",
"streamIdHelp": "It'est custu?",
"unavailableTitle": "Sa trasmissione in direta no est a disponimentu",
"googlePrivacyPolicy": "Polìtica de riservadesa de Google",
"youtubeTerms": "Cunditziones de servìtziu de YouTube"
},
"localRecording": {
"clientState": {
"off": "Disativada",
"on": "Ativa",
"unknown": "Disconnota"
},
"dialogTitle": "Controllos de registratzione locale",
"duration": "Durada",
"durationNA": "Non a disponimentu",
"encoding": "Codìfica",
"label": "Registr. locale",
"labelToolTip": "Sa registratzione in locale est funtzionende",
"localRecording": "Registratzione in locale",
"me": "Deo",
"messages": {
"engaged": "Sa registratzione in locale est funtzionende.",
"finished": "Acabada sa registratzione de sessione {{token}}. Imbia s'archìviu registradu a sa persone chi mòderat.",
"finishedModerator": "Acabada sa registratzione de sessione {{token}}. Registratzione locale sarvada. Dimanda a su restu de su grupu de imbiare is registratziones.",
"notModerator": "No ses moderadore. Non podes aviare o firmare registratziones in locale."
},
"moderator": "Moderadore",
"no": "Nono",
"participant": "Partetzipante",
"participantStats": "Istatìsticas de partetzipantes",
"sessionToken": "Còdighe de sessione",
"start": "Avia sa registratzione",
"stop": "Firma sa registratzione",
"yes": "Eja"
},
"lockRoomPassword": "crae",
"lockRoomPasswordUppercase": "Crae",
"me": "deo",
"notify": {
"connectedOneMember": "{{name}} at aderidu a sa riunione",
"connectedThreePlusMembers": "{{name}} è ateras {{count}} persones ant aderidu a sa riunione",
"connectedTwoMembers": "{{first}} e {{second}} ant aderidu a sa riunione",
"disconnected": "disconnètidu",
"focus": "Focus de sa cunferèntzia",
"focusFail": "{{component}} no est a disponimentu - torra·bi a proare in {{ms}} seg",
"grantedTo": "Permissos pro sa moderatzione cuntzèdidos a {{to}}.",
"invitedOneMember": "Invitu imbiadu a {{name}}",
"invitedThreePlusMembers": "Invitu imbiadu a {{name}} e àteras {{count}} persones",
"invitedTwoMembers": "Invitu imbiadu a {{first}} e {{second}}",
"kickParticipant": "{{kicker}} at bogadu a {{kicked}}",
"me": "Deo",
"moderator": "As donadu permissos pro sa moderatzione.",
"muted": "As cumintzadu una tzarrada a sa muda.",
"mutedTitle": "Ses a sa muda.",
"mutedRemotelyTitle": "{{participantDisplayName}} t'at postu a sa muda.",
"mutedRemotelyDescription": "Podes torrare a aviare s'àudio cando depas chistionare. Torra a sa muda cando as acabadu pro evitare remore in sa riunione.",
"passwordRemovedRemotely": "Un'utente at bogadu $t(lockRoomPasswordUppercase)",
"passwordSetRemotely": "Un'utente at cunfiguradu $t(lockRoomPasswordUppercase)",
"raisedHand": "{{name}} bolet chistionare.",
"somebody": "Calicunu",
"startSilentTitle": "Ses intradu sena àudio.",
"startSilentDescription": "Torra a intrare pro ativare s'àudio",
"suboptimalBrowserWarning": "Timimus chi s'esperièntzia tua de custa riunione no at a èssere bona meda. Semus chirchende de megiorare custu, però in su mentras proa de impreare unu de is <a href='static/recommendedBrowsers.html' target='_blank'>navigadores cumpatìbiles</a>.",
"suboptimalExperienceTitle": "Avisu subra de su navigadore",
"unmute": "Ativa su sonu",
"newDeviceCameraTitle": "Càmera noa rilevada",
"newDeviceAudioTitle": "Dispositivu de àudio nou rilevadu",
"newDeviceAction": "Imprea"
},
"passwordSetRemotely": "cunfiguradu dae un'àtera persone",
"passwordDigitsOnly": "Finas a {{number}} tzifras",
"poweredby": "de",
"presenceStatus": {
"busy": "No a disponimentu",
"calling": "Mutende...",
"connected": "Connessione istabilida",
"connecting": "Connetende...",
"connecting2": "Connetende*...",
"disconnected": "Disconnètidu",
"expired": "Iscadidu",
"ignored": "Ignoradu",
"initializingCall": "Aviende sa mutida...",
"invited": "Invitadu",
"rejected": "Refudadu",
"ringing": "Sonende..."
},
"profile": {
"setDisplayNameLabel": "Cunfigura su nòmine visìbile tuo",
"setEmailInput": "Inserta posta eletrònica",
"setEmailLabel": "Cunfigura indiritzu eletrònicu de gravatar",
"title": "Profilu"
},
"raisedHand": "Bògio chistionare",
"recording": {
"authDropboxText": "Càrriga a Dropbox",
"availableSpace": "Ispàtziu a disponimentu: {{spaceLeft}} MB (prus o mancu {{duration}} minutos de registratzione)",
"beta": "BETA",
"busy": "Semus traballende pro liberare resursas de registratzione. Torra·bi a proare dae immoe a carchi minutu.",
"busyTitle": "Totu is registradores sunt ocupados",
"error": "Faddina in sa registratzione. Torra·bi a proare.",
"expandedOff": "Registratzione firmada",
"expandedOn": "Registrende sa riunione.",
"expandedPending": "Aviende sa registratzione...",
"failedToStart": "Faddina in s'aviu de sa registratzione",
"fileSharingdescription": "Cumpartzi sa registratzione cun is partetzipantes de sa riunione",
"live": "IN DIRETA",
"loggedIn": "Autenticatzione: {{userName}}",
"off": "Registratzione firmada",
"offBy": "{{name}} at firmadu sa registratzione",
"on": "Registrende",
"onBy": "{{name}} at aviadu sa registratzione",
"pending": "Preparende pro registrare sa riunione...",
"rec": "REG",
"serviceDescription": "Sa registratzione at a èssere sarvada dae su servìtziu de registratzione",
"serviceName": "Servìtziu de registratzione",
"signIn": "Identìfica·ti",
"signOut": "Essi",
"unavailable": "{{serviceName}} no est a disponimentu. Semus traballende pro acontzare su problema. Torra·bi a proare a pustis.",
"unavailableTitle": "Sa registratzione no est a disponimentu"
},
"sectionList": {
"pullToRefresh": "Ispinghe pro atualizare"
},
"settings": {
"calendar": {
"about": "S'integratzione cun su calendàriu {{appName}} est impreada pro atzèdere in manera segura a su calendàriu tuo pro chi potzat lèghere is eventos imbenientes.",
"disconnect": "Disconnete",
"microsoftSignIn": "Autèntica·ti cun Microsoft",
"signedIn": "Ses atzedende a is eventos de calendàriu pro {{email}}. Incarca su butone Disconnete in bàsciu pro firmare s'atzessu a eventos de calendàriu.",
"title": "Calendàriu"
},
"devices": "Dispositivos",
"followMe": "Totus mi sighint",
"language": "Limba",
"loggedIn": "Autenticatzione: {{name}}",
"moderator": "Moderadore",
"more": "Àteru",
"name": "Nòmine",
"noDevice": "Perunu",
"selectAudioOutput": "Essida de àudio",
"selectCamera": "Càmera",
"selectMic": "Micròfonu",
"startAudioMuted": "Totus cumintzant a sa muda",
"startVideoMuted": "Totus cumintzant a sa cua",
"title": "Cunfiguratzione",
"speakers": "Altoparlantes",
"microphones": "Micròfonos"
},
"settingsView": {
"advanced": "Avantzadas",
"alertOk": "AB",
"alertTitle": "Atentzione",
"alertURLText": "Custu URL no est vàlidu",
"buildInfoSection": "Informatzione de sa versione",
"conferenceSection": "Cunferèntzia",
"disableCallIntegration": "Disativa s'integratzione de mutidas nativas",
"disableP2P": "Disativa sa modalidade a nodu terminale (p2p)",
"displayName": "Nòmine visìbile",
"email": "Indiritzu eletrònicu",
"header": "Cunfiguratzione",
"profileSection": "Profilu",
"serverURL": "URL de su servidore",
"showAdvanced": "Ammustra cunfiguratziones avantzadas",
"startWithAudioMuted": "Cumintza cun s'àudio a sa muda",
"startWithVideoMuted": "Cumintza cun su vìdeu disativadu",
"version": "Versione"
},
"share": {
"dialInfoText": "\n\n=====\n\nBoles isceti ascurtare sa cunferèntzia dae su telèfonu?\n\n{{defaultDialInNumber}}Incarca custu ligàmene pro bìdere is nùmeros de telèfonu de custa riunione\n{{dialInfoPageUrl}}\"",
"mainText": "Incarca custu ligàmene pro intrare a sa riunione:\n{{roomUrl}}"
},
"speaker": "Altoparlante",
"speakerStats": {
"hours": "{{count}} h",
"minutes": "{{count}} min",
"name": "Nòmine",
"seconds": "{{count}} seg",
"speakerStats": "Istatìsticas de partetzipante",
"speakerTime": "Tempus de partetzipante"
},
"startupoverlay": {
"title": "{{app}} tenet bisòngiu de impreare sa càmera e su micròfonu tuos.",
"policyText": " "
},
"suspendedoverlay": {
"rejoinKeyTitle": "Torra a intrare",
"text": "Incarca su butone <i>Torra a intrare</i> pro torrare a connètere.",
"title": "S'elaboradore est andadu a riposu e custu at firmadu sa mutida de vìdeu."
},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "Càmbia àudio isceti",
"audioRoute": "Sèbera su dispositivu de àudio",
"callQuality": "Gesti sa calidade de su vìdeu",
"cc": "Càmbia s'istadu de is sutatìtulos",
"chat": "Càmbia ventana de tzarrada",
"document": "Càmbia documentu cumpartzidu",
"download": "Iscàrriga is aplicatziones nostras",
"feedback": "Lassa cummentos",
"fullScreen": "Ativa o disativa ischermu in mannària prena",
"hangup": "Lassa sa mutida",
"help": "Agiudu",
"invite": "Invita gente",
"kick": "Boga partetzipante",
"localRecording": "Ativa o disativa is controllos de registratzione in locale",
"lockRoom": "Ativa o disativa crae de riunione",
"moreActions": "Càmbia su menù de atziones additzionales",
"moreActionsMenu": "Menù de atziones additzionales",
"moreOptions": "Ammustra àteras optziones",
"mute": "Ativa o disativa su silèntziu de s'àudio",
"muteEveryone": "Pone totus a sa muda",
"pip": "Ativa o disativa sa modalidade immàgine in immàgine",
"privateMessage": "Imbia messàgiu de testu privadu",
"profile": "Modìfica su profilu",
"raiseHand": "Àrtzia o abassa sa manu",
"recording": "Ativa o disativa sa registratzione",
"remoteMute": "Pone partetzipante a sa muda",
"Settings": "Càmbia sa cunfiguratzione",
"sharedvideo": "Ativa o disativa sa cumpartzidura de vìdeos de Youtube",
"shareRoom": "Invita una persone",
"shareYourScreen": "Ativa o disativa sa cumpartzidura de ischermu",
"shortcuts": "Ativa o disativa incurtzaduras",
"show": "Ammustra in s'iscena",
"speakerStats": "Càmbia istatìsticas de partetzipante",
"tileView": "Càmbia a visualizatzione in mosàicu",
"toggleCamera": "Càmbia càmera",
"videomute": "Ativa o disativa su vìdeu",
"videoblur": "Ativa o disativa isfocadu"
},
"addPeople": "Agiunghe gente a sa mutida",
"audioOnlyOff": "Disativa modalidade de àmpiu de banda bàsciu",
"audioOnlyOn": "Ativa modalidade de àmpiu de banda bàsciu",
"audioRoute": "Sèbera su dispositivu de àudio",
"authenticate": "Autentica·ti",
"callQuality": "Gesti sa calidade de su vìdeu",
"chat": "Aberi o serra sa tzarrada",
"closeChat": "Serra sa tzarrada",
"documentClose": "Serra su documentu cumpartzidu",
"documentOpen": "Aberi su documentu cumpartzidu",
"download": "Iscàrriga is aplicatziones nostras",
"enterFullScreen": "Ammustra in mannària prena",
"enterTileView": "Intra in visualizatzione in mosàicu",
"exitFullScreen": "Essi de ischermu in mannària prena",
"exitTileView": "Essi de sa visualizatzione in mosàicu",
"feedback": "Lassa cummentos",
"hangup": "Essi",
"help": "Agiudu",
"invite": "Invita gente",
"login": "Intra",
"logout": "Essi",
"lowerYourHand": "Abassa sa manu",
"moreActions": "Àteras atziones",
"moreOptions": "Àteras optziones",
"mute": "Ativa o disativa s'àudio",
"muteEveryone": "Pone totus a sa muda",
"noAudioSignalTitle": "Perunu sinnale dae su micròfonu tuo.",
"noAudioSignalDesc": "Si no dd'as postu a sa muda dae sa cunfiguratzione de sistema o dae su dispositivu, forsis depes cambiare dispositivu.",
"noAudioSignalDescSuggestion": "Si no dd'as postu a sa muda dae sa cunfiguratzione de sistema o dae su dispositivu, forsis depes cambiare a su dispositivu cussigiadu.",
"noAudioSignalDialInDesc": "Podes fintzas intrare cun una mutida:",
"noAudioSignalDialInLinkDesc": "Nùmeros de mutida",
"noisyAudioInputTitle": "Su micròfonu tuo faghet remore.",
"noisyAudioInputDesc": "Su micròfonu tuo faghet remore, forsis ti depes pònnere a sa muda o depes cambiare dispositivu.",
"openChat": "Aberi sa tzarrada",
"pip": "Intra in modalidade immàgine in immàgine",
"privateMessage": "Imbia messàgiu de testu privadu",
"profile": "Modìfica su profilu",
"raiseHand": "Àrtzia o abassa sa manu",
"raiseYourHand": "Àrtzia sa manu",
"Settings": "Cunfiguratzione",
"sharedvideo": "Cumpartzi unu vìdeu de YouTube",
"shareRoom": "Invita una persone",
"shortcuts": "Ammustra incurtzaduras",
"speakerStats": "Istatìsticas de partetzipante",
"startScreenSharing": "Avia sa cumpartzidura de s'ischermu",
"startSubtitles": "Avia sutatìtulos",
"stopScreenSharing": "Firma sa cumpartzidura de s'ischermu",
"stopSubtitles": "Firma sutatìtulos",
"stopSharedVideo": "Firma vìdeu de YouTube",
"talkWhileMutedPopup": "Ses chirchende de chistionare? Ses a sa muda.",
"tileViewToggle": "Càmbia a visualizatzione in mosàicu",
"toggleCamera": "Càmbia càmera",
"videomute": "Avia o firma sa càmera",
"startvideoblur": "Isfoca s'isfundu meu",
"stopvideoblur": "Disativa s'isfocadu de s'isfundu"
},
"transcribing": {
"ccButtonTooltip": "Avia o firma sutatìtulos",
"error": "Faddina in sa trascritzione. Torra·bi a proare.",
"expandedLabel": "Trascritzione ativada",
"failedToStart": "Faddina in s'aviu de sa trascritzione",
"labelToolTip": "Trascriende sa riunione",
"off": "Trascritzione firmada",
"pending": "Preparende pro trascrìere sa riunione...",
"start": "Cumintza a ammustrare sutatìtulos",
"stop": "No ammustres prus sutatìtluos",
"tr": "TR"
},
"userMedia": {
"androidGrantPermissions": "Sèbera <b><i>Permite</i></b> cando su navigadore ti dimandet permissos.",
"chromeGrantPermissions": "Sèbera <b><i>Permite</i></b> cando su navigadore ti dimandet permissos.",
"edgeGrantPermissions": "Sèbera <b><i>Eja</i></b> cando su navigadore ti dimandet permissos.",
"electronGrantPermissions": "Cuntzede permissos pro atzèdere a sa càmera e a su micròfonu tuos",
"firefoxGrantPermissions": "Sèbera <b><i>Cumpartzi dispositivos seletzionados</i></b> cando su navigadore ti dimandet permissos.",
"iexplorerGrantPermissions": "Sèbera <b><i>AB</i></b> cando su navigadore ti dimandet permissos.",
"nwjsGrantPermissions": "Cuntzede permissos pro atzèdere a sa càmera e a su micròfonu tuos",
"operaGrantPermissions": "Sèbera <b><i>Permite</i></b> cando su navigadore ti dimandet permissos.",
"react-nativeGrantPermissions": "Sèbera <b><i>Permite</i></b> cando su navigadore ti dimandet permissos.",
"safariGrantPermissions": "Sèbera <b><i>AB</i></b> cando su navigadore ti dimandet permissos."
},
"videoSIPGW": {
"busy": "Semus traballende pro liberare resursas. Torra·bi a proare dae immoe a carchi minutu.",
"busyTitle": "Su servìtziu Room est ocupadu",
"errorAlreadyInvited": "Invitu a {{displayName}} giai imbiadu",
"errorInvite": "Sa connessione no est istada istabilida. Torra·bi a proare a pustis.",
"errorInviteFailed": "Semus traballende pro acontzare su problema. Torra·bi a proare a pustis.",
"errorInviteFailedTitle": "Faddina in s'invitu de {{displayName}}",
"errorInviteTitle": "Faddina in s'aposentu de invitos",
"pending": "Invitu a {{displayName}} imbiadu"
},
"videoStatus": {
"audioOnly": "AUD",
"audioOnlyExpanded": "Ses in modalidade de àmpiu de banda bàsciu. In custa modalidade isceti su ritzevimentu de àudio e de cumpartzidura de ischermu sunt a disponimentu.",
"callQuality": "Calidade de su vìdeu",
"hd": "HD",
"hdTooltip": "Vìdeu in arta definitzione (HD)",
"highDefinition": "Arta definitzione (HD)",
"labelTooiltipNoVideo": "Sena vìdeu",
"labelTooltipAudioOnly": "Modalidade de àmpiu de banda bàsciu ativada",
"ld": "LD",
"ldTooltip": "Vìdeu in definitzione bàscia (LD)",
"lowDefinition": "Definitzione bàscia (LD)",
"onlyAudioAvailable": "Isceti àudio a disponimentu",
"onlyAudioSupported": "Custu navigadore est isceti cumpatìbile cun s'àudio.",
"p2pEnabled": "Rete a nodu terminale (p2p) ativada",
"p2pVideoQualityDescription": "In sa modalidade a nodu terminale (p2p), sa calidade de vìdeu retzida podet èssere cambiada intre arta calidade e isceti àudio. Depes essire de sa modalidade a nodu terminale pro pòdere cunfigurare àteras optziones.",
"recHighDefinitionOnly": "S'arta definitzione (HD) at a èssere preferida.",
"sd": "SD",
"sdTooltip": "Vìdeu in definitzione istandard (SD)",
"standardDefinition": "Definitzione istàndard (SD)"
},
"videothumbnail": {
"domute": "A sa muda",
"domuteOthers": "Pone totus a sa muda",
"flip": "Fùrria",
"kick": "Boga",
"moderator": "Moderadore",
"mute": "Partetzipante a sa muda",
"muted": "A sa muda",
"remoteControl": "Avia o firma su controllu remotu",
"show": "Ammustra in s'iscena",
"videomute": "Custa persone at firmadu sa càmera"
},
"welcomepage": {
"accessibilityLabel": {
"join": "Toca pro intrare",
"roomname": "Inserta su nòmine de s'aposentu"
},
"appDescription": "Bae, tzarrada de vìdeu cun totu s'iscuadra. Difatis, podes invitare totu sa gente chi connosches. {{app}} est un'aplicatzione de vìdeu-cunferèntzia de còdighe abertu 100% cun critografia cumpleta chi podes impreare cada die, totu sa die, de badas — sena perunu contu creadu.",
"audioVideoSwitch": {
"audio": "Boghe",
"video": "Vìdeu"
},
"calendar": "Calendàriu",
"connectCalendarButton": "Connete a su calendàriu tuo",
"connectCalendarText": "Connete a su calendàriu tuo pro bìdere totu is riuniones tuas in {{app}}. In prus, agiunghe riuniones de {{provider}} a su calendàriu tuo e avia·ddas cun unu clic.",
"enterRoomTitle": "Cumintza una riunione noa",
"roomNameAllowedChars": "Su nòmine de sa riunione non podet inclùdere custos caràteres: ?, &, :, ', \", %, #.",
"go": "BAE",
"goSmall": "BAE",
"join": "CREA / INTRA",
"info": "Informatziones",
"privacy": "Riservadesa",
"recentList": "Reghentes",
"recentListDelete": "Cantzella",
"recentListEmpty": "Sa lista de reghentes est bòida. Tzarra cun s'iscuadra tua e as a agatare totu is riuniones reghentes tuas inoghe.",
"reducedUIText": "Ti donamus su benebènnidu a {{app}}!",
"roomname": "Inserta su nòmine de s'aposentu",
"roomnameHint": "Inserta su nòmine o s'URL de s'aposentu a su chi boles intrare. Ti podes imbentare unu nòmine, bastat chi ddu fatzas ischire a sa gente chi ses addobiende pro chi ddu potzant insertare su pròpiu.",
"sendFeedback": "Imbia cummentos",
"terms": "Cunditziones",
"title": "Vìdeu-cunferèntzia segura, prena de funtzionalidades, lìbera e de badas",
"getHelp": "Agiudu"
},
"lonelyMeetingExperience": {
"button": "Invita gente",
"youAreAlone": "Ses a sa sola in custa riunione"
},
"helpView": {
"header": "Tzentru de agiudu"
}
}

View File

@@ -569,9 +569,9 @@
"shareYourScreen": "Slå av eller på skärmdelning",
"shortcuts": "Stäng eller öppna genvägar",
"show": "",
"speakerStats": "Stäng eller öppna högstalarstatistik",
"speakerStats": "Stäng eller öppna talarstatistik",
"tileView": "Öppna eller stäng panelvyn",
"toggleCamera": "Öppna eller stäng kamera",
"toggleCamera": "Växla kamera",
"videomute": "Sätt på eller stäng av mikrofonen",
"videoblur": ""
},
@@ -606,7 +606,7 @@
"sharedvideo": "Dela en Youtube-video",
"shareRoom": "Bjud in någon",
"shortcuts": "Visa genvägar",
"speakerStats": "Högtalarspecifikationer",
"speakerStats": "Talarstatistik",
"startScreenSharing": "Starta skärmdelning",
"startSubtitles": "Starta undertextning",
"stopScreenSharing": "Avsluta skämdelning",
@@ -614,7 +614,7 @@
"stopSharedVideo": "Pausa YouTube-video",
"talkWhileMutedPopup": "Försöker du tala? Din mikrofon är tystad.",
"tileViewToggle": "Öppna eller stäng panelvyn",
"toggleCamera": "Öppna eller stäng kamera",
"toggleCamera": "Byta kamera",
"videomute": "Aktivera / avaktivera kameran",
"startvideoblur": "",
"stopvideoblur": ""
@@ -710,4 +710,4 @@
"terms": "Termer",
"title": "Säkra, välutrustade och helt kostnadsfria videokonferenser"
}
}
}

View File

@@ -61,14 +61,13 @@
"AUTHENTICATING": "Kimlik doğrula",
"AUTHFAIL": "",
"CONNECTED": "bağlandı",
"CONNECTING": "Bağlantı:",
"CONNECTING": "Bağlanıyor",
"CONNFAIL": "",
"DISCONNECTED": "bağlantı kesildi",
"DISCONNECTING": "bağlantı kesildi",
"ERROR": "Hata",
"RECONNECTING": ""
},
"\u0005connection": {},
"connectionindicator": {
"address": "Adres:",
"bandwidth": "Tahmini bant genişliği:",
@@ -77,8 +76,10 @@
"connectedTo": "",
"framerate": "Çerçeve hızı:",
"less": "Daha az göster",
"localaddress": "Yerel adres:Yerel adresler:",
"localport": "Yerel port:Yerel portlar:",
"localaddress": "Yerel adres:",
"localaddress_plural": "Yerel adresler:",
"localport": "Yerel port:",
"localport_plural": "Yerel portlar:",
"more": "Daha fazla göster",
"packetloss": "Paket kaybı:",
"quality": {
@@ -88,16 +89,16 @@
"nonoptimal": "",
"poor": ""
},
"remoteaddress": "Uzak adres:Uzak adresler:",
"remoteport": "Uzak port:Uzak portlar:",
"remoteaddress": "Uzak adres:",
"remoteaddress_plural": "Uzak adresler:",
"remoteport": "Uzak port:",
"remoteport_plural": "Uzak portlar:",
"resolution": "Çözünürlük:",
"status": "Bağlantı:",
"transport": "Transport:",
"transport_plural": "Transportlar:",
"turn": ""
},
"\u0005connectionindicator": {
"quality": {}
},
"dateUtils": {
"earlier": "",
"today": "",
@@ -153,7 +154,7 @@
"confirmYes": "Evet",
"connectError": "Amanin boo! Birşeyler ters gitti ve görüşmeye bağlanamadık.",
"connectErrorWithMsg": "Amanin boo! Birşeyler ters gitti ve görüşmeye bağlanamadık: {{msg}}",
"connecting": "Bağlantı:",
"connecting": "Bağlanıyor",
"contactSupport": "Destek hattına bağlan",
"copy": "Kopyala",
"dismiss": "",
@@ -161,14 +162,14 @@
"done": "",
"enterDisplayName": "",
"error": "Hata",
"externalInstallationMsg": "Masaüstü paylaşım eklentisi yüklenemedi",
"externalInstallationMsg": "Masaüstü paylaşım uzantımızı yüklemeniz gerekmektedir.",
"externalInstallationTitle": "",
"goToStore": "",
"gracefulShutdown": "Hizmetimiz bakıp için durduruldu. Daha sonra tekrar deneyiniz.",
"IamHost": "",
"incorrectRoomLockPassword": "",
"incorrectPassword": "Kullanıcı adı veya parola hatalı",
"inlineInstallationMsg": "Masaüstü paylaşım eklentisi yüklenemedi",
"inlineInstallationMsg": "Masaüstü paylaşım uzantımızı yüklemeniz gerekmektedir.",
"inlineInstallExtension": "",
"internalError": "",
"internalErrorTitle": "",
@@ -257,7 +258,6 @@
"Yes": "Evet",
"yourEntireScreen": ""
},
"\u0005dialog": {},
"dialOut": {
"statusMessage": ""
},
@@ -337,7 +337,6 @@
"toggleShortcuts": "",
"videoMute": "Kamerayı aç veya kapat"
},
"\u0005keyboardShortcuts": {},
"liveStreaming": {
"busy": "",
"busyTitle": "",
@@ -429,7 +428,6 @@
"newDeviceAudioTitle": "",
"newDeviceAction": ""
},
"\u0005notify": {},
"passwordSetRemotely": "Diğer katılımcı tarafından ayarlandı",
"passwordDigitsOnly": "",
"poweredby": "Gücünün kaynağı",
@@ -437,8 +435,8 @@
"busy": "",
"calling": "",
"connected": "bağlandı",
"connecting": "Bağlantı:",
"connecting2": "Bağlantı:",
"connecting": "Bağlanıyor...",
"connecting2": "Bağlanıyor*...",
"disconnected": "bağlantı kesildi",
"expired": "",
"ignored": "",
@@ -447,14 +445,12 @@
"rejected": "",
"ringing": ""
},
"\u0005presenceStatus": {},
"profile": {
"setDisplayNameLabel": "Teşhir adınızı ayarlayın",
"setEmailInput": "E-posta adresinizi girin",
"setEmailLabel": "Gravatar e-postanızı belirleyin",
"title": ""
},
"\u0005profile": {},
"recording": {
"authDropboxText": "",
"availableSpace": "",
@@ -506,9 +502,6 @@
"startVideoMuted": "Herkes gizli başlasın",
"title": "Ayarlar"
},
"\u0005settings": {
"calendar": {}
},
"settingsView": {
"alertOk": "",
"alertTitle": "Uyarı",
@@ -546,7 +539,6 @@
"text": "Tekrar bağlanmak için <i>Geri katıl</i>'a basın.",
"title": "Görüntülü konuşmanız kesildi, çünkü bilgisayar uyku moduna girdi."
},
"\u0005suspendedoverlay": {},
"toolbar": {
"accessibilityLabel": {
"audioOnly": "",
@@ -626,7 +618,6 @@
"startvideoblur": "",
"stopvideoblur": ""
},
"\u0005toolbar": {},
"transcribing": {
"ccButtonTooltip": "",
"error": "",
@@ -643,10 +634,10 @@
"androidGrantPermissions": "Tarayıcınız izin istediğinde <b><i>İzin Ver</i></b> seçeneğini seçin.",
"chromeGrantPermissions": "Tarayıcınız izin istediğinde <b><i>İzin Ver</i></b> seçeneğini seçin.",
"edgeGrantPermissions": "Tarayıcınız izin istediğinde <b><i>Evet</i></b> seçeneğini seçin.",
"electronGrantPermissions": "Lütfen kameranızı ve mikrofonunuzu kullanmak için gereken izni sağlayın.",
"electronGrantPermissions": "Lütfen kameranızı ve mikrofonunuzu kullanmak için izin verin",
"firefoxGrantPermissions": "Tarayıcınız izin istediğinde <b><i>Seçilen Aygıtı Paylaş</i></b> seçeneğini seçin.",
"iexplorerGrantPermissions": "Tarayıcınız izin istediğinde <b><i>Tamam</i></b> seçeneğini seçin.",
"nwjsGrantPermissions": "Lütfen kameranızı ve mikrofonunuzu kullanmak için gereken izni sağlayın.",
"nwjsGrantPermissions": "Lütfen kameranızı ve mikrofonunuzu kullanmak için izin verin",
"operaGrantPermissions": "Tarayıcınız izin istediğinde <b><i>İzin Ver</i></b> seçeneğini seçin.",
"react-nativeGrantPermissions": "Tarayıcınız izin istediğinde <b><i>İzin Ver</i></b> seçeneğini seçin.",
"safariGrantPermissions": "Tarayıcınız izin istediğinde <b><i>Tamam</i></b> seçeneğini seçin."
@@ -690,7 +681,6 @@
"show": "",
"videomute": ""
},
"\u0005videothumbnail": {},
"welcomepage": {
"accessibilityLabel": {
"join": "",
@@ -718,6 +708,5 @@
"sendFeedback": "Geribildirimde bulun",
"terms": "Kurallar",
"title": ""
},
"\u0005welcomepage": {}
}
}
}

View File

@@ -220,7 +220,7 @@
"muteParticipantDialog": "Are you sure you want to mute this participant? You won't be able to unmute them, but they can unmute themselves at any time.",
"muteParticipantTitle": "Mute this participant?",
"Ok": "Ok",
"passwordLabel": "$t(lockRoomPasswordUppercase)",
"passwordLabel": "The meeting has been locked by a participant. Please enter the $t(lockRoomPassword) to join.",
"passwordNotSupported": "Setting a meeting $t(lockRoomPassword) is not supported.",
"passwordNotSupportedTitle": "$t(lockRoomPasswordUppercase) not supported",
"passwordRequired": "$t(lockRoomPasswordUppercase) required",
@@ -244,6 +244,7 @@
"reservationError": "Reservation system error",
"reservationErrorMsg": "Error code: {{code}}, message: {{msg}}",
"retry": "Retry",
"screenSharingAudio": "Share audio",
"screenSharingFailedToInstall": "Oops! Your screen sharing extension failed to install.",
"screenSharingFailedToInstallTitle": "Screen sharing extension failed to install",
"screenSharingFirefoxPermissionDeniedError": "Something went wrong while we were trying to share your screen. Please make sure that you have given us permission to do so. ",
@@ -394,7 +395,9 @@
"signOut": "Sign out",
"start": "Start a live stream",
"streamIdHelp": "What's this?",
"unavailableTitle": "Live Streaming unavailable"
"unavailableTitle": "Live Streaming unavailable",
"youtubeTerms": "YouTube terms of services",
"googlePrivacyPolicy": "Google Privacy Policy"
},
"localRecording": {
"clientState": {
@@ -525,6 +528,7 @@
"followMe": "Everyone follows me",
"language": "Language",
"loggedIn": "Logged in as {{name}}",
"microphones": "Microphones",
"moderator": "Moderator",
"more": "More",
"name": "Name",
@@ -532,6 +536,7 @@
"selectAudioOutput": "Audio output",
"selectCamera": "Camera",
"selectMic": "Microphone",
"speakers": "Speakers",
"startAudioMuted": "Everyone starts muted",
"startVideoMuted": "Everyone starts hidden",
"title": "Settings"
@@ -614,6 +619,7 @@
"speakerStats": "Toggle speaker statistics",
"tileView": "Toggle tile view",
"toggleCamera": "Toggle camera",
"toggleFilmstrip": "Toggle filmstrip",
"videomute": "Toggle mute video",
"videoblur": "Toggle video blur"
},
@@ -647,7 +653,7 @@
"noAudioSignalDesc": "If you did not purposely mute it from system settings or hardware, consider switching the device.",
"noAudioSignalDescSuggestion": "If you did not purposely mute it from system settings or hardware, consider switching to the suggested device.",
"noAudioSignalDialInDesc": "You can also dial-in using:",
"noAudioSignalDialInLinkDesc" : "Dial-in numbers",
"noAudioSignalDialInLinkDesc": "Dial-in numbers",
"noisyAudioInputTitle": "Your microphone appears to be noisy!",
"noisyAudioInputDesc": "It sounds like your microphone is making noise, please consider muting or changing the device.",
"openChat": "Open chat",
@@ -754,6 +760,7 @@
"connectCalendarButton": "Connect your calendar",
"connectCalendarText": "Connect your calendar to view all your meetings in {{app}}. Plus, add {{provider}} meetings to your calendar and start them with one click.",
"enterRoomTitle": "Start a new meeting",
"getHelp": "Get help",
"roomNameAllowedChars": "Meeting name should not contain any of these characters: ?, &, :, ', \", %, #.",
"go": "GO",
"goSmall": "GO",
@@ -773,5 +780,8 @@
"lonelyMeetingExperience": {
"button": "Invite others",
"youAreAlone": "You are the only one in the meeting"
},
"helpView": {
"header": "Help centre"
}
}

View File

@@ -369,12 +369,14 @@ class API {
* Notify external application (if API is enabled) that message was sent.
*
* @param {string} message - Message body.
* @param {boolean} privateMessage - True if the message was a private message.
* @returns {void}
*/
notifySendingChatMessage(message: string) {
notifySendingChatMessage(message: string, privateMessage: boolean) {
this._sendEvent({
name: 'outgoing-message',
message
message,
privateMessage
});
}

View File

@@ -184,7 +184,7 @@ export default class LargeVideoManager {
this.newStreamData = null;
logger.info('hover in %s', id);
logger.info(`hover in ${id}`);
this.state = videoType;
// eslint-disable-next-line no-shadow
const container = this.getCurrentContainer();

19
package-lock.json generated
View File

@@ -10653,8 +10653,8 @@
"integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls="
},
"js-utils": {
"version": "github:jitsi/js-utils#7a2be83d17dc4a3d0fac4a742ab999478f326f2e",
"from": "github:jitsi/js-utils#7a2be83d17dc4a3d0fac4a742ab999478f326f2e",
"version": "github:jitsi/js-utils#0b2cef90613a74777fefd98d4ee3eda3879809ab",
"from": "github:jitsi/js-utils#0b2cef90613a74777fefd98d4ee3eda3879809ab",
"requires": {
"bowser": "2.7.0",
"js-md5": "0.7.3",
@@ -10883,8 +10883,8 @@
}
},
"lib-jitsi-meet": {
"version": "github:jitsi/lib-jitsi-meet#5466c9d08a2c262ebb5889e3bb0cbbe6f08dc0c3",
"from": "github:jitsi/lib-jitsi-meet#5466c9d08a2c262ebb5889e3bb0cbbe6f08dc0c3",
"version": "github:jitsi/lib-jitsi-meet#960eea3c5087ce07e9135fad70268c7d338e0de5",
"from": "github:jitsi/lib-jitsi-meet#960eea3c5087ce07e9135fad70268c7d338e0de5",
"requires": {
"@jitsi/sdp-interop": "0.1.14",
"@jitsi/sdp-simulcast": "0.2.2",
@@ -10897,7 +10897,7 @@
"strophe.js": "1.3.4",
"strophejs-plugin-disco": "0.0.2",
"strophejs-plugin-stream-management": "github:jitsi/strophejs-plugin-stream-management#cec7608601c1bc098543823fc658e3ddf758c009",
"webrtc-adapter": "github:webrtc/adapter#1eec19782b4058d186341263e7d049cea3e3290a"
"webrtc-adapter": "7.5.0"
},
"dependencies": {
"js-md5": {
@@ -18999,11 +18999,12 @@
}
},
"webrtc-adapter": {
"version": "github:webrtc/adapter#1eec19782b4058d186341263e7d049cea3e3290a",
"from": "github:webrtc/adapter#1eec19782b4058d186341263e7d049cea3e3290a",
"version": "7.5.0",
"resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.5.0.tgz",
"integrity": "sha512-cUqlw310uLLSYvO8FTNCVmGWSMlMt6vuSDkcYL1nW+RUvAILJ3jEIvAUgFQU5EFGnU+mf9/No14BFv3U+hoxBQ==",
"requires": {
"rtcpeerconnection-shim": "^1.1.13",
"sdp": "^2.3.0"
"rtcpeerconnection-shim": "^1.2.15",
"sdp": "^2.12.0"
}
},
"websocket-driver": {

View File

@@ -53,10 +53,10 @@
"jquery-contextmenu": "2.4.5",
"jquery-i18next": "1.2.1",
"js-md5": "0.6.1",
"js-utils": "github:jitsi/js-utils#7a2be83d17dc4a3d0fac4a742ab999478f326f2e",
"js-utils": "github:jitsi/js-utils#0b2cef90613a74777fefd98d4ee3eda3879809ab",
"jsrsasign": "8.0.12",
"jwt-decode": "2.2.0",
"lib-jitsi-meet": "github:jitsi/lib-jitsi-meet#5466c9d08a2c262ebb5889e3bb0cbbe6f08dc0c3",
"lib-jitsi-meet": "github:jitsi/lib-jitsi-meet#960eea3c5087ce07e9135fad70268c7d338e0de5",
"libflacjs": "github:mmig/libflac.js#93d37e7f811f01cf7d8b6a603e38bd3c3810907d",
"lodash": "4.17.13",
"moment": "2.19.4",

View File

@@ -89,10 +89,22 @@ export class AbstractApp extends BaseApp<Props, *> {
return (
<Fragment>
<OverlayContainer />
{ this._createExtraPlatformSpecificElement() }
</Fragment>
);
}
/**
* Renders platform specific extra elements to be added alongside with the main element, if need be.
*
* NOTE: Overridden by child components.
*
* @returns {React$Element}
*/
_createExtraPlatformSpecificElement() {
return null;
}
_createMainElement: (React$Element<*>, Object) => ?React$Element<*>;
/**

View File

@@ -12,6 +12,7 @@ import { Platform } from '../../base/react';
import '../../base/responsive-ui';
import { updateSettings } from '../../base/settings';
import '../../google-api';
import { HelpView } from '../../help';
import '../../mobile/audio-mode';
import '../../mobile/back-button';
import '../../mobile/background';
@@ -107,6 +108,17 @@ export class App extends AbstractApp {
});
}
/**
* Renders platform specific extra elements to be added alongside with the main element, if need be.
*
* @inheritdoc
*/
_createExtraPlatformSpecificElement() {
return (
<HelpView />
);
}
/**
* Attempts to disable the use of React Native
* {@link ExceptionsManager#handleException} on platforms and in

View File

@@ -39,6 +39,7 @@ export default {
statusBarContent: ColorPalette.white,
text: ColorPalette.white
},
'Modal': {},
'LargeVideo': {
background: 'rgb(42, 58, 75)'
},

View File

@@ -164,7 +164,7 @@ export function getConferenceName(stateful: Function | Object): string {
|| subject
|| callDisplayName
|| (callee && callee.name)
|| _.startCase(safeDecodeURIComponent(room));
|| safeStartCase(safeDecodeURIComponent(room));
}
/**
@@ -351,3 +351,19 @@ export function sendLocalParticipant(
conference.setDisplayName(name);
}
/**
* A safe implementation of lodash#startCase that doesn't deburr the string.
*
* NOTE: According to lodash roadmap, lodash v5 will have this function.
*
* Code based on https://github.com/lodash/lodash/blob/master/startCase.js.
*
* @param {string} s - The string to do start case on.
* @returns {string}
*/
function safeStartCase(s = '') {
return _.words(`${s}`.replace(/['\u2019]/g, '')).reduce(
(result, word, index) => result + (index ? ' ' : '') + _.upperFirst(word)
, '');
}

View File

@@ -1,3 +1,5 @@
import extraConfigWhitelist from './extraConfigWhitelist';
/**
* The config keys to whitelist, the keys that can be overridden.
* Currently we can only whitelist the first part of the properties, like
@@ -88,8 +90,10 @@ export default [
'disableLocalVideoFlip',
'disableNS',
'disableRemoteControl',
'disableRemoteMute',
'disableRtx',
'disableSuspendVideo',
'disableThirdPartyRequests',
'displayJids',
'e2eping',
'enableDisplayNameInStats',
@@ -125,6 +129,7 @@ export default [
'pcStatsInterval',
'preferH264',
'requireDisplayName',
'remoteVideoMenu',
'resolution',
'startAudioMuted',
'startAudioOnly',
@@ -142,4 +147,4 @@ export default [
'useStunTurn',
'webrtcIceTcpDisable',
'webrtcIceUdpDisable'
];
].concat(extraConfigWhitelist);

View File

@@ -0,0 +1,4 @@
/**
* Deploy-specific configuration whitelists
*/
export default [];

View File

@@ -43,7 +43,9 @@ const INITIAL_RN_STATE = {
p2p: {
disableH264: false,
preferH264: true
}
},
remoteVideoMenu: {}
};
ReducerRegistry.register('features/base/config', (state = _getInitialState(), action) => {

View File

@@ -216,6 +216,18 @@ export function setAudioInputDevice(deviceId) {
};
}
/**
* Updates the output device id.
*
* @param {string} deviceId - The id of the new output device.
* @returns {Function}
*/
export function setAudioOutputDevice(deviceId) {
return function(dispatch) {
return setAudioOutputDeviceId(deviceId, dispatch);
};
}
/**
* Signals to update the currently used video input device.
*

View File

@@ -174,6 +174,60 @@ export function formatDeviceLabel(label: string) {
return formattedLabel;
}
/**
* Returns a list of objects containing all the microphone device ids and labels.
*
* @param {Object} state - The state of the application.
* @returns {Object[]}
*/
export function getAudioInputDeviceData(state: Object) {
return state['features/base/devices'].availableDevices.audioInput.map(
({ deviceId, label }) => {
return {
deviceId,
label
};
});
}
/**
* Returns a list of objectes containing all the output device ids and labels.
*
* @param {Object} state - The state of the application.
* @returns {Object[]}
*/
export function getAudioOutputDeviceData(state: Object) {
return state['features/base/devices'].availableDevices.audioOutput.map(
({ deviceId, label }) => {
return {
deviceId,
label
};
});
}
/**
* Returns a list of all the camera device ids.
*
* @param {Object} state - The state of the application.
* @returns {string[]}
*/
export function getVideoDeviceIds(state: Object) {
return state['features/base/devices'].availableDevices.videoInput.map(({ deviceId }) => deviceId);
}
/**
* Returns true if there are devices of a specific type.
*
* @param {Object} state - The state of the application.
* @param {string} type - The type of device: VideoOutput | audioOutput | audioInput.
*
* @returns {boolean}
*/
export function hasAvailableDevices(state: Object, type: string) {
return state['features/base/devices'].availableDevices[type].length > 0;
}
/**
* Set device id of the audio output device which is currently in use.
* Empty string stands for default device.

View File

@@ -13,6 +13,12 @@ export const CALENDAR_ENABLED = 'calendar.enabled';
*/
export const CALL_INTEGRATION_ENABLED = 'call-integration.enabled';
/**
* Flag indicating if chat should be enabled.
* Default: enabled (true).
*/
export const CLOSE_CAPTIONS_ENABLED = 'close-captions.enabled';
/**
* Flag indicating if chat should be enabled.
* Default: enabled (true).

View File

@@ -49,6 +49,12 @@ const _LANGUAGES = {
main: require('../../../../lang/main-esUS')
},
// Estonian
'et': {
languages: require('../../../../lang/languages-et'),
main: require('../../../../lang/main-et')
},
// Finnish
'fi': {
languages: require('../../../../lang/languages-fi'),

View File

@@ -0,0 +1,3 @@
<svg width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.07001 0.248238C8.3471 -0.0596449 8.82132 -0.0846038 9.1292 0.192491C9.43709 0.469585 9.46205 0.943802 9.18495 1.25168L5.65622 5.19348C5.35829 5.52451 4.83922 5.52451 4.54128 5.19348L1.06752 1.25168C0.79043 0.943802 0.81539 0.469585 1.12327 0.192491C1.43115 -0.0846038 1.90537 -0.0596449 2.18247 0.248238L5.09875 3.57062L8.07001 0.248238Z" fill="#5E6D7A"/>
</svg>

After

Width:  |  Height:  |  Size: 509 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M8 14.6667C4.3181 14.6667 1.33333 11.682 1.33333 8.00007C1.33333 4.31817 4.3181 1.3334 8 1.3334C11.6819 1.3334 14.6667 4.31817 14.6667 8.00007C14.6667 11.682 11.6819 14.6667 8 14.6667ZM7.33333 4.66676C7.33333 4.29857 7.6318 4.00009 8 4.00009C8.36819 4.00009 8.66666 4.29857 8.66666 4.66676V8.00009C8.66666 8.36828 8.36819 8.66676 8 8.66676C7.6318 8.66676 7.33333 8.36828 7.33333 8.00009V4.66676ZM8 10.0001C7.63181 10.0001 7.33333 10.2985 7.33333 10.6667C7.33333 11.0349 7.63181 11.3334 8 11.3334C8.36818 11.3334 8.66666 11.0349 8.66666 10.6667C8.66666 10.2985 8.36818 10.0001 8 10.0001Z" />
</svg>

After

Width:  |  Height:  |  Size: 731 B

View File

@@ -0,0 +1,3 @@
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1.33331 8.00004C1.33331 11.6819 4.31808 14.6667 7.99998 14.6667C11.6819 14.6667 14.6666 11.6819 14.6666 8.00004C14.6666 4.31814 11.6819 1.33337 7.99998 1.33337C4.31808 1.33337 1.33331 4.31814 1.33331 8.00004ZM13.3333 8.00005C13.3333 10.9456 10.9455 13.3334 7.99998 13.3334C5.05446 13.3334 2.66665 10.9456 2.66665 8.00005C2.66665 5.05453 5.05446 2.66672 7.99998 2.66672C10.9455 2.66672 13.3333 5.05453 13.3333 8.00005ZM7.33331 4.66673C7.33331 4.29854 7.63179 4.00006 7.99998 4.00006C8.36817 4.00006 8.66665 4.29854 8.66665 4.66673V8.00006C8.66665 8.36825 8.36817 8.66673 7.99998 8.66673C7.63179 8.66673 7.33331 8.36825 7.33331 8.00006V4.66673ZM7.99998 10C7.63179 10 7.33331 10.2985 7.33331 10.6667C7.33331 11.0349 7.63179 11.3334 7.99998 11.3334C8.36817 11.3334 8.66665 11.0349 8.66665 10.6667C8.66665 10.2985 8.36817 10 7.99998 10Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 1001 B

View File

@@ -3,6 +3,7 @@
export { default as IconAdd } from './add.svg';
export { default as IconAddPeople } from './link.svg';
export { default as IconArrowBack } from './arrow_back.svg';
export { default as IconArrowDown } from './arrow_down.svg';
export { default as IconAudioOnly } from './visibility.svg';
export { default as IconAudioOnlyOff } from './visibility-off.svg';
export { default as IconAudioRoute } from './volume.svg';
@@ -27,6 +28,8 @@ export { default as IconDominantSpeaker } from './dominant-speaker.svg';
export { default as IconDownload } from './download.svg';
export { default as IconDragHandle } from './drag-handle.svg';
export { default as IconEventNote } from './event_note.svg';
export { default as IconExclamation } from './exclamation.svg';
export { default as IconExclamationSolid } from './exclamation-solid.svg';
export { default as IconExitFullScreen } from './exit-full-screen.svg';
export { default as IconFeedback } from './feedback.svg';
export { default as IconFullScreen } from './full-screen.svg';
@@ -41,8 +44,10 @@ export { default as IconMenuDown } from './menu-down.svg';
export { default as IconMenuThumb } from './thumb-menu.svg';
export { default as IconMenuUp } from './menu-up.svg';
export { default as IconMessage } from './message.svg';
export { default as IconMeter } from './meter.svg';
export { default as IconMicDisabled } from './mic-disabled.svg';
export { default as IconMicrophone } from './microphone.svg';
export { default as IconMicrophoneEmpty } from './microphone-empty.svg';
export { default as IconModerator } from './star.svg';
export { default as IconMuteEveryone } from './mute-everyone.svg';
export { default as IconMuteEveryoneElse } from './mute-everyone-else.svg';
@@ -64,6 +69,7 @@ export { default as IconSettings } from './settings.svg';
export { default as IconSignalLevel0 } from './signal_cellular_0.svg';
export { default as IconSignalLevel1 } from './signal_cellular_1.svg';
export { default as IconSignalLevel2 } from './signal_cellular_2.svg';
export { default as IconShare } from './share.svg';
export { default as IconShareDesktop } from './share-desktop.svg';
export { default as IconShareDoc } from './share-doc.svg';
export { default as IconShareVideo } from './shared-video.svg';
@@ -75,3 +81,4 @@ export { default as IconVideoQualityHD } from './HD.svg';
export { default as IconVideoQualityLD } from './LD.svg';
export { default as IconVideoQualitySD } from './SD.svg';
export { default as IconVolume } from './volume.svg';
export { default as IconVolumeEmpty } from './volume-empty.svg';

View File

@@ -0,0 +1,10 @@
<svg width="38" height="12" viewBox="0 0 38 12" fill="#5E6D7A" xmlns="http://www.w3.org/2000/svg">
<rect width="3" height="12" rx="1"/>
<rect x="5" width="3" height="12" rx="1" />
<rect x="10" width="3" height="12" rx="1" />
<rect x="15" width="3" height="12" rx="1" />
<rect x="20" width="3" height="12" rx="1" />
<rect x="25" width="3" height="12" rx="1" />
<rect x="30" width="3" height="12" rx="1" />
<rect x="35" width="3" height="12" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 457 B

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M16 6C16 3.79086 14.2091 2 12 2C9.79086 2 8 3.79086 8 6V12C8 13.8666 9.27853 15.4346 11.0076 15.8759C11.0026 15.9166 11 15.958 11 16V17.917C8.16229 17.441 6 14.973 6 12C6 11.4477 5.55228 11 5 11C4.44772 11 4 11.4477 4 12C4 16.0796 7.05369 19.446 11 19.9381V21C11 21.5523 11.4477 22 12 22C12.5523 22 13 21.5523 13 21V19.9381C16.9463 19.446 20 16.0796 20 12C20 11.4477 19.5523 11 19 11C18.4477 11 18 11.4477 18 12C18 14.973 15.8377 17.441 13 17.917V16C13 15.958 12.9974 15.9166 12.9924 15.8759C14.7215 15.4346 16 13.8666 16 12V6ZM12 4C10.8954 4 10 4.89543 10 6V12C10 13.1046 10.8954 14 12 14C13.1046 14 14 13.1046 14 12V6C14 4.89543 13.1046 4 12 4Z" fill="#A4B8D1"/>
</svg>

After

Width:  |  Height:  |  Size: 817 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" enable-background="new 0 0 50 50"><path d="M30.3 13.7L25 8.4l-5.3 5.3-1.4-1.4L25 5.6l6.7 6.7z"/><path d="M24 7h2v21h-2z"/><path d="M35 40H15c-1.7 0-3-1.3-3-3V19c0-1.7 1.3-3 3-3h7v2h-7c-.6 0-1 .4-1 1v18c0 .6.4 1 1 1h20c.6 0 1-.4 1-1V19c0-.6-.4-1-1-1h-7v-2h7c1.7 0 3 1.3 3 3v18c0 1.7-1.3 3-3 3z"/></svg>

After

Width:  |  Height:  |  Size: 361 B

View File

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M11.1799 3.68341L6 8H3C2.44772 8 2 8.44771 2 9V15C2 15.5523 2.44772 16 3 16H6L11.1799 20.3166C11.2698 20.3915 11.383 20.4325 11.5 20.4325C11.7761 20.4325 12 20.2086 12 19.9325V4.06752C12 3.95055 11.959 3.83728 11.8841 3.74743C11.7073 3.53529 11.392 3.50662 11.1799 3.68341ZM4 10H6.7241L10 7.27008V16.7299L6.7241 14H4V10ZM14 8C16.2091 8 18 9.79086 18 12C18 14.2091 16.2091 16 14 16V14C15.1046 14 16 13.1046 16 12C16 10.8954 15.1046 10 14 10V8ZM14 4C18.4183 4 22 7.58172 22 12C22 16.4183 18.4183 20 14 20V18C17.3137 18 20 15.3137 20 12C20 8.68629 17.3137 6 14 6V4Z" fill="#A4B8D1"/>
</svg>

After

Width:  |  Height:  |  Size: 733 B

View File

@@ -39,7 +39,7 @@ export function createLocalTrack(type: string, deviceId: string) {
export function isAnalyticsEnabled(stateful: Function | Object) {
const { disableThirdPartyRequests, analytics = {} } = toState(stateful)['features/base/config'];
return !disableThirdPartyRequests && !analytics.disabled;
return !(disableThirdPartyRequests || analytics.disabled);
}
/**

View File

@@ -0,0 +1,6 @@
// @flow
/**
* Action type to set the ID of the active modal (or undefined if needs to be hidden).
*/
export const SET_ACTIVE_MODAL_ID = 'SET_ACTIVE_MODAL_ID';

View File

@@ -0,0 +1,19 @@
// @flow
import { SET_ACTIVE_MODAL_ID } from './actionTypes';
/**
* Action to set the ID of the active modal (or undefined if needs to be hidden).
*
* @param {string} activeModalId - The new modal ID or undefined.
* @returns {{
* activeModalId: string,
* type: SET_ACTIVE_MODAL_ID
* }}
*/
export function setActiveModalId(activeModalId: ?string) {
return {
activeModalId,
type: SET_ACTIVE_MODAL_ID
};
}

View File

@@ -0,0 +1,151 @@
// @flow
import React, { PureComponent } from 'react';
import { SafeAreaView, View } from 'react-native';
import { ColorSchemeRegistry } from '../../color-scheme';
import { HeaderWithNavigation, SlidingView } from '../../react';
import { connect } from '../../redux';
import { StyleType } from '../../styles';
import { setActiveModalId } from '../actions';
import styles from './styles';
type Props = {
/**
* The color schemed style of the common header component.
*/
_headerStyles: StyleType,
/**
* True if the modal should be shown, false otherwise.
*/
_show: boolean,
/**
* The color schemed style of the modal.
*/
_styles: StyleType,
/**
* The children component(s) of the Modal, to be rendered.
*/
children: React$Node,
/**
* The Redux Dispatch function.
*/
dispatch: Function,
/**
* The i18n label key of the header title.
*/
headerLabelKey: string,
/**
* The ID of the modal that is being rendered. This is used to show/hide the modal.
*/
modalId: string,
/**
* Callback to be invoked when the modal closes.
*/
onClose?: Function,
/**
* The position from where the modal should be opened. This is derived from the
* props of the {@code SlidingView} with the same name.
*/
position?: string
};
/**
* Implements a custom Jitsi Modal that doesn't use the built in native
* Modal component of React Native.
*/
class JitsiModal extends PureComponent<Props> {
static defaultProps = {
position: 'bottom'
};
/**
* Instantiates a new component.
*
* @inheritdoc
*/
constructor(props: Props) {
super(props);
this._onRequestClose = this._onRequestClose.bind(this);
}
/**
* Implements {@code PureComponent#render}.
*
* @inheritdoc
*/
render() {
const { _headerStyles, _show, _styles, children, headerLabelKey, position } = this.props;
return (
<SlidingView
onHide = { this._onRequestClose }
position = { position }
show = { _show }>
<View
style = { [
_headerStyles.page,
_styles.page
] }>
<HeaderWithNavigation
headerLabelKey = { headerLabelKey }
onPressBack = { this._onRequestClose } />
<SafeAreaView style = { styles.safeArea }>
{ children }
</SafeAreaView>
</View>
</SlidingView>
);
}
_onRequestClose: () => boolean;
/**
* Callback to be invoked when the SlidingView requests closing.
*
* @returns {boolean}
*/
_onRequestClose() {
const { _show, dispatch, onClose } = this.props;
if (_show) {
if (typeof onClose === 'function') {
onClose();
}
dispatch(setActiveModalId());
return true;
}
return false;
}
}
/**
* Maps part of the Redix state to the props of this component.
*
* @param {Object} state - The Redux state.
* @param {Props} ownProps - The own props of the component.
* @returns {Props}
*/
function _mapStateToProps(state, ownProps): $Shape<Props> {
return {
_headerStyles: ColorSchemeRegistry.get(state, 'Header'),
_show: state['features/base/modal'].activeModalId === ownProps.modalId,
_styles: ColorSchemeRegistry.get(state, 'Modal')
};
}
export default connect(_mapStateToProps)(JitsiModal);

View File

@@ -0,0 +1,3 @@
// @flow
export { default as JitsiModal } from './JitsiModal';

View File

@@ -0,0 +1,6 @@
// @flow
import { Component } from 'react';
export const JitsiModal = Component;

View File

@@ -0,0 +1,15 @@
// @flow
import { ColorSchemeRegistry, schemeColor } from '../../color-scheme';
export default {
safeArea: {
flex: 1
}
};
ColorSchemeRegistry.register('Modal', {
page: {
backgroundColor: schemeColor('background')
}
});

View File

@@ -0,0 +1,7 @@
// @flow
import './reducer';
export * from './actions';
export * from './actionTypes';
export * from './components';

View File

@@ -0,0 +1,17 @@
// @flow
import { ReducerRegistry } from '../redux';
import { SET_ACTIVE_MODAL_ID } from './actionTypes';
ReducerRegistry.register('features/base/modal', (state = {}, action) => {
switch (action.type) {
case SET_ACTIVE_MODAL_ID:
return {
...state,
activeModalId: action.activeModalId
};
}
return state;
});

View File

@@ -343,7 +343,9 @@ function _participantJoinedOrUpdated({ dispatch, getState }, next, action) {
// to the new avatar and emit out change events if necessary.
const result = next(action);
if (avatarURL || email || id || name) {
const { disableThirdPartyRequests } = getState()['features/base/config'];
if (!disableThirdPartyRequests && (avatarURL || email || id || name)) {
const participantId = !id && local ? getLocalParticipant(getState()).id : id;
const updatedParticipant = getParticipantById(getState(), participantId);

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