Skip to the content.

Teams app 开发最佳实践

经常有朋友问我,teams app开发有哪些最佳实践,我看了一些别人的分享,也结合我自己的经验,总结了一下一共有这么几点:

Read More

TeamsApp 和 ChatGPT 的几种结合方法

ChatGPT (Conversational Generative Pre-training Transformer) 是由 OpenAI 开发的一种大型语言模型,它可以自然地生成人类语言,并用于聊天机器人、对话系统、自动文本生成等应用。

Read More

TeamsApp升级之路 之 EF Core SQL 篇

我们继续 LuckyDraw 的升级之路,上篇讲了在infra层面的数据库配置,这篇文章主要介绍如何在 LuckyDraw 的 bot api service 里使用 EF core 来处理抽奖,并且同时保证向前兼容,也就是说如果已经有个抽奖是使用 Azure storage table 的,那就继续使用 storage table,虽然这种做法增加了大量的代码工作量,但是可以保证用户体验,不会升级之后,用户突然觉的之前的抽奖怎么打不开了或者不能参与了。

Read More

TeamsApp LukcyDraw升级之路 之 DB Infra 篇

今天继续 LuckyDraw 的升级之路,之前在1500以上用户同时使用的时候,特别是在短时间内大家一起点击参与抽奖参的时候,服务会出现大量的错误,分析后发现,出现错误的原因基本都是 Azure Storage Table 返回的。当时使用 Azure Storage Table 的最最主要原因是它便宜,太便宜,真心便宜!缺点就是:

Read More

Teams app LukcyDraw 的升级之路

我已经有很长一段时间没有更新我的 Teams App:LuckyDraw 了,有很多用户反馈给我,因为快到圣诞,新年和春节了,很多公司都开始要使用LuckyDraw来搞抽奖活动,希望LuckyDraw能支持大用户量的抽奖,所以,我准备好好更新一波,让LuckyDraw支持 3000 用户的大群抽奖。

Read More

Teams app 的 SSO 机制

我们来继续我们的 Teams sample 之旅,上一个讲了 Tab app,那我们这里再深入一步,看一下如何使用 sso 机制。

Read More

Teams Tab App 分析

前面几篇文章我们详细讲了如何使用Teams Toolkit 来创建、运行、调式一个 bot app,然后我们一起分析了bot app 里的具体的每个方面。这篇文章和接下去的几篇我们以同样的思路来深入解析 Teams Tab app。

Read More

Teams Bot App 用户互动

上一篇文章我们解析了 teams bot 的主体代码逻辑,深入的了解它是怎么运作起来的。我们这篇文章来详细讲一下 adaptive card 在 Teams 里的互动,我们用上一个 app 里的 learn 卡片为例。

Read More

Teams Bot App 代码解析

上一篇文章我们讲了如何使用 teams toolkit 来快速弄一个 teams bot,可以看到 toolkit 给我们提供了极大的方便性,让开发人员可以更好的把重心放在 coding 上,而不是各种配置上。

Read More

Teams Bot App 初探

上一篇文章深入讲了incoming webhook。这篇文章我们来看一个稍微复杂点的,正式点的 teams app:bot。

Read More

Teams Toolkit 之 Incoming Webhook

上一篇文章介绍了如何使用 teams toolkit 来快速创建一个最最简单的 teams app:incoming webhook。这篇文章我们就来深入看一下 incoming webhook的代码,我自己的学习方法就是花时间把一个新东西理解透彻后,再学另一个,因为一旦深入理解一个东西后,会发现很多知识是相通的。

Read More

入门 Teams Toolkit

两年多前我写过一篇介绍 Teams Toolkit 的文章,有些读者希望我能讲一下最新版本的使用,的确在过去两年间,Teams Toolkit 变化非常大,增加了非常多的实用功能,我接下去就用几篇文章来详细讲一下如果使用它来创建,开发,调试,发布 teams app。

Read More

如何获取一个会议的 transcripts

Teams 开发团队在过去半年里提供了很多的关于会议的 api,这让我们又有了很多的可以实现的功能和场景。今天我要介绍的是如何获取会议的 transcripts。

Read More

如何迁移到 Teams 的分享

应邀今天给社区的 Teams 开发者做了一次技术分享,讲了如何帮助客户从 skype for business,从 slack,或者从其他平台上将数据迁移到 Teams 上:

