|
libkazv
|
Authenticates the user. More...
#include <login.hpp>


Classes | |
| class | JobResponse |
Public Member Functions | |
| LoginJob (std::string serverUrl, std::string type, std::optional< UserIdentifier > identifier=std::nullopt, std::optional< std::string > password=std::nullopt, std::optional< std::string > token=std::nullopt, std::optional< std::string > deviceId=std::nullopt, std::optional< std::string > initialDeviceDisplayName=std::nullopt, std::optional< bool > refreshToken=std::nullopt) | |
| Authenticates the user. More... | |
| LoginJob | withData (JsonWrap j) && |
| LoginJob | withData (JsonWrap j) const & |
Public Member Functions inherited from Kazv::BaseJob | |
| BaseJob (std::string serverUrl, std::string requestUrl, Method method, std::string jobId, std::string token={}, ReturnType returnType=ReturnType::Json, Body body=EmptyBody{}, Query query={}, Header header={}, std::optional< FileDesc > responseFile=std::nullopt) | |
| ~BaseJob () | |
| bool | shouldReturnJson () const |
| std::string | url () const |
| Body | requestBody () const |
| Header | requestHeader () const |
| ReturnType | returnType () const |
| Query | requestQuery () const |
| returns the non-encoded query as an array of pairs More... | |
| Method | requestMethod () const |
| Response | genResponse (Response r) const |
| BaseJob | withData (JsonWrap j) && |
| BaseJob | withData (JsonWrap j) const & |
| BaseJob | withQueue (std::string id, JobQueuePolicy policy=AlwaysContinue) && |
| BaseJob | withQueue (std::string id, JobQueuePolicy policy=AlwaysContinue) const & |
| json | dataJson (const std::string &key) const |
| std::string | dataStr (const std::string &key) const |
| std::string | jobId () const |
| std::optional< std::string > | queueId () const |
| JobQueuePolicy | queuePolicy () const |
| std::optional< FileDesc > | responseFile () const |
Static Public Member Functions | |
| static constexpr auto | needsAuth () |
| static BaseJob::Query | buildQuery () |
| static BaseJob::Body | buildBody (std::string type, std::optional< UserIdentifier > identifier, std::optional< std::string > password, std::optional< std::string > token, std::optional< std::string > deviceId, std::optional< std::string > initialDeviceDisplayName, std::optional< bool > refreshToken) |
Static Public Member Functions inherited from Kazv::BaseJob | |
| static bool | contentTypeMatches (immer::array< std::string > expected, std::string actual) |
Additional Inherited Members | |
Public Types inherited from Kazv::BaseJob | |
| enum | ReturnType { Json , File } |
| using | Method = std::variant< Get, Post, Put, Delete > |
| using | Body = ::Kazv::Body |
| using | BytesBody = ::Kazv::BytesBody |
| using | JsonBody = ::Kazv::JsonBody |
| using | EmptyBody = ::Kazv::EmptyBody |
| using | Header = ::Kazv::Header |
| using | Response = ::Kazv::Response |
Static Public Attributes inherited from Kazv::BaseJob | |
| static Get | GET {} |
| static Post | POST {} |
| static Put | PUT {} |
| static Delete | DELETE {} |
Protected Member Functions inherited from Kazv::BaseJob | |
| void | attachData (JsonWrap data) |
Authenticates the user.
Authenticates the user, and issues an access token they can use to authorize themself in subsequent requests.
If the client does not supply a device_id, the server must auto-generate one.
The returned access token must be associated with the device_id supplied by the client or generated by the server. The server may invalidate any access token previously associated with that device. See Relationship between access tokens and devices.
|
explicit |
Authenticates the user.
| type | The login type being used. |
| identifier | Authenticates the user, and issues an access token they can use to authorize themself in subsequent requests. |
If the client does not supply a device_id, the server must auto-generate one.
The returned access token must be associated with the device_id supplied by the client or generated by the server. The server may invalidate any access token previously associated with that device. See Relationship between access tokens and devices.
| password | Required when type is m.login.password. The user's password. |
| token | Required when type is m.login.token. Part of Token-based login. |
| deviceId | ID of the client device. If this does not correspond to a known client device, a new device will be created. The given device ID must not be the same as a cross-signing key ID. The server will auto-generate a device_id if this is not specified. |
| initialDeviceDisplayName | A display name to assign to the newly-created device. Ignored if device_id corresponds to a known device. |
| refreshToken | If true, the client supports refresh tokens. |
|
static |
|
static |
|
inlinestaticconstexpr |