Merge branch 'master' of git+ssh://github.com/matrix-org/matrix-doc

pull/977/head
Matthew Hodgson 9 years ago
commit f62fa6b980

@ -31,7 +31,7 @@ FAQ Content
* TOC
{:toc}
{:toc .toc}
### General
@ -350,8 +350,6 @@ bodies. We have been focused on writing code and getting it out, and the standa
Once the standard has matured sufficiently it may well be appropriate to work with an official
standard body to maintain it going forwards.
|
### Quick Start
##### How do I get an account and get started?
@ -424,59 +422,86 @@ use the [mailing list](/mailman/listinfo/matrix-users) for now.
##### How mature is this?
We started working on Matrix in July 2014, and have opened it to the
public in September 2014. It's early days, and under no circumstances
should you use Matrix or Synapse for anything other than experimentation
and learning at this point.  Obviously the spec and apps are maturing
rapidly, but as of the time of writing APIs are not frozen and the apps
are very much a work in progress.
We started working on Matrix in July 2014, and opened it to the
public in September 2014. We got all the core features in place in December 2014
and entered beta, and since then have been iterating away on the beta refining the
architecture and APIs, fixing bugs and scalability, and adding new features, clients,
bridges etc.
|
As of October 2015 (synapse 0.10) it's good for serious experimentation and
non-production services and can absolutely be used in the real world. However, we're
still in beta and we'll want to freeze the spec and implement clustering and other
nice features before we really declare it ready for production.
### Standard
##### What is a home server?
**Users in Matrix use one or more clients to communicate. This could be a web client, a command line client, a mobile client - or multiple of these being used simultaneously by the same user. The clients are registered to a single homeserver, which stores the communication history and account information, and shares data with the wider Matrix ecosystem by synchronising communication history with other homeservers.**
*Sorry, the FAQ is still work in progress, the rest of it will up
soon!* *In the mean time, don't hesitate to get in touch on
[\#matrix:matrix.org](/alpha) or the [mailing
lists](/mailman/listinfo/matrix-users)!*
##### What is an identity server?
**Users in Matrix are identified via their matrix user ID (MXID). However, existing 3rd party ID namespaces can also be used in order to identify Matrix users. A Matrix "Identity" describes both the user ID and any other existing IDs from third party namespaces linked to their account.**
|
### Standard
**Matrix users can link third-party IDs (3PIDs) such as email addresses, social network accounts and phone numbers to their user ID. Linking 3PIDs creates a mapping from a 3PID to a user ID. This mapping can then be used by Matrix users in order to discover the MXIDs of their contacts.**
##### What is a home server?
|
##### What is an identity sever?
**In order to ensure that the mapping from 3PID to user ID is genuine, a globally federated cluster of trusted "Identity Servers" (IS) are used to verify the 3PID and persist and replicate the mappings.
Usage of an IS is not required in order for a client application to be part of the Matrix ecosystem. However, without one clients will not be able to look up user IDs using 3PIDs.**
##### Where do my conversations get stored?
**Each homeserver stores the communication history and account information for all of its clients, and shares data with the wider Matrix ecosystem by synchronising communication history with other homeservers and their clients. Clients typically communicate with each other by emitting events in the context of a virtual room. Room data is replicated across all of the homeservers *whose users are participating in a given room*.**
##### What is a 3PID?
**Third-party IDs (3PIDs) are IDs from other systems or contexts, such as email addresses, social network accounts and phone numbers.**
##### How do you do VoIP calls on Matrix?
**Voice (and video) over Matrix is built on the WebRTC 1.0 standard. Call events are sent to a room, like any other event. This means that clients must only send call events to rooms with exactly two participants as currently the WebRTC standard is based around two-party communication. Group calls are on the to-do list, though!**
##### Can I log into other homeservers with my username and password?
**Currently, no. We are looking at options for enabling multi-server access for users, and might add this feature at a later stage.**
##### Why Apache Licence?
**The Apache Licence is a permissive licence. We want the Matrix protocol itself to be free and open, but people are free to create both free and commercial apps and services that uses the protocol. In our opinion, any Matrix-service only enhances the Matrix ecosystem.**
##### Can I write a Matrix homeserver?
**Yes. Matrix is just a spec, so implementations of the spec are very welcome! It should be noted that at the moment, changes are still being made to the spec, so if you want to write a Matrix homeserver, it is strongly recommended that you chat to the Matrix.org devs in [\#matrix:matrix.org](https://matrix.org/beta/#/room/%23matrix:matrix.org) first! You can also read about the [Federation API here]( https://github.com/matrix-org/matrix-doc/blob/master/specification/30_server_server_api.rst).**
##### How secure is this?
**Server-server traffic is mandatorily TLS from the outset. Server-client traffic mandates transport layer encryption other than for tinkering. Clients that support PKI publish their public keys, and may encrypt
and sign their messages for E2E security. "Well behaved" clients should participate in key escrow servers to allow private key submission for law enforcement. End-to-end encryption for group chat is supported through a per-room encryption key which is shared 1:1 between participating members.**
##### Why aren't you using an ORM layer like SqlAlchemy?  
|
### APIs
##### How do I join the global Matrix federation?
**You can download and run one of the available Matrix servers - please see [this guide](http://matrix.org/docs/guides/getting_involved.html#run) for details!**
##### What ports do I have to open up to join the global Matrix federation?
|
**That is up to you! Look at ["Setting up Federation"](https://github.com/matrix-org/synapse#setting-up-federation) in the Synapse readme file for details.**
### Reference Implementations
##### What is Matrix built on - and why?
##### How do I run my own home server?
##### How do I run my own homeserver?
**Follow the instructions for the homeserver you want to run. If you want to run Synapse, the homeserver created by Matrix.org, follow [these instructions](https://github.com/matrix-org/synapse#synapse-installation).**
##### Can I run my own identity server?
@ -493,18 +518,32 @@ addresses) to matrix IDs to aid user discovery**.
##### What is Synapse?
**Synapse is a reference "homeserver" implementation of Matrix from the core development team at matrix.org, written in Python/Twisted for clarity and simplicity. It is intended to showcase the concept of Matrix and let folks see the spec in the context of a codebase and let you run your own homeserver and generally help bootstrap the ecosystem.**
##### Why is Synapse in Python/Twisted?
##### What are Synapse's platform requirements?
##### What are the Synapse webclient's requirements?
##### Where is the mobile app?
**The mobile apps can be downloaded from the [Google Play store](https://play.google.com/store/apps/details?id=org.matrix.androidsdk.alpha)
and [Apple store](https://itunes.apple.com/gb/app/matrix-console/id970074271).**
|
**For the Android app, you can also install the latest development version
built by [Jenkins](http://www.matrix.org/jenkins/job/AndroidConsoleDevelop/lastBuild/artifact/console/build/outputs/apk/console-alpha-debug.apk).**
##### What decides the room member order on the webclient?
**The members are ordered by their *last active time*.**
|
Any other question? Please contact us on
[\#matrix:matrix.org](/alpha) or the [mailing
Any other questions? Please contact us in
[\#matrix:matrix.org](https://matrix.org/beta/#/room/%23matrix:matrix.org) or the [mailing
lists](/mailman/listinfo/matrix-users)!

Loading…
Cancel
Save