Read More

Teams 和 Outlook 的集成

这几天有一个朋友问我如何做 Outlook 和 Teams 的集成,这位朋友不太愿意自己写代码开发,所以我做了一些研究,发现有两种简单的集成方法。

Read More

Teams 和 Azure Communication Service

Azure Communication Services是微软Azure平台上的一项服务,它可以帮助开发人员使用一组API和工具来建立和管理实时通信功能。它支持语音、视频、短信和即时通信功能,可以用于构建应用程序和服务,例如聊天应用程序、客服系统和在线会议系统。

Read More

技术分享:Teams Meeting App

今天有幸给Teams China Community做了一次在线的技术分享,上分享了如何开发 Teams Meeting App 的,大家参与度很高。我把ppt分享在这里:

Read More

如何从零学习 Microsoft Graph API

在 Teams 的开发过程中,我们或多或少的会使用到 graph api,很多读者希望我介绍一下 graph api 的teams开发,那我就用几篇文章来具体介绍一下如何从零开始学习 Graph API。

Read More

Teams Developer Portal介绍

在去年的 Build2021 大会上讲到的 Teams Developer Portal 已经上线一段时间了,我这几天玩了一下,发现比之前的 app studio 强大了很多,所以赶快写篇文章和大家分享。

Read More

Teams Meeting 实时事件通知

Microsoft Teams最近推出了很多新的功能和api,我们今天就来一起看一下 teams 会议的实时事件通知,我觉得有了这个功能,我们的app,我们的bot又可以有很多可以实现的场景了。

Read More

如何获取Teams Meeting 详情

最近有一些朋友问我,有没有可能获取到会议的详情,我搜索了目前所有的 teams 文档,发现有一个api可以获取,不过在我写这篇文章的时候,这个 api 还在 preview 阶段,可能在正式发布前,还会有一些变化,但是按照之前的经验,这个变化基本不会有。 :)

Read More

Teams Meeting App的 task 弹出框

前几篇文章我们介绍了 Teams Meeting App 的各种类型和如何从无到有的使用 net6 和 c# 来开发一个 Teams Meeting app,那今天我们开始讨论一些 meeting app 的高级互动: task 弹出框。我们先来快速修改一下之前的代码,看看什么是 task 弹出框。

Read More

会议中的Meeting App

接着我们上两篇博客文章,我们说了如何开发会议前和会议后的 meeting app,那如何开发一个会议中的 app 呢,实际上比较简单,我们只需要在 tab 的配置项中勾选下面这两个选项即可。

Read More

如何获取 Teams Meeting 的上下文信息

我们上一篇文章讲了如果使用 net6 和 c# 来快速开发一个最简单的 teams meeting app。为了让大家比较容易理解,上个sample非常简单,简单到没有什么功能,那我们现在就来慢慢扩展这个app的功能:看看如何获取 meeting 的上下文。

Read More

开发第一个Meeting App

今天我们来看一下如何使用c# net6 来开发一个 teams的 meeting app。首先先确保本地安装了最新版本的 net6。创建一个目录,然后在目录下输入下面的命令行,让 dotnet 来生成一个初步的asp.net core 代码框架。

Read More

Teams 的 Meeting App

Teams 的 Meeting App 已经正式推出了一段时间,相应的文档也已经较为完善了,我接下来会写一系列的文章,来介绍如何开发一个自己的Meeting app。这篇文章作为这个系列的第一篇,将介绍 meeting app 是如何被使用的,有哪些可以扩展的点。

Read More

将Teams app升级到net6

net6 发布已经有一个多月了,因为我的LuckyDraw app是使用Azure app service,当时我查了一下app service还没有ready,昨天我又查看了一下,发现app service已经默认装了net6。

Read More

Teams Bot如何解析和发送 at 用户

之前有好些看博客的开发者问我有什么较好的方法来解析 at 信息。用户在channel里发消息给 bot 的时候,通常需要 at bot的名字,当然在消息文字中可能还会 at 其他用户,比如 bot的名字是 MyBot,那 bot 收到的 Activity 里的 Text 值类似于:

Read More

Teams Bot库的JSON

如果你和我一样,一直使用最新的 asp.net core 来开发teams bot的应用,那么你就会发现当你使用最新的 LTS 3.1版本或者 5.0 版本或者最新的 6.0 版本,asp.net core 默认使用System.Text.Json库,所以当你在处理 Teams 发送来的请求的时候,如果还是使用类似于下面的代码,那很多时候就是发现activity解析不出来,返回的response也不对。

