Cli reworks | 0.1.1 | Stable
Seperated json creation from cli.rs and added better help message. Also user-friendly message creation
This commit is contained in:
parent
542fc634ad
commit
83d71ac2ac
2
Cargo.lock
generated
2
Cargo.lock
generated
@ -79,7 +79,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "cctweaked-messager"
|
||||
version = "0.1.0"
|
||||
version = "0.1.1"
|
||||
dependencies = [
|
||||
"reqwest",
|
||||
"serde",
|
||||
|
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "cctweaked-messager"
|
||||
version = "0.1.0"
|
||||
version = "0.1.1"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
|
22
src/cli.rs
22
src/cli.rs
@ -2,7 +2,7 @@ use std::{env, process::exit};
|
||||
|
||||
use strum::{EnumIter, IntoEnumIterator};
|
||||
|
||||
use crate::{decoding::{decode_json, CctweakedMessage}, networking::{get_json, send_json}};
|
||||
use crate::{decoding::decode_json, networking::{get_json, send_json}};
|
||||
|
||||
#[derive(Debug, EnumIter)]
|
||||
enum KnownArguments {
|
||||
@ -28,7 +28,7 @@ pub fn process_cli_args() {
|
||||
// Removing execution path probably.
|
||||
let args = &args[1..];
|
||||
|
||||
let arg_type = match args[0].as_str() {
|
||||
let arg_type = match args[0].to_lowercase().as_str() {
|
||||
"help" => KnownArguments::Help,
|
||||
"--help" => KnownArguments::Help,
|
||||
"-h" => KnownArguments::Help,
|
||||
@ -48,14 +48,24 @@ pub fn process_cli_args() {
|
||||
fn process_help(_: &[String]) {
|
||||
println!("All posible arguments:");
|
||||
for argument in KnownArguments::iter() {
|
||||
println!("{:?}", argument);
|
||||
match argument {
|
||||
KnownArguments::Help => println!("{:?} - Shows help message.", argument),
|
||||
KnownArguments::Send => println!("{:?} <content> <msg_type> - sends a cctweaked message to server", argument),
|
||||
KnownArguments::Recieve => println!("{:?} - Fetches cctweaked message from server", argument),
|
||||
_ => (),
|
||||
}
|
||||
}
|
||||
}
|
||||
fn process_send(args: &[String]) {
|
||||
let inputed_json: CctweakedMessage = serde_json::from_str(&args[1])
|
||||
.expect("Wrong CCTweaked Message. Try to encapsulate it in '' ");
|
||||
if args.len() < 3 {
|
||||
println!("Not enough arguments for 'send', please refer to --help");
|
||||
exit(0);
|
||||
}
|
||||
|
||||
let resp = send_json(URL.to_owned(), inputed_json)
|
||||
let input_content = &args[1];
|
||||
let input_type = &args[2].parse::<i32>().expect("Wrong message type");
|
||||
|
||||
let resp = send_json(URL.to_owned(), input_content.to_owned(), *input_type)
|
||||
.expect("Failed to send json");
|
||||
|
||||
println!("{}, {}", resp.status(), resp.text().unwrap());
|
||||
|
@ -1,6 +1,6 @@
|
||||
use reqwest::{blocking::{Client, Response}, Error, StatusCode};
|
||||
|
||||
use crate::decoding::CctweakedMessage;
|
||||
use crate::decoding::create_cctweaked_message;
|
||||
|
||||
pub fn get_json(url: String) -> Result<String, StatusCode> {
|
||||
let resp = reqwest::blocking::get(url)
|
||||
@ -14,7 +14,9 @@ pub fn get_json(url: String) -> Result<String, StatusCode> {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn send_json(url: String, message: CctweakedMessage) -> Result<Response, Error> {
|
||||
pub fn send_json(url: String, content: String, msg_type: i32) -> Result<Response, Error> {
|
||||
let message = create_cctweaked_message(content, msg_type);
|
||||
|
||||
let client = Client::new();
|
||||
let resp = client.post(url)
|
||||
.body(serde_json::to_string(&message).expect("Failed to create json from message"))
|
||||
|
Loading…
x
Reference in New Issue
Block a user