Inhalt gelöscht Inhalt hinzugefügt
KKeine Bearbeitungszusammenfassung
 
(21 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1:
== Kurzbeschreibung ==
==Ziel==
Konkurrenzfähiger,Ein zuverlässigerföderierter, selbst betriebener, erweiterbarer Instant Messenger mit allen derzeitig üblichen Funktionen (Verschlüsselung, private und öffentliche Gruppen, Videotelefonie, Push-Nachrichten,...).
 
Außerdem: Multi-Client-Unterstützung mit freier Clientwahl (Apps für iOS/Android, Web, Linux/Windows/Mac, GUI/CLI)
==Verantwortlich==
* [[Benutzer:sqozz|sqozz]]
* [[Benutzer:Cfr34x|cfr34k]]
* [[Benutzer:Geierb|Geierb]]
 
Informationen für Anwender finden sich hier: https://xmpp.bytewerk.org/
== Benutzerzugänge ==
 
== Benutzerzugänge ==
Jedes Bingo-Mitglied hat automatisch einen Account.
=== bingo-Mitglieder ===
Jedes Bingobingo-Mitglied hat automatisch einen Account.
 
DieDer Benutzername ("JID") ist identisch zur Bingo-E-Mail-Adresse, das Passwort ist das Bingo-E-Mail-Passwort.
 
E-Mail-Aliase der Domains @bingo-ev.de und @bytewerk.org können ebenfalls als JIDs verwendet werden.
 
=== Nicht-bingo-Mitglieder ===
Informationen für Anwender finden sich hier: https://xmpp.bytewerk.org/
Bingo-Mitglieder können im [https://dss.bingo-ev.de DSS] Einladungslinks erstellen und z.B. an Freunde und Bekannte weitergeben. Die Zugänge sind haben die Domain @ext.bingo-ev.de, Benutzername ("JID") und Passwort können frei gewählt werden. Die Zugänge sind völlig unabhängig vom bingo-Mitglied, das eingeladen hat.
 
DateienNicht undbenutzte ChatverläufeZugänge werden nach einem Monat vom ServerJahr gelöscht.
 
== XMPP-Clients ==
Es kann jeder XMPP-Client verwendet werden. Empfehlenswerte Clients für Android, iOS, Linux, Windows und MacOS sind auf https://xmpp.bytewerk.org/ aufgeführt.
 
Zusätzlich gibt es auf https://xmpp.org/software/ eine filterbare Übersicht aller relevanten XMPP-Clients.
 
Auf xmpp.bytewerk.org ist ein Webclient verfügbar: [https://xmpp.bytewerk.org/conversejs-bingo#converse/room?jid=bingo-users@conference.bingo-ev.de https://xmpp.bytewerk.org/conversejs-bingo]
== Unterstützte Funktionen ==
* Gruppen (öffentlich/privat/mit Einladung, moderiert/unmoderiert)
* Audio- und Videotelefonie
* Sprach- und Videonachrichten
* Ende-zu-Ende-Verschlüsselung
* Dateiup- und Download (wird auch für Fotos, Sprach- und Videonachrichten verwendet) - Dateigröße pro Upload derzeit limitiert auf 100 MByte.
* Gleichzeitiges Verwenden mehrerer Clients
* Push
* IRC
* Invites (nur Domain ext.bingo-ev.de)
 
[https://compliance.conversations.im/live/bytewerkext.orgbingo-ev.de/ 100% Compliance] zu Conversations
 
Dateien und Chatverläufe werden nach einem Monat vom Server gelöscht.
 
== Chaträume ==
=== Grunsätzlich ===
Jeder kann nach Belieben Chaträume anlegen.
 
Zeile 27 ⟶ 49:
 
=== Badges ===
Badges für öffentliche Chaträume können über <nowiki>https://conferencexmpp.<DOMAIN>bytewerk.org/muc_badge/</nowiki><MUC-JID> abgerufen werden.
 
Beispiele:
* Das Badge für [xmpp:bytewerk@conference.bytewerk.org bytewerk@conference.bytewerk.org] kann über die URL https://conferencexmpp.bytewerk.org/muc_badge/bytewerk@conference.bytewerk.org abgerufen werden und sieht so aus: [[Datei:MUC badge bytewerkXMPP-Bytewerk-Badge.png|framelessrahmenlos|caption]]
* Das Badge für [xmpp:bingo-users@conference.bingo-ev.de bingo-users@conference.bingo-ev.de] kann über die URL https://conferencexmpp.bingo-evbytewerk.deorg/muc_badge/bingo-users@conference.bingo-ev.de abgerufen werden und sieht so aus: [[Datei:MUC badge bingoXMPP-usersBingo-Badge.png|framelessrahmenlos|caption]]
 
=== IRC-Chat ===
Zum Betreten voneines IRC-Chats einfach einemeinen Gruppenchat mit dem Muster '''#CHANNEL%SERVER@biboumiirc.xmpp.bytewerk.org''' anlegen/beitreten.
 
'''Beispiel:'''
 
Um den Channel '''#pypy''' auf '''irc.libera.chat''' zu besuchen, einen neuen Chat mit der Adresse '''#pypy%irc.libera.chat@biboumiirc.xmpp.bytewerk.org''' starten.
 
Im XMPP-Client werden dann automatisch sowohl der Channel undals auch der IRC-Server als Gesprächspartner hinzugefügt.
 
Im XMPP-Client werden dann automatisch der Channel und der IRC-Server als Gesprächspartner hinzugefügt.
Sollten die Nachrichten des IRC-Servers stören: Diesen einfach als Gesprächspartner blockieren.
 
== XMPP-ClientsHinweise ==
Die freie Clientwahl, die Möglichkeit, mit mehreren Clients gleichzeitig verbunden zu sein, und die föderierte Struktur mit Nutzern von verschiedenen Servern, ist für viele neue Nutzer zunächst ungewohnt:
Es kann jeder XMPP-Client verwendet werden. Empfehlenswerte Clients für Android, iOS, Linux, Windows und MacOS sind auf https://xmpp.bytewerk.org/ aufgeführt.
 
Die oben genannten Funktionen stehen nicht immer zur Verfügung, weil sich die bei der Kommunikation mit einem bestimmten Gesprächspartner zur Verfügung stehenden Funktionen ergeben sich aus der Schnittmenge des Funktionsumfangs der beteiligten XMPP-Server und der XMPP-Clients. ergeben Konkret:) Ist mein Gesprächspartner ein Shellskript, das mir eine Nachricht schickt wenn die Waschmaschine fertig ist, dann werde ich mit diesem kein Videotelefonat führen können.
=== Webclients ===
Auf xmpp.bytewerk.org ist Converse.js installiert:
* [https://xmpp.bytewerk.org/conversejs-bingo XMPP-Webclient für @bingo-ev.de-Nutzer]
* [https://xmpp.bytewerk.org/conversejs-bytewerk XMPP-Webclient für @bytewerk.org-Nutzer]
 
Wichtig beiBei der '''gleichzeitigen Verwendung von mehreren Clients''' gilt: Eine Nachricht gilt als zugestellt, wenn sie an EINEM Client des Empfängers angekommen ist. Das kann beiBei wackeliger Internetverbindung dazukann führenes so aussehen, dassals ob Nachrichten scheinbarverschluckt nichtworden zugestellt wurdenwären - sie landensind dannaber nur bei dem GerätClients gelandet, dassder gerade online ist. Zwar prüfen die meisten XMPP-Clients prüfen beim Wieder-Online-Gehen, ob in der Zwischenzeit Nachrichten eingetroffen sind. Es geht also nichts verloren, aberdie ebenNachricht nichtkommt nur allespäter.
Grundsätzlich kann sich jeder XMPP-Nutzer an jedem XMPP-Webclient anmelden. Je nach URL werden nur ein paar Voreinstellungen passend zur Domain gesetzt um die Benutzung von Converse.js zu erleichtern.
 
Bei Gruppenchats kann man sich in jeder Gruppe einen eigenen Nickname geben.
=== Sonstige ===
In '''Thunderbird''' ist ein sehr einfacher Client (nur Text) integriert ("Konten" -> "Chat-Konto" hinzufügen).
 
Threema, Whatsapp usw. machen es sich einfach: Die verbieten schlicht die parallele Nutzung sowie Fremd-Clients, oder lassen, wie Signal, nur einen einzigen zentralen Server zu.
Für '''Nextcloud''' gibt es mit der [https://apps.nextcloud.com/apps/ojsxc ojsxc-App] einen sehr gut ausgestatteten webbasierten Client.
 
== Fortschritt ==
== Unterstützte Funktionen ==
;2021-01: Neukonfiguration des bestehenden XMPP-Servers mit Korrektur der DNS-Einträge und Installation zusätzlicher benötigter Dienste
=== Übersicht ===
* Gruppen (öffentlich/privat/mit Einladung, moderiert/unmoderiert)
* Audio- und Videotelefonie
* Sprach- und Videonachrichten
* Ende-zu-Ende-Verschlüsselung
* Dateiup- und Download (wird auch für Fotos, Sprach- und Videonachrichten verwendet) - Dateigröße pro Upload derzeit limitiert auf 100 MByte.
* Gleichzeitiges Verwenden mehrerer Clients
* Push
* IRC
 
;2021-02: Implementierung abgeschlossen: Statt 52% jetzt 100% "XMPP Specifications compliance" beim [https://compliance.conversations.im/server/bytewerk.org/ Conversations.im-Compliance-Test], A-Scores beim IM Observatory [https://www.xmpp.net/result.php?domain=bytewerk.org&type=client Client-] und [https://www.xmpp.net/result.php?domain=bytewerk.org&type=server Server]-Test
[https://compliance.conversations.im/live/bytewerk.org/ 100% Compliance] zu Conversations
 
;2021-02: Bingo-Domäne mit IMAP-Authentifizierung hinzugefügt, Conversejs aktualisiert
Dateien und Chatverläufe werden nach einem Monat vom Server gelöscht.
 
;2021-08: Serverkonfiguration auf Ansible umgestellt, dabei kleine Fehler behoben, neue Funktionen hinzugefügt, Conversejs aktualisiert.
=== Die Kosten der Freiheit ===
Die oben genannten Funktionen stehen nicht immer zur Verfügung, weil sich die bei der Kommunikation mit einem bestimmten Gesprächspartner zur Verfügung stehenden Funktionen aus der Schnittmenge des Funktionsumfangs der beteiligten XMPP-Server und der XMPP-Clients ergeben :)
 
;2022-08: Push-Services für Monal IM aktiviert
Beispiel: Ist mein Gesprächspartner ein Shellskript, das mir eine Nachricht schickt wenn die Waschmaschine fertig ist, dann werde ich mit diesem kein Videotelefonat führen können, selbst wenn es mein XMPP-Client und der Server unterstützt.
 
;2022-09: IRC-Transport
Wichtig bei der '''gleichzeitigen Verwendung von mehreren Clients''': Eine Nachricht gilt als zugestellt, wenn sie an EINEM Client des Empfängers angekommen ist. Das kann bei wackeliger Internetverbindung dazu führen, dass Nachrichten scheinbar nicht zugestellt wurden - sie landen dann nur bei dem Gerät, dass gerade online ist. Zwar prüfen die meisten XMPP-Clients beim Wieder-Online-Gehen, ob in der Zwischenzeit Nachrichten eingetroffen sind, aber eben nicht alle.
Ebenso ist undefiniert, was passiert, wenn ein Videoanruf gestartet werden soll, der Gesprächspartner aber mit mehreren Clients online ist, von denen nicht alle Videotelefonie unterstützen.
Threema, Whatsapp usw. machen es sich einfach: Die verbieten schlicht die parallele Nutzung sowie Fremd-Clients.
 
2025-04: Umzug von Suse auf Debian, XMPP-Invites
== Fortschritt ==
 
;2021-01: Neukonfiguration des bestehenden XMPP-Servers mit Korrektur der DNS-Einträge und Installation zusätzlicher benötigter Dienste
2026-06: Pastebin, pubsub_serverinfo und Websockets aktiviert
;2021-02: Implementierung abgeschlossen: Statt 52% jetzt 100% "XMPP Specifications compliance" beim [https://compliance.conversations.im/server/bytewerk.org/ Conversations.im-Compliance-Test], A-Scores beim IM Observatory [https://www.xmpp.net/result.php?domain=bytewerk.org&type=client Client-] und [https://www.xmpp.net/result.php?domain=bytewerk.org&type=server Server]-Test
 
;2021-02: Bingo-Domäne mit IMAP-Authentifizierung hinzugefügt, Conversejs aktualisiert
==Verantwortlich==
;2021-08: Serverkonfiguration auf Ansible umgestellt, dabei kleine Fehler behoben, neue Funktionen hinzugefügt, Conversejs aktualisiert.
* [[Benutzer:sqozzCfr34x|sqozzcfr34k]]
;2022-08: Push-Services für Monal IM aktiviert
* [[Benutzer:Cfr34xGeierb|cfr34kGeierb]]
;2022-09: IRC-Transport
 
== Files ==
Das Ansible-Playbook samt Inventory befinden sich hier: https://git.bingo-ev.de/infrastructure/xmpp
[[Category:Projekt]]