43 lines
1.1 KiB
C#
43 lines
1.1 KiB
C#
using Chatbot.Api.Application.Queries;
|
|
using MediatR;
|
|
using Microsoft.AspNetCore.Authorization;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Chatbot.Api.Controllers
|
|
{
|
|
[Authorize]
|
|
[ApiController]
|
|
[Route("system")]
|
|
public class SystemController : ControllerBase
|
|
{
|
|
private readonly IMediator _mediator;
|
|
|
|
public SystemController(IMediator mediator)
|
|
{
|
|
_mediator = mediator;
|
|
}
|
|
|
|
[AllowAnonymous]
|
|
[HttpGet("ping")]
|
|
public IActionResult Ping()
|
|
{
|
|
return Ok("Chatbot api ping success.");
|
|
}
|
|
|
|
[HttpGet("bots")]
|
|
public async Task<IActionResult> GetBots([FromRoute] GetBots.Query query)
|
|
{
|
|
var result = await _mediator.Send(query);
|
|
return Ok(result);
|
|
}
|
|
|
|
[HttpGet("initialize-session/{botName}/{externalId}/{clientApplication}/{userKey}")]
|
|
public async Task<IActionResult> GetSession([FromRoute] GetSession.Query query)
|
|
{
|
|
var result = await _mediator.Send(query);
|
|
return Ok(result);
|
|
}
|
|
}
|
|
}
|