暂无描述

JC Brand c1efb0d2b4 Add an external API for sending presences 5 年之前
.github c9830c91b2 Fix funding links 6 年之前
converse-logs d7a113e081 Fix transcripts code. 7 年之前
demo cd60614f88 Release 6.0.0 5 年之前
docs 2696c26ffb Add new config setting `allow_adhoc_commands` 5 年之前
images 2d57f6c889 Make sure `webfonts` dir is copied over 5 年之前
locale fef5292a12 Replace JID with 'XMPP Address' 5 年之前
logo be073e5c21 Remove old sponsors 5 年之前
mockup a116a1ec8f Fix various website CSS issues. Re-add images 6 年之前
sass 6426f9cf12 Don't hide info messages in the concord theme 5 年之前
sounds 1d2b4c4523 Add sound file credits 11 年之前
spec c1efb0d2b4 Add an external API for sending presences 5 年之前
src c1efb0d2b4 Add an external API for sending presences 5 年之前
tests df9612f937 Add support for XEP-0317 MUC Hats 5 年之前
.eslintrc.json 2ac33c77b3 Fix linting errors 5 年之前
.gitignore 3954e7c6fa Remove need for stamp-npm file 5 年之前
.nvmrc a8104d7498 Add Skeletor as dependency 5 年之前
.prettierrc 01fce55733 Add prettierx and tentatively use it for some formatting 6 年之前
.travis.yml 727ddc29bf Fix travis 5 年之前
CHANGES.md 2696c26ffb Add new config setting `allow_adhoc_commands` 5 年之前
COPYRIGHT cd60614f88 Release 6.0.0 5 年之前
LICENSE 9008a1d4d4 Move license to repo root 8 年之前
Makefile 5e91adbf4e Update various 3rd party dependencies 5 年之前
README.md a9e6d1131a Fix links (#1966) 5 年之前
RELEASE.md e866248227 Don't include vim temp-files in release tarball 5 年之前
buildout.cfg 1194467f82 Bump docutils to 0.15.2 6 年之前
composer.json b7ae9f212c Replace http: with https: in conversejs.org links 6 年之前
dev.html 1c2c03dc8b CSS fix 5 年之前
fullscreen.html 17e9f5607d Set meta and noscript tags 5 年之前
index.html 3630055baa Indentation 5 年之前
jshintrc f353fe8611 Bugfix for headline messages. 9 年之前
jslicenses.html cd60614f88 Release 6.0.0 5 年之前
lerna.json 18024b8bd2 Store lerna packages in the `src` directory 6 年之前
manifest.json e691d858e3 Add version number and sized images to manifest.json 5 年之前
mobile.html cd60614f88 Release 6.0.0 5 年之前
package-lock.json 2696c26ffb Add new config setting `allow_adhoc_commands` 5 年之前
package.json 622abbe128 Downgrade style-loader 5 年之前
postcss.config.js 9ae71104c2 webpack: split css out into separate file 6 年之前
redirect.html 48adc04740 Fix path to converse.css and add some mockup fixes 6 年之前
requirements.txt fa2d6cca10 Update developer documentation and buildout dependencies 6 年之前
webpack.common.js 9c509eae4b Update to latest sass-loader 5 年之前
webpack.dev.js 9c509eae4b Update to latest sass-loader 5 年之前
webpack.headless.js 916e300a79 Updates #1313 and #1793: Send button improvements 5 年之前
webpack.html 78b60a3bd9 Fixes #515 Add support for XEP-0050 Ad-Hoc commands 5 年之前
webpack.nodeps.js df304a908f Manually merge translations from weblate 5 年之前
webpack.prod.js 9c509eae4b Update to latest sass-loader 5 年之前
webpack.serve.js e6e23a1a82 Add initial support for custom emojis 5 年之前

README.md

Converse

XMPP Chat Travis Bountysource bounties Translation status

Converse is a web based XMPP/Jabber chat client.

You can either use it as a webchat app, or you can integrate it into your own website.

It's 100% client-side JavaScript, HTML and CSS and the only backend required is a modern XMPP server.

Please support this project via Patreon or Liberapay

Demo

Converse is hosted and can be used at https://conversejs.org.

A demo showing anonymous login is available at https://conversejs.org/demo/anonymous.html and a demo which shows how you can embed a single chat room into a page is avialable at https://conversejs.org/demo/embedded.html.

Documentation

The developer/integrator documentation can be found at https://conversejs.org/docs/html.

You'll probably want to begin with the quickstart guide, which shows you how to use the CDN (content delivery network) to quickly get a demo up and running.

Converse modes

Overlay

In overlay mode, Converse appears overlayed chats on top of the website.

Screenshot of Converse in overlay mode

Fullpage

In fullpage mode, Converse behaves like a single-page app that covers the whole browser viewport.

Screenshot of Converse in fullpage mode

Embedded

In embedded mode, Converse can be embedded into an element in the DOM.

Screenshot of Converse in embedded mode

Features

  • Available as overlayed chat boxes or as a fullscreen application. See inverse.chat for the fullscreen version.
  • Custom status messages
  • Desktop notifications
  • A plugin architecture based on pluggable.js
  • Multi-user chat rooms XEP 45
  • Chatroom bookmarks XEP 48
  • Direct invitations to chat rooms XEP 249
  • vCard support XEP 54
  • Service discovery XEP 30
  • In-band registration XEP 77
  • Roster item exchange XEP 144
  • Chat statuses (online, busy, away, offline)
  • Typing and state notifications XEP 85
  • File sharing / HTTP File Upload XEP 363
  • Messages appear in all connnected chat clients / Message Carbons XEP 280
  • Third person "/me" messages XEP 245
  • XMPP Ping XEP 199
  • Server-side archiving of messages XEP 313
  • Hidden Messages (aka Spoilers) XEP 382
  • Client state indication XEP 352
  • Last Message Correction XEP 308
  • OMEMO encrypted messaging XEP 384
  • Anonymous logins, see the anonymous login demo
  • Message Retractions XEP-424
  • Message Moderation XEP-425
  • Translated into over 30 languages

Integration into other servers and frameworks

Tests

We use behavior-driven tests written with jasmine.js.

Open tests/index.html in your browser, and the tests will run automatically.

Licence

Converse.js is released under the Mozilla Public License (MPL).

Attribution

Emoji images are courtesy of Twemoji.

Support

Issues can be logged on the Github issue tracker.

Donations

A heartfelt thanks for everyone who has supported this project over the years. Many people have contributed testing, bugfixes, features and corrections.

We accept donations via Patreon and Liberapay.