[英]Exchange telephone number for user id in Telegram
我在groovy寫了一個Telegram Bot,這是一塊蛋糕。
現在,為了注冊propper webhooks,我需要獲得用戶的id。
我讀過,我應該調用auth.sendCode方法來啟動該進程。
有沒有更簡單的替代方案?
如果沒有,我如何以最小的努力調用sendCode
,並且可能沒有任何其他依賴項? 使用普通java或curl的任何示例或指針都會很好。
經過一些研究,我得到了一個簡單的解決方案。
我沒有通過MTProto對Telegram API進行身份驗證,而是顛倒了這個過程。 我實現了一個新的bot命令:
/login {my-user-id}
這樣用戶就可以在Telegram bot聊天中發送他的id(稍后可以是一些生成的令牌),並且bot會發送此消息 - 以及Telegram用戶ID! - 通過webhook到我的服務器,我在那里進行匹配和保存。
實現如下:
switch( json.message.text ){
case ~/\/login \w+/:
String userId
text.toLowerCase().eachMatch( /\/login (\w+)/ ){ userId = it[ 1 ] }
String telegramUserId = json.message.from.id
saveJoin userId, telegramUserId
break
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.