使用C#開發LineBot(9) - 取得新加入的好友身分資訊
在知道了如何建立LineBot的WebHook之後,許多朋友開始有了另一串問題。其中我最常被問到的就是,如何在用戶加入你的bot為好友的時候,取的用戶的身分xk7。 這個問題中有兩個關鍵: 用戶加入你的bot時,你如何得知? 如何取得特定用戶的身分資訊? 這兩個動作都不難,都可以在我們的WebHook中取得。 首先,當有一個新的用戶加入你的Bot為好友時,我們可以從WebHook取得的JSON得知,透過我們的SDK,你可以很簡單的以底下的程式碼判斷: if (ReceivedMessage.events.FirstOrDefault().type == "follow") { … } 因為新加入好友或是被解除封鎖,都會收到type是follow的event,因此上面的程式碼很容易判斷出有新的好友來了… 而得知新好友(用戶)來了之後,我們可以透果底下這一行取得用戶資訊: var userInfo = bot.GetUserInfo(ReceivedMessage.events.FirstOrDefault().source.userId); 得到userInfo物件之後,你可透過 displayName 輕鬆取得用戶暱稱,也因此,我們把用戶暱稱顯示出來: bot.ReplyMessage(ReceivedMessage.events.FirstOrDefault().replyToken, $"哈,'{userInfo.displayName}' 你來了...歡迎"); 得到的結果就是: 當用戶加入某個bot為好友,或是解除封鎖,都會收到follow,我們上面的程式碼抓到用戶名稱,顯示出來,結果就是上圖這樣。 很容易吧,試試看囉… hope enjoy it… 此範例原始程式碼位於 : https://github.com/isdaviddong/LineBotExample_GetUserInfo/blob/master/LineBotExample_GetUserInfo/Controllers/LineBotController.cs -------------------------------------------- 相關課程: http://www.studyhost.tw/NewCourses/L