Skip to content

9d4/wadoh

Repository files navigation

Wadoh

Wadoh is WhatsApp Web API powered by whatsmeow. It provides API from connected device that can be integrated with other app or system. This repo is just the Wadoh web itself, the devices are managed in wadoh-be through gRPC.

This supposed to be like:

  • Multi user
  • Multi devices (each user can have many devices)
  • Human like action (typing and online before send message)
  • Providing API for devices
  • Providing webhook for received messages

Disclaimer: This is not official WhatsApp API, it's not guaranteed you will not be blocked by using this.

Running

Frontend is using parcel to build css and js, it's located in html/. During development we may run

$ npm run watch

to build and run the web server, add dev tag so it will use os FS instead of embed FS.

$ go run -tags dev .

Configuration

Wadoh supports yaml, json, and environment variable. See yaml example. Environment variable should be prefixed with WADOH_ and use __ for children.

log_level: -1 # see zerolog.Level for reference: https://github.com/rs/zerolog/?tab=readme-ov-file#leveled-logging
http:
  address: 0.0.0.0:8080 # or WADOH_HTTP__ADDRESS=127.0.0.1:8989
  jwt_secret: abc
storage:
  provider: mysql
  dsn: root:@tcp(localhost:3306)/wadoh?parseTime=true
wadoh_be_address: localhost:50051

Custom config path is also supported, use -c or --config to use custom config path.