我有一个永远的问题,我无法解决
似乎我的dll在一段时间后从内存中卸下了
例如,当我在30分钟内不使用bot,然后重用时,它需要一些时间才能响应,比如重新部署或者dll不再在RAM中并且在响应之前重新加载。
有没有办法解决机器人暂时不使用时的延迟?
更新:3/1/17
激活选项'永远在',有必要传递付费优惠。 由于我仍然在开发,我不能传递这个提议。 我找到了一个解决方案,通过创建一个每分钟发送一次消息的脚本,让我的Bot保持活动模式。 我的脚本在c#中,当我执行此操作时,我收到了授权错误。
var authValue = new AuthenticationHeaderValue(" Basic",Convert.ToBase64String(Encoding.UTF8.GetBytes($" {MyMicrosoftAppId}:{MyMicrosoftAppPassword}")));
var client = new HttpClient()
{
DefaultRequestHeaders = { Authorization = authValue }
};
var jsonObject = new Rootobject()
{
type = "message",
id = "0a24ca1428074419a1679b37e0e3dd39",
timestamp = DateTime.Now,
serviceUrl = "http://localhost:9000/",
channelId = "emulator",
from = new From()
{
id = "2c1c7fa3",
name = "User1"
},
conversation = new Conversation()
{
isGroup = false,
id = "8a684db8",
name = "Conv1"
},
recipient = new Recipient()
{
id = "56800324",
name = "Bot1"
},
text = "ping",
attachments = new object[0],
entities = new object[0]
};
var content = new StringContent(jsonObject.ToString(), Encoding.UTF8, "application/json");
var result = client.PostAsync("http://emiko.azurewebsites.net/api/messages", content).Result;
result.ToString();
但是我收到授权错误: StatusCode:401,ReasonPhrase:' Unauthorized',Version:1.1,Content:System.Net.Http.StreamContent ...
如何在Bot上正确登录并在其Url上发送消息 (http://emiko.azurewebsites.net/api/messages)