fix: BotFather stores rec: AliasRecord so resolve_alias finds bot aliases
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -124,15 +124,17 @@ async fn handle_newbot(state: &AppState, owner_fp: &str, text: &str) -> String {
|
||||
let fp_key = format!("bot_fp:{}", fp);
|
||||
let _ = state.db.tokens.insert(fp_key.as_bytes(), token.as_bytes());
|
||||
|
||||
// Register alias
|
||||
let _ = state
|
||||
.db
|
||||
.aliases
|
||||
.insert(alias_key.as_bytes(), fp.as_bytes());
|
||||
let _ = state
|
||||
.db
|
||||
.aliases
|
||||
.insert(format!("fp:{}", fp).as_bytes(), name_lower.as_bytes());
|
||||
// Register alias (all 3 keys needed for resolve_alias to work)
|
||||
let _ = state.db.aliases.insert(alias_key.as_bytes(), fp.as_bytes());
|
||||
let _ = state.db.aliases.insert(format!("fp:{}", fp).as_bytes(), name_lower.as_bytes());
|
||||
let alias_record = serde_json::json!({
|
||||
"alias": name_lower,
|
||||
"fingerprint": fp,
|
||||
"recovery_key": "",
|
||||
"registered_at": chrono::Utc::now().timestamp(),
|
||||
"last_active": chrono::Utc::now().timestamp(),
|
||||
});
|
||||
let _ = state.db.aliases.insert(format!("rec:{}", name_lower).as_bytes(), serde_json::to_vec(&alias_record).unwrap_or_default());
|
||||
|
||||
tracing::info!(
|
||||
"BotFather: created bot @{} for owner {}",
|
||||
|
||||
Reference in New Issue
Block a user