Read More

Teams App如何选择用户

当我们在开发app的时候,很多时候需要选择一个用户,比如我们开发一个审批的app,就要选择审批人,所以这个app就需要实现选择人的界面,而且需要获取完整的用户列表,但是要获取完整的用户列表又需要app拥有较高的权限。通常企业的IT部门不太愿意把这种权限给到app。

Read More

Teams App设备的地理位置能力

我们上一篇文章讲了如何在Teams app里扫描二维码,这篇文章我们来看一下如何获取当前设备的地理位置,并且在地图上显示地理位置。

Read More

Teams App 扫描二维码

上篇文章我们讲了如何在app的manifest里设置设备的权限,这篇文章我们来实际操作开发一个可以扫描二维码的teams app。

Read More

Teams App自定义

当我们开发的 app 被企业安装后,有些企业挺希望能做一些自定义,如果把app的图标改的更加符合企业风格一点,或者把app的名字改成让本企业员工更容易理解一些,或者把app界面的主题色改成个企业风格更加搭配一些,或者对于隐私协议进行一些修改。

Read More

发送ActivityFeed的隐藏功能

前两篇文章介绍了如何发送 activity notification,这篇文章主要介绍两个隐藏功能,实际上所谓的隐藏功能是指大家在阅读官方文档是会忽略的两个点,但是实际上也是很实用的两个功能点。

Read More

发送不同类型的ActivityFeed

上一篇文章讲到了如何使用最新的Graph API来给一个用户发送一个简单的 Activity Feed。我们这篇文章来详细讲一下发送三种不同类型的消息。

Read More

用AzureFunction开发最简单的Teams Bot

之前我有一篇文章讲了如何在azure function上开发最简单的outgoing webhook,收到一些反馈,建议我介绍一下如果在azure function上开发teams bot,那这篇文章就来讲一下如何用function来快速开发bot。

Read More

DevHack上的分享

今天很有幸受邀参加了上海,北京,广州和线上联动的Dev Hack活动,我远程在线上分享了在开发LuckyDraw app时学到的一些经验。

Read More

如何在 Apple Silicon (M1) 上开发 Teams App

apple 在几个月前发布了自家的芯片 M1,由于将多核cpu,多核gpu,神经网络运算,内存和其他一切处理部件高度整合在一起,大大提高数据传输速度。发布后好评如潮,我也没有忍住,入手了一台最低配的mac air m1。目前 M1 还是有很多软件不能很好支持,当然,这个无法阻挡我在上面的开发。我给大家分享一下我在apple silicon上开发的过程。

Read More

迁移聊天记录到Teams

有一些朋友问我teams是否支持将其他平台/系统里的聊天记录迁移某个channel里,答案是肯定的,teams团队在去年年中的时候就提供了这个功能。这个功能是通过graph api来完成的,我们今天就来看看如何迁移聊天记录到teams里。

Read More

LuckyDraw app使用CosmosDB的成本分析

我在以前的博客里说过我的LuckyDraw app在数据存储方面使用的是 Azure Table Storage,当时选择这个的原因是成本考虑,因为它实在是便宜,对于我这种个人开发维护的免费的teams app来说,成本是一个很重要的考量点。

Read More

使用Azure轻松实现Teams App的全球合规性

我在之前的一篇博客里面讲了合规性对于我们Teams app是非常重要的,因为office365平台就是面向全世界用户的,我们开发的teams app一旦发布后,立刻就会有各国各地区的用户来进行安装使用,所以符合用户所在地区的要求是非常重要的。

Read More

如何使用Graph API获取团队的主频道

当我们在Teams里创建一个团队team的时候,系统会默认创建一个频道channel,这个频道就是我们最主要最核心的一个channel,那我们如何可以用Graph API来找到这个主channel呢?

Read More

如何获取租户中所有的Team

大家在使用Graph API开发Teams App的时候,有时候会需要获取某个租户Tenant的所有team,在写这篇文章的时候Graph API并没有提供这么一个功能,没有一个类似于”GET /teams”的api。

Read More

Teams Bot开发系列:Middleware

