Настольное приложение для Tech Fiddle Meet, построенное с электронными, модифицированными из приложения Jitsi Meet Electron.

comp-labs-meet://meeting (откроет meeting на настрое URL-адрес сервера Jitsi в приложении) или comp-labs-meet://meet.example.com/meeting (откроет meeting на сервере Jitsi Meet, работающем на meet.example.com ) Скачайте наш последний релиз, и вы отправляетесь на гонки!
| Окна | macOS | GNU/Linux (Appimage) | Gnu/linux (deb) | Snap Store |
|---|---|---|---|---|
| Скачать | Скачать | Скачать | Скачать |
Примечание: сборки GNU/Linux только 64-битные.
Content-Security-Policy "frame-ancestors [looks like any value is bad]";
X-Frame-Options "DENY";
Политика безопасности рабочего контента выглядит так:
Content-Security-Policy "img-src 'self' 'unsafe-inline' data:; script-src 'self' 'unsafe-inline' 'wasm-eval'; style-src 'self' 'unsafe-inline'; font-src 'self'; object-src 'none'; base-uri 'self'; form-action 'none';";
Если вы хотите взломать этот проект, вот как вы это делаете.
Установите Node.js 16 сначала (или если вы используете NVM, переключитесь на node.js 16, выполняя nvm use ).
npm install --global --production windows-build-toolsX11, PNG и Zlib Development Packages необходимы. Системы, похожие на Debian, могут быть установлены следующим образом:
sudo apt install libx11-dev zlib1g-dev libpng-dev libxtst-devУстановите все необходимые пакеты:
npm installnpm startИнструменты отладчика доступны при запуске в режиме DEV и могут быть активированы с помощью сочетания клавиш, как определено здесь https://github.com/sindresorhus/electron-debug#features.
Он также может отображаться автоматически из переменной среды SHOW_DEV_TOOLS , такой как:
SHOW_DEV_TOOLS=true npm start или из приложения-флаг командной строки командной строки --show-dev-tools .
npm run distjitsi-meet-electron-sdkJitsi-Meet-Electron-SDK-это вспомогательный пакет, который реализует множество функций, таких как пульт дистанционного управления и всегда окно. Если новые функции должны быть добавлены/протестированы, работа с локальной версией этих UTIL очень удобно, вот как это сделать.
По умолчанию @jitsi/electron-sdk построен из NPM. Путь зависимости по умолчанию в package.json - это:
"@jitsi/electron-sdk" : " ^3.0.0 "Чтобы работать с локальной копией, вы должны изменить путь на:
"@jitsi/electron-sdk" : " file:///Users/name/jitsi-meet-electron-sdk-copy " , Чтобы создать проект, вы должны заставить его принять источники, поскольку npm update не сделает этого.
npm install @jitsi/electron-sdk --forceПримечание. Также проверьте Jitsi-Meet-Electron-SDK Readme, чтобы увидеть, как настроить вашу среду.
git checkout -b release-1-2-3 , заменив 1-2-3 на нужную версию выпускаnpm version patch , заменив patch на minor или majorgit push -u origin release-1-2-3gh pr creategh release create v1.2.3 --draft --title 1.2.3 , заменив V1.2.3 и 1.2.3 на желаемую версию выпускаПредупреждение будет упомянуть, что приложение не подписывается на первую установку. Это ожидается.
На MacOS Catalina и выше версии предупреждение будет отображаться на первой установке. Приложение не открывается, если не нажимает «Открыть». Этот диалог отображается только один раз.
Если после его загрузки вы не можете выполнить файл напрямую, попробуйте запустить chmod u+x ./comp-labs-meet-x86_64.AppImage
В Ubuntu 22.04 Appimage не удастся с ошибкой предохранителя (поскольку Appimage использует Libfuse2, в то время как 22.04 уже поставляется с Libfuse3 по умолчанию):
dlopen(): error loading libfuse.so.2
Чтобы исправить это, установите Libfuse2 следующим образом:
sudo apt install libfuse2
В Wayland экспериментальная поддержка Wayland может быть включена с помощью коммутатора командной строки --ozone-platform-hint установленной на auto :
./jitsi-meet-x86_64.AppImage --ozone-platform-hint=auto
Обратите внимание, что обмен экранами в настоящее время не поддерживается в Wayland, например. Подсказка разрешений может бесконечно зацикливаться.
Если вы испытаете пустую страницу после обновлений Jitsi Server, попробуйте удалить локальные файлы кэша:
rm -rf ~/.config/Jitsi Meet/
Примечание для старых распределений GNU/Linux
Вы можете получить следующую ошибку:
FATAL:nss_util.cc(632)] NSS_VersionCheck("3.26") failed. NSS >= 3.26 is required.
Please upgrade to the latest NSS, and if you still get this error, contact your
distribution maintainer.
Если вы это сделаете, установите NSS (пример для Debian / Ubuntu):
sudo apt-get install libnss3Файлы JSON предназначены для всех строк внутри приложения и могут быть переведены здесь.
Новые переводы требуют добавления строки в index.js и нового файла перевода в Directory /app/i18n/lang/translation.json lang/translation.json. language.json будет заменен на ISO 639-1 standard language codes . Пример:
/app/i18n/index.js
import i18n from 'i18next' ;
import { initReactI18next } from 'react-i18next' ;
import moment from 'moment' ;
const languages = {
en : { translation : require ( './lang/language.json' ) }
// Example for German (Standard)
// de: { translation: require('./lang/de.json') }
} ;
const detectedLocale = navigator . language ;
i18n
. use ( initReactI18next )
. init ( {
resources : languages ,
lng : detectedLocale ,
fallbackLng : 'en' ,
interpolation : {
escapeValue : false
}
} ) ;
moment . locale ( detectedLocale ) ;
export default i18n ; /app/i18n/lang/language.json
Примечание: это не обновленный перевод для технической скрипкой. Поскольку мы изменили исходный код, но мы не изменяли файлы перевода JSON, поэтому не открывайте проблему с неправильным переводом. Это будет исправлено в будущем. Спасибо за сотрудничество.
{
"enterConferenceNameOrUrl" : " Bitte einen Konferenznamen oder eine Jitsi-Adresse eingeben " ,
"go" : " LOS " ,
"help" : " Hilfe " ,
"termsLink" : " Nutzungsbedingungen " ,
"privacyLink" : " Datenschutzbedingungen " ,
"recentListLabel" : " oder einen zuletzt genutzen Konferenzraum betreten " ,
"sendFeedbackLink" : " Eine Rückmeldung senden " ,
"aboutLink" : " F&A " ,
"sourceLink" : " Quelltext " ,
"versionLabel" : " Version: {{version}} " ,
"onboarding" : {
"startTour" : " Tour starten " ,
"skip" : " Überspringen " ,
"welcome" : " Willkommen in {{appName}} " ,
"letUsShowYouAround" : " Wir zeigen wie alles funktioniert! " ,
"next" : " Weiter " ,
"conferenceUrl" : " Bitte den Namen (oder die vollständige Adresse) des Raumes eingeben, dem beigetreten werden soll. Es kann ein Name ausgedacht werden, diesen bitte anderen mitteilen, damit sie denselben Namen eingeben. " ,
"settingsDrawerButton" : " Hier klicken, um zu den Einstellungen zu gelangen. " ,
"nameSetting" : " Das ist der Anzeigename, andere werden Sie unter diesem Namen sehen. " ,
"emailSetting" : " Die hier eingegebene E-Mail ist Teil des Benutzerprofils. " ,
"startMutedToggles" : " Hier kann eingestellt werden, ob mit stummgeschaltetem Audio oder Video gestartet wird. Das wird auf alle Konferenzen angewendet. " ,
"serverSetting" : " Das ist der Server, auf dem die Konferenzen stattfinden werden. Es kann ein eigener verwendet werden, muss aber nicht! " ,
"serverTimeout" : " Zeitüberschreitung für den Beitritt zu einer Konferenz. Wenn nicht rechtzeitig beigetreten wurde, wird die Konferenz abgebrochen. " ,
"alwaysOnTop" : " Hier kann eingestellt werden, ob das Fenster »Immer im Vordergrund« aktiviert wird. Dieses wird angezeigt, wenn das Hauptfenster den Fokus verliert. Das wird bei allen Konferenzen angewendet. "
},
"settings" : {
"back" : " Zurück " ,
"name" : " Name " ,
"email" : " E-Mail " ,
"advancedSettings" : " Erweiterte Einstellungen " ,
"alwaysOnTopWindow" : " Immer im Vordergrund " ,
"startWithAudioMuted" : " Ohne Audio starten " ,
"startWithVideoMuted" : " Ohne Video starten " ,
"invalidServer" : " Falsche Server-Adresse " ,
"invalidServerTimeout" : " Ungültiger Wert für die Server-Wartezeit " ,
"serverUrl" : " Server-Adresse " ,
"serverTimeout" : " Server-Wartezeit (in Sekunden) " ,
"disableAGC" : " Automatische Mikrofonlautstärkeregelung deaktivieren "
}
}В этом репозитории вы можете открыть запрос на привлечение для обновления или добавления новых переводов. Ваша помощь будет высоко оценена.
Localizing desktop files on Linux требует добавления строки в package.json. Пожалуйста, найдите Comment[hu] в качестве примера, чтобы помочь добавить ваш перевод английского строкового Jitsi Meet Desktop App для вашего языка.
MIT Лицензия. Смотрите файл лицензии.
Jitsi создан крупным сообществом разработчиков, если вы хотите участвовать, присоединяйтесь к форуму сообщества.