Skip to content

DonnC/jawce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java WhatsApp ChatBot Engine

A dependency for creating complete WhatsApp chatbots with ease using a template-driven approach.

Features

  • Template-Driven Design: By default, you can use YAML | JSON templates for conversational flows. But you can implement your own TemplateStorageManager
  • Hooks for Business Logic: Attach Java classes / spring beans / RESTful endpoints to process messages or actions.
  • Abstracts the API for WhatsApp Cloud: focus on your core chatbot functions.
  • Supports all official WhatsApp message types including Flows
  • Supports dynamic messages with placeholders.
  • Auto configs via properties file
  • Event driven architecture with Spring Events

Setup

For a quick start - Fork the repository and attempt to run the chatbot in the example folder

Developed with Java 17+ using maven

  1. Clone repository
git clone git@github.com:DonnC/jawce.git
  1. Install all project maven dependencies
  • Install main engine dependencies injengine folder
  • Install dependencies for the examples in the example/ folder
  1. Navigate to the example chatbot >example/ehailing/src/main/resources/application.yml properties file and replace configs with your WhatsApp account configs

Checkout the complete local WhatsApp Chatbot Emulator tool!

Engine dependency

Refer to the Example ChatBot for a quick getting started template

To include the jengine in your own project.

In your pom.xml dependencies add the following

<!-- your other dependencies -->

<dependency>
    <groupId>zw.co.dcl.jawce</groupId>
    <artifactId>jengine</artifactId>
    <version>LATEST-VERSION</version>
    <scope>compile</scope>
</dependency>

Make sure you create a rest controller which handles 2 of the important logic

  • webhook verification
  • webhook payload

Checkout the example project for a starting point

Documentation

Visit the official documentation for a detailed guide.

Contributing

We welcome contributions! Please check out the Contributing Guide for details.

License

This project is licensed under the MIT License. See the LICENSE file for details.

About

A Java WhatsApp ChatBot Engine

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Languages