You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Aldino Kemal 1d53adfaea fix: context parsing 3 years ago
.github/workflows chore: add automate deploy cross platform 3 years ago
docker feat: add send video (#15) 4 years ago
docs feat: add send contact (#18) 4 years ago
src fix: context parsing 3 years ago
.gitignore feat: move file to storage folder (#26) 3 years ago
docker-compose.yml chore: update docker config 3 years ago
readme.md chore: update docs 3 years ago

readme.md

Go Whatsapp API Multi Device Version

buddy pipeline release windows release linux release macos

Feature

  • Send whatsapp via http API, docs/openapi.yml for more details
  • Compress image before send
  • Compress video before send
  • Change OS name become your app (this is the app name when connect via mobile)
    • --os=Chrome or --os=MyApplication
  • Basic Auth
    • --basic-auth=kemal:secret, or you can simplify
    • -b=kemal:secret
  • Customizable port and debug mode
    • --port 8000
    • --debug true
  • Auto reply message
    • --autoreply="Don't reply this message"
  • Webhook for received message
    • --webhook="http://yourwebhook.site/handler", or you can simplify
    • -w="http://yourwebhook.site/handler"
  • For more command ./main --help

Required (without docker)

  • Mac OS:
    • brew install vips
    • brew install ffmpeg
    • export CGO_CFLAGS_ALLOW="-Xpreprocessor"
  • Linux:
    • sudo apt update
    • sudo apt install libvips-dev
    • sudo apt install ffmpeg
  • Windows (not recomended, prefer using WSL):

How to use

Basic

  1. Clone this repo git clone https://github.com/aldinokemal/go-whatsapp-web-multi-device
  2. open via cmd/terminal
  3. run cd src
  4. run go run main.go
  5. open http://localhost:3000
  6. run go run main.go --help for more detail flags

Docker (you don't need to install in required)

  1. Clone this repo git clone https://github.com/aldinokemal/go-whatsapp-web-multi-device
  2. open via cmd/terminal
  3. run docker-compose up -d --build
  4. open http://localhost:3000

Build your own binary

  1. Clone this repo git clone https://github.com/aldinokemal/go-whatsapp-web-multi-device
  2. open via cmd/terminal
  3. run go install github.com/markbates/pkger/cmd/pkger@latest
  4. run cd src
  5. run
    1. Linux & MacOS: pkger && go build -o whatsapp
    2. Windows (CMD, not PowerShell): pkger.exe && go build -o whatsapp.exe
  6. run
    1. Linux & MacOS: ./whatsapp
      1. run ./whatsapp --help for more detail flags
    2. Windows: .\whatsapp.exe or you can double-click it
      1. run .\whatsapp.exe --help for more detail flags
  7. open http://localhost:3000 in browser

Production Mode (docker)

  • docker run --detach --publish=3000:3000 --name=whatsapp --restart=always --volume=$(docker volume create --name=whatsapp):/app/storages aldinokemal2104/go-whatsapp-web-multidevice --autoreply="Dont't reply this message please"

Production Mode (binary)

You can fork or edit this source code !

Current API

You can check docs/openapi.yml for detail API

Feature Menu Method URL
Login GET /app/login
Logout GET /app/logout
Reconnect GET /app/reconnect
User Info GET /user/info
User Avatar GET /user/avatar
User My Group List GET /user/my/groups
User My Privacy Setting GET /user/my/privacy
Send Message POST /send/message
Send Image POST /send/image
Send File POST /send/file
Send Video POST /send/video
Send Contact POST /send/contact
✅ = Available
❌ = Not Available Yet

App User Interface

  1. Homepage Homepage
  2. Login Login
  3. Send Message Send Message
  4. Send Image Send Image
  5. Send File Send File
  6. Send Video Send File
  7. Send Contact Send File
  8. User Info User Info
  9. User Avatar User Avatar
  10. User Privacy User My Privacy
  11. User Group List Group
  12. Auto Reply Auto Reply
  13. Basic Auth Prompt Basic Auth

Mac OS NOTE

  • Please do this if you have an error (invalid flag in pkg-config --cflags: -Xpreprocessor) export CGO_CFLAGS_ALLOW="-Xpreprocessor"