关于azure:VS-Code部署Teams-webhook到Azure-Functions

5次阅读

共计 1627 个字符,预计需要花费 5 分钟才能阅读完成。

Microsoft Teams 这款产品对于咱们来说曾经很相熟了,作为开发者,咱们也能够通过官网的一些开发模式来 build 咱们本人的 Teams 利用。

明天疾速跟大家分享一下,如何在 VS Code 中部署 Azure Function(Azure Serverless 的一种解决方案),并将其作为 Teams 的 webhook 地址。

筹备环境

  1. 筹备 Azure Account 和 Microsoft Teams 账号
  2. VS Code
    1) 下载安装
    2) 为 VS Code 装置 Azure 的 Extension
  3. Microsoft Teams (客户端或 Web 版都能够)
  4. 下载代码:
    地址:https://github.com/paul-cheun…

新建我的项目

  1. 依据 Extension 的选项登录 Azure Account,抉择 subscription。
  2. VS Code 关上下载的代码(或本人创立),Azure 的 Extension 就会辨认到。
  3. 查看我的项目内容。这里就是简略的 api function,承受 Activity 申请模型(微软的 Bot Framework),并标记了 function 的 trigger 类型是 httptrigger,认证级别也是匿名的,这样在 call 这个 api 的时候就不须要提供 token 了。当然理论状况是须要有 token 验证的,这里不多介绍。

部署我的项目

  1. 1.build 我的项目,点击 Deploy to Function App,一路操作。
  2. 抉择对应的 subscription
  3. 抉择 deploy 到已有的 function app 还是新建,依据本人须要。我这里间接笼罩已有的。

    如果是新建的话,会提醒输出名称,这里失常输出名称就行,如:
  4. 抉择 Location。须要指定咱们的 app 部署到哪个 region。
  5. 期待部署。

或者看 output 的 Log

提醒相干 resource 曾经创立好,部署实现。

查看部署状况

咱们登录 Azure Portal 检查一下部署状况。
能够看到 URL 一栏,就是咱们 OutgoingWebhook 的地址。

配置 Teams 里的 Webhook

下面曾经将服务部署在 Azure Functions 上,接下来关上 Teams 进行 Webhook 配置。

  1. 首先登入账号到 Teams,定位到 team 的 app 标签页:
  2. 点击 Create an outgoing webhook,填写名称和 Callback URL。

Callback URL 来自这里:

  1. 创立 webhook 完会提醒保留 token(妥善保留就行,咱们这里临时不必它,略过认证局部)

验证成果

以上曾经胜利创立了 outgoing webhook,并且这个 hook 是调用到 azure function 的。当初测试一下成果。

  1. 咱们再到 team 的 channel 里给它发消息 (at 它)

  1. 轻易发个什么音讯,而后会失去回复

总结

在 Teams App 的开发过程中,咱们常常会应用 ngrok 来做反向代理 / 内网穿透,这里就提供了另一种路径,能够将咱们写好的 bot 代码一键部署到 cloud 端,也是有助于进步咱们的开发效率。

应用 serverless 的 azure 实现来简化咱们的部署,当然还有其它的 service 能够达到同样的目标,这里算是抛砖引玉,大家能够多尝试其余好办法。感激浏览。

相干链接:

https://docs.microsoft.com/en…

https://www.microsoft.com/en-…

微软最有价值专家(MVP)


微软最有价值专家是微软公司授予第三方技术专业人士的一个寰球奖项。29 年来,世界各地的技术社区领导者,因其在线上和线下的技术社区中分享专业知识和教训而取得此奖项。

MVP 是通过严格筛选的专家团队,他们代表着技术最精湛且最具智慧的人,是对社区投入极大的激情并乐于助人的专家。MVP 致力于通过演讲、论坛问答、创立网站、撰写博客、分享视频、开源我的项目、组织会议等形式来帮忙别人,并最大水平地帮忙微软技术社区用户应用 Microsoft 技术。

更多详情请登录官方网站。

点击查看 Azure Functions 简介

正文完
 0