Changed mat_url_list to client_url_list
This commit is contained in:
parent
06dfcec82c
commit
572c9c1f69
@ -22,7 +22,7 @@
|
|||||||
#include "raii/string.hpp"
|
#include "raii/string.hpp"
|
||||||
|
|
||||||
namespace matrix{
|
namespace matrix{
|
||||||
class mat_url_list
|
class client_url_list
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
raii::string m_create_room;
|
raii::string m_create_room;
|
||||||
@ -34,13 +34,13 @@ namespace matrix{
|
|||||||
raii::string m_profile_picture;
|
raii::string m_profile_picture;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
mat_url_list(void) = default;
|
client_url_list(void) = default;
|
||||||
mat_url_list(const raii::string_base& homeserver);
|
client_url_list(const raii::string_base& homeserver);
|
||||||
mat_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid);
|
client_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid);
|
||||||
mat_url_list(const mat_url_list&) = default;
|
client_url_list(const client_url_list&) = default;
|
||||||
mat_url_list(mat_url_list&&) = default;
|
client_url_list(client_url_list&&) = default;
|
||||||
mat_url_list& operator=(const mat_url_list&) = default;
|
client_url_list& operator=(const client_url_list&) = default;
|
||||||
mat_url_list& operator=(mat_url_list&&) = default;
|
client_url_list& operator=(client_url_list&&) = default;
|
||||||
|
|
||||||
static raii::string stat_whoami(const raii::string_base& homeserver, const raii::string_base& access_token);
|
static raii::string stat_whoami(const raii::string_base& homeserver, const raii::string_base& access_token);
|
||||||
static raii::string login(const raii::string_base& homeserver);
|
static raii::string login(const raii::string_base& homeserver);
|
||||||
@ -21,7 +21,7 @@
|
|||||||
|
|
||||||
#include "raii/string.hpp"
|
#include "raii/string.hpp"
|
||||||
#include "raii/rjp_string.hpp"
|
#include "raii/rjp_string.hpp"
|
||||||
#include "matrix/url_list.hpp"
|
#include "matrix/client_url_list.hpp"
|
||||||
|
|
||||||
namespace matrix::internal{
|
namespace matrix::internal{
|
||||||
struct session_info{
|
struct session_info{
|
||||||
@ -29,7 +29,7 @@ namespace matrix::internal{
|
|||||||
raii::string homeserver; //name of our homeserver
|
raii::string homeserver; //name of our homeserver
|
||||||
raii::rjp_string access_token; //authentication
|
raii::rjp_string access_token; //authentication
|
||||||
raii::rjp_string userid; //userid including homeserver
|
raii::rjp_string userid; //userid including homeserver
|
||||||
mat_url_list urls;
|
client_url_list urls;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -16,33 +16,33 @@
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "matrix/url_list.hpp"
|
#include "matrix/client_url_list.hpp"
|
||||||
#include "raii/string.hpp"
|
#include "raii/string.hpp"
|
||||||
|
|
||||||
namespace matrix{
|
namespace matrix{
|
||||||
|
|
||||||
mat_url_list::mat_url_list(const raii::string_base& homeserver){
|
client_url_list::client_url_list(const raii::string_base& homeserver){
|
||||||
_initial_populate(homeserver);
|
_initial_populate(homeserver);
|
||||||
}
|
}
|
||||||
mat_url_list::mat_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
client_url_list::client_url_list(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
||||||
repopulate(homeserver, access_token, userid);
|
repopulate(homeserver, access_token, userid);
|
||||||
}
|
}
|
||||||
void mat_url_list::repopulate_accesstoken(const raii::string_base& homeserver, const raii::string_base& access_token){
|
void client_url_list::repopulate_accesstoken(const raii::string_base& homeserver, const raii::string_base& access_token){
|
||||||
m_create_room = s_proto + homeserver + "/_matrix/client/r0/createRoom?access_token=" + access_token;
|
m_create_room = s_proto + homeserver + "/_matrix/client/r0/createRoom?access_token=" + access_token;
|
||||||
m_file_upload = s_proto + homeserver + "/_matrix/media/r0/upload?access_token=" + access_token;
|
m_file_upload = s_proto + homeserver + "/_matrix/media/r0/upload?access_token=" + access_token;
|
||||||
m_room_list = s_proto + homeserver + "/_matrix/client/r0/joined_rooms?access_token=" + access_token;
|
m_room_list = s_proto + homeserver + "/_matrix/client/r0/joined_rooms?access_token=" + access_token;
|
||||||
m_whoami = stat_whoami(homeserver, access_token);
|
m_whoami = stat_whoami(homeserver, access_token);
|
||||||
}
|
}
|
||||||
void mat_url_list::repopulate_userid(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
void client_url_list::repopulate_userid(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
||||||
m_displayname = s_proto + homeserver + "/_matrix/client/r0/profile/" + userid + "/displayname?access_token=" + access_token;
|
m_displayname = s_proto + homeserver + "/_matrix/client/r0/profile/" + userid + "/displayname?access_token=" + access_token;
|
||||||
m_profile_picture = s_proto + homeserver + "/_matrix/client/r0/profile/" + userid + "/avatar_url?access_token=" + access_token;
|
m_profile_picture = s_proto + homeserver + "/_matrix/client/r0/profile/" + userid + "/avatar_url?access_token=" + access_token;
|
||||||
}
|
}
|
||||||
void mat_url_list::repopulate(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
void client_url_list::repopulate(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid){
|
||||||
_initial_populate(homeserver);
|
_initial_populate(homeserver);
|
||||||
repopulate_accesstoken(homeserver, access_token);
|
repopulate_accesstoken(homeserver, access_token);
|
||||||
repopulate_userid(homeserver, access_token, userid);
|
repopulate_userid(homeserver, access_token, userid);
|
||||||
}
|
}
|
||||||
void mat_url_list::invalidate_accesstoken(void){
|
void client_url_list::invalidate_accesstoken(void){
|
||||||
m_create_room.reset();
|
m_create_room.reset();
|
||||||
m_file_upload.reset();
|
m_file_upload.reset();
|
||||||
m_room_list.reset();
|
m_room_list.reset();
|
||||||
@ -50,48 +50,48 @@ namespace matrix{
|
|||||||
m_displayname.reset();
|
m_displayname.reset();
|
||||||
m_profile_picture.reset();
|
m_profile_picture.reset();
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::create_room(void)const{
|
const raii::string& client_url_list::create_room(void)const{
|
||||||
return m_create_room;
|
return m_create_room;
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::file_upload(void)const{
|
const raii::string& client_url_list::file_upload(void)const{
|
||||||
return m_file_upload;
|
return m_file_upload;
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::room_list(void)const{
|
const raii::string& client_url_list::room_list(void)const{
|
||||||
return m_room_list;
|
return m_room_list;
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::login(const raii::string_base& homeserver){
|
raii::string client_url_list::login(const raii::string_base& homeserver){
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/login");
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/login");
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::stat_whoami(const raii::string_base& homeserver, const raii::string_base& access_token){
|
raii::string client_url_list::stat_whoami(const raii::string_base& homeserver, const raii::string_base& access_token){
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/account/whoami?access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/account/whoami?access_token=" + access_token);
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::alias_lookup(void)const{
|
const raii::string& client_url_list::alias_lookup(void)const{
|
||||||
return m_alias_lookup;
|
return m_alias_lookup;
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::whoami(void)const{
|
const raii::string& client_url_list::whoami(void)const{
|
||||||
return m_whoami;
|
return m_whoami;
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::displayname(void)const{
|
const raii::string& client_url_list::displayname(void)const{
|
||||||
return m_displayname;
|
return m_displayname;
|
||||||
}
|
}
|
||||||
const raii::string& mat_url_list::profile_picture(void)const{
|
const raii::string& client_url_list::profile_picture(void)const{
|
||||||
return m_profile_picture;
|
return m_profile_picture;
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::logout(const raii::string_base& homeserver, const raii::string_base& access_token)const{
|
raii::string client_url_list::logout(const raii::string_base& homeserver, const raii::string_base& access_token)const{
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/logout?access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/logout?access_token=" + access_token);
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::sync(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& next_batch, const raii::string_base& timeout)const{
|
raii::string client_url_list::sync(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& next_batch, const raii::string_base& timeout)const{
|
||||||
if(!next_batch)
|
if(!next_batch)
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/sync?access_token=" + access_token + "&timeout=" + timeout);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/sync?access_token=" + access_token + "&timeout=" + timeout);
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/sync?access_token=" + access_token + "&timeout=" + timeout + "&since=" + next_batch);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/sync?access_token=" + access_token + "&timeout=" + timeout + "&since=" + next_batch);
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::presence(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid)const{
|
raii::string client_url_list::presence(const raii::string_base& homeserver, const raii::string_base& access_token, const raii::string_base& userid)const{
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/presence/" + userid + "/status?access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/presence/" + userid + "/status?access_token=" + access_token);
|
||||||
}
|
}
|
||||||
raii::string mat_url_list::password(const raii::string_base& homeserver, const raii::string_base& access_token)const{
|
raii::string client_url_list::password(const raii::string_base& homeserver, const raii::string_base& access_token)const{
|
||||||
return raii::string(s_proto + homeserver + "/_matrix/client/r0/account/password?access_token=" + access_token);
|
return raii::string(s_proto + homeserver + "/_matrix/client/r0/account/password?access_token=" + access_token);
|
||||||
}
|
}
|
||||||
void mat_url_list::_initial_populate(const raii::string_base& homeserver){
|
void client_url_list::_initial_populate(const raii::string_base& homeserver){
|
||||||
m_alias_lookup = s_proto + homeserver + "/_matrix/client/r0/directory/room/";
|
m_alias_lookup = s_proto + homeserver + "/_matrix/client/r0/directory/room/";
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -59,9 +59,9 @@ namespace matrix{
|
|||||||
m_ses->useragent = a.useragent;
|
m_ses->useragent = a.useragent;
|
||||||
m_ses->homeserver = a.homeserver;
|
m_ses->homeserver = a.homeserver;
|
||||||
m_ses->access_token = a.access_token;
|
m_ses->access_token = a.access_token;
|
||||||
auto reply = _get_curl(mat_url_list::stat_whoami(m_ses->homeserver, m_ses->access_token));
|
auto reply = _get_curl(client_url_list::stat_whoami(m_ses->homeserver, m_ses->access_token));
|
||||||
if(!reply){
|
if(!reply){
|
||||||
auto [token, id] = _get_new_access_token(a.name, a.pass, mat_url_list::login(m_ses->homeserver));
|
auto [token, id] = _get_new_access_token(a.name, a.pass, client_url_list::login(m_ses->homeserver));
|
||||||
if(token && id){
|
if(token && id){
|
||||||
m_ses->access_token = std::move(token);
|
m_ses->access_token = std::move(token);
|
||||||
m_ses->userid = std::move(id);
|
m_ses->userid = std::move(id);
|
||||||
@ -94,7 +94,7 @@ namespace matrix{
|
|||||||
return reply;
|
return reply;
|
||||||
}
|
}
|
||||||
raii::rjp_string session::_get_userid(void){
|
raii::rjp_string session::_get_userid(void){
|
||||||
auto reply = _get_curl(mat_url_list::stat_whoami(m_ses->homeserver, m_ses->access_token));
|
auto reply = _get_curl(client_url_list::stat_whoami(m_ses->homeserver, m_ses->access_token));
|
||||||
if(!reply)
|
if(!reply)
|
||||||
return {};
|
return {};
|
||||||
raii::rjp_ptr root(rjp_parse(reply));
|
raii::rjp_ptr root(rjp_parse(reply));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user