add config structs
This commit is contained in:
19
Cargo.lock
generated
19
Cargo.lock
generated
@@ -486,6 +486,8 @@ name = "bot"
|
|||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"deltachat",
|
"deltachat",
|
||||||
|
"eui48",
|
||||||
|
"serde",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -1527,6 +1529,17 @@ dependencies = [
|
|||||||
"entities",
|
"entities",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "eui48"
|
||||||
|
version = "1.1.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "887418ac5e8d57c2e66e04bdc2fe15f9a5407be20b54a82c86bd0e368b709701"
|
||||||
|
dependencies = [
|
||||||
|
"regex",
|
||||||
|
"rustc-serialize",
|
||||||
|
"serde",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "event-listener"
|
name = "event-listener"
|
||||||
version = "2.5.3"
|
version = "2.5.3"
|
||||||
@@ -4401,6 +4414,12 @@ version = "2.1.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
|
checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rustc-serialize"
|
||||||
|
version = "0.3.25"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "fe834bc780604f4674073badbad26d7219cadfb4a2275802db12cbae17498401"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustc_version"
|
name = "rustc_version"
|
||||||
version = "0.4.1"
|
version = "0.4.1"
|
||||||
|
|||||||
@@ -5,3 +5,5 @@ edition = "2024"
|
|||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
deltachat = { path = "./chatmail-core" }
|
deltachat = { path = "./chatmail-core" }
|
||||||
|
eui48 = { version = "1.1.0", features = [ "serde" ] }
|
||||||
|
serde = { version = "1", features = [ "derive" ] }
|
||||||
|
|||||||
31
src/config.rs
Normal file
31
src/config.rs
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
use eui48::MacAddress;
|
||||||
|
use serde::{Deserialize, self};
|
||||||
|
use std::{collections::HashMap, net::IpAddr};
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
struct BotConfig {
|
||||||
|
pub auth: BotUserAuthConfig,
|
||||||
|
pub machines: HashMap<String, BotTargetMachineConfig>,
|
||||||
|
#[serde(rename = "deltaChat")]
|
||||||
|
pub delta_chat: BotDeltaChatConfig,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
struct BotUserAuthConfig {
|
||||||
|
pub password: String,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
struct BotTargetMachineConfig {
|
||||||
|
#[serde(rename = "default")]
|
||||||
|
is_default: bool,
|
||||||
|
mac: MacAddress,
|
||||||
|
#[serde(rename = "staticIp")]
|
||||||
|
static_ip: IpAddr,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize)]
|
||||||
|
struct BotDeltaChatConfig {
|
||||||
|
email: String,
|
||||||
|
password: String,
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
|
mod config;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user