Work on standard strings namespaces

This commit is contained in:
rexy712 2020-01-02 15:24:38 -08:00
parent 711a67d6aa
commit 232b669d44
5 changed files with 254 additions and 134 deletions

View File

@ -8,7 +8,11 @@ namespace matrix::json{
constexpr raii::static_string True(void){return "true"_ss;}
constexpr raii::static_string False(void){return "false"_ss;}
constexpr raii::static_string reason(void){return "reason"_ss;}
constexpr raii::static_string error(void){return "error"_ss;}
constexpr raii::static_string errcode(void){return "errcode"_ss;}
constexpr raii::static_string retry_after(void){return "retry_after_ms"_ss;}
namespace keys{
namespace message{
constexpr raii::static_string body(void){return "body"_ss;}
constexpr raii::static_string info(void){return "info"_ss;}
@ -32,24 +36,37 @@ namespace matrix::json{
namespace auth{
constexpr raii::static_string type(void){return "type"_ss;}
constexpr raii::static_string medium(void){return "medium"_ss;}
constexpr raii::static_string address(void){return "address"_ss;}
constexpr raii::static_string identifier(void){return "identifier"_ss;}
constexpr raii::static_string user(void){return "user"_ss;}
constexpr raii::static_string password(void){return "password"_ss;}
constexpr raii::static_string token(void){return "token"_ss;}
constexpr raii::static_string device_id(void){return "device_id"_ss;}
constexpr raii::static_string initial_device_display_name(void){return "initial_device_display_name"_ss;}
constexpr raii::static_string newpassword(void){return "new_password"_ss;}
constexpr raii::static_string auth(void){return "auth"_ss;}
constexpr raii::static_string userid(void){return "user_id"_ss;}
constexpr raii::static_string accesstoken(void){return "access_token"_ss;}
constexpr raii::static_string home_server(void){return "home_server"_ss;}
constexpr raii::static_string well_known(void){return "well_known"_ss;}
constexpr raii::static_string base_url(void){return "base_url"_ss;}
constexpr raii::static_string inhibit_login(void){return "inhibit_login"_ss;}
namespace authbody{
constexpr raii::static_string type(void){return auth::type();}
constexpr raii::static_string session(void){return "session"_ss;}
constexpr raii::static_string user(void){return "user"_ss;}
constexpr raii::static_string user(void){return auth::user();}
constexpr raii::static_string password(void){return auth::password();}
}
namespace identifierbody{
constexpr raii::static_string type(void){return auth::type();}
constexpr raii::static_string medium(void){return auth::medium();}
constexpr raii::static_string address(void){return auth::address();}
constexpr raii::static_string session(void){return auth::authbody::session();}
constexpr raii::static_string user(void){return auth::authbody::user();}
constexpr raii::static_string password(void){return auth::password();}
}
}
namespace rooms{
constexpr raii::static_string joined(void){return "joined"_ss;}
constexpr raii::static_string eventid(void){return "event_id"_ss;}
@ -70,8 +87,111 @@ namespace matrix::json{
}
namespace session{
constexpr raii::static_string session(void){return "session"_ss;}
constexpr raii::static_string userid(void){return "user_id"_ss;}
constexpr raii::static_string accesstoken(void){return "access_token"_ss;}
}
}
namespace stdstrings{
namespace error{
}
namespace events{
constexpr raii::static_string homeserver(void){return "m.homeserver"_ss;}
constexpr raii::static_string identity_server(void){return "m.identity_server"_ss;}
constexpr raii::static_string presence(void){return "m.presence"_ss;}
constexpr raii::static_string direct(void){return "m.direct"_ss;}
constexpr raii::static_string ignored_user_list(void){return "m.ignored_user_list"_ss;}
constexpr raii::static_string joined_member_count(void){return "m.joined_member_count"_ss;}
constexpr raii::static_string invited_member_count(void){return "m.invited_member_count"_ss;}
namespace key{
constexpr raii::static_string verification_request(void){return "m.key.verification.request"_ss;}
constexpr raii::static_string verification_start(void){return "m.key.verification.start"_ss;}
constexpr raii::static_string verification_cancel(void){return "m.key.verification.cancel"_ss;}
constexpr raii::static_string verification_accept(void){return "m.key.verification.accept"_ss;}
constexpr raii::static_string verification_key(void){return "m.key.verification.key"_ss;}
constexpr raii::static_string verification_mac(void){return "m.key.verification.mac"_ss;}
}
namespace login{
constexpr raii::static_string password(void){return "m.login.password"_ss;}
constexpr raii::static_string recaptcha(void){return "m.login.recaptcha"_ss;}
constexpr raii::static_string oauth2(void){return "m.login.oauth2"_ss;}
constexpr raii::static_string email(void){return "m.login.email.identity"_ss;}
constexpr raii::static_string msisdn(void){return "m.login.msisdn"_ss;}
constexpr raii::static_string token(void){return "m.login.token"_ss;}
constexpr raii::static_string dummy(void){return "m.login.dummy"_ss;}
}
namespace id{
constexpr raii::static_string user(void){return "m.id.user"_ss;}
constexpr raii::static_string thirdparty(void){return "m.id.thirdparty"_ss;}
constexpr raii::static_string phone(void){return "m.id.phone"_ss;}
}
namespace rule{
constexpr raii::static_string rules(void){return "m.push_rules"_ss;}
constexpr raii::static_string master(void){return ".m.rule.master"_ss;}
constexpr raii::static_string suppress_notices(void){return ".m.rule.suppress_notices"_ss;}
constexpr raii::static_string invite_for_me(void){return ".m.rule.invite_for_me"_ss;}
constexpr raii::static_string member_event(void){return ".m.rule.member_event"_ss;}
constexpr raii::static_string contains_displayname(void){return ".m.rule.contains_display_name"_ss;}
constexpr raii::static_string tombstone(void){return ".m.rule.tombstone"_ss;}
constexpr raii::static_string roomnotif(void){return ".m.rule.roomnotif"_ss;}
constexpr raii::static_string contains_username(void){return ".m.rule.contains_user_name"_ss;}
constexpr raii::static_string call(void){return ".m.rule.call"_ss;}
constexpr raii::static_string encrypted_one_to_one(void){return ".m.rule.encrypted_room_one_to_one"_ss;}
constexpr raii::static_string message(void){return ".m.rule.message"_ss;}
constexpr raii::static_string encrypted(void){return ".m.rule.encrypted"_ss;}
}
namespace e2e{
constexpr raii::static_string curve_aes_sha2(void){return "m.olm.v1.curve25519-aes-sha2"_ss;}
constexpr raii::static_string aes_sha2(void){return "m.megolm.v1.aes-sha2"_ss;}
constexpr raii::static_string encryption(void){return "m.room.encryption"_ss;}
constexpr raii::static_string key(void){return "m.room_key"_ss;}
constexpr raii::static_string key_request(void){return "m.room_key_request"_ss;}
constexpr raii::static_string forwarded_key(void){return "m.forwarded_room_key"_ss;}
constexpr raii::static_string dummy(void){return "m.dummy"_ss;}
}
namespace room{
constexpr raii::static_string aliases(void){return "m.room.aliases"_ss;}
constexpr raii::static_string canonical_alias(void){return "m.room.canonical_alias"_ss;}
constexpr raii::static_string create(void){return "m.room.create"_ss;}
constexpr raii::static_string join_rules(void){return "m.room.join_rules"_ss;}
constexpr raii::static_string member(void){return "m.room.member"_ss;}
constexpr raii::static_string power_levels(void){return "m.room.power_levels"_ss;}
constexpr raii::static_string redaction(void){return "m.room.redaction"_ss;}
constexpr raii::static_string heroes(void){return "m.heroes"_ss;}
constexpr raii::static_string room_message(void){return "m.room.message"_ss;}
constexpr raii::static_string sticker(void){return "m.sticker"_ss;}
[[deprecated]] constexpr raii::static_string message_feedback(void){return "m.room.message.feedback"_ss;}
constexpr raii::static_string name(void){return "m.room.name"_ss;}
constexpr raii::static_string topic(void){return "m.room.topic"_ss;}
constexpr raii::static_string avatar(void){return "m.room.avatar"_ss;}
constexpr raii::static_string pinned_events(void){return "m.room.pinned_events"_ss;}
constexpr raii::static_string typing(void){return "m.typing"_ss;}
constexpr raii::static_string receipt(void){return "m.receipt"_ss;}
constexpr raii::static_string fully_read(void){return "m.fully_read"_ss;}
constexpr raii::static_string history_visibility(void){return "m.room.history_visibility"_ss;}
constexpr raii::static_string third_party_invite(void){return "m.room.third_party_invite"_ss;}
constexpr raii::static_string guest_access(void){return "m.room.guest_access"_ss;}
constexpr raii::static_string tag(void){return "m.tag"_ss;}
constexpr raii::static_string server_acl(void){return "m.room.server_acl"_ss;}
}
namespace msgtype{
constexpr raii::static_string text(void){return "m.text"_ss;}
constexpr raii::static_string emote(void){return "m.emote"_ss;}
constexpr raii::static_string notice(void){return "m.notice"_ss;}
constexpr raii::static_string image(void){return "m.image"_ss;}
constexpr raii::static_string file(void){return "m.file"_ss;}
constexpr raii::static_string audio(void){return "m.audio"_ss;}
constexpr raii::static_string location(void){return "m.location"_ss;}
constexpr raii::static_string video(void){return "m.video"_ss;}
constexpr raii::static_string server_notice(void){return "m.server_notice"_ss;}
}
namespace call{
constexpr raii::static_string invite(void){return "m.call.invite"_ss;}
constexpr raii::static_string candidates(void){return "m.call.candidates"_ss;}
constexpr raii::static_string answer(void){return "m.call.answer"_ss;}
constexpr raii::static_string hangup(void){return "m.call.hangup"_ss;}
}
}
}
}

View File

@ -45,19 +45,19 @@ namespace matrix{
return netreturn<void>(raii::string(), raii::string(), http_status());
}
netreturn<raii::rjp_string> client::get_presence(const raii::string_base& userid){
return _get_and_find(m_urls->presence(m_ses->homeserver, m_ses->access_token, userid), json::client::presence());
return _get_and_find(m_urls->presence(m_ses->homeserver, m_ses->access_token, userid), json::keys::client::presence());
}
//networked getter
netreturn<raii::rjp_string> client::get_display_name(void)const{
return _get_and_find(m_urls->displayname(), json::client::displayname());
return _get_and_find(m_urls->displayname(), json::keys::client::displayname());
}
netreturn<raii::rjp_string> client::get_profile_picture(void)const{
return _get_and_find(m_urls->profile_picture(), json::client::avatarurl());
return _get_and_find(m_urls->profile_picture(), json::keys::client::avatarurl());
}
netreturn<raii::rjp_string> client::room_alias_to_id(const raii::string_base& alias)const{
auto tmp = m_curl.encode(alias, alias.length());
return _get_and_find(raii::string(m_urls->alias_lookup() + tmp), json::client::roomid());
return _get_and_find(raii::string(m_urls->alias_lookup() + tmp), json::keys::client::roomid());
}
netreturn<std::vector<raii::rjp_string>> client::list_rooms(void)const{
raii::string reply = _get_curl(m_urls->room_list());
@ -69,7 +69,7 @@ namespace matrix{
if(!root)
return retval;
RJP_search_res res = rjp_search_member(root.get(), json::client::joinedrooms(), 0);
RJP_search_res res = rjp_search_member(root.get(), json::keys::client::joinedrooms(), 0);
if(!res.value)
return retval;
@ -81,7 +81,7 @@ namespace matrix{
//room membership
netreturn<raii::rjp_string> client::create_room(const raii::string_base& name, const raii::string_base& alias)const{
return _post_and_find(json::_create_room(name, alias), m_urls->create_room(), raii::curl_llist(), json::client::roomid());
return _post_and_find(json::_create_room(name, alias), m_urls->create_room(), raii::curl_llist(), json::keys::client::roomid());
}
roomcxn client::spawn_room(const raii::string_base& roomid)const{
return roomcxn(m_ses, roomid);
@ -203,7 +203,7 @@ namespace matrix{
netreturn<uploaded_file> retval = _create_netreturn(root, http_status());
if(!root)
return retval;
RJP_search_res res = rjp_search_member(root.get(), json::client::contenturi(), 0);
RJP_search_res res = rjp_search_member(root.get(), json::keys::client::contenturi(), 0);
if(!res.value)
return retval;
retval.value().m_fileurl = res.value;

View File

@ -68,151 +68,151 @@ namespace matrix::json{
return raii::string(
object(
member(json::message::body(), quote(raii::json_escape(image.name()))),
member(json::message::info(), object(
member(json::message::infobody::height(), raii::itostr(image.height())),
member(json::message::infobody::mimetype(), quote(image.mimetype())),
member(json::message::infobody::size(), raii::itostr(image.size())),
member(json::message::infobody::thumbinfo(), object(
member(json::message::infobody::thumbnail::height(), raii::itostr(image.thumb_height())),
member(json::message::infobody::thumbnail::mimetype(), quote(image.thumb_mimetype())),
member(json::message::infobody::thumbnail::size(), raii::itostr(image.thumb_size())),
member(json::message::infobody::thumbnail::width(), raii::itostr(image.thumb_width()))
member(json::keys::message::body(), quote(raii::json_escape(image.name()))),
member(json::keys::message::info(), object(
member(json::keys::message::infobody::height(), raii::itostr(image.height())),
member(json::keys::message::infobody::mimetype(), quote(image.mimetype())),
member(json::keys::message::infobody::size(), raii::itostr(image.size())),
member(json::keys::message::infobody::thumbinfo(), object(
member(json::keys::message::infobody::thumbnail::height(), raii::itostr(image.thumb_height())),
member(json::keys::message::infobody::thumbnail::mimetype(), quote(image.thumb_mimetype())),
member(json::keys::message::infobody::thumbnail::size(), raii::itostr(image.thumb_size())),
member(json::keys::message::infobody::thumbnail::width(), raii::itostr(image.thumb_width()))
)),
member(json::message::infobody::thumburl(), quote(raii::json_escape(*thumburl))),
member(json::message::infobody::width(), raii::itostr(image.width()))
member(json::keys::message::infobody::thumburl(), quote(raii::json_escape(*thumburl))),
member(json::keys::message::infobody::width(), raii::itostr(image.width()))
)),
member(json::message::msgtype(), quote("m.image"_ss)),
member(json::message::url(), quote(raii::json_escape(url)))
member(json::keys::message::msgtype(), quote("m.image"_ss)),
member(json::keys::message::url(), quote(raii::json_escape(url)))
));
}
raii::string _video_body(const uploaded_video& video){
return raii::string(
object(
member(json::message::body(), quote(raii::json_escape(video.name()))),
member(json::message::info(), object(
member(json::message::infobody::height(), raii::itostr(video.height())),
member(json::message::infobody::mimetype(), quote(video.mimetype())),
member(json::message::infobody::size(), raii::itostr(video.size())),
member(json::message::infobody::thumbinfo(), object(
member(json::message::infobody::thumbnail::height(), raii::itostr(video.thumb_height())),
member(json::message::infobody::thumbnail::mimetype(), quote(video.thumb_mimetype())),
member(json::message::infobody::thumbnail::size(), raii::itostr(video.thumb_size())),
member(json::message::infobody::thumbnail::width(), raii::itostr(video.thumb_width()))
member(json::keys::message::body(), quote(raii::json_escape(video.name()))),
member(json::keys::message::info(), object(
member(json::keys::message::infobody::height(), raii::itostr(video.height())),
member(json::keys::message::infobody::mimetype(), quote(video.mimetype())),
member(json::keys::message::infobody::size(), raii::itostr(video.size())),
member(json::keys::message::infobody::thumbinfo(), object(
member(json::keys::message::infobody::thumbnail::height(), raii::itostr(video.thumb_height())),
member(json::keys::message::infobody::thumbnail::mimetype(), quote(video.thumb_mimetype())),
member(json::keys::message::infobody::thumbnail::size(), raii::itostr(video.thumb_size())),
member(json::keys::message::infobody::thumbnail::width(), raii::itostr(video.thumb_width()))
)),
member(json::message::infobody::thumburl(), quote(raii::json_escape(video.thumb_url()))),
member(json::message::infobody::width(), raii::itostr(video.width()))
member(json::keys::message::infobody::thumburl(), quote(raii::json_escape(video.thumb_url()))),
member(json::keys::message::infobody::width(), raii::itostr(video.width()))
)),
member(json::message::msgtype(), quote("m.video"_ss)),
member(json::message::url(), quote(raii::json_escape(video.url())))
member(json::keys::message::msgtype(), quote("m.video"_ss)),
member(json::keys::message::url(), quote(raii::json_escape(video.url())))
));
}
raii::string _file_body(const uploaded_file& file){
return raii::string(
object(
member(json::message::body(), quote(raii::json_escape(file.name()))),
member(json::message::info(), object(
member(json::message::infobody::size(), raii::itostr(file.size()))
member(json::keys::message::body(), quote(raii::json_escape(file.name()))),
member(json::keys::message::info(), object(
member(json::keys::message::infobody::size(), raii::itostr(file.size()))
)),
member(json::message::msgtype(), quote("m.file"_ss)),
member(json::message::url(), quote(raii::json_escape(file.url())))
member(json::keys::message::msgtype(), quote("m.file"_ss)),
member(json::keys::message::url(), quote(raii::json_escape(file.url())))
));
}
raii::string _audio_body(const uploaded_audio& audio){
return raii::string(
object(
member(json::message::body(), quote(raii::json_escape(audio.name()))),
member(json::message::info(), object(
member(json::message::infobody::mimetype(), quote(audio.mimetype())),
member(json::message::infobody::size(), raii::itostr(audio.size()))
member(json::keys::message::body(), quote(raii::json_escape(audio.name()))),
member(json::keys::message::info(), object(
member(json::keys::message::infobody::mimetype(), quote(audio.mimetype())),
member(json::keys::message::infobody::size(), raii::itostr(audio.size()))
)),
member(json::message::msgtype(), quote("m.audio"_ss)),
member(json::message::url(), quote(raii::json_escape(audio.url())))
member(json::keys::message::msgtype(), quote("m.audio"_ss)),
member(json::keys::message::url(), quote(raii::json_escape(audio.url())))
));
}
raii::string _message_body(const raii::string_base& msg){
return raii::string(
object(
member(json::message::body(), quote(raii::json_escape(msg))),
member(json::message::msgtype(), quote("m.text"_ss))
member(json::keys::message::body(), quote(raii::json_escape(msg))),
member(json::keys::message::msgtype(), quote("m.text"_ss))
));
}
raii::string _login_password(const raii::string_base& username, const raii::string_base& password){
return raii::string(
object(
member(json::auth::type(), quote("m.login.password"_ss)),
member(json::auth::identifier(), object(
member(json::auth::identifierbody::type(), quote("m.id.user"_ss)),
member(json::auth::identifierbody::user(), quote(raii::json_escape(username)))
member(json::keys::auth::type(), quote("m.login.password"_ss)),
member(json::keys::auth::identifier(), object(
member(json::keys::auth::identifierbody::type(), quote("m.id.user"_ss)),
member(json::keys::auth::identifierbody::user(), quote(raii::json_escape(username)))
)),
member(json::auth::password(), quote(raii::json_escape(password)))
member(json::keys::auth::password(), quote(raii::json_escape(password)))
));
}
raii::string _change_psk_password(const raii::string_base& userid, const raii::string_base& newpass, const raii::string_base& oldpass, const raii::string_base& session){
return raii::string(
object(
member(json::auth::newpassword(), quote(raii::json_escape(newpass))),
member(json::auth::auth(), object(
member(json::auth::authbody::type(), quote("m.login.password"_ss)),
member(json::auth::authbody::session(), quote(session)),
member(json::auth::authbody::user(), quote(raii::json_escape(userid))),
member(json::auth::authbody::password(), quote(raii::json_escape(oldpass)))
member(json::keys::auth::newpassword(), quote(raii::json_escape(newpass))),
member(json::keys::auth::auth(), object(
member(json::keys::auth::authbody::type(), quote("m.login.password"_ss)),
member(json::keys::auth::authbody::session(), quote(session)),
member(json::keys::auth::authbody::user(), quote(raii::json_escape(userid))),
member(json::keys::auth::authbody::password(), quote(raii::json_escape(oldpass)))
))
));
}
raii::string _displayname_set(const raii::string_base& newname){
return raii::string(
object(
member(json::client::displayname(), quote(raii::json_escape(newname)))
member(json::keys::client::displayname(), quote(raii::json_escape(newname)))
));
}
raii::string _avatar_set(const raii::string_base& mediaurl){
return raii::string(
object(
member(json::client::avatarurl(), quote(raii::json_escape(mediaurl)))
member(json::keys::client::avatarurl(), quote(raii::json_escape(mediaurl)))
));
}
raii::string _presence_set(const raii::string_base& status){
return raii::string(
object(
member(json::client::presence(), quote(status))
member(json::keys::client::presence(), quote(status))
));
}
raii::string _create_room(const raii::string_base& name, const raii::string_base& alias){
if(alias){
return raii::string(
object(
member(json::client::name(), quote(raii::json_escape(name))),
member(json::client::roomaliasname(), quote(raii::json_escape(alias)))
member(json::keys::client::name(), quote(raii::json_escape(name))),
member(json::keys::client::roomaliasname(), quote(raii::json_escape(alias)))
));
}else{
return raii::string(
object(
member(json::client::name(), quote(raii::json_escape(name)))
member(json::keys::client::name(), quote(raii::json_escape(name)))
));
}
}
raii::string _userid(const raii::string_base& id){
return raii::string(
object(
member(json::session::userid(), quote(raii::json_escape(id)))
member(json::keys::auth::userid(), quote(raii::json_escape(id)))
));
}
raii::string _userid_reason(const raii::string_base& id, const raii::string_base& reason){
return raii::string(
object(
member(json::session::userid(), quote(raii::json_escape(id))),
member(json::keys::auth::userid(), quote(raii::json_escape(id))),
member(json::reason(), quote(raii::json_escape(reason)))
));
}
raii::string _typing(bool active, int timeout){
return raii::string(
object(
member(json::client::typing(), active ? json::True() : json::False()),
member(json::client::timeout(), raii::itostr(timeout))
member(json::keys::client::typing(), active ? json::True() : json::False()),
member(json::keys::client::timeout(), raii::itostr(timeout))
));
}
raii::string _redact(const raii::string_base& reason){
@ -224,7 +224,7 @@ namespace matrix::json{
raii::string _room_upgrade(int version){
return raii::string(
object(
member(json::rooms::newversion(), raii::itostr(version))
member(json::keys::rooms::newversion(), raii::itostr(version))
));
}
}

View File

@ -59,7 +59,7 @@ namespace matrix{
if(!resp) return _create_netreturn(resp, http_status());
raii::rjp_ptr root(rjp_parse(resp.get()));
if(!root) return _create_netreturn(root, http_status());
RJP_search_res res = rjp_search_member(root.get(), json::rooms::joined(), 0);
RJP_search_res res = rjp_search_member(root.get(), json::keys::rooms::joined(), 0);
if(!res.value) return _create_netreturn(root, http_status());
for(RJP_value* mem = rjp_get_member(res.value);mem;mem = rjp_next_member(mem)){
@ -108,7 +108,7 @@ namespace matrix{
raii::rjp_ptr root(rjp_parse(reply));
netreturn<raii::rjp_string> retval = _create_netreturn(root, http_status());
retval.value() = _curl_reply_search(root, json::rooms::eventid());
retval.value() = _curl_reply_search(root, json::keys::rooms::eventid());
return retval;
}
netreturn<raii::rjp_string> roomcxn::send_message(const raii::string_base& text)const{
@ -134,7 +134,7 @@ namespace matrix{
}
netreturn<raii::rjp_string> roomcxn::redact_event(const raii::string_base& eventid, const raii::string_base& reason)const{
return _put_and_find(json::_redact(reason), m_urls.redact(m_ses->homeserver, m_ses->access_token, m_curl.encode(m_roomid), m_curl.encode(eventid)), raii::curl_llist(), json::rooms::eventid());
return _put_and_find(json::_redact(reason), m_urls.redact(m_ses->homeserver, m_ses->access_token, m_curl.encode(m_roomid), m_curl.encode(eventid)), raii::curl_llist(), json::keys::rooms::eventid());
}
netreturn<raii::rjp_string> roomcxn::redact_event(const raii::string_base& eventid)const{
return redact_event(eventid, "No reason given"_ss);
@ -146,7 +146,7 @@ namespace matrix{
if(!root.get()) _create_netreturn(root, http_status());
netreturn<sync::roomcxn_message_event_list> retval = _create_netreturn(root, http_status());
RJP_value* chunk = rjp_search_member(root.get(), json::rooms::chunk(), 0).value;
RJP_value* chunk = rjp_search_member(root.get(), json::keys::rooms::chunk(), 0).value;
if(!chunk) return retval;
retval.value() = sync::roomcxn_message_event_list(root, rjp_get_element(chunk), m_roomid);
return retval;
@ -168,7 +168,7 @@ namespace matrix{
m_urls.repopulate(m_ses->homeserver, m_ses->access_token, m_ses->userid, m_roomid);
}
netreturn<raii::rjp_string> roomcxn::upgrade(int version)const{
return _post_and_find(json::_room_upgrade(version), m_urls.upgrade(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist(), json::rooms::eventid());
return _post_and_find(json::_room_upgrade(version), m_urls.upgrade(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist(), json::keys::rooms::eventid());
}
netreturn<raii::rjp_string> roomcxn::_send_message(const raii::string_base& msg)const{

View File

@ -88,7 +88,7 @@ namespace matrix{
return retval;
//attempt to change password via username/password login
RJP_search_res res = rjp_search_member(root.get(), json::session::session(), 0);
RJP_search_res res = rjp_search_member(root.get(), json::keys::session::session(), 0);
raii::string request = json::_change_psk_password(m_ses->userid, newpass, oldpass, raii::rjp_string(res.value));
reply = _post_curl(request, rest::session_urls::password(*m_ses), raii::curl_llist());
return _create_netreturn(reply, http_status());
@ -152,7 +152,7 @@ namespace matrix{
return reply;
}
netreturn<raii::rjp_string> session::_get_userid(void){
return _get_and_find(rest::session_urls::whoami(*m_ses), json::session::userid());
return _get_and_find(rest::session_urls::whoami(*m_ses), json::keys::auth::userid());
}
netreturn<std::pair<raii::rjp_string,raii::rjp_string>> session::_get_new_access_token(const raii::string_base& name, const raii::string_base& pass, const raii::string_base& loginurl){
raii::string reply = _request_access_token(name, pass, loginurl);
@ -162,9 +162,9 @@ namespace matrix{
netreturn<std::pair<raii::rjp_string,raii::rjp_string>> retval = _create_netreturn(root, http_status());
if(!root)
return retval;
RJP_search_res token = rjp_search_member(root.get(), json::session::accesstoken(), 0);
RJP_search_res token = rjp_search_member(root.get(), json::keys::auth::accesstoken(), 0);
retval.value().first = raii::rjp_string{token.value};
token = rjp_search_member(root.get(), json::session::userid(), 0);
token = rjp_search_member(root.get(), json::keys::auth::userid(), 0);
retval.value().second = raii::rjp_string{token.value};
return retval;
}