added upgrade function to room

This commit is contained in:
rexy712
2019-07-27 12:34:31 -07:00
parent 157e9fba4f
commit 5bd108c8fb
4 changed files with 12 additions and 1 deletions

View File

@@ -34,6 +34,7 @@ namespace matrix{
raii::string m_unban;
raii::string m_invite;
raii::string m_members;
raii::string m_upgrade;
public:
room_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& userid);
const raii::string& join_room(void)const;
@@ -47,6 +48,7 @@ namespace matrix{
const raii::string& unban(void)const;
const raii::string& invite(void)const;
const raii::string& room_members(void)const;
const raii::string& upgrade(void)const;
void repopulate(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid, const raii::string_base& roomid);
void invalidate_accesstoken(void);

View File

@@ -71,6 +71,7 @@ namespace matrix{
//meta stuff
void regenerate_urls(void);
raii::rjp_string upgrade(int version)const;
private:
raii::rjp_string _send_message(const raii::string_base& msg)const;

View File

@@ -28,7 +28,8 @@ namespace matrix{
m_ban(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/ban?access_token=" + access_token),
m_unban(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/unban?access_token=" + access_token),
m_invite(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/invite?access_token=" + access_token),
m_members(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/members?access_token=" + access_token){}
m_members(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/members?access_token=" + access_token),
m_upgrade(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/upgrade?access_token=" + access_token){}
const raii::string& room_url_list::join_room(void)const{
return m_join;
}
@@ -65,6 +66,9 @@ namespace matrix{
const raii::string& room_url_list::room_members(void)const{
return m_members;
}
const raii::string& room_url_list::upgrade(void)const{
return m_upgrade;
}
void room_url_list::repopulate(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid, const raii::string_base& roomid){
m_join = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/join?access_token=" + access_token;
m_leave = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/leave?access_token=" + access_token;
@@ -74,6 +78,7 @@ namespace matrix{
m_unban = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/unban?access_token=" + access_token;
m_invite = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/invite?access_token=" + access_token;
m_members = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/members?access_token=" + access_token;
m_upgrade = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/upgrade?access_token=" + access_token;
}
}

View File

@@ -165,6 +165,9 @@ namespace matrix{
void roomcxn::regenerate_urls(void){
m_urls.repopulate(m_ses->homeserver, m_ses->access_token, m_ses->userid, m_roomid);
}
raii::rjp_string roomcxn::upgrade(int version)const{
return _post_and_find(raii::string("{\"new_version\":\""_ss + raii::itostr(version) + "\"}"_ss), m_urls.upgrade(), raii::curl_llist(), "replacement_room"_ss);
}
raii::rjp_string roomcxn::_send_message(const raii::string_base& msg)const{
return send_custom_event(msg, "m.room.message"_ss);