Add HelloWorld debug agent and per-chat handler

This commit is contained in:
josedario87
2025-06-04 21:51:05 -06:00
parent dec4922d42
commit 8d2e8f4854
14 changed files with 582 additions and 35 deletions

View File

@@ -1,9 +1,9 @@
# Conversation Layer
This module contains the services that handle messaging for WhatsApp and the web chat interface. It is composed of three containers:
This module contains the services that handle messaging for WhatsApp and the web chat interface. All source code is now written in **TypeScript**. It is composed of three containers:
- **openwa** provides access to WhatsApp through the [open-wa](https://github.com/open-wa/wa-automate-nodejs) project.
- **whatsapp-router** receives webhook events from openwa and forwards messages to an external LLM agent.
- **whatsapp-router** receives webhook events from openwa and forwards messages to a conversation handler. Handlers can be configured per chat ID in `whatsapp-router/src/chatHandlers.ts`.
- **chat-ui** simple web chat interface that also communicates with the LLM agent.
All services can be launched together with `docker-compose`.
@@ -11,7 +11,8 @@ All services can be launched together with `docker-compose`.
## Usage
1. Configure the URL of your LLM agent in `docker-compose.yml` (`LLM_AGENT_URL`).
2. Run:
2. Optionally edit `whatsapp-router/src/chatHandlers.ts` to map specific chat IDs to different handler URLs or local handlers. By default the chat ID `50498554225@c.us` is mapped to a builtin *HelloWorld* agent that replies "hello world" for testing.
3. Run:
```bash
docker-compose up --build