-
Nicolas Werner authored
Clang Format SPAAAAACES
Nicolas Werner authoredClang Format SPAAAAACES
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
location.hpp 1.04 KiB
#pragma once
/// @file
/// @brief Real-world locations to send in a room.
#include <string>
#if __has_include(<nlohmann/json_fwd.hpp>)
#include <nlohmann/json_fwd.hpp>
#else
#include <nlohmann/json.hpp>
#endif
#include "mtx/common.hpp"
#include "mtx/events/common.hpp"
namespace mtx {
namespace events {
namespace msg {
//! Content of `m.room.message` with msgtype `m.image`.
struct Location
{
//! Required. A description of the location e.g. 'Big Ben, London, UK', or some kind of
//! content description for accessibility e.g. 'location attachment'.
std::string body;
// Must be 'm.location'.
std::string msgtype;
//! Required. A geo URI representing this location.
std::string geo_uri;
//! A thumbnail for this location.
mtx::common::LocationInfo info;
//! Relates to for rich replies
mtx::common::Relations relations;
};
void
from_json(const nlohmann::json &obj, Location &content);
void
to_json(nlohmann::json &obj, const Location &content);
} // namespace msg
} // namespace events
} // namespace mtx