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.1.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.1-cp39-cp39-macosx_15_0_universal2.whl (5.4 MB view details)

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

File details

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

File metadata

  • Download URL: whatsupbraeker-0.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 07588ff93b6efc110430599bc26823fa83fe58c5274f2a8d4f24ee5773427bd4
MD5 8868943e2331988cc4049a04afc30db0
BLAKE2b-256 ae6d0b2b4e84ce5aa7e932e9b581edcd7dd36f7d7385541c2ddba11b9c1203f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for whatsupbraeker-0.2.1-cp39-cp39-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 68d3488c4c962ea498fe5d14b52f7829271121ec76d376697b62644aa31ba9a5
MD5 956980e2ddc2eecef59b2cea66fb9d2d
BLAKE2b-256 b4140bf112bb672afd82875f917552ba7861ce161b596c9b66b9e2ced37e84c1

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