azure-bot-service 相关问题

标记用于与Azure Bot服务相关的问题:https://azure.microsoft.com/en-us/services/bot-service/

我可以在Azure VNET中设置Azure机器人服务工作吗?

我正在为Microsoft团队开发一个聊天机器人,仅供内部使用,该聊天机器人需要部署并托管在Intranet上。为了不公开机器人的API,我计划使用Azure VNET。在...

回答 1 投票 0

。net核心应用程序聊天机器人

我想创建一个聊天机器人,该机器人将根据用户的选择进行引导。哪种bot框架应适合.net核心Web应用程序?是否可以在.net核心中集成Python聊天机器人...

回答 1 投票 -1

为什么Bot框架中的语言会自动更改?

我正在使用Bot框架作为直接实施。 Bot使用两种语言:“ en”和“ nl”。我正在设置如下所示的语言:if(somecondition){locale =“ nl”;会话。...

回答 1 投票 1

从Bot Framework获取网页的URL

嗨我的聊天机器人托管在http://www.abs.com网站上,希望我可以在“ hello world”中获取该网址:拥有一个“ Hello world www.abc.com”,我尝试使用'HttpContext。 Current.Request.Url ....

回答 1 投票 0

使用从Azure Bot获得的用户令牌来获取访问令牌以充当代用令牌

我有一个Azure机器人,它提示用户使用其用户名和密码登录。由此,我可以获得授权码。我想使用此代码来检索……的代表…

回答 1 投票 0

Azure Bot返回的令牌是什么?

我按照本教程进行操作,为Azure Bot设置身份验证。成功登录后,它将为我返回一个令牌。我相信这是访问Microsoft Graph API的授权令牌。 ...

回答 1 投票 0

使用Azure Bot Bearer令牌向外部API发出GET请求

我有一个Azure Bot安装程序,该安装程序使用oAuth2对用户进行身份验证。由此,我获得一个访问令牌。我也有一个使用oAuth2身份验证和与...

回答 1 投票 0

将Azure Bot项目添加到已经包含Web应用程序的解决方案中

我正在为我的项目创建聊天机器人,最终将其集成到Microsoft Teams中。我环顾四周,但没有发现太多,但我只是想知道是否...

回答 1 投票 0

如何从SharePoint文档库获取图像到bot框架的消息传递扩展的缩略图卡中

我有一个包含一些图标的SharePoint文档库。我有一个Azure Web应用程序bot,用于使用bot框架进行消息传递扩展。在消息传递扩展预览缩略图卡中...

回答 1 投票 0

带电报频道按钮的缩略图卡产生InternalServerError

将缩略图卡发送到电报频道会产生以下异常。这在模拟器中工作正常。操作返回了无效的状态代码'InternalServerError'这是卡的代码:...

回答 2 投票 0


与Teams频道集成的Web App Bot(Azure)。在一对一聊天中工作正常,但在群聊中表现不佳[关闭]

我已经使用Bot框架创建了一个聊天Bot,该Bot框架处理用户发送的消息并借助luis识别意图。加入团队后,该机器人可以在一对一对话中正常工作。 ...

回答 1 投票 0

MS Teams机器人在用户时区显示时间

我正在使用他们的REST API构建Microsoft Teams机器人。机器人需要发送事件状态,例如从1:43 PM开始或在5:30 PM结束。该信息将被发送到频道,频道将...

回答 2 投票 0

[创建Web App Bot时如何选择模板?

我正在尝试使用Azure门户创建机器人,并尝试遵循文档中的一些教程。具体来说,这些是:Microsoft Docs https://docs.microsoft.com/zh-cn/azure/bot-service/abs -...

回答 1 投票 0

Microsoft bot框架v4语音服务

我已经开发了Microsoft bot框架节点js bot,并已连接到Facebook。当我尝试使用Facebook mic向Bot添加语音服务时,出现以下错误。我已经通过链接...

回答 1 投票 0

生成直线令牌的问题

[当我尝试根据Microsoft文档获得直接令牌时。 Postman中显示的错误。 {“ error”:{“ code”:“ BadArgument”,“ message”:“缺少令牌或机密”}} ...

回答 1 投票 0

Azure 机器人服务的 Directline 没有响应并被 CORS 策略阻止

我使用了 Microsoft Sample for Bot Services 中的 Bot Services 示例。 我调试后,网页没有显示任何东西。 这里有我的源代码: 我使用了 Microsoft Sample for Bot Services 中的 Bot Services 示例。 我调试后,网页没有显示任何东西。 这里有我的源代码: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Web Chat: Minimal bundle with Markdown</title> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <script src="https://cdn.botframework.com/botframework-webchat/latest/webchat-minimal.js"></script> <style> html, body { height: 100%; } body { margin: 0; } #webchat { height: 100%; width: 100%; } </style> </head> <body> <div id="webchat" role="main"></div> <script> (async function() { const res = await fetch('https://csharpbotdw.azurewebsites.net/directline/token', { method: 'POST' }); const { token } = await res.json(); const markdownIt = window.markdownit(); window.WebChat.renderWebChat( { directLine: window.WebChat.createDirectLine({ token }) }, document.getElementById('webchat') ); document.querySelector('#webchat > *').focus(); })().catch(err => console.error(err)); </script> </body> </html> 我只看到错误提及 Access to fetch at 'https://csharpbotdw.azurewebsites.net/directline/token' from origin 'http://localhost:63191' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled. [http://localhost:63191/Test13122019] 显然,您的 Azure 应用服务没有在托管代码的 Azure 应用服务的 CORS 设置中正确配置 CORS。我在这里用详细的步骤解决了类似的问题,请尝试看看它是否对您有帮助。 似乎 URL 有问题:https://csharpbotdw.azurewebsites.net/directline/token 你得到了 directLine 令牌。每次调用此 URL 时都会出现 404 错误,似乎那里没有这样的 API。 如果您尚未在代码中实现此类 API,请在您的 .net Framework 项目中尝试以下代码: using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Net.Http.Headers; using System.Text; using System.Threading.Tasks; using System.Web; using System.Web.Http; using Newtonsoft.Json; namespace CoreBot.Controllers { [Route("api/token")] public class TokenController : ApiController { public async Task<IHttpActionResult> token() { var secret = "<your bot channel directline secret>"; HttpClient client = new HttpClient(); HttpRequestMessage request = new HttpRequestMessage( HttpMethod.Post, $"https://directline.botframework.com/v3/directline/tokens/generate"); request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", secret); var userId = $"dl_{Guid.NewGuid()}"; request.Content = new StringContent( Newtonsoft.Json.JsonConvert.SerializeObject( new { User = new { Id = userId } }), Encoding.UTF8, "application/json"); var response = await client.SendAsync(request); string token = String.Empty; if (response.IsSuccessStatusCode) { var body = await response.Content.ReadAsStringAsync(); token = JsonConvert.DeserializeObject<DirectLineToken>(body).token; } var config = new ChatConfig() { token = token, userId = userId }; return Ok(config); } } public class DirectLineToken { public string conversationId { get; set; } public string token { get; set; } public int expires_in { get; set; } } public class ChatConfig { public string token { get; set; } public string userId { get; set; } } } 您可以在这里获取机器人频道直线秘密: 要将其集成到您的项目中,请在项目的控制器文件夹下创建一个TokenController.cs文件并将上面的代码粘贴到其中: 并且在您将项目发布到 Azure 后,您将能够通过 URL :https://csharpbotdw.azurewebsites.net/api/token 通过 post 方法获取令牌。 本地测试结果: 启用 CORS 并将代码发布到 Azure 后,您可以使用 HTML 代码连接到您的机器人: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Web Chat: Minimal bundle with Markdown</title> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <script src="https://cdn.botframework.com/botframework-webchat/latest/webchat-minimal.js"></script> <style> html, body { height: 100%; } body { margin: 0; } #webchat { height: 100%; width: 100%; } </style> </head> <body> <div id="webchat" role="main"></div> <script> (async function() { const res = await fetch('https://csharpbotdw.azurewebsites.net/api/token', { method: 'POST' }); const { token } = await res.json(); window.WebChat.renderWebChat( { directLine: window.WebChat.createDirectLine({ token }) }, document.getElementById('webchat') ); document.querySelector('#webchat > *').focus(); })().catch(err => console.error(err)); </script> </body> </html> 您必须在运行 csharpbotdw 服务的应用程序服务的 CORS 菜单中的已批准来源列表中添加调用域。 如果 DirectLine 或 WebChat 被创建为“Bot Channel Registration”,下面的代码将起作用。 (async()=>{ const styleOptions = { bubbleBackground: 'rgba(0, 0, 255, .1)', bubbleFromUserBackground: 'rgba(0, 255, 0, .1)', rootHeight: '100%', rootWidth: '50%', botAvatarInitials: 'WC', userAvatarInitials: 'WW', }; var response = {}; const body = { "user": { "id": "George", "name": "George" }, "trustedOrigins": [ "http://localhost:5500" ] } const res = await fetch('https://directline.botframework.com/v3/directline/tokens/generate', { method: 'POST' , headers: { 'Accept': 'application/json', 'Content-Type': 'application/json', Authorization: "Bearer <<YOUR_SECRET>>", }, body:JSON.stringify(body) }).then((response) => response.json()) .then((data) => response = data); const tokenString = response.token; console.log("Token " , tokenString ); window.WebChat.renderWebChat( { directLine: window.WebChat.createDirectLine({ token: tokenString }), username: 'George', locale: 'en-US', styleOptions }, document.getElementById('webchat') ); })();

回答 3 投票 0

Microsoft机器人框架,使用空白屏幕加载聊天机器人

我的聊天机器人正在加载空白屏幕。当我关闭聊天并再次打开它时,它可以完美加载并正常工作。我不确定这可能是什么原因。我正在使用Microsoft机器人框架...

回答 1 投票 0

ChatBot在Web模拟器中不起作用,但在Local Bot Framework模拟器中则很好]]

几周前,我感到沮丧,目前,我已经开发了与SharePoint On Premise集成的ChatBot。当我在模拟器中调试ChatBot时,它的工作正常。但是当我在Web上调试时...

回答 1 投票 1

Bot Framework提供遥测ArgumentNullException telemetryClient错误

在稳定了具有多个对话框的4.5.3机器人之后,现在我决定实现遥测。遵循文档和示例核心bot,我相信我已经掌握了所有内容,但出现此错误...

回答 1 投票 0

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