middleware是目前一些framework比较流行的概念,通常一个开发框架需要提供一些可扩展可定制化的功能。所以middleware这种pattern就很实用。

Read More

Teams Bot开发系列:Bot验证

我们今天来说一下authentication,authentication一直是一个复杂的问题。bot里的authentication也不简单。我们先来看一个概念:Bot Framework Token Service,根据官方定义,这个token service主要是:

Read More

Teams Bot开发系列:初识Bot

上次我们讲了Teams Bot开发的概述,讲了Azure Bot Service,Bot Framework SDK和我们自己的bot服务的概念,这篇文章就带大家看看Azure Bot Service和我们的bot是如何发生关系的。

Read More

在VSCode Remote环境下开发Teams Bot

我使用VS Code开发已经有蛮长一段时间了,时间长了,越来越喜欢VS Code,虽然有些时候会没有传统的VS方便,比如开发Azure Function时你需要编写一下launch.json,而且你需要手动启动StorageEmulator,但是也正是由于缺少VS的自动配置,需要你自己手动把环境一步步搭建出来,也让自己更加理解一些框架和技术。

Read More

如何开发Teams Bot

很多朋友问我如何开发一个成功的Teams Bot,他们说Bot Framework SDK看起来简单,但是真要的去开发一款成熟的bot,很多地方还是不知道如何使用。我从最早的bot framework还在beta的时候开始用,后来framework经历了多次大的改动,目前版本是v4,我想通过一系列的文章来系统的介绍如何使用bot framework来开发一个功能齐全的teams bot。

Read More

Teams Tab的Single Sign-On

在我写这篇文章的时候,这个SSO机制还是在 Developer Preview 阶段,可能在发布前还会有一些改进。不过我觉得这个功能很好,所以先和大家分享一下。

Read More

将Teams Template升级到dotnet core 3.1

为了方便开发者开发Teams应用,我在2018年做了dotnet c#的一套模板,这套模块一共有三种类型,一个是Teams OutgoingWebhook,一个是MessagingExtension,还有一个就是Tab。

Read More

Teams Bot 如何使用新的 System.Text.Json 库

我最近把 LuckyDraw的代码升级到了 .net core 3.1,当然我也很想使用最新的微软json库,System.Text.Json这个库的性能比之前Newtonsoft.Json速度更快,而且就我本人爱好来说,更加喜欢System.Text.Json的命名,之前一直觉得 JObject, JArray, JToken 这些名字不够符合 c# 的 naming guideline。

Read More

Java版本的Bot Framework SDK

微软为了鼓励Java开发人员开发bot,在上个月推出了Java的Bot SDK v4.6版本,目前还在Preview版本,相信不用多久就可以赶上其他版本了。

Read More

VSCode的Teams插件

随着今年在线的Build大会的结束,又是一大波的 Teams 新功能,新工具,新SDK。我接下来几篇博客就会详细和大家一一介绍。我今天先从VSCode的插件开始。

Read More

面向全球用户的Teams app之Culture数字篇

我前几周在微软Ignite the Tour北京大会上,分享了如何开发一款面向全世界用户的Teams App,里面介绍了在开发Global Ready的app时会遇到的各种挑战,反响很好。所以我准备写几篇文章,将这些内容分享给没有时间参加大会的同学。

Read More

Teams架构剖析(2019年版本)

在上个月刚刚结束的Ignite大会上,Teams产品的架构师Bill Bliss给大家奉上了最新的Teams的架构设计,之前2017年和2018年微软的技术大会上都Teams架构的分享,但是今年大神把Teams架构讲得很深入,覆盖面很广。我这里就挑一些,根据我的理解和各位分享一下。

Read More

LuckyDraw app被评为Microsoft365 App Award

今天查了一下LuckyDraw app,突然发现我上半年开发的Teams app: LuckyDraw,竟然多了一个勋章图标,点进去一看是微软给我的app评了一个”Microsoft 365 App Award”。Super surprise!!😍😍😍

Read More

Ignite the Tour(Beijing)顺利闭幕

今年北京场的Ignite the Tour圆满结束,我有幸被邀请做了两场技术讲座,一场是45分钟,一场是15分钟,主题都是讲如何在Teams平台上开发一款面向全世界用户的Teams app!

Read More

Teams团队的成员列表API的已知问题

