You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Joas Schilling b0e276640f
Merge pull request #2953 from nextcloud/enh/noid/vue-richtext
16 hours ago
.github Unify the stylelinting into 1 call 2 months ago
.tx Fix tx config 2 years ago
appinfo Merge pull request #2811 from nextcloud/update-screenshots 3 weeks ago
css Fix icon in dark mode 20 hours ago
docs Clarify circles support when adding participants 2 weeks ago
img Create AdvancedInput component 4 months ago
l10n [tx-robot] updated from transifex 23 hours ago
lib Use vue-richtext lib 1 day ago
sample-commands More verbose feedback on sample commands 10 months ago
src Merge pull request #2953 from nextcloud/enh/noid/vue-richtext 16 hours ago
templates Use CSS and JS from the server so the auth page is automatically fixed 1 month ago
tests Fix unit tests 1 week ago
.drone.yml Fix drone app:check-code test 4 weeks ago
.eslintignore Fix stylelint errors 2 months ago
.eslintrc.js Fix eslint configuration 4 months ago
.gitattributes All items in js/ are now compiled 4 months ago
.gitignore Fix warnings and errors with phpunit 8 2 months ago
.l10nignore Ignore all compiled JS from translations 4 months ago
.stylelintignore Fix stylelint errors 2 months ago
.stylelintrc Fix stylelint ::v-deep 2 months ago
CHANGELOG.md Update changelog for 8.0.4 1 week ago
COPYING add a proper readme file and a license file 3 years ago
Makefile Remove more files from the release package 2 months ago
README.md Update README.md 2 months ago
check-vuejs-builds.sh Remove vue/ because it's empty 4 months ago
mkdocs.yml Fix docs 2 months ago
package-lock.json Merge pull request #2953 from nextcloud/enh/noid/vue-richtext 16 hours ago
package.json Merge pull request #2953 from nextcloud/enh/noid/vue-richtext 16 hours ago
run-stylelint.sh Unify the stylelinting into 1 call 2 months ago
webpack.common.js Add dummy Talk sidebar to public share page 1 month ago
webpack.dev.js Create Message component 4 months ago
webpack.prod.js Create Message component 4 months ago

README.md

Nextcloud Talk

Video- & audio-conferencing app for Nextcloud

Why is this so awesome?

  • 💬 Chat integration! Nextcloud Talk comes with a simple text chat. Allowing you to share files from your Nextcloud and mentioning other participants.
  • 👥 Private, group, public and password protected calls! Just invite somebody, a whole group or send a public link to invite to a call.
  • 💻 Screen sharing! Share your screen with participants of your call. You just need to use Firefox version 52 (or newer), latest Edge or Chrome 49 (or newer) with this Chrome extension.
  • 🚀 Integration with other Nextcloud apps like Files, Contacts and Deck. More to come.
  • 🙈 We’re not reinventing the wheel! Based on the great simpleWebRTC library.

And in the works for the coming versions:

If you have suggestions or problems, please open an issue or contribute directly :)

Supported Browsers

Browser Compatible
Firefox ✔️ 52 or later
Chrome/Chromium ✔️ 49 or later
Edge ⚠️ latest versions
🎤 Speakers are not promoted
🏷 Name changes while a call is on-going are not reflected
Safari ⚠️ 12 or later
❌ No screensharing support
🖥 Viewing screens of others works

Installing for Production

Nextcloud Talk is really easy to install. You just need to enable the app from the Nextcloud App Store and everything will work out of the box.

There are some scenarios (users behind strict firewalls / symmetric NATs) where a TURN server is needed. That's a bit more tricky installation, but the guys from Nextcloud VM have developed a script which takes care of everything for you. You can find the script here. The script is tested on Ubuntu Server 18.04, but should work on 16.04 as well. Please keep in mind that it's developed for the VM specifically and any issues should be reported in that repo, not here.

Here's a short video on how it's done.

If you need to use Talk in a enterprise environment, including the ability to have calls with more than 5-6 users, you can contact our sales team for access to our high performance back-end. This is a set of components that replaces some of the PHP code with a more scalable and performant solution that decreases network traffic and allows dozens or hundreds of users in a call.

Development setup

  1. Simply clone this repository into the apps folder of your Nextcloud development instance.
  2. Run make dev-setup to install the dependencies;
  3. Run make build-js
  4. Then activate it through the apps management. :tada:
  5. To build the docs locally, install mkdocs locally: apt install mkdocs mkdocs-bootstrap

We are also available on our public Talk team conversation, if you want to join the discussion.

API documentation

The API documentation is available at https://nextcloud-talk.readthedocs.io/en/latest/

Milestones and Branches

Branches

In the Talk app we have one branch per Nextcloud server version. stable* branches of the app should always work with the same branch of the Nextcloud server. This is only off close to releases of the server, to allow easier finishing of features, so we don't have to backport them.

Milestones

  • 5.0.0 - Numeric milestones are settled and waiting for their release or some final polishing
  • 💙 Next Minor (15) - The next minor milestone is for issues/PR that go into the next Dot-Release for the given Nextcloud version (in the example 15 - e.g. 5.0.1)
  • 💚 Next Major - The next major milestone is for issues/PR that go into the next feature release for the new Major Nextcloud version (as there are Minors for 15, this would be 16)
  • 💛 Following Major - The following major milestone is for issues/PR that should be worked towards/on but didn't make it into the next major due to timing constraints
  • 💔 Backlog - The backlog milestone is assigned to all remaining issues

You can always pick a task of any of the milestones and we will help you to get it into the assigned milestone or also an earlier one if time permits. It's just a matter of having an overview and better visibility what we think should be worked on, but it's not exclusive.

Useful tricks for testing

  • Disable camera until reboot: sudo modprobe -r uvcvideo
  • Re-enable camera: sudo modprobe uvcvideo
  • Send fake-stream (audio and video) in firefox:
    1. Open about:config
    2. Search for fake
    3. Toggle media.navigator.streams.fake to true

Contribution Guidelines

For more information please see the guidelines for contributing to this repository.