summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsyn <isaqtm@gmail.com>2021-01-16 02:52:25 +0300
committersyn <isaqtm@gmail.com>2021-01-16 02:52:25 +0300
commit43c49b38f66805449ec8c8557e23e5cf6deca8c9 (patch)
tree2331fc0fc4cbf6d498612e8214a3827b37290a7c
parentfc559079043e649b10cef592718ffbf2025a7b5a (diff)
downloadairception-43c49b38f66805449ec8c8557e23e5cf6deca8c9.tar.gz
report panic
-rw-r--r--src/router.rs32
1 files changed, 17 insertions, 15 deletions
diff --git a/src/router.rs b/src/router.rs
index f98be7d..ec3835e 100644
--- a/src/router.rs
+++ b/src/router.rs
@@ -3,8 +3,8 @@ use log::{debug, error, info};
use serde_json::Value as JsonValue;
use crate::client_ext::Update;
-#[derive(Debug)]
-pub struct UpdateHandler(); //pub crate::airdata::AsyncData);
+#[derive(Clone)]
+pub struct UpdateHandler(pub crate::airdata::AsyncData);
impl tdlib_rs::update::Handler for UpdateHandler {
fn handle_json(
@@ -14,7 +14,7 @@ impl tdlib_rs::update::Handler for UpdateHandler {
) -> futures::future::BoxFuture<'static, ()> {
//let data = self.0.clone();
Box::pin(async move {
- let update: Update = serde_json::from_value(req).expect("invalid update");
+ let update: Update = serde_json::from_value(req.clone()).map_err(|err| error!("going to panic: invalid update: {:?} {:?}", req, err)).expect("invalid update");
match update {
Update::UpdateAuthorizationState(state) => {
if let Err(e) = crate::auth::continue_auth(&client, state.authorization_state).await {
@@ -33,19 +33,21 @@ impl tdlib_rs::update::Handler for UpdateHandler {
}*/
Update::UpdateConnectionState(upd) => {
info!("connection: {:?}", upd.state);
- } /*
- UpdateUser(update) => {
- let id = update.user.id;
- let _ = data.insert_user(update.user).await;
- info!("update user {}", data.get_username_lossy(id).await);
}
- UpdateUserStatus(update) => {
- info!(
- "{} is now {:?}",
- data.get_username_lossy(update.user_id).await,
- update.status
- );
+ Update::UpdateUser(update) => {
+ //let id = update.user.id;
+ let name = format!("{}{}", update.user.first_name, update.user.last_name);
+ info!("update user: {}, status: {}", name, update.user.status);
+ //let _ = data.insert_user(update.user).await;
+ //info!("update user {}", data.get_username_lossy(id).await);
}
+ Update::UpdateUserStatus(update) => {
+ info!(
+ "{} is now {}",
+ //data.get_username_lossy(update.user_id).await,
+ update.user_id, update.status
+ );
+ }/*
UpdateNewChat(update) => {
let chat = update.chat;
info!("new chat: {}", chat.title);
@@ -71,7 +73,7 @@ impl tdlib_rs::update::Handler for UpdateHandler {
update.file.size
);
}*/
- _ => debug!("unknown update: {:?}", update),
+ _ => {} //debug!("unknown update: {:?}", update),
}
})
}