如何将使用外部 API 的 Teams-Toolkit 应用程序部署到客户端?

问题描述 投票:0回答:1

我正在使用 Visual Studio 2022(版本 17.12.3)和 Teams Toolkit-Integration。

我使用了“与您的数据聊天”模板并选择了 Azure OpenAI,因为我们是 Azure OpenAI 客户。

然后我更改了 RenderDataAsync() 方法来调用我构建的外部 API 并将输出返回给 Teams:

`公共异步任务 RenderDataAsync(ITurnContext context,IMemory内存,ITokenizer tokenizer,int maxTokens,CancellationToken CancellationToken) { 细绳? query = memory.GetValue("temp.input") as string;

if (query == null)
{
    return new RenderedPromptSection<string>(string.Empty, 0);
}
else
{
    using var httpClient = new HttpClient();
    var requestUri = "http://<domain-name>/query";
    var requestBody = new
    {
        query = query,
        mode = "local"
    };

    var json = System.Text.Json.JsonSerializer.Serialize(requestBody);
    var content = new StringContent(json, Encoding.UTF8, "application/json");

    using var request = new HttpRequestMessage(HttpMethod.Post, requestUri)
    {
        Headers =
        {
            { "accept", "application/json" }
        },
        Content = content
    };
    var response = await httpClient.SendAsync(request);
    var responseContent = await response.Content.ReadAsStringAsync();
    var answer = responseContent;
    return new RenderedPromptSection<string>(formatDocument(answer), answer.Length);
}

}`

当我在本地测试它时,这没有问题,我还可以导入 appPackage.dev.zip 并将应用程序发布到我的 Office-365-org,它就像预期的那样工作。

但是我必须在不同的 Office-365-org 中向我的客户分发什么?如果我给他我的 appPackage.dev.zip,他可以安装它,但机器人永远不会得到任何响应,我什至没有看到对我的 API 发出任何请求。

我错过了什么?

我给了客户appPackage.dev.zip,他将其安装在他自己的Office-365-org中,我期望与我自己的组织中的行为相同,但它失败了。

c# teams-toolkit
1个回答
0
投票
谢谢你的提问。 经过我们的测试,最新的模板机器人在多个组织中运行良好。 也许您可以按照以下步骤检查。

    请确保您使用最新版本。
  1. 由于机器人在您的组织中运行良好,因此问题似乎出现在不同的组织中。你可以在Azure bot->Monitoring->Metrics中观察Azure bot的流量,选择Request Traffic来观察他的流量到达与否。
  2. enter image description here
此外,您可以在

https://github.com/OfficeDev/teams-toolkit/issues中提出错误。

© www.soinside.com 2019 - 2024. All rights reserved.