teams app
文章平均质量分 69
Tony.X
这个作者很懒,什么都没留下…
展开
-
Teams app 开发最佳实践
Teams app 开发最佳实践原创 2023-01-29 08:39:33 · 13423 阅读 · 1 评论 -
TeamsApp 和 ChatGPT 的几种结合方法
TeamsApp 和 ChatGPT 的几种结合方法原创 2023-01-26 12:20:03 · 18303 阅读 · 0 评论 -
TeamsApp升级之路 - 大用户并发的 Teams http 请求优化
大用户并发的 Teams http 请求优化原创 2023-01-23 19:28:08 · 10687 阅读 · 0 评论 -
TeamsApp升级之路 之 EF Core SQL 篇
如何在 LuckyDraw 的 bot api service 里使用 EF core 来处理抽奖原创 2022-12-18 10:46:54 · 12721 阅读 · 0 评论 -
TeamsApp LukcyDraw升级之路 之 DB Infra 篇
3 步来完成 DB 的 infra 升级原创 2022-12-17 20:09:22 · 10427 阅读 · 0 评论 -
Teams app 的 SSO 机制
我们来继续我们的 Teams sample 之旅,上一个讲了 Tab app,那我们这里再深入一步,看一下如何使用 sso 机制。原创 2022-11-29 17:30:41 · 12963 阅读 · 0 评论 -
Teams Tab App 的 manifest 分析
上一篇文章我们深入来分析了 tab app 的代码,这篇文章我们研究一下 manifest原创 2022-11-27 09:19:15 · 11113 阅读 · 0 评论 -
Teams Tab App 代码深入浅出 - 配置页面
深入来分析看一下tab app 的代码原创 2022-11-19 08:08:01 · 11913 阅读 · 0 评论 -
Teams Tab App 分析
深入解析 Teams Tab app原创 2022-10-30 08:49:05 · 11945 阅读 · 0 评论 -
Teams Bot App 云端资源创建
这篇文章来详细讲 Teams app 的云端资源的自动创建原创 2022-10-08 10:39:03 · 10277 阅读 · 0 评论 -
Teams Bot App Manifest 文件解析
teams toolkit 的 manifest template原创 2022-10-07 17:45:57 · 10217 阅读 · 0 评论 -
Teams Bot App 用户互动
adaptive card 在 Teams 里的互动原创 2022-10-03 17:32:53 · 11427 阅读 · 0 评论 -
Teams Bot App 初探
Teams bot app原创 2022-09-24 13:29:05 · 10415 阅读 · 1 评论 -
Teams Toolkit 之 Incoming Webhook
深入 incoming webhook代码原创 2022-09-19 13:20:56 · 11395 阅读 · 0 评论 -
入门 Teams Toolkit
学习使用 teams toolkit原创 2022-09-18 09:54:07 · 10327 阅读 · 0 评论 -
如何获取一个会议的 transcripts
如何通过Teams的Graph API来获取会议的 transcripts原创 2022-09-05 18:12:26 · 12180 阅读 · 0 评论 -
使用环境变量来配置 Teams App 的 manifest
上篇文章我们介绍了 Teams 的 Developer Portal,今天我想分享一个dev portal里一个比较实用的功能。这个功能在之前的 App Studio 里没有。这个功能叫 Environment variables。当我们真实开发一个 teams app的时候,肯定有自己的开发环境,测试环境,和生产环境,比如一旦一个app发布到 teams store之后,开发人员再继续开发第二个版本的时候肯定不能徐印象生产环境了。需要有一个用于开发测试的测试app。测试app的manifest里很多设原创 2022-03-13 20:06:56 · 4881 阅读 · 0 评论 -
Teams Developer Portal介绍
在去年的 Build2021 大会上讲到的 Teams Developer Portal 已经上线一段时间了,我这几天玩了一下,发现比之前的 app studio 强大了很多,所以赶快写篇文章和大家分享。Developer Portal 有两种访问的方式,一个是网页版,一个是在 Teams 里直接使用,功能基本都一样,我这里就以 Teams app 版本来做一个介绍。登入打开 Teams,在 Teams 里搜索 Developer Portal,点击 Add。安装完后,就可以在 Teams原创 2022-03-12 19:56:09 · 5329 阅读 · 0 评论 -
Teams Meeting 实时事件通知
Microsoft Teams最近推出了很多新的功能和api,我们今天就来一起看一下 teams 会议的实时事件通知,我觉得有了这个功能,我们的app,我们的bot又可以有很多可以实现的场景了。我们来看看如何在 c# 里处理会议开始和结束这两个事件。protected override async Task OnTeamsMeetingStartAsync(MeetingStartEventDetails startDetails, ITurnContext<IEventActivity&g原创 2022-02-05 14:26:19 · 9475 阅读 · 0 评论 -
如何获取Teams Meeting 详情
最近有一些朋友问我,有没有可能获取到会议的详情,我搜索了目前所有的 teams 文档,发现有一个api可以获取,不过在我写这篇文章的时候,这个 api 还在 preview 阶段,可能在正式发布前,还会有一些变化,但是按照之前的经验,这个变化基本不会有。 :)我们来看看如果在 c# 代码里调用这个 apiMeetingInfo meetingInfo = await TeamsInfo.GetMeetingInfoAsync(turnContext);如果大家喜欢直接使用 http requ原创 2022-01-30 16:19:15 · 8522 阅读 · 0 评论 -
Teams Meeting App的 task 弹出框
前几篇文章我们介绍了 Teams Meeting App 的各种类型和如何从无到有的使用 net6 和 c# 来开发一个 Teams Meeting app,那今天我们开始讨论一些 meeting app 的高级互动: task 弹出框。我们先来快速修改一下之前的代码,看看什么是 task 弹出框。打开MainPage.cshtml文件,加入如下代码:<body style="background: white">... <button onclick="add()..原创 2021-12-30 06:14:37 · 7587 阅读 · 0 评论 -
会议中的Meeting App
接着我们上两篇博客文章,我们说了如何开发会议前和会议后的 meeting app,那如何开发一个会议中的 app 呢,实际上比较简单,我们只需要在 tab 的配置项中勾选下面这两个选项即可。勾选后,我们安装app到我们的一个会议中,然后开始会议,在会议的工具条上就可以看到我们的app的图标,点击后就会出现侧边栏。如下图:在侧边栏的上方有一个向上的小箭头。这个图标和共享桌面的图标类似,点击后实际上就是共享我们的app给所有用参与会议的人所有参与会议的用户都会在会议窗口的正中间显示出我们原创 2021-12-28 08:23:39 · 7893 阅读 · 0 评论 -
如何获取 Teams Meeting 的上下文信息
我们上一篇文章讲了如果使用 net6 和 c# 来快速开发一个最简单的 teams meeting app。为了让大家比较容易理解,上个sample非常简单,简单到没有什么功能,那我们现在就来慢慢扩展这个app的功能:看看如何获取 meeting 的上下文。打开上个sample中的MainPage.cshtml文件,使用如下代码:@page "/MainPage"<!DOCTYPE html><html lang="en"><head> &l..原创 2021-12-27 11:22:04 · 7891 阅读 · 0 评论 -
开发第一个Meeting App
今天我们来看一下如何使用c# net6 来开发一个 teams的 meeting app。首先先确保本地安装了最新版本的 net6。创建一个目录,然后在目录下输入下面的命令行,让 dotnet 来生成一个初步的asp.net core 代码框架。dotnet new razor代码框架生成如下的目录和文件,我们可以删除不需要的文件:Error.cshtml.cs,Error.cshtml,Index.cshtml,Index.cshtml.cs,Privacy.cshtml和Priv...原创 2021-12-26 19:22:21 · 7717 阅读 · 0 评论 -
Teams 的 Meeting App
Teams 的 Meeting App 已经正式推出了一段时间,相应的文档也已经较为完善了,我接下来会写一系列的文章,来介绍如何开发一个自己的Meeting app。这篇文章作为这个系列的第一篇,将介绍 meeting app 是如何被使用的,有哪些可以扩展的点。那我们先来看一下它如何被安装和使用,我们先创建一个会议。创建完成后,点开会议进行编辑。在最上面的一排 tab 页的最后有一个加号,我们通过点击这个加号来为这个会议添加 meeting app。点击加号后就会显示如下界面,是一些支持 me原创 2021-12-16 18:16:14 · 9016 阅读 · 0 评论 -
在Teams app代码中enable nullable
昨天讲了一下如何把代码升级到 net6,今天我优化了好几个小时更新代码,enable了nullable。c#的nullable我一直非常喜欢,它可以帮助开发人员,让开发人员去思考,哪些地方需要可以为null,哪些地方不需要。它并不是万能的灵丹妙药,但是它的确可以大大的提高代码质量。我自己通过在LuckyDraw里enable了nullable,从而发现了好几个潜在的bug。现在一些其他语言,比如typescript也有类似功能,所以我觉得这个会是以后开发语言的一种趋势。这篇文章我来分享一下我遇到的一原创 2021-12-14 17:42:15 · 5307 阅读 · 0 评论 -
将Teams app升级到net6
net6 发布已经有一个多月了,因为我的LuckyDraw app是使用Azure app service,当时我查了一下app service还没有ready,昨天我又查看了一下,发现app service已经默认装了net6。那就是时候升级我的LuckyDraw了,如果大家的app也是用c#来开发的话,那这篇文章给大家分享一下我的升级方法。首先,先更新csproj,把之前的LTS 3.1改成net6.0。同时也把 c# 语言改用版本 9,这样就可以更多的使用一些方便的语法。 <.原创 2021-12-13 17:23:07 · 8083 阅读 · 0 评论 -
Teams Bot如何解析和发送 at 用户
之前有好些看博客的开发者问我有什么较好的方法来解析 at 信息。用户在channel里发消息给 bot 的时候,通常需要 at bot的名字,当然在消息文字中可能还会 at 其他用户,比如 bot的名字是 MyBot,那 bot 收到的 Activity 里的 Text 值类似于:<at>MyBot</at> 请帮我查看一下 <at>Tom</at> 的明天有空时间。可以看到 Teams 使用了 at tag 来把用户 at 的信息包含起来。看原创 2021-10-14 13:29:10 · 5376 阅读 · 0 评论 -
Teams Bot库的JSON
如果你和我一样,一直使用最新的 asp.net core 来开发teams bot的应用,那么你就会发现当你使用最新的 LTS 3.1版本或者 5.0 版本或者最新的 6.0 版本,asp.net core 默认使用System.Text.Json库,所以当你在处理 Teams 发送来的请求的时候,如果还是使用类似于下面的代码,那很多时候就是发现activity解析不出来,返回的response也不对。[HttpPost("api/messages")]public Activity GetMess原创 2021-10-10 10:05:34 · 3375 阅读 · 0 评论 -
Teams App如何选择用户
当我们在开发app的时候,很多时候需要选择一个用户,比如我们开发一个审批的app,就要选择审批人,所以这个app就需要实现选择人的界面,而且需要获取完整的用户列表,但是要获取完整的用户列表又需要app拥有较高的权限。通常企业的IT部门不太愿意把这种权限给到app。不过,好在Teams已经为我们考虑到这点,Teams提供了一个很好用的功能:People Picker。我们先来看一下代码:const peoplePickerInputs: PeoplePickerInputs = { ... };原创 2021-10-06 17:27:43 · 6577 阅读 · 0 评论 -
Teams App设备的地理位置能力
我们上一篇文章讲了如何在Teams app里扫描二维码,这篇文章我们来看一下如何获取当前设备的地理位置,并且在地图上显示地理位置。首先,我们先到app studio里,创建一个teams app,然后创建tab,并且确保我们勾选了 “Permission to return the user’s location” 这个选项。或者我们手动在manifest.json里输入这么一段:{ "$schema": "https://developer.microsoft.com/json-sc原创 2021-10-05 17:05:16 · 3873 阅读 · 0 评论 -
Teams App 扫描二维码
上篇文章我们讲了如何在app的manifest里设置设备的权限,这篇文章我们来实际操作开发一个可以扫描二维码的teams app。首先,我们先到app studio里,创建一个teams app,然后创建tab,重要的一点是,我们确保manifest.json里含有这么一段:{ "$schema": "https://developer.microsoft.com/json-schemas/teams/v1.10/MicrosoftTeams.schema.json", "manifest原创 2021-09-22 07:02:46 · 6818 阅读 · 0 评论 -
Teams App自定义
当我们开发的 app 被企业安装后,有些企业挺希望能做一些自定义,如果把app的图标改的更加符合企业风格一点,或者把app的名字改成让本企业员工更容易理解一些,或者把app界面的主题色改成个企业风格更加搭配一些,或者对于隐私协议进行一些修改。Teams作为一个为全球企业提供服务的平台,它当然也为平台上的 app 考虑到这些。这篇文章,我主要介绍如何配置。首先,我们需要到Developer Portal for Teams: https://dev.teams.microsoft.com/,使用账号.原创 2021-07-25 16:12:46 · 5923 阅读 · 0 评论 -
Teams App 如何使用设备的能力
我们以前讲到过,Teams有很多中可以扩展的方面,其中有一种是Tab,开发者可以开发一个web page/app,然后以tab的方式嵌入到teams里面。除了基本的功能,这种tab也可以使用teams客户端设备所带的一些能力,比如:摄像头 麦克风 相册 扫二维码 地理位置有些这些能力,我们开发的tab就能完成更多更有趣的功能。这篇文章我们就来看看如何获取这些能力。首先,每个teams app有一个manifest.json来描述app的一些基本信息,同样,我们需要在manifest里声原创 2021-07-24 08:25:15 · 5858 阅读 · 0 评论 -
Teams数据统计 - 聊天消息
前两篇文章介绍了如何对用户的在线状态和通话记录进行数据统计。这篇文章我们来看看如何统计用户的聊天消息。在介绍具体 api 如何调用前,我们可以先看一下 Teams 里对于 Message 的层级结构,在 Teams 里,message有两种,一种是 Team 的 Channel 的 message,一种是对一对聊天或者群聊里的 message。他们的层级设计是不同的。Channel 里的消息它的层次结构如下:Team -> Channel -> Message -> Re原创 2021-07-20 19:56:52 · 9067 阅读 · 2 评论 -
发送ActivityFeed的隐藏功能
前两篇文章介绍了如何发送 activity notification,这篇文章主要介绍两个隐藏功能,实际上所谓的隐藏功能是指大家在阅读官方文档是会忽略的两个点,但是实际上也是很实用的两个功能点。text 类型的 topic之前文章中提到我们的 activity notification 支持三种类型,他们分别的url是:POST https://graph.microsoft.com/beta/chats/{chat-id}/sendActivityNotificationPOST http原创 2021-06-16 20:25:20 · 5891 阅读 · 0 评论 -
发送不同类型的ActivityFeed
上一篇文章讲到了如何使用最新的Graph API来给一个用户发送一个简单的 Activity Feed。我们这篇文章来详细讲一下发送三种不同类型的消息。发送 Chat 相关的 Activity NotificationAPI 为POST https://graph.microsoft.com/beta/chats/{chat-id}/sendActivityNotificationhttp请求的内容为:{ "topic": { "source": "entityU.原创 2021-06-13 08:51:47 · 5410 阅读 · 0 评论 -
推送ActivityFeed到Teams
---layout: posttitle: 推送ActivityFeed到Teams---几个月前,Teams 团队又推出了新的 Graph API,让 app 可以给用户发送 Activity Feed。我们来看看如何做。首先,我们的app需要使用较新的 manifest 1.7版本,当然如果使用最新的1.8版本就更好了。在manifest json中添加 `webApplicationInfo` 和 `activities` 配置块```json{"$s...原创 2021-06-12 08:07:15 · 5309 阅读 · 0 评论 -
用AzureFunction开发最简单的Teams Bot
之前我有一篇文章讲了如何在azure function上开发最简单的outgoing webhook,收到一些反馈,建议我介绍一下如果在azure function上开发teams bot,那这篇文章就来讲一下如何用function来快速开发bot。我们先创建一个azure function资源,然后创建一个由http触发的Function。具体步骤和上次outgoing webhook的步骤类似,我就不再重复。为了调试方便,我这里允许匿名访问这个function。创建完function原创 2021-05-23 19:21:02 · 8304 阅读 · 1 评论 -
给Teams消息附加图片的三种方式
Teams消息支持三种不同的方式来添加图片,这篇文章我们来一起看一下这三种方式。Inline图片var imagePath = Path.Combine(Environment.CurrentDirectory, "abc.png");var imageData = Convert.ToBase64String(File.ReadAllBytes(imagePath));var image = new Attachment{ Name = @"Resources\abc.png",原创 2021-05-19 12:28:40 · 12333 阅读 · 0 评论