logo头像

Edward.K Thinking

VSTS + Microsoft Teams 高效開發團隊溝通平台


在先前的關於DevOps幾篇文章中,談到一個重點就是在DevOps要成功,重點在於團隊成員間的溝通。既然溝通這樣重要,就需要一個比較好的協同合作工具。在使用VSTS中,我們可以透過這工具完成下面事項


然後,藉由Microsoft Teams把整個溝通循環建立起來,來讓整個開發團隊在合作與溝通上,可以更完善。因此,我們便可以開始整合Microsoft Teams和VSTS。首先,要把Microsoft Teams與VSTS整合需要注意幾點事項

  • 免費版的Microsoft Teams無法與VSTS整合
  • Team Foundation Server 2017 必須要到Update 2
  • VSTS Account或是其AAD,必須跟Microsoft Teams要相同,如果不相同,不會完全不能用,但只能用部分整合功能
  • 建立兩者的整合者,必須是VSTS內Project的Admin角色
  • Kanban 和 Messaging 只能被使用在VSTS,TFS還不能

如果準備好以上事項,就可以開始整合了,VSTS與Microsoft Teams整合,可以在Teams用到VSTS功能用三種

  • Kanban
  • Story
  • 連接器的運用

整合VSTS Kanban


要整合VSTS到MS Teams,是相當方便的,只要在MS Teams的Tab部分選擇VSTS,如下圖

就會要你選擇VSTS的組織,然後要輸入VSTS的登入帳號密碼,這邊要注意的一點,如果MS Teams的AAD和VSTS AAD不同,即使輸入帳號密碼後,也會發生錯誤,錯誤訊息會像這樣

抱歉! 您已以 Microsoft 帳戶 目錄中的 Chia Chi Kuo 身分登入。因為登入 Microsoft Teams 時使用了 XXXXX . 目錄中的 Edward Kuo ,所以您也必須以該身分登入。請關閉此視窗,然後重試


或許這一點未來會被改正,接著就選擇你VSTS URL,再來就是選擇相關專案和Backlog Level,Backlog Level只能選到Story,Task層級是無法選擇的


這樣設定完成後,就可以在Teams裡面去看VSTS Kanban資訊了,不過,目前本篇撰寫時候,如果你的VSTS是使用新版的UI,將無法與MS Teams整合,你點選剛剛綁定好的Kanban,顯示出來會是一片空白,這時候必須要到VSTS取消使用新版的UI,就可以了

Story & Taskm於頻道內討論


上面方式可以讓你在Channel的Tab釘選VSTS Kanban,要運用這個情境我想大都只是在每天Daily Meeting或是Planning Meeting用到的機率比較高一點,真正在工作的時候,更常會是在頻道裡面針對某個Task或是Story討論的場景反而比較多,VSTS + MS Teams也可以做到這一點,一般來說如果先有坐到前面第一項,就可以在Channel內使用@VSTS來開始使用這功能,如果不行,也可以到市集裡安裝VSTS的Bot方式來進行


從安裝功能可以看到,裝了此Bot後,不僅可以在頻道內叫出VSTS的Task進行討論,也可以做釘選VSTS Kanban


在對話框內打上@VSTS,就可以呼叫VSTS快捷出來,在這框中,可以打上Task或是Story ID,如果記不起來ID,也可以透過關鍵字去搜尋。


不過,這邊有一點要注意,就是有時候這功能似乎會頓頓的,並不能完全很順的可以使用,如果遇到卡住的是後,只要把這次的訊息送出,就可以正常,或是等待輸入框中的Search VSTS字樣消失就可以了,不然,你打的字會重疊上去,就會發生無法使用狀況

連接器的運用


在連接器的運用方面,雖然,VSTS的通知也是可以透過Webhook方式完成,像是要把VSTS訊息發送到Slack也是藉由WebHook方式把雙方串聯起來,不過,現在在MS Teams裡面可以不需要這樣麻煩了。就可以透過介面方式設定完成後,就能把VSTS訊息傳送到Teams裡面


依舊是選擇連接器


到這邊,就可以依照你想要通知的需求去做設定,不過,這邊有點繁瑣就是,因為可以設定東西很多,一次都只能針對一個項目設定,所以,假設你想要設定很多種通知,相對來說就會麻煩一點


一旦設定好之後,到VSTS的Services Hooks裡面就會發現Teams幫你設定很多的通知了,在Services Hooks內是可以變更這些設定,但我會建議這部分還是從Teams連接器內設定會比較好一點,如果要刪掉此設定,也從Teams方著手較好。


一旦設定成功後,就可以在Channel收到VSTS發送過來的Message Card了


藉由這方式,可以讓大家溝通建立在MS Teams,同時,在開發時期,也可以讓團隊成員針對專案進行做快速溝通,當然,就從DevOps角度切入化,開發與維運的資訊都可以被集中在一個協同合作平台上,且資訊是公開透明的。另一個好處在於,MS Teams內的訊息量是不會被限制的

上一篇