mayday 0.1.0

A multi-messaging-sevice aggregator into an all-in-one application (android's app beeper-like)
Documentation
use serde::Deserialize;
use crate::drivers::loopback::{LoopbackConfig, LoopbackMessaging};
use crate::drivers::irc::{IrcConfig, IrcMessaging};
use crate::drivers::chatgpt::{ChatGptConfig, ChatGptMessaging};
use crate::models::driver::MessagingDriver;
use crate::config_to_driver;

mod loopback;
mod irc;
mod chatgpt;

config_to_driver! {
    #[derive(Debug, Deserialize)]
    #[serde(tag = "type")]
    pub enum MessagingDriverConfigs {
        #[serde(alias = "loopback", alias = "LOOPBACK")]
        Loopback(LoopbackConfig) -> LoopbackMessaging,
        #[serde(alias = "irc", alias = "IRC")]
        Irc(IrcConfig) -> IrcMessaging,
        #[serde(alias = "ChatGPT", alias = "chatgpt", alias = "CHATGPT")]
        ChatGpt(ChatGptConfig) -> ChatGptMessaging,
    }
}