Microsoft Teams Developer Platform允许您将应用程序集成到Microsoft Teams中。您可以通过直接显示您的Web体验的标签,体验聊天体验的Bots以及将通知发送到频道的连接器来实现此目的。请阅读标签信息(README),以获取有关如何增加获得高质量答案的机会的指导。
如何将 Teams 频道帖子从一个频道移动/迁移到另一个频道
除了复制/粘贴之外,是否有任何方法可以将 Microsoft 团队的所有帖子从一个频道转移到同一帐户的另一个频道?
从 ASP.NET Razor Web 应用程序中的自适应卡获取用户响应
我正在尝试利用 Graph API SDK 从 Razor 应用程序将自适应卡发送到团队聊天中。 我可以在此处查看 Microsoft 文档中列出的发送卡的文档。没有戏剧...
Chrome 更新版本出现“未提供帐户对象来 acquireTokenSilent”错误
我一直在使用 SeleniumBasic 开发一个自动化工具,该工具已经工作了两年多。 该工具可导航 MS Teams Web 应用程序,并提供与多个聊天室的交互......
如何通过 Teams 聊天 Webhook 传递简单的文本和可点击的 URL,而不会将文本剪短?
我的卑微目标是在 Teams 中完成使用 Slack Webhooks 可以轻松完成的事情,如下所示: 等待获取(slackWebhook,{ 方法:'POST', 标题:{ '内容类型':'
MS Teams Webhook 在小消息上返回错误 413
根据 MS 文档,我可以通过 webhook 发送到 Teams 频道的消息的最大大小为 ~28KB(链接) 但即使对于小得多的消息,我也会收到以下错误:
上下文 - 我们有一个托管许多客户的 SaaS 应用程序,对我们来说,客户环境隔离是我们的首要任务(出于明显的安全原因)。 对于这个 SaaS 应用程序,我们目前正在构建...
Bot 不适用于 Microsoft Teams 中的一对一聊天消息
我们使用 Azure Bot 创建了一个自定义应用程序,用于捕获用户的输入(使用 RSC,无需提及)并返回自适应卡。该机器人在频道中运行良好,但在一对一中不起作用
我正在 Azure 中创建一个逻辑应用程序,需要将消息发布到 Microsoft Teams 的聊天中。 我正在添加“在聊天或频道中发布消息”操作: 但为了连接到 Teams,我...
`chatMessage:setReaction` API 和 Teams 应用程序/机器人
我正在为 Microsoft Teams 开发一个应用程序/机器人,我想在其中添加对频道中用户消息的反应(竖起大拇指/向下等)。 我现在没有使用 Microsoft Graph API,但它似乎...
我在通过工具包部署应用程序时遇到问题,出现错误 -> 无法重新定义属性:堆栈 堆栈:UnhandledError:无法重新定义属性:getError 处的堆栈 ( 我在通过工具包部署应用程序时遇到问题,出现错误 -> 无法重新定义属性:堆栈 堆栈:UnhandledError:无法重新定义属性:getError处的堆栈 (:14:5819447) 在 Object.wrapRun (:14:5819625) 在 processTicksAndRejections (节点::95:5)在 ArmDeployDriver.execute (:14:5553122) 在 Lifecycle.executeImpl (:14:5427203) 在 Lifecycle.execute (:14:5424360) 在 Coordinator.provision (:14:5470516)在协调员处。 (:14:6119329)在FxCore.provisionResources(:14:6047609)在FxCore.exports.EnvWriterMW(:14:5958667)在FxCore.exports.ContextInjectorMW (:14:6123081)在 FxCore.exports.ConcurrentLockerMW (:14:6122032) 在 FxCore 的 envLoaderMWImpl (:14:5958547)。 (:14:5957475) 在 FxCore.exports.ProjectMigratorMWV3 (:14:6153660)在 FxCore.exports.ErrorHandlerMW(:14:6123578) 在 FxCore。 (:14:6119329) azure.二头肌: @maxLength(20) @minLength(4) param resourceBaseName string param storageSku string @description('Required when create Azure Bot service') param botAadAppClientId string @secure() @description('Required by Bot Framework package in your bot project') param botAadAppClientSecret string param webAppSKU string @maxLength(42) param botDisplayName string param serverfarmsName string = resourceBaseName param webAppName string = resourceBaseName param storageName string = resourceBaseName param location string = resourceGroup().location param microsoftAppTenantId string param tabDomain string // Azure Storage that hosts your static web site resource storage 'Microsoft.Storage/storageAccounts@2021-06-01' = { kind: 'StorageV2' location: location name: storageName properties: { supportsHttpsTrafficOnly: true } sku: { name: storageSku } } // Compute resources for your Web App resource serverfarm 'Microsoft.Web/serverfarms@2021-02-01' = { kind: 'app' location: location name: serverfarmsName sku: { name: webAppSKU } } // Web App that hosts your bot resource webApp 'Microsoft.Web/sites@2021-02-01' = { kind: 'app' location: location name: webAppName properties: { serverFarmId: serverfarm.id httpsOnly: true siteConfig: { alwaysOn: false appSettings: [ { name: 'WEBSITE_RUN_FROM_PACKAGE' value: '1' // Run Azure APP Service from a package file } { name: 'WEBSITE_NODE_DEFAULT_VERSION' value: '~18' // Set NodeJS version to 18.x for your site } { name: 'RUNNING_ON_AZURE' value: '1' } { name: 'BOT_ID' value: botAadAppClientId } { name: 'BOT_PASSWORD' value: botAadAppClientSecret } ] ftpsState: 'FtpsOnly' } } } // Register your web service as a bot with the Bot Framework module azureBotRegistration './botRegistration/azurebot.bicep' = { name: 'Azure-Bot-registration' params: { resourceBaseName: resourceBaseName botAadAppClientId: botAadAppClientId botAppDomain: webApp.properties.defaultHostName botDisplayName: botDisplayName microsoftAppTenantId: microsoftAppTenantId botAadAppClientSecret: botAadAppClientSecret tabDomain: tabDomain } } var siteDomain = replace(replace(storage.properties.primaryEndpoints.web, 'https://', ''), '/', '') // The output will be persisted in .env.{envName}. Visit https://aka.ms/teamsfx-actions/arm-deploy for more details. output TAB_AZURE_STORAGE_RESOURCE_ID string = storage.id // used in deploy stage output TAB_DOMAIN string = siteDomain output TAB_ENDPOINT string = 'https://${siteDomain}' output BOT_AZURE_APP_SERVICE_RESOURCE_ID string = webApp.id output BOT_DOMAIN string = webApp.properties.defaultHostName azurebot.bicep: @maxLength(20) @minLength(4) @description('Used to generate names for all resources in this file') param resourceBaseName string @maxLength(42) param botDisplayName string param botServiceName string = resourceBaseName param botServiceSku string = 'F0' param botAadAppClientId string param botAppDomain string param microsoftAppTenantId string param tabDomain string @secure() @description('Required by Bot Framework package in your bot project') param botAadAppClientSecret string // Register your web service as a bot with the Bot Framework resource botService 'Microsoft.BotService/botServices@2021-03-01' = { kind: 'azurebot' location: 'global' name: botServiceName properties: { displayName: botDisplayName endpoint: 'https://${botAppDomain}/api/messages' msaAppId: botAadAppClientId } sku: { name: botServiceSku } } // Connect the bot service to Microsoft Teams resource botServiceMsTeamsChannel 'Microsoft.BotService/botServices/channels@2021-03-01' = { parent: botService location: 'global' name: 'MsTeamsChannel' properties: { channelName: 'MsTeamsChannel' } } resource botServiceConnection 'Microsoft.BotService/botServices/connections@2021-03-01' = { parent: botService name: 'conntectorGraph' location: 'global' properties: { serviceProviderDisplayName: 'Azure Active Directory v2' serviceProviderId: '30dd229c-58e3-4a48-bdfd-91ec48eb906c' scopes: 'User.Read' parameters: [ { key: 'clientId' value: botAadAppClientId } { key: 'clientSecret' value: botAadAppClientSecret } { key: 'tenantID' value: microsoftAppTenantId } { key: 'tokenExchangeUrl' value: 'api://${tabDomain}/botid-${botAadAppClientId}' } ] } } output CONNECTION_NAME string = botServiceConnection.name azure.parameters.json: { "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "resourceBaseName": { "value": "tab${{RESOURCE_SUFFIX}}" }, "storageSku": { "value": "Standard_LRS" }, "botAadAppClientId": { "value": "${{BOT_ID}}" }, "botAadAppClientSecret": { "value": "${{SECRET_BOT_PASSWORD}}" }, "webAppSKU": { "value": "F1" }, "botDisplayName": { "value": "BOT" }, "microsoftAppTenantId": { "value": "${{AAD_APP_TENANT_ID}}" }, "tabDomain": { "value": "${{TAB_DOMAIN}}" }, "botAppDomain": { "value": "${{BOT_DOMAIN}}" } } } teamsapp.local.yml: version: v1.2 additionalMetadata: sampleTag: TeamsFx:msg-ext-with-tab environmentFolderPath: ./env provision: - uses: teamsApp/create with: name: MS_TEAMS_TAB_MSGEXT_local writeToEnvironmentFile: teamsAppId: TEAMS_APP_ID - uses: aadApp/create with: name: MS_TEAMS_TAB_MSGEXT_local generateClientSecret: true signInAudience: 'AzureADMyOrg' writeToEnvironmentFile: clientId: AAD_APP_CLIENT_ID clientSecret: SECRET_AAD_APP_CLIENT_SECRET objectId: AAD_APP_OBJECT_ID tenantId: AAD_APP_TENANT_ID authority: AAD_APP_OAUTH_AUTHORITY authorityHost: AAD_APP_OAUTH_AUTHORITY_HOST - uses: aadApp/update with: manifestPath: './aad.manifest.json' outputFilePath: ./build/aad.manifest.${{TEAMSFX_ENV}}.json - uses: botAadApp/create with: name: BOT-${{TEAMSFX_ENV}} writeToEnvironmentFile: botId: BOT_ID botPassword: SECRET_BOT_PASSWORD - uses: arm/deploy with: subscriptionId: ${{AZURE_SUBSCRIPTION_ID}} resourceGroupName: ${{AZURE_RESOURCE_GROUP_NAME}} templates: - path: ./infra/azure.bicep parameters: ./infra/azure.parameters.json deploymentName: Create-resources-for-tab bicepCliVersion: v0.9.1 - uses: script with: run: echo "::set-teamsfx-env TAB_DOMAIN=localhost:53000"; echo "::set-teamsfx-env TAB_ENDPOINT=https://localhost:53000"; - uses: teamsApp/validateManifest with: manifestPath: ./appPackage/manifest.json - uses: teamsApp/zipAppPackage with: manifestPath: ./appPackage/manifest.json outputZipPath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip outputJsonPath: ./appPackage/build/manifest.${{TEAMSFX_ENV}}.json - uses: teamsApp/validateAppPackage with: appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip - uses: teamsApp/update with: appPackagePath: ./appPackage/build/appPackage.${{TEAMSFX_ENV}}.zip deploy: - uses: devTool/install with: devCert: trust: true writeToEnvironmentFile: sslCertFile: SSL_CRT_FILE sslKeyFile: SSL_KEY_FILE - uses: file/createOrUpdateEnvironmentFile with: target: ./tab/.localConfigs envs: BROWSER: none HTTPS: true PORT: 53000 SSL_CRT_FILE: ${{SSL_CRT_FILE}} SSL_KEY_FILE: ${{SSL_KEY_FILE}} REACT_APP_CLIENT_ID: ${{AAD_APP_CLIENT_ID}} REACT_APP_TENANT_ID: ${{AAD_APP_TENANT_ID}} REACT_APP_TAB_ENDPOINT: ${{TAB_ENDPOINT}} REACT_APP_START_LOGIN_PAGE_URL: ${{TAB_ENDPOINT}}/auth-start.html - uses: file/createOrUpdateEnvironmentFile with: target: ./bot/.localConfigs envs: BOT_ID: ${{BOT_ID}} BOT_PASSWORD: ${{SECRET_BOT_PASSWORD}} projectId: xxxxxxxxxxxxxxxxxxxx 如何解决?我做错了什么? 这是 Teams Toolkit 的内部错误,已在预发布版本中修复。 您可以尝试在 VSCode 扩展中。 或者由于此错误是由azure部署错误触发的(预期向用户显示部署错误,但被内部错误阻止),您可以尝试在资源组中查找错误部署错误。 参考这个。如果解决了部署错误,则不会触发该错误。
我想使用在Azure环境中创建的应用程序在我的团队中自动发送消息。 我的 Azure 应用程序具有此处描述的权限,但我仍然无法发布我想要的消息类型。 我...
如何进行自适应卡片输入选择选择并将所选选项发送到团队机器人?
我正在使用 Bot 框架 sdk 4.0 和 Node JS 开发 MS 团队机器人项目。我有一张自适应卡,有 3 个输入选项供用户选择,但第二个和连续的值......
我使用机器人框架创建了一个团队机器人,并在客户端环境中部署了所有资源。运行 Bot Framework SDK 的 Web 应用程序正在运行并经过测试,但是当尝试...
pymsteams。我需要在 pymsteams 发送的消息中提及一个人。怎么办?
我已安装 pymsteams 并将其连接到通道并且能够发送消息。我阅读了文档,但没有找到任何与如何发送消息并提及某人为 @me ->
MSTeams 机器人 - 设置不同的机器人名称以在聊天窗口中显示
我创建了一个 MSTeams 机器人,可在 Teams 应用商店中找到。我想更改聊天窗口中显示的机器人名称。请参阅我在下面附上的屏幕截图。 也类似...
如何通过 API 调用更新 MS Teams 中的状态/可用性?
我知道 beta Graph Presence API。但是,目前仅允许检索状态数据。我希望能够使用 api 调用更改 Teams 用户的状态可用性。
如何使用 Azure 警报格式化包含 Teams 消息的 Azure 逻辑应用 JSON 负载?
我一直在尝试配置 Azure 警报(特别是 VM 磁盘空间不足查询),以在每次使用 Azure 逻辑应用触发警报时向 Teams 通道发送消息。它的作用就是这样
Teams Toolkit(MS Teams Bot)的上下文 - 所有信息都在机器人更新中消失
所以,我使用 vs code 中的团队工具包扩展构建了一个团队机器人。这是一个组织内部使用的应用程序,我遇到的问题是,每当我更新机器人时,它都会丢失
KQL CloudAppEvents:查看团队中有人将您静音的时间
当会议参与者将其他用户静音时,我可以在防御者或哨兵上查看哪些日志来查看? 云应用事件 |其中生成时间 > 前(30 天) // |其中应用程序==“Microsoft Te...
我使用 Microsoft Bot Framework 制作了一个普通机器人,并将其部署到 Azure 门户。 除了引导到 Teams 之外,我如何才能使其成为 Teams 应用程序,例如,使其成为 Teams 应用程序