Add forget to roomcxn
This commit is contained in:
parent
dfff8fca0a
commit
76df53d003
1
doc/TODO
1
doc/TODO
@ -22,7 +22,6 @@ matrix:
|
|||||||
3:filters
|
3:filters
|
||||||
room:
|
room:
|
||||||
3:message query filters
|
3:message query filters
|
||||||
2:forget room
|
|
||||||
1:send custom html messages
|
1:send custom html messages
|
||||||
1:set new room alias
|
1:set new room alias
|
||||||
2:delete room alias
|
2:delete room alias
|
||||||
|
|||||||
@ -26,19 +26,18 @@ namespace matrix{
|
|||||||
class room_url_list
|
class room_url_list
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
raii::string m_join;
|
|
||||||
raii::string m_leave;
|
|
||||||
raii::string m_typing;
|
raii::string m_typing;
|
||||||
raii::string m_kick;
|
raii::string m_kick;
|
||||||
raii::string m_ban;
|
raii::string m_ban;
|
||||||
raii::string m_unban;
|
raii::string m_unban;
|
||||||
raii::string m_invite;
|
raii::string m_invite;
|
||||||
raii::string m_members;
|
raii::string m_members;
|
||||||
raii::string m_upgrade;
|
|
||||||
public:
|
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);
|
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;
|
raii::string join(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const;
|
||||||
const raii::string& leave_room(void)const;
|
raii::string leave(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const;
|
||||||
|
raii::string forget(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const;
|
||||||
|
raii::string upgrade(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const;
|
||||||
raii::string read_receipt(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const;
|
raii::string read_receipt(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const;
|
||||||
raii::string send(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventtype)const;
|
raii::string send(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventtype)const;
|
||||||
raii::string redact(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const;
|
raii::string redact(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const;
|
||||||
@ -48,7 +47,6 @@ namespace matrix{
|
|||||||
const raii::string& unban(void)const;
|
const raii::string& unban(void)const;
|
||||||
const raii::string& invite(void)const;
|
const raii::string& invite(void)const;
|
||||||
const raii::string& room_members(void)const;
|
const raii::string& room_members(void)const;
|
||||||
const raii::string& upgrade(void)const;
|
|
||||||
raii::string messages(const raii::string_base& homeserver, const raii::string_base& access_token,
|
raii::string messages(const raii::string_base& homeserver, const raii::string_base& access_token,
|
||||||
const raii::string_base& roomid, const raii::string_base& from, const raii::string_base& to,
|
const raii::string_base& roomid, const raii::string_base& from, const raii::string_base& to,
|
||||||
const raii::string_base& dir, int limit)const;
|
const raii::string_base& dir, int limit)const;
|
||||||
|
|||||||
@ -51,6 +51,7 @@ namespace matrix{
|
|||||||
//membership
|
//membership
|
||||||
netreturn<void> join(void)const;
|
netreturn<void> join(void)const;
|
||||||
netreturn<void> leave(void)const;
|
netreturn<void> leave(void)const;
|
||||||
|
netreturn<void> forget(void)const;
|
||||||
[[deprecated("Use roomcxn::join_room instead")]]
|
[[deprecated("Use roomcxn::join_room instead")]]
|
||||||
netreturn<void> accept_invite(void)const;
|
netreturn<void> accept_invite(void)const;
|
||||||
[[deprecated("Use roomcxn::leave_room instead")]]
|
[[deprecated("Use roomcxn::leave_room instead")]]
|
||||||
|
|||||||
@ -22,20 +22,23 @@
|
|||||||
namespace matrix{
|
namespace matrix{
|
||||||
|
|
||||||
room_url_list::room_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& userid):
|
room_url_list::room_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& userid):
|
||||||
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),
|
|
||||||
m_typing(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/typing/" + userid + "?access_token=" + access_token),
|
m_typing(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/typing/" + userid + "?access_token=" + access_token),
|
||||||
m_kick(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/kick?access_token=" + access_token),
|
m_kick(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/kick?access_token=" + access_token),
|
||||||
m_ban(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/ban?access_token=" + access_token),
|
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_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_invite(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/invite?access_token=" + access_token),
|
||||||
m_members(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/joined_members?access_token=" + access_token),
|
m_members(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/joined_members?access_token=" + access_token){}
|
||||||
m_upgrade(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/upgrade?access_token=" + access_token){}
|
raii::string room_url_list::join(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const{
|
||||||
const raii::string& room_url_list::join_room(void)const{
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/leave?access_token=" + access_token);
|
||||||
return m_join;
|
|
||||||
}
|
}
|
||||||
const raii::string& room_url_list::leave_room(void)const{
|
raii::string room_url_list::leave(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const{
|
||||||
return m_leave;
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/join?access_token=" + access_token);
|
||||||
|
}
|
||||||
|
raii::string room_url_list::forget(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const{
|
||||||
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/forget?access_token=" + access_token);
|
||||||
|
}
|
||||||
|
raii::string room_url_list::upgrade(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid)const{
|
||||||
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/upgrade?access_token=" + access_token);
|
||||||
}
|
}
|
||||||
raii::string room_url_list::read_receipt(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const{
|
raii::string room_url_list::read_receipt(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& roomid, const raii::string_base& eventid)const{
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/receipt/m.read/" + eventid + "?access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/receipt/m.read/" + eventid + "?access_token=" + access_token);
|
||||||
@ -67,9 +70,6 @@ namespace matrix{
|
|||||||
const raii::string& room_url_list::room_members(void)const{
|
const raii::string& room_url_list::room_members(void)const{
|
||||||
return m_members;
|
return m_members;
|
||||||
}
|
}
|
||||||
const raii::string& room_url_list::upgrade(void)const{
|
|
||||||
return m_upgrade;
|
|
||||||
}
|
|
||||||
raii::string room_url_list::messages(const raii::string_base& homeserver, const raii::string_base& access_token,
|
raii::string room_url_list::messages(const raii::string_base& homeserver, const raii::string_base& access_token,
|
||||||
const raii::string_base& roomid, const raii::string_base& from, const raii::string_base& to,
|
const raii::string_base& roomid, const raii::string_base& from, const raii::string_base& to,
|
||||||
const raii::string_base& dir, int limit)const
|
const raii::string_base& dir, int limit)const
|
||||||
@ -80,15 +80,12 @@ namespace matrix{
|
|||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/messages?from=" + from + "&limit=" + raii::itostr(limit) + "&dir=" + dir + "&access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/messages?from=" + from + "&limit=" + raii::itostr(limit) + "&dir=" + dir + "&access_token=" + access_token);
|
||||||
}
|
}
|
||||||
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){
|
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;
|
|
||||||
m_typing = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/typing/" + userid + "?access_token=" + access_token;
|
m_typing = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/typing/" + userid + "?access_token=" + access_token;
|
||||||
m_kick = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/kick?access_token=" + access_token;
|
m_kick = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/kick?access_token=" + access_token;
|
||||||
m_ban = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/ban?access_token=" + access_token;
|
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_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_invite = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/invite?access_token=" + access_token;
|
||||||
m_members = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/joined_members?access_token=" + access_token;
|
m_members = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/joined_members?access_token=" + access_token;
|
||||||
m_upgrade = s_proto + homeserver + "/_matrix/client/r0/rooms/" + roomid + "/upgrade?access_token=" + access_token;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -35,11 +35,15 @@ namespace matrix{
|
|||||||
m_urls(ses->homeserver, ses->access_token, m_curl.encode(m_roomid), ses->userid){}
|
m_urls(ses->homeserver, ses->access_token, m_curl.encode(m_roomid), ses->userid){}
|
||||||
|
|
||||||
netreturn<void> roomcxn::join(void)const{
|
netreturn<void> roomcxn::join(void)const{
|
||||||
raii::string response = _post_curl(raii::string(), m_urls.join_room(), raii::curl_llist());
|
raii::string response = _post_curl(raii::string(), m_urls.join(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist());
|
||||||
return _create_netreturn(response, http_status());
|
return _create_netreturn(response, http_status());
|
||||||
}
|
}
|
||||||
netreturn<void> roomcxn::leave(void)const{
|
netreturn<void> roomcxn::leave(void)const{
|
||||||
raii::string response = _post_curl(raii::string(), m_urls.leave_room(), raii::curl_llist());
|
raii::string response = _post_curl(raii::string(), m_urls.leave(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist());
|
||||||
|
return _create_netreturn(response, http_status());
|
||||||
|
}
|
||||||
|
netreturn<void> roomcxn::forget(void)const{
|
||||||
|
raii::string response = _post_curl(raii::string(), m_urls.forget(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist());
|
||||||
return _create_netreturn(response, http_status());
|
return _create_netreturn(response, http_status());
|
||||||
}
|
}
|
||||||
netreturn<void> roomcxn::accept_invite(void)const{
|
netreturn<void> roomcxn::accept_invite(void)const{
|
||||||
@ -168,7 +172,7 @@ namespace matrix{
|
|||||||
m_urls.repopulate(m_ses->homeserver, m_ses->access_token, m_ses->userid, m_roomid);
|
m_urls.repopulate(m_ses->homeserver, m_ses->access_token, m_ses->userid, m_roomid);
|
||||||
}
|
}
|
||||||
netreturn<raii::rjp_string> roomcxn::upgrade(int version)const{
|
netreturn<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(), "event_id"_ss);
|
return _post_and_find(raii::string("{\"new_version\":\""_ss + raii::itostr(version) + "\"}"_ss), m_urls.upgrade(m_ses->homeserver, m_ses->access_token, m_roomid), raii::curl_llist(), "event_id"_ss);
|
||||||
}
|
}
|
||||||
|
|
||||||
netreturn<raii::rjp_string> roomcxn::_send_message(const raii::string_base& msg)const{
|
netreturn<raii::rjp_string> roomcxn::_send_message(const raii::string_base& msg)const{
|
||||||
|
|||||||
@ -76,7 +76,7 @@ namespace matrix{
|
|||||||
raii::rjp_ptr root(rjp_parse(reply));
|
raii::rjp_ptr root(rjp_parse(reply));
|
||||||
netreturn<void> retval = _create_netreturn(root, http_status());
|
netreturn<void> retval = _create_netreturn(root, http_status());
|
||||||
if(!root)
|
if(!root)
|
||||||
return retvl;
|
return retval;
|
||||||
|
|
||||||
//attempt to change password via username/password login
|
//attempt to change password via username/password login
|
||||||
RJP_search_res res = rjp_search_member(root.get(), "session", 0);
|
RJP_search_res res = rjp_search_member(root.get(), "session", 0);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user