public async Task <Agent> IntitiateConversationWithAgentAsync(Activity message, CancellationToken cancellationToken) { var agent = _agentProvider.GetNextAvailableAgent(); if (agent == null) { return(null); } await _agentUserMapping.SetAgentUserMappingAsync(agent, new User(message), cancellationToken); var userReply = message.CreateReply($"You are now connected to {agent.ConversationReference.User.Name}"); await SendToConversationAsync(userReply); var agentReply = agent.ConversationReference.GetPostToUserMessage(); agentReply.Text = $"{message.From.Name} has joined the conversation."; await SendToConversationAsync(agentReply); agentReply.Text = "Replaying User and Bot conversation: \n\n" + string.Join("\n\n", ActivityLogger.ChatContainer.ToArray()); await SendToConversationAsync(agentReply); ActivityLogger.ChatContainer.Clear(); return(agent); }
/// <inheritdoc/> public async Task <Agent> IntitiateConversationWithAgentAsync(Activity message, CancellationToken cancellationToken) { var agent = _agentProvider.GetNextAvailableAgent(); if (agent == null) { return(null); } await _agentUserMapping.SetAgentUserMappingAsync(agent, new User(message), cancellationToken); var userReply = message.CreateReply(string.Format(ConversationText.YouConnectToSomeone, agent.ConversationReference.User.Name)); await Utility.SendToConversationAsync(userReply); var agentReply = agent.ConversationReference.GetPostToUserMessage(); agentReply.Text = string.Format(ConversationText.SomeoneJoinTheConversation, message.From.Name); await Utility.SendToConversationAsync(agentReply); return(agent); }
public async Task <Agent> IntitiateConversationWithAgentAsync(Activity message, CancellationToken cancellationToken) { var agent = _agentProvider.GetNextAvailableAgent(); if (agent == null) { return(null); } await _agentUserMapping.SetAgentUserMappingAsync(agent, new User(message), cancellationToken); var userReply = message.CreateReply($"You are now connected to {agent.ConversationReference.User.Name}"); await SendToConversationAsync(userReply); var agentReply = agent.ConversationReference.GetPostToUserMessage(); agentReply.Text = $"{message.From.Name} have joined the conversation."; await SendToConversationAsync(agentReply); return(agent); }