Skip to main content

Python bindings for the WhatsUpBraeker Go WhatsApp bridge.

Project description

What-s-up-braeker

Go-библиотека для работы с WhatsApp через whatsmeow. Пакет предоставляет минимальный API, пригодный для собственных Go-приложений и для использования через ctypes в Python.

Структура проекта

  • pkg/waclient — основная логика соединения, отправки и получения сообщений.
  • cmd/wa-bridge — точка сборки c-shared, экспортирующая функции WaRun и WaFree.
  • python/whatsapp_client.py — удобный Python-клиент и CLI.
  • python/examples/ — готовые скрипты для отправки, логирования и автоответов.
  • examples/python/client.py — низкоуровневый пример работы через ctypes.
  • main.go — демонстрация использования пакета напрямую из Go.

Использование в Go

go run ./main.go

Перед запуском задайте номер телефона и текст сообщения в main.go. При первой авторизации появится QR-код, который нужно отсканировать в WhatsApp.

Чтобы подключить библиотеку в другом проекте:

import "github.com/Alias1177/What-s-up-braeker/pkg/waclient"

Сборка динамической библиотеки

mkdir -p dist
go build -buildmode=c-shared -o dist/libwa.so ./cmd/wa-bridge

Команда создаст dist/libwa.so и заголовок dist/libwa.h. В средах с ограниченными правами на запись в глобальные кэши можно использовать локальные каталоги:

GOTOOLCHAIN=go1.24.0 \
GOMODCACHE=$PWD/.gomodcache \
GOCACHE=$PWD/.gocache \
go build -buildmode=c-shared -o dist/libwa.so ./cmd/wa-bridge

Python Wrapper

The library can now be used from Python:

from python.whatsapp_client import WhatsAppClient

client = WhatsAppClient(phone="79991234567")
response = client.send_message("79991234568", "Hello!")

if response.success:
    print(f"Sent! Message ID: {response.message_id}")

More details: python/README.md

Требования

  • Go 1.24+ (для зависимостей whatsmeow);
  • база WhatsApp (whatsapp.db) рядом с бинарём;
  • Python 3.8+ (для примера).

Примечания

  • В pkg/waclient.Config можно управлять тайм-аутами, логами и выводом QR.
  • WaRun возвращает JSON c полями success, message_id, messages, requires_qr и error.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whatsupbraeker-0.2.0.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whatsupbraeker-0.2.0-cp39-cp39-macosx_15_0_universal2.whl (4.7 MB view details)

Uploaded CPython 3.9macOS 15.0+ universal2 (ARM64, x86-64)

File details

Details for the file whatsupbraeker-0.2.0.tar.gz.

File metadata

  • Download URL: whatsupbraeker-0.2.0.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for whatsupbraeker-0.2.0.tar.gz
Algorithm Hash digest
SHA256 bd20064213a405ff8350191d9407e503c166b2a9a956361a63cd040e27848580
MD5 9da487b59a2901b9c49684eadc5d622e
BLAKE2b-256 45e5ee3381642df6a97e8f9068343b5c398349b75af58b70a6c04e3a94265904

See more details on using hashes here.

File details

Details for the file whatsupbraeker-0.2.0-cp39-cp39-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for whatsupbraeker-0.2.0-cp39-cp39-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 427af8ecd295a33c46f8e58d56c89a755faab4ab4f60a1d2a3f93916c32bd640
MD5 8b6140deaead751e8fecae3eb298c948
BLAKE2b-256 38c62d7a53409b6783e9f439e934a9f839a863a32460d6fc3df32252bfce4568

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page