add notify
This commit is contained in:
parent
dc1fc9d229
commit
47b1e7cb89
59
src/main.rs
59
src/main.rs
@ -10,6 +10,7 @@ use crate::data::w_cfg;
|
|||||||
pub mod data;
|
pub mod data;
|
||||||
pub mod refresh;
|
pub mod refresh;
|
||||||
pub mod token;
|
pub mod token;
|
||||||
|
pub mod notify;
|
||||||
pub mod ascii;
|
pub mod ascii;
|
||||||
|
|
||||||
fn main() {
|
fn main() {
|
||||||
@ -25,11 +26,6 @@ fn main() {
|
|||||||
.alias("t"),
|
.alias("t"),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
.command(
|
|
||||||
Command::new("refresh")
|
|
||||||
.alias("r")
|
|
||||||
.action(c_refresh),
|
|
||||||
)
|
|
||||||
.command(
|
.command(
|
||||||
Command::new("token")
|
Command::new("token")
|
||||||
.alias("t")
|
.alias("t")
|
||||||
@ -41,6 +37,16 @@ fn main() {
|
|||||||
.alias("p"),
|
.alias("p"),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
.command(
|
||||||
|
Command::new("refresh")
|
||||||
|
.alias("r")
|
||||||
|
.action(c_refresh),
|
||||||
|
)
|
||||||
|
.command(
|
||||||
|
Command::new("notify")
|
||||||
|
.alias("n")
|
||||||
|
.action(c_notify),
|
||||||
|
)
|
||||||
;
|
;
|
||||||
app.run(args);
|
app.run(args);
|
||||||
}
|
}
|
||||||
@ -49,20 +55,6 @@ fn c_ascii_art(c: &Context) {
|
|||||||
c_ascii(c.bool_flag("type"));
|
c_ascii(c.bool_flag("type"));
|
||||||
}
|
}
|
||||||
|
|
||||||
fn refresh() {
|
|
||||||
let h = async {
|
|
||||||
let res = refresh::post_request().await;
|
|
||||||
println!("{}", res);
|
|
||||||
w_cfg("bsky.social", &res)
|
|
||||||
};
|
|
||||||
let res = tokio::runtime::Runtime::new().unwrap().block_on(h);
|
|
||||||
return res
|
|
||||||
}
|
|
||||||
|
|
||||||
fn c_refresh(_c: &Context) {
|
|
||||||
refresh();
|
|
||||||
}
|
|
||||||
|
|
||||||
fn token(c: &Context) {
|
fn token(c: &Context) {
|
||||||
let m = c.args[0].to_string();
|
let m = c.args[0].to_string();
|
||||||
let h = async {
|
let h = async {
|
||||||
@ -79,3 +71,32 @@ fn token(c: &Context) {
|
|||||||
fn c_token(c: &Context) {
|
fn c_token(c: &Context) {
|
||||||
token(c);
|
token(c);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn refresh() {
|
||||||
|
let h = async {
|
||||||
|
let res = refresh::post_request().await;
|
||||||
|
println!("{}", res);
|
||||||
|
w_cfg("bsky.social", &res)
|
||||||
|
};
|
||||||
|
let res = tokio::runtime::Runtime::new().unwrap().block_on(h);
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
|
fn c_refresh(_c: &Context) {
|
||||||
|
refresh();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
fn notify() {
|
||||||
|
let h = async {
|
||||||
|
let j = notify::get_request(100).await;
|
||||||
|
println!("{}", j);
|
||||||
|
};
|
||||||
|
let res = tokio::runtime::Runtime::new().unwrap().block_on(h);
|
||||||
|
return res
|
||||||
|
}
|
||||||
|
|
||||||
|
fn c_notify(_c: &Context) {
|
||||||
|
notify();
|
||||||
|
}
|
||||||
|
31
src/notify.rs
Normal file
31
src/notify.rs
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
extern crate reqwest;
|
||||||
|
use crate::data_toml;
|
||||||
|
use crate::url;
|
||||||
|
//use serde_json::json;
|
||||||
|
|
||||||
|
pub async fn get_request(limit: i32, ) -> String {
|
||||||
|
|
||||||
|
let token = data_toml(&"access");
|
||||||
|
let url = url(&"notify_list");
|
||||||
|
|
||||||
|
let client = reqwest::Client::new();
|
||||||
|
let res = client
|
||||||
|
.get(url)
|
||||||
|
.query(&[("limit", limit)])
|
||||||
|
.header("Authorization", "Bearer ".to_owned() + &token)
|
||||||
|
.send()
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
|
||||||
|
let status_ref = res.error_for_status_ref();
|
||||||
|
|
||||||
|
match status_ref {
|
||||||
|
Ok(_) => {
|
||||||
|
return res.text().await.unwrap();
|
||||||
|
},
|
||||||
|
Err(_e) => {
|
||||||
|
let e = "err".to_string();
|
||||||
|
return e
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,14 +1,14 @@
|
|||||||
extern crate reqwest;
|
extern crate reqwest;
|
||||||
use crate::token_toml;
|
use crate::data_toml;
|
||||||
use crate::url;
|
use crate::url;
|
||||||
use serde_json::json;
|
use serde_json::json;
|
||||||
use iso8601_timestamp::Timestamp;
|
use iso8601_timestamp::Timestamp;
|
||||||
|
|
||||||
pub async fn post_request(text: String, cid: String, uri: String, cid_p: String, uri_p: String) -> String {
|
pub async fn post_request(text: String, cid: String, uri: String, cid_p: String, uri_p: String) -> String {
|
||||||
|
|
||||||
let token = token_toml(&"access");
|
let token = data_toml(&"access");
|
||||||
let did = token_toml(&"did");
|
let did = data_toml(&"did");
|
||||||
let handle = token_toml(&"handle");
|
let handle = data_toml(&"handle");
|
||||||
|
|
||||||
let url = url(&"record_create");
|
let url = url(&"record_create");
|
||||||
//let url = "https://bsky.social/xrpc/com.atproto.repo.createRecord";
|
//let url = "https://bsky.social/xrpc/com.atproto.repo.createRecord";
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
extern crate reqwest;
|
extern crate reqwest;
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
use crate::url;
|
||||||
|
|
||||||
pub async fn post_request(handle: String, pass: String) -> String {
|
pub async fn post_request(handle: String, pass: String) -> String {
|
||||||
|
|
||||||
let url = "https://bsky.social/xrpc/com.atproto.server.createSession";
|
let url = url(&"session_create");
|
||||||
|
|
||||||
let mut map = HashMap::new();
|
let mut map = HashMap::new();
|
||||||
map.insert("identifier", &handle);
|
map.insert("identifier", &handle);
|
||||||
|
Loading…
Reference in New Issue
Block a user