====== Chat & collaboration ====== In order to facilitate secure real-time communication within Bastion and with the outside world, we provide a [[https://matrix.org/|Matrix]] chat infrastructure. The service can be used from modern web browsers (up-to-date versions of Firefox, Safari or Chrome based browsers), mobile apps (Android, iOS) and standalone desktop applications (macOS, Linux, Windows). ===== Matrix (protocol/network) ===== Matrix is an open source project that publishes the [[https://matrix.org/docs/spec|Matrix open standard]] for secure, decentralized, real-time communication. Our Matrix [[https://github.com/matrix-org/synapse|homeserver]] for the domain ''%%bastion.li%%'' hosts your Matrix ID (''%%@id:bastion.li%%'') similar to an email address, your account settings and secure [[./element/e2ee/|end-to-end encryption]] key backups, stores a copy of your rooms history and connects you to the whole Matrix network including any other [[https://matrix.org/bridges/|bridged networks]] like IRC, Slack, Discord, Telegram and many more. {{ :bastion-ems-networks.png?450x312 |}} To access our homeserver you need [[https://matrix.org/clients/|a Matrix client]], similar as with email where you need a mail client like Thunderbird or Outlook. Our recommendation is to use [[https://element.io|Element]], which is a glossy and feature-rich javascript app running entirely in your browser. Examples for more clients (beta) include [[https://fluffychat.im/|fluffychat]] (maths support), [[https://matrix.org/docs/projects/client/weechat-matrix|weechat-matrix]], [[https://matrix.org/docs/projects/client/gomuks|gomuks]], [[https://matrix.org/docs/projects/client/quaternion|Quaternion]], [[https://matrix.org/docs/projects/client/nheko-reborn|Nheko]] or [[https://matrix.org/docs/projects/client/fractal|Fractal]]. Talk directly to the HTTP+JSON [[https://matrix.org/docs/api/client-server|Client Server API]] or use your preferred [[https://matrix.org/sdks/|SDK]]. ===== Element (client) ===== Connect to our Matrix server using Element Web: * Point your browser to [[https://contact.bastion.li/|contact.bastion.li]] * Log in using your Matrix ID: ''%%@username:bastion.li%%'' * Where ''%%username%%'' is your username once chosen during registration * Use your password set during registration See also [[./element/connect/|Connect with Element (Web, Desktop, App)]]. ===== Public rooms ===== After the first login you will be auto-joined to these rooms: * [[https://m.ethz.ch/#/#lobby:phys.ethz.ch|#lobby:phys.ethz.ch]] - discover others that are using Matrix * [[https://m.ethz.ch/#/#isg-news:phys.ethz.ch|#isg-news:phys.ethz.ch]] - announcements and news * [[https://m.ethz.ch/#/#isg-status:phys.ethz.ch|#isg-status:phys.ethz.ch]] - current IT system status (problems) These rooms provide an excellent way for us to connect with you and inform instantly. The News room contains an [[https://m.ethz.ch/#/@rss:mbot.ethz.ch|RSS bot]] that sends all announcements from our [[https://isg.phys.ethz.ch/|blog]], and provides an alternative to our [[https://isg.phys.ethz.ch/subscribe/|newsletter]]. If you do not wish to participate in these rooms, opt-out at any time by leaving. **Please join** our other rooms: * [[https://m.ethz.ch/#/#matrix:phys.ethz.ch|#matrix:phys.ethz.ch]] - help & news for Matrix & Element * [[https://m.ethz.ch/#/#influxdb:phys.ethz.ch|#influxdb:phys.ethz.ch]] - help & news for InfluxDB & Grafana * [[https://m.ethz.ch/#/#web:phys.ethz.ch|#web:phys.ethz.ch]] - help & news for webhosting * [[https://m.ethz.ch/#/#helpdesk:phys.ethz.ch|#helpdesk:phys.ethz.ch]] - for all other IT requests & help Customise your [[./element/#notifications|notification]] levels across the app and per room. Reduce the notification level of chatty rooms like the Helpdesk to 'Mentions & Keywords'. Keep the default for the News and Status room, where only moderators are allowed to send messages. More public rooms can be found in our [[https://element.phys.ethz.ch/#/directory|public room directory]] via the 'Explore rooms' button next to the search field. ===== Documentation ===== The documentation for Matrix/Element is split into several pages. Please read on in the following order to get started: [[./element/connect/|Connect with Element (Web, Desktop, App)]] [[./element/android/|Connect with Element Android]] [[./matrix/|Matrix]] [[./element/|Element]] [[./element/faq/|Element FAQ]] (frequently asked questions) [[./element/e2ee/|Element end-to-end encryption]] [[./element/security/|Element security]] [[./element/addmembers/|Invite many users to join a room or group]] [[./element/spaces/|Use spaces]] (groups) [[./element/integrations/|Integrations]] (widgets, bridges, bots) [[./matrix/bots/|Matrix bots]] [[./matrix/bridges/|Matrix bridges]] [[./matrix/api/|Use the Matrix Client-Server API]] [[./matrix/moderation/|Moderate rooms]] [[./other/|Other chat & collaboration software]] ===== Please note ===== * **It is not a file server**! While you can upload and share files, please do so with reason. Use it to share a PDF or graph with your colleagues, but do not send research data - that's what our [[../storage/|group shares]] are for. * To chat with D-PHYS external people, you need to invite them using their Matrix ID (''%%@username:domain%%''). Except for Matrix users on the ETH homeserver (''%%staffchat.ethz.ch%%''), where you can use the search function as usual. ===== Features ===== Matrix offers an extremely wide range of features and connectivity. The following list is currently implemented on the D-PHYS server and is considered to be stable: * Basic chat functionality (instant messaging, push notifications) * Private and public rooms (explore in the [[https://element.phys.ethz.ch/#/directory|public room directory]]) * Media uploads (2 GiB initial quota per user, max. 100 MiB per upload) * Search the D-PHYS & ETH user directory (username, display name, email, phone number) * End-to-end encryption and cross-signing ([[./element/e2ee/|instructions]]) * Federation with "the internet" and other ETH homeservers * Integrations: widgets, bridges & bots ([[./element/integrations/|instructions]]) * Bots ([[./matrix/bots/#gitlab|gitlab integration]], [[./matrix/bots/#reminders|reminders]], RSS feeds and [[./matrix/bots/|more]]) * Slack compatible [[./matrix/bridges/#webhooks-slack-compatible|Webhooks]] * [[./matrix/bridges/#slack|Slack bridge]] or puppeting bridge * Migrate Slack workspace to Matrix ([[https://slack.com/intl/en-ch/help/articles/201658943-Export-your-workspace-data|export your workspace]] and [[../services/contact/|contact us]]) * Labs features enabled [[https://labs-element.phys.ethz.ch/|Element Web]] or [[https://labs-element.phys.ethz.ch/config.json|configure your Desktop App]] * Native maths support (labs feature) [[./element/connect/#maths-support|enabled in D-PHYS Element]] * Direct (1:1) voice/video calls * Group web-conferencing using [[./jitsi/|Jitsi]] (rooms with more than 2 members) * Screen sharing (e.g. for helpdesk) * [[./element/spaces/|Spaces]] (to form communities and teams or to organize rooms) ==== Other features are either not tested as much or known to be buggy ==== * Shared whiteboard [[./element/integrations/|integrations]] (widget) ==== ====