diff --git a/src/main/java/de/gnmyt/autoresponder/handler/DialogflowHandler.java b/src/main/java/de/gnmyt/autoresponder/handler/DialogflowHandler.java new file mode 100644 index 0000000..6e74c4a --- /dev/null +++ b/src/main/java/de/gnmyt/autoresponder/handler/DialogflowHandler.java @@ -0,0 +1,39 @@ +package de.gnmyt.autoresponder.handler; + +import de.gnmyt.autoresponder.integration.DialogflowIntegration; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +public class DialogflowHandler extends NotFoundHandler { + + private static final Logger LOG = LoggerFactory.getLogger(DialogflowHandler.class); + + private DialogflowIntegration dialogflowIntegration; + + /** + * Constructor of the {@link DialogflowHandler}. + *

+ * Runs whenever the request could not be found and redirects the message to dialogflow + * + * @param credentials Your credentials file, created by your google api + */ + public DialogflowHandler(File credentials) { + try { + this.dialogflowIntegration = new DialogflowIntegration(credentials); + } catch (IOException e) { + e.printStackTrace(); + } + } + + @Override + public List handleRequest(String sender, String message) { + ArrayList messages = new ArrayList<>(); + messages.add(dialogflowIntegration.getMessage(message, sender)); + return messages; + } +}