mvp irc client for solanaceae with plugin

non exhausitve list of missing stuff:
 - notices (only channel partly implemented)
 - invites
 - initiating private chat
 - channel membership status and other flags
This commit is contained in:
2023-12-12 17:46:04 +01:00
commit 53453872f2
16 changed files with 1965 additions and 0 deletions

36
src/test2.cpp Normal file
View File

@@ -0,0 +1,36 @@
#include <solanaceae/util/simple_config_model.hpp>
#include <solanaceae/contact/contact_model3.hpp>
#include <solanaceae/message3/registry_message_model.hpp>
#include <solanaceae/ircclient/ircclient.hpp>
#include <solanaceae/ircclient_contacts/ircclient_contact_model.hpp>
#include <solanaceae/ircclient_messages/ircclient_message_manager.hpp>
#include <libircclient.h>
#include <iostream>
#include <string_view>
int main(void) {
SimpleConfigModel conf;
conf.set("IRCClient", "server", std::string_view{"#irc.rizon.net"});
conf.set("IRCClient", "port", int64_t(6697));
conf.set("IRCClient", "autojoin", "#HorribleSubs", true);
conf.set("IRCClient", "autojoin", "#green_testing", true);
Contact3Registry cr;
RegistryMessageModel rmm{cr};
IRCClient1 ircc{conf};
IRCClientContactModel ircccm{cr, conf, ircc};
IRCClientMessageManager irccmm{rmm, cr, conf, ircc, ircccm};
//ircccm.join("#green_testing");
while (irc_is_connected(ircc.getSession())) {
ircc.iterate();
}
return 0;
}