// SEHR höflich Bot, wer nur gute Wörter sagen kann
String data;
bool received = false;
#define VARIANTS 3
#define SIZE 2
void setup()
{
Serial.begin(9600);
Serial.println("Hi! Write /help to find out all the commands !");
}
void loop()
{
while(Serial.available() > 0)
{
data += (char)Serial.read();
received = true;
delay(2);
}
if(received)
{
data.remove(data.length() - 1);
if(data.length())
{
Serial.println("User: " + data);
data.trim();
data.toLowerCase();
Serial.println("Bot: " + answer(data));
data = "";
}
received = false;
}
}
String answer(String message)
{
//const unsigned int SIZE = 2, VARIANTS = 3;
String commands[SIZE] = {"hello", "goodbye"};
String answers[SIZE][VARIANTS] = {
{"Hello!", "Hey!", "Hi!"},
{"Goodbye!", "Bye!", "See you later!"}
};
for(unsigned int i = 0; i < SIZE; i++)
if(message == commands[i])
return answers[i][random(VARIANTS)];
if(message == "/help")
{
if(SIZE > 0)
{
String ans = "\nSecrete phrases: ";
for(unsigned int i = 0; i < SIZE; i++)
ans += "\n" + String(i+1) + ". \"" + commands[i] + "\";";
ans += "\nChoose one and send me one messege";
return ans;
}
}
return "Sorry, but I can't answer this message.";
}