YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
IChatBot.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2023-2023 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6#ifndef YARP_DEV_ICHATBOT_H
7#define YARP_DEV_ICHATBOT_H
8
9#include <yarp/dev/api.h>
10
11#include <string>
12#include <vector>
13
14
15namespace yarp::dev {
16class IChatBot;
17} // namespace yarp
18
25{
26public:
30 virtual ~IChatBot();
31
38 virtual bool interact(const std::string& messageIn, std::string& messageOut) = 0;
39
45 virtual bool setLanguage(const std::string& language="auto") = 0;
46
52 virtual bool getLanguage(std::string& language) = 0;
53
59 virtual bool getStatus(std::string& status) = 0;
60
65 virtual bool resetBot() = 0;
66};
67
68
69#endif //YARP_DEV_ICHATBOT_H
IChatBot interface.
Definition IChatBot.h:25
virtual bool getStatus(std::string &status)=0
Gets the current status of the bot.
virtual ~IChatBot()
Destructor.
virtual bool resetBot()=0
Resets the chatbot.
virtual bool setLanguage(const std::string &language="auto")=0
Sets the chat bot language.
virtual bool getLanguage(std::string &language)=0
Gets the current chatbot language.
virtual bool interact(const std::string &messageIn, std::string &messageOut)=0
Sends a message to the chatbot.
For streams capable of holding different kinds of content, check what they actually have.
The main, catch-all namespace for YARP.
Definition dirs.h:16
#define YARP_dev_API
Definition api.h:18