Я использую бот-фреймворк для создания чат-бота. Я использую его в Microsoft Teams.
Я хочу отправить сообщение от пользователя боту программно. Но я не могу этого сделать.
Я пытался использовать прямую линию, но это не помогло мне. Я новичок в этом бот-фреймворке.
var directLineSecret = "directlinesecretkey";
var client = new DirectLineClient(directLineSecret);
var conversation = await client.Conversations.StartConversationAsync();
var testActivity = new Activity
{
From = new Microsoft.Bot.Connector.DirectLine.ChannelAccount(objectid, userName),
Type = Microsoft.Bot.Connector.DirectLine.ActivityTypes.Message,
Text = "Hello from the PCE!"
};
var response = await client.Conversations.PostActivityAsync(conversation.ConversationId, testActivity);
Activity userMessage = new Activity
{
From = new Microsoft.Bot.Connector.DirectLine.ChannelAccount(objectid, userName),
Text = "test",
Type = Microsoft.Bot.Schema.ActivityTypes.Message
};
await client.Conversations.PostActivityAsync(conversation.ConversationId, testActivity);
await client.Conversations.PostActivityAsync(conversation.ConversationId, userMessage);
Пожалуйста, помогите мне с этим. При выполнении этого кода я получаю ответ в ответе var, но сообщение не отправляется, и я не вижу журнал в среде бота.
«Я хочу отправить сообщение от пользователя боту программно». Вы уверены, что пытаетесь отправить сообщение таким образом? Глядя на предоставленный вами код, похоже, вы хотите отправить от бота пользователю
Привет @NicolasR Я не знаю, как это сделать, я очень новичок в этом. Но да, я хочу отправить сообщение от пользователя боту программно. Я видел что-то под названием imback, но это не работает с адаптивными картами. Мне нужно, чтобы он использовался с адаптивными картами
@NicolasR есть идеи, как с этим работать?
Извините, но я все еще не понимаю, чего вы пытаетесь достичь, поскольку вы смешиваете несколько концепций, поэтому я не могу вам больше помочь в этом.
@NicolasR в основном я хочу отправить сообщение от пользователя не программно. Забудьте код, который я написал.
Существует способ имитации imBack с адаптивным действием отправки, когда вы используете строку в качестве свойства данных. Это то, что вы хотели бы сделать?
@KyleDelaney да, это то, что я пытаюсь сделать, не могли бы вы помочь мне с кодом?
Какой канал вы используете?
Мой ответ приемлем?





Адаптивная карта может имитировать imBack с адаптивным действием отправки при двух условиях:
Data действия должно быть строкой (текст, отправляемый пользователем).Вот пример того, как вы можете создать и отправить такую карточку в BotBuilder v4 с помощью пакета AdaptiveCards NuGet:
var card = new AdaptiveCard
{
Body = { new AdaptiveTextBlock("Adaptive Card") },
Actions = { new AdaptiveSubmitAction { Title = "Say 'test'", Data = "test" } },
};
var reply = (Activity)MessageFactory.Attachment(new Attachment {
ContentType = AdaptiveCard.ContentType,
Content = card,
});
await turnContext.SendActivityAsync(reply);
Может ли кто-нибудь помочь мне в этом?