summaryrefslogtreecommitdiff
path: root/protocols/Telegram/src/server.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/Telegram/src/server.cpp')
-rw-r--r--protocols/Telegram/src/server.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/protocols/Telegram/src/server.cpp b/protocols/Telegram/src/server.cpp
index 2f8f491d09..156af0c4ea 100644
--- a/protocols/Telegram/src/server.cpp
+++ b/protocols/Telegram/src/server.cpp
@@ -345,6 +345,10 @@ void CTelegramProto::ProcessResponse(td::ClientManager::Response response)
case TD::updateUser::ID:
ProcessUser((TD::updateUser *)response.object.get());
break;
+
+ case TD::updateUserFullInfo::ID:
+ ProcessUserInfo((TD::updateUserFullInfo*)response.object.get());
+ break;
}
}
@@ -1220,6 +1224,8 @@ void CTelegramProto::ProcessStatus(TD::updateUserStatus *pObj)
}
}
+/////////////////////////////////////////////////////////////////////////////////////////
+
void CTelegramProto::ProcessUser(TD::updateUser *pObj)
{
auto *pUser = pObj->user_.get();
@@ -1317,3 +1323,15 @@ void CTelegramProto::ProcessUser(TD::updateUser *pObj)
}
}
}
+
+void CTelegramProto::ProcessUserInfo(TD::updateUserFullInfo *pObj)
+{
+ if (auto *pUser = FindUser(pObj->user_id_)) {
+ auto *pInfo = pObj->user_full_info_.get();
+ if (auto *pBirthday = pInfo->birthdate_.get()) {
+ setWord(pUser->hContact, "BirthDay", pBirthday->day_);
+ setWord(pUser->hContact, "BirthMonth", pBirthday->month_);
+ setWord(pUser->hContact, "BirthYear", pBirthday->year_);
+ }
+ }
+}