如果大家经常使用Graph API来对Teams进行操作管理的话,有时候会遇到一些奇怪的问题,我前两天还在Stack Overflow上回答了一个用户的问题,这个问题我自己也遇到过。所以我想用这篇文章来分享一下,万一以后大家遇到类似的问题,就有所防备。

Read More

Teams Bot如何判断用户所在的时区

一说到时间,就会联想到时区,夏令时等头痛的问题,不同国家有不同国家的规定。如果你希望你的Teams Bot可以判断出当前用户所在的时区,从而可以针对性的进行一些处理时,你要做好心理准备,这个复杂程度远远超过你的想象。因为一个用户这次在一个时区内登入Teams,下一次可能就在另一个时区了。

Read More

分享到Teams

在今年三月份末,Teams的官方文档推出了一个新功能:将网页(一个URL)分享到Teams里。

Read More

使用Adaptive cards来构建Teams app的界面

Teams app的task module十分好用,当用户点击了一个卡片上的按钮是可以在Teams里弹出一个对话框,对话框的内容可以是开发人员自己的一个网页页面,或者是adaptive card。 在我的LuckyDraw bot里,我比较了这两种的优势和劣势,最后选择了Adaptive card。如果采用网页,那最大的优势就是可以实现任何你想要的功能和界面互动,只要是html+css+js可以做到的,基本都可以在这个弹出的对话框里实现,劣势就是工作量大。可能有很多读者会质疑说开发一个html页面有什么难的,早就轻车熟路了。那我先来介绍一下到底adaptive card有哪些功能,然后再来看实现这些功能的页面会需要多少工作量。

Read More

Teams的Incoming Webhook

我在去年的一篇文章里介绍过Teams的outgoing webhook,这个可以用来实现一个简单的用户和service对话机制。

Read More

Teams内嵌的卡片image的限制

我的LuckyDraw上线后收到了不少有价值的反馈,其中有一部分是针对图片的,有一些用户说他们填写了image的url,但是图片显示不出来。

Read More

Bot Service自带的数据分析统计功能

每个产品上线后都希望自己能实时看到多少用户在使用我的产品,我的服务,有多少使用量,有没有遇到问题。市面上做用户数据、行为分析的公司也不少,但是大多数都需要我们修改一些代码来集成第三方的sdk库。

Read More

如何使用ARM创建Teams Bot所需要的Azure资源

相信很多devops已经全面开始使用ARM来创建azure资源了,ARM有很多方便的地方,比如简单易学,Infrastructure as Code,但是深入使用ARM开始会发现一些有待改进的方面。这篇文章主要是分享一下我在做Teams app的时候使用ARM来创建资源的经验,以及遇到的一些问题。希望大家以后遇到类似问题可以少走弯路。

Read More

Teams bot的调用限制

上个月Teams团队发布了对Teams app/bot调用api的频率的限制。这也从侧面说明Teams app越来越多,Teams团队需要优先保证Teams本身的计算资源,来提供流畅的用户体验。

Read More

什么是App Studio

Teams的app studio很多用户可能不知道,但是对于一个teams平台的开发人员来说,这个是开发利器,利用这个工具你可以轻松的配置manifest文件,可以轻松的一站式创建teams app所需要的所有东西。而且你可以很方便的可视化配置adaptive card。 那就让我们来看看如何使用app studio来创建一个teams app。

Read More

如何做Teams Bot的测试覆盖

在我昨天的文章中介绍了如果对Teams bot做service level的测试,那到底要写多少的测试代码才算够?如何才算测试到位了?这个时候我们就需要用”测试覆盖率”来衡量,虽然覆盖率高并不一定代表着就可以高枕无忧的以为我们软件质量高了,但是测试覆盖率是一个代码质量的很好的信心指数。😄

Read More

Teams Bot的ServiceLevel测试

每一个Teams bot实际上就是一个web api服务,这个服务通过Bot Framework和Teams进行通讯,所以对于Teams app的测试就是对于一个api service的测试。

Read More

2019年5月 Teams Community Call (China)

这个月有四个话题:

  • Tony Xia:这个月的Teams的产品更新,Teams开发能力的更新,开源项目更新,库更新
  • 王远:升级/迁移到Microsoft Teams
  • 刘钰:Teams账号注册探索指南
  • Paul Zhang/Cheung:Build2019上Teams的最新动态
Read More

终于收到HacktoberFest的奖品啦

去年10月份给微软repo提交了5个PR,达成了HacktoberFest 2018,今天终于收到了从美国到澳洲,飘洋过海,姗姗来迟的T-shirt,不过大小正好。算是新年礼物了,哈哈

Read More

新增功能!Trello个人应用程序登陆 Microsoft Teams

从初创企业到《财富》500强公司, Trello是团队在任何项目上进行合作的视觉方式。在Microsoft Teams中, 我们发现围绕项目进行大量对话和协作的方式。因此, 一个首屈一指的项目管理工具应该与团队协作的终极枢纽进行合作, 以便让员工更好地一起工作。

Read More

更新!在线状态和用户的共存模式保持一致

根据用户反馈,我们正在改进:当组织同时使用Microsoft Teams和Skype for Business时的用户在线状态。通过此更新,路由和在线状态将完全保持一致。为确保路由能跟随用户的在线状态,所以在线状态的更新现在会基于用户的共存模式。

Read More

使用Azure Pipelines来实现Teams App的CI

我在之前的文章里介绍了如何一步步配置CI/CD来部署Teams App( 之前的文章 ),随着Azure DevOps的发展,微软推出了Azure Pipelines。在这篇文章中,主要介绍什么是Azure Pipelines,以及如何使用Azure Pipelines来进行Teams App的构建、测试和部署工作负载

Read More

Site24x7 为Teams提供可智能 DevOps

我们生活在一个云的时代, SaaS 应用程序每天都在推动我们的生产力。作为一个消费者, 很难想象如果你最喜欢的应用无法访问,即使只是一秒钟无法访问。作为 SaaS业务, 更难以想象您的服务面临停机, 每一分钟停止服务都会花费大量的资金, 当然还损失客户的信任。Site24x7 创新的基于云的 it 监控工具提供了对基础架构 (网站、服务器、网络等) 关键性能参数的监控, 并提供了对服务运行状况的主动洞察, 使您的客户永远不会面临停机。

Microsoft Teams中新的Site24x7应用程序让DevOps在您最喜爱的协作工具里变得轻而易举。怎么做到的?见下文:

Read More

Teams App统计

周末闲来无事,统计了一下Teams的app商店里的app ( Teams App Store )。截至到现在(2018年11月)一共有145个app。要注意一点:如果app不是公开的(即单独安装到Office365租户里,并没有提交到office store),那不在这个统计里。

Read More

Microsoft Teams的Meet Now功能

今天,我们宣布完成了Skype for Business to Teams路线图中首次披露的几项关键会议功能。当个人联系,沟通和协作时,工作就自然而然的完成了,我们相信这些功能(除了我们2月的公告之外)使Microsoft Teams为所有类型的会议做好了准备。

Read More

Microsoft Teams免费版本初体验

Microsoft Teams推出有一段时间了,如果想要体验Teams,必须需要有Office365的订阅。最近微软为了进一步推广Teams,突然宣布Teams免费了。使用过Teams的读者知道Teams是基于Office365账号和组的,那它免费后,不使用Office365账号是否也可以登入?如果可以,那它在Azure体系里是怎么做的呢?免费版本在功能上会有什么不同吗?让我们一起来体验一下。

Read More

在Microsoft Teams中的Visio协作

所有Team站点都带有专用文件库,用于存储所有工作组的内容。 您现在可以从桌面或云存储站点将Visio文件上载到此库,例如,您所在Team的资产都集中在一个位置,供具有权限的任何人进行访问。与其他存储文件一样,您可以直接从Team对话链接到Visio图表。

Read More

使用PowerShell配置Microsoft Teams

作为 IT 专业人员, 我一直在寻找自动化任务的方法, 并使日常操作简单。当使用Microsoft Teams时, 是否能够在团队中自动创建团队,渠道和设置对于Microsoft Teams组建的成功与否至关重要。PowerShell对Microsoft Teams的支持使您可以做到这一点,它为我提供了额外的很多方法,使得团队管理变得更容易:

Read More

Microsoft Teams:团队Owner离开公司后,我们该怎么做?

您是否曾在这么一个团队里,该团队唯一有Owner权限的人离开了公司?不幸的是,如果这个人不再在公司里,您可能觉得没有办法让其他团队成员再成为team的owner。我有一个简单易用的解决方案,但您需要成为Office 365租户的Admin或联系你公司的help desk。

Read More