aboutsummaryrefslogtreecommitdiff
path: root/lib/csapi/kicking.h
blob: d75b8df3aa6f112c56183d7561ee48e459b1e004 (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