aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/kicking.h
blob: 714079cfee64f900ee6c5cb18f30360720e2e638 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/******************************************************************************
 * THIS FILE IS GENERATED - ANY EDITS WILL BE OVERWRITTEN
 */

#pragma once

#include "jobs/basejob.h"


namespace QMatrixClient
{
    // Operations

    /// Kick a user from the room.
    ///
    /// Kick a user from the room.
    /// 
    /// The caller must have the required power level in order to perform this operation.
    /// 
    /// Kicking a user adjusts the target member's membership state to be ``leave`` with an
    /// optional ``reason``. Like with other membership changes, a user can directly adjust
    /// the target member's state by making a request to ``/rooms/<room id>/state/m.room.member/<user id>``.
    class KickJob : public BaseJob
    {
        public:
            /*! Kick a user from the room.
             * \param roomId
             *   The room identifier (not alias) from which the user should be kicked.
             * \param userId
             *   The fully qualified user ID of the user being kicked.
             * \param reason
             *   The reason the user has been kicked. This will be supplied as the 
             *   ``reason`` on the target's updated `m.room.member`_ event.
             */
            explicit KickJob(const QString& roomId, const QString& userId, const QString& reason = {});
    };
} // namespace QMatrixClient