Removed unneeded files and updated examples

This commit is contained in:
Rexy712
2019-07-16 14:45:06 -07:00
parent c2ff77aec0
commit e89d63e396
5 changed files with 42 additions and 473 deletions
+19 -7
View File
@@ -1,5 +1,5 @@
/**
This file is a part of rexy's matrix bot
This file is a part of rexy's matrix client
Copyright (C) 2019 rexy712
This program is free software: you can redistribute it and/or modify
@@ -21,21 +21,33 @@
#include "matrix.hpp"
int main(){
//auth information needed to initiate a session
const char* username = "username";
const char* password = "password";
const char* useragent = "rexy712s invite accepter";
const char* homeserver = "matrix.org";
matrix::auth_data auth{username, password, homeserver};
matrix::auth_data auth{username, password, homeserver, useragent};
//create on open connection to the homeserver
matrix::session ses(auth);
matrix::bot matbot(auth, useragent);
auto sync_reply = matbot.sync(0); //initial sync
//access syncer instance to pull from server
matrix::syncer& syn = ses.get_syncer();
matbot.set_invite_callback([&](const matrix::bot& bot, const matrix::invite_info& invite)->void{
bot.accept_invite(invite);
//access client instance to accept invites
matrix::client& client = ses.get_client();
//initial sync to clear backlog
auto sync_reply = syn.sync(0);
//callback on recieved membership events (invite, join, leave, ban, etc)
//uses ref capture lambda to access client instance for invite acceptance
syn.set_membership_callback([&](const matrix::membership_info& invite)->void{
client.accept_invite(invite);
});
//continuously loop syncing operation to always keep up to date with the server state
while(1){
sync_reply = matbot.sync(30000);
sync_reply = syn.sync(30000);
}
}