libkazv
|
Create a new room with various configuration options. More...
#include <create_room.hpp>
Public Attributes | |
std::string | idServer |
The hostname+port of the identity server which should be used for third party identifier lookups. More... | |
std::string | idAccessToken |
An access token previously registered with the identity server. More... | |
std::string | medium |
The kind of address being passed in the address field, for example email . More... | |
std::string | address |
The invitee's third party identifier. More... | |
Create a new room with various configuration options.
The server MUST apply the normal state resolution rules when creating the new room, including checking power levels for each event. It MUST apply the events implied by the request in the following order:
m.room.create
event itself. Must be the first event in the room.m.room.member
event for the creator to join the room. This is needed so the remaining events can be sent.m.room.power_levels
event, giving the room creator (and not other members) permission to send state events. Overridden by the power_level_content_override
parameter.m.room.canonical_alias
event if room_alias_name
is given.preset
. Currently these are the m.room.join_rules
, m.room.history_visibility
, and m.room.guest_access
state events.initial_state
, in the order that they are listed.name
and topic
(m.room.name
and m.room.topic
state events).invite
and invite_3pid
(m.room.member
with membership: invite
and m.room.third_party_invite
).The available presets do the following with respect to room state:
Preset | join_rules | history_visibility | guest_access | Other |
---|---|---|---|---|
private_chat | invite | shared | can_join | |
trusted_private_chat | invite | shared | can_join | All invitees are given the same power level as the room creator. |
public_chat | public | shared | forbidden |
The server will create a m.room.create
event in the room with the requesting user as the creator, alongside other keys provided in the creation_content
.
std::string Kazv::Api::CreateRoomJob::Invite3pid::address |
The invitee's third party identifier.
std::string Kazv::Api::CreateRoomJob::Invite3pid::idAccessToken |
An access token previously registered with the identity server.
Servers can treat this as optional to distinguish between r0.5-compatible clients and this specification version.
std::string Kazv::Api::CreateRoomJob::Invite3pid::idServer |
The hostname+port of the identity server which should be used for third party identifier lookups.
std::string Kazv::Api::CreateRoomJob::Invite3pid::medium |
The kind of address being passed in the address field, for example email
.