Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Room membership: inviteBy3PID #94

Open
chrisabruce opened this issue Apr 6, 2020 · 0 comments
Open

Room membership: inviteBy3PID #94

chrisabruce opened this issue Apr 6, 2020 · 0 comments
Labels
matrix-spec A required feature specification by Matrix.org

Comments

@chrisabruce
Copy link
Collaborator

Invite a user to participate in a particular room.

.. _invite-by-third-party-id-endpoint:

Note that there are two forms of this API, which are documented separately.
This version of the API does not require that the inviter know the Matrix
identifier of the invitee, and instead relies on third party identifiers.
The homeserver uses an identity server to perform the mapping from
third party identifier to a Matrix identifier. The other is documented in the

joining rooms section_.

This API invites a user to participate in a particular room.
They do not start participating in the room until they actually join the
room.

Only users currently in a particular room can invite other users to
join that room.

If the identity server did know the Matrix user identifier for the
third party identifier, the homeserver will append a m.room.member
event to the room.

If the identity server does not know a Matrix user identifier for the
passed third party identifier, the homeserver will issue an invitation
which can be accepted upon providing proof of ownership of the third
party identifier. This is achieved by the identity server generating a
token, which it gives to the inviting homeserver. The homeserver will
add an m.room.third_party_invite event into the graph for the room,
containing that token.

When the invitee binds the invited third party identifier to a Matrix
user ID, the identity server will give the user a list of pending
invitations, each containing:

  • The room ID to which they were invited

  • The token given to the homeserver

  • A signature of the token, signed with the identity server's private key

  • The matrix user ID who invited them to the room

If a token is requested from the identity server, the homeserver will
append a m.room.third_party_invite event to the room.

.. joining rooms section: invite-by-user-id-endpoint

@chrisabruce chrisabruce added the matrix-spec A required feature specification by Matrix.org label Apr 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
matrix-spec A required feature specification by Matrix.org
Projects
None yet
Development

No branches or pull requests

1 participant