Skip to content

Commit

Permalink
added better user tracking
Browse files Browse the repository at this point in the history
  • Loading branch information
yashgo0018 committed Jun 25, 2024
1 parent c20d42d commit 39a5b83
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 11 deletions.
1 change: 0 additions & 1 deletion src/bot.rs
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ impl AvailableVotingTypes {
}
}


pub async fn handle_vote_command(conn: &mut PgConnection, bot: &Bot, chat_id: i64, vote_type: &str, initiator_id: i64, mentioned_user_id: i64) -> ResponseResult<()> {
let vote_type = AvailableVotingTypes::from_str(vote_type);
if vote_type.is_none() {
Expand Down
27 changes: 17 additions & 10 deletions src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,27 +31,34 @@ async fn main() {
let mut initiator_id = 0;
let chat_id = msg.chat.id.0;
db_create_group(connection, chat_id);
println!("Chat ID: {}", chat_id);

if let Some(sender) = msg.from() {
db_create_user(connection, sender);
initiator_id = sender.id.0 as i64;
println!("Sender ID: {:?}", sender);
// create user
db_create_user(connection, sender);
// insert user in the group
db_insert_user_in_group(connection, chat_id, initiator_id);
}

println!("Message: {:?}", msg);

match &msg.kind {
MessageKind::NewChatMembers(MessageNewChatMembers {new_chat_members}) => {
for member in new_chat_members {
db_create_user(connection, member);
let member_id = member.id.0 as i64;
// create user
db_create_user(connection, member);
// insert user in the group
db_insert_user_in_group(connection, chat_id, member_id);
println!("Member: {:?}", member);
}
}
MessageKind::LeftChatMember(MessageLeftChatMember{left_chat_member}) => {
let member_id = left_chat_member.id.0 as i64;
// create user
db_create_user(connection, left_chat_member);
// insert user in the group
db_insert_user_in_group(connection, chat_id, member_id);
// remove user from the group
db_remove_user_from_group(connection, chat_id, member_id);
}
MessageKind::Common(message) => {
Expand Down Expand Up @@ -96,8 +103,9 @@ async fn main() {
}
}
teloxide::types::MessageEntityKind::TextMention {user} => {
db_create_user(connection, user);
mentioned_user_id = user.id.0 as i64;
// create user
db_create_user(connection, user);
}
_ => {
return Ok(());
Expand All @@ -106,15 +114,14 @@ async fn main() {

// check if the user is in the group
let user = bot.get_chat_member(ChatId(chat_id), UserId(mentioned_user_id as u64)).await?;
// if user.is_none() {
// bot.send_message(ChatId(chat_id), "User not in group").await?;
// return Ok(());
// }
if user.kind == teloxide::types::ChatMemberKind::Left {
bot.send_message(ChatId(chat_id), "User not in group").await?;
return Ok(());
}

// insert user in the group
db_insert_user_in_group(connection, chat_id, mentioned_user_id);

println!("user: {:?}", user);

handle_vote_command(connection, &bot, chat_id, vote_type, initiator_id, mentioned_user_id).await?;
Expand Down

0 comments on commit 39a5b83

Please sign in to comment.