Jitsi Github

Jitsi is an audio/video and chat communicator that supports protocols such as SIP, XMPP/Jabber, IRC and many other useful features. Audio java chat video irc sip xmpp 7 packages Java Apache-2.0 876 3,337 189 10 Updated May 3, 2021. GitHub Download Usage. Jitsi-meet is available as an AppImage which means 'one app = one file', which you can download and run on your Linux system while you don't need a package manager and nothing gets changed in your system.

Acronis true image iso usb. There is also an Ansible playbook that uses docker-compose: https://github.com/cfra/jitsi-playbook

Steps to get Jitsi up and running.

Install jitsi

(taken from https://jitsi.org/downloads/)

You can use our Ubuntu/Debian repository:

First install the Jitsi repository key onto your system:

Create a sources.list.d file with the repository:

Jitsi Github

Update your package list:

Install the full suite:

or only the packages you need like for example:

Firewall

Open incoming connections to the following ports:

  • 80 (HTTP)
  • 443 (HTTPS)
  • 4443/tcp
  • 10000:20000/udp
  • 5347/tcp from localhost to localhost

If you are using ufw, you can use an application profile. Create /etc/ufw/applications.d/jitsi with the following content:

Then run ufw allow Jitsi. This will open the ports mentioned above.

See also the section 'Network description' under https://github.com/jitsi/jitsi-meet/blob/master/doc/manual-install.md.

Github jitsi meet

SSL: certbot

Use certbot to obtain a LetsEncrypt certificate for your jitsi server. Follow the instructions here: https://certbot.eff.org

As an example, the steps needed for an Nginx running in Ubuntu 18.04 LTS (bionic) are listed here: https://certbot.eff.org/lets-encrypt/ubuntubionic-nginx

NOTE:If the certbot run fails with the following error, edit /etc/nginx/sites-enabled/<YOUR-DOMAIN-NAME>.conf and comment the line server_names_hash_bucket_size (should be right at the top):

Apart from that, you might need to add server_names_hash_bucket_size 128 to the http section of your /etc/nginx/nginx.conf. This whole issue is also disussed in https://github.com/certbot/certbot/issues/5199.

Jitsi

Other things you might want to configure

Audio and/or video muted by default

Per room

As Moderator:Go to Settings (hidden in the three dots at the bottom right), then under More you will see the options 'Everyone starts muted' and 'Everyone starts hidden'.

Jitsi Github Android

As a user, you can choose to enter a particular room with video and/or audio muted using config.startWithVideoMuted and/or config.startWithAudioMuted like so:

Server-wide

In /etc/jitsi/meet/<YOUR-DOMAIN-NAME>-config.js, there are a bunch of options. I haven't have not tried them yet, though:

Room passwords

Jitsi Github Login

haven't used these yet

Jitsi Github

Guests vs. non-guests

same here

config.js
varconfig={
hosts: {
domain: 'prosody',
muc: 'conference.prosody',// FIXME: use XEP-0030
focus: 'focus.prosody',
},
disableSimulcast: false,
resolution: 720,
externalConnectUrl: '//localhost/http-pre-bind',
// analyticsScriptUrl: 'https://meet.jit.si/libs/jitsi-analytics-web-client.min.js',
// analyticsScriptUrls: [
// 'https://meet.jit.si/libs/analytics-ga.js',
// 'https://meet.jit.si/libs/jitsi-analytics-web-client.min.js',
// ],
p2pStunServers: [
{urls: 'stun:stun.l.google.com:19302'},
{urls: 'stun:stun1.l.google.com:19302'},
{urls: 'stun:stun2.l.google.com:19302'}
],
enableP2P: true,// flag to control P2P connections
// New P2P options
p2p: {
enabled: true,
preferH264: true,
disableH264: true,
useStunTurn: true,// use XEP-0215 to fetch STUN and TURN server for the P2P connection
stunServers: [
{urls: 'stun:stun.l.google.com:19302'},
{urls: 'stun:stun1.l.google.com:19302'},
{urls: 'stun:stun2.l.google.com:19302'}
]
},
useStunTurn: false,// use XEP-0215 to fetch STUN and TURN server for the JVB connection
useIPv6: false,// ipv6 support. use at your own risk
useNicks: false,
bosh: '//localhost/http-bind',// FIXME: use xep-0156 for that
etherpad_base: 'https://meet.jit.si/etherpad/p/',
clientNode: 'http://jitsi.org/jitsimeet',// The name of client node advertised in XEP-0115 'c' stanza
//deprecated desktop sharing settings, included only because older version of jitsi-meet require them
desktopSharing: 'ext',// Desktop sharing method. Can be set to 'ext', 'webrtc' or false to disable.
chromeExtensionId: 'kglhbbefdnlheedjiejgomgmfplipfeb',// Id of desktop streamer Chrome extension
desktopSharingSources: ['screen','window'],
//new desktop sharing settings
desktopSharingChromeExtId: 'kglhbbefdnlheedjiejgomgmfplipfeb',// Id of desktop streamer Chrome extension
desktopSharingChromeDisabled: false,
desktopSharingChromeSources: ['screen','window','tab'],
desktopSharingChromeMinExtVersion: '0.2.6.2',// Required version of Chrome extension
desktopSharingFirefoxExtId: ',
desktopSharingFirefoxDisabled: false,
desktopSharingFirefoxMaxVersionExtRequired: '0',
desktopSharingFirefoxExtensionURL: ',
useRoomAsSharedDocumentName: false,
disableRtx: false,// Enables RTX everywhere
enableRtpStats: false,// Enables RTP stats processing
enableStatsID: true,
openSctp: true,// Toggle to enable/disable SCTP channels
channelLastN: -1,// The default value of the channel attribute last-n.
minHDHeight: 540,
startBitrate: '800',
disableAudioLevels: false,
useRtcpMux: true,
useBundle: true,
disableSuspendVideo: true,
enableLipSync: false,
stereo: false,
forceJVB121Ratio: -1,
enableTalkWhileMuted: true,
// callStatsCustomScriptUrl: 'https://api.callstats.io/static/callstats-ws.min.js',
// hiddenDomain: 'recorder.meet.jit.si',
// enableRecording: true,
// requireDisplayName: false,
// recordingType: 'jibri',
enableWelcomePage: true,
isBrand: false,
logStats: false,
// To enable sending statistics to callstats.io you should provide Applicaiton ID and Secret.
callStatsID: '347489791',//Application ID for callstats.io API
callStatsSecret: '169aw6v+hk9TbVuHN2SiDCgfkkU=',//Secret for callstats.io API
dialInNumbersUrl: 'https://jitsi-api.jitsi.net/phoneNumberList',
dialInConfCodeUrl: 'https://jitsi-api.jitsi.net/conferenceMapper',
dialOutCodesUrl: 'https://jitsi-api.jitsi.net/countrycodes',
dialOutAuthUrl: 'https://jitsi-api.jitsi.net/authorizephone',
peopleSearchUrl: 'https://jitsi-api.jitsi.net/directorySearch',
inviteServiceUrl: 'https://jitsi-api.jitsi.net/conferenceInvite',
peopleSearchQueryTypes: ['user','conferenceRooms'],
startAudioMuted: 9,
startVideoMuted: 9,
enableUserRolesBasedOnToken: false,
// atlassianAnalyticsEventUrl: 'https://analytics.atlassian.com/analytics/event',
// atlassianAnalyticsEvent: {
// product: 'lib-jitsi-meet',
// subproduct: 'hcv-meetjitsi',
// name: 'jitsi.page.load.failed',
// server: 'meet.jit.si'
// },
// deploymentInfo: {
// environment: 'hcv-meetjitsi',
// envType: 'prod',
// shard: 'hcv-meetjitsi-ap-se-1a-s4',
// region: 'ap-southeast-1',
// userRegion: 'ap-southeast-1',
// crossRegion: 'ap-southeast-1' 'ap-southeast-1' ? 0 : 1
// },
abTesting: {
}
};
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment