PHPackages                             vielhuber/wahelper - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. vielhuber/wahelper

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

vielhuber/wahelper
==================

Lightweight whatsapp integration layer.

1.7.9(3w ago)1231↓40%MITJavaScriptPHP &gt;=8.1

Since Nov 18Pushed 2w agoCompare

[ Source](https://github.com/vielhuber/wahelper)[ Packagist](https://packagist.org/packages/vielhuber/wahelper)[ RSS](/packages/vielhuber-wahelper/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (12)Versions (74)Used By (0)

[![build status](https://github.com/vielhuber/wahelper/actions/workflows/ci.yml/badge.svg)](https://github.com/vielhuber/wahelper/actions)[![GitHub Tag](https://camo.githubusercontent.com/be50e347be33aa00986198510c90ea034e991051e3b1ad6832a95219bb9df12a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f7461672f7669656c68756265722f776168656c706572)](https://github.com/vielhuber/wahelper/tags)[![Code Style](https://camo.githubusercontent.com/1540f8ce219727155ab62506c77b818b720421c22c4cf0b18a5f160942132e2d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f636f64655f7374796c652d7073722d2d31322d6666363962342e737667)](https://www.php-fig.org/psr/psr-12/)[![License](https://camo.githubusercontent.com/414f1c4cad5dbf970785e23af06fcf7024846669485ae192c45a1472015791d8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f7669656c68756265722f776168656c706572)](https://github.com/vielhuber/wahelper/blob/main/LICENSE.md)[![Last Commit](https://camo.githubusercontent.com/61a727de8114fe307cda34d9c7802decda706e49cfb60265ae9d2d03de3b0485/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6173742d636f6d6d69742f7669656c68756265722f776168656c706572)](https://github.com/vielhuber/wahelper/commits)[![PHP Version Support](https://camo.githubusercontent.com/162f88377f7d5f7bae79bc68c5b7319ecdccf81e2bcd48341d311b8961b5d305/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f7669656c68756265722f776168656c706572)](https://packagist.org/packages/vielhuber/wahelper)[![Packagist Downloads](https://camo.githubusercontent.com/99b6eddd3a456e113c9b04bbbd4f20e80a6b7381f6869d26e588959b1b42584d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7669656c68756265722f776168656c706572)](https://packagist.org/packages/vielhuber/wahelper)[![node version](https://camo.githubusercontent.com/437d5023778d758fb4f9e79a35c5f4fc61b1ea6ae66ef9d3aa4a817807ae0a4b/68747470733a2f2f696d672e736869656c64732e696f2f6e6f64652f762f407669656c68756265722f776168656c706572)](https://www.npmjs.com/package/@vielhuber/wahelper)[![npm Version](https://camo.githubusercontent.com/59dbbdcfd84acf44af3e58825ebab6673bf3e0e59028ad15abf0ad587728e7e2/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f407669656c68756265722f776168656c706572)](https://www.npmjs.com/package/@vielhuber/wahelper)[![npm Downloads](https://camo.githubusercontent.com/033caf803d0f1717d10fef99a9a22a2abb97ec734065a1847fb4d45fca1d7a5e/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f64742f407669656c68756265722f776168656c706572)](https://www.npmjs.com/package/@vielhuber/wahelper)

🍸 wahelper 🍸
============

[](#-wahelper-)

wahelper is a lightweight whatsapp integration layer built on top of [baileys](https://github.com/WhiskeySockets/Baileys) that provides a simple cli, php wrapper, and mcp server for fetching messages, sending direct and group messages, and wiring whatsapp into existing tooling (wordpress, node, mcp clients) without having to deal with the full session lifecycle yourself.

requirements
------------

[](#requirements)

- node &gt;= 22
- php &gt;= 8.1

installation
------------

[](#installation)

### js

[](#js)

```
npm install @vielhuber/wahelper
```

### php

[](#php)

```
composer require vielhuber/wahelper
```

### .gitignore

[](#gitignore)

```
/whatsapp_data/

```

usage
-----

[](#usage)

### start daemon

[](#start-daemon)

```
npx wahelper-daemon --device "xxxxxxxxxxxx"
```

### cli

[](#cli)

```
npx wahelper \
    --device "xxxxxxxxxxxx" \
    ...

    # fetch messages
    --action "fetch_messages" \
    --filter '{"from":"491234567890","to":"491234567890","message":"meeting","date_from":"2026-01-01","date_until":"2026-12-31"}' \
    --limit 42 \
    --order "desc" \
    --exclude-body

    # view a single message by id
    --action "view_message" \
    --id "ABCDEF1234567890"

    # send message to user
    --action "send_user" \
    --number "xxxxxxxxxxxx" \
    --message "This is a test! 🚀" \
    --attachments "/full/path/to/file.pdf,/full/path/to/image.png"

    # send message to group
    --action "send_group" \
    --name "Group name" \
    --message "This is a test! 🚀" \
    --attachments "/full/path/to/file.pdf,/full/path/to/image.png"
```

### php

[](#php-1)

```
require_once __DIR__ . '/vendor/autoload.php';
use vielhuber\wahelper\wahelper;

$wahelper = new wahelper();

// fetch messages
$wahelper->fetchMessages(
    device: 'xxxxxxxxxxxx',
    filter: [
        'from' => '491234567890',
        'to' => '491234567890',
        'message' => 'meeting',
        'date_from' => '2026-01-01',
        'date_until' => '2026-12-31'
    ],
    limit: 42,
    order: 'desc',
    exclude_body: true
);

// view a single message by id
$wahelper->viewMessage(device: 'xxxxxxxxxxxx', id: 'ABCDEF1234567890');

// send message to user
$wahelper->sendUser(
    device: 'xxxxxxxxxxxx',
    number: 'xxxxxxxxxxxx',
    message: 'This is a test! 🚀',
    attachments: ['/full/path/to/file.pdf', '/full/path/to/image.png']
);

// send message to group
$wahelper->sendGroup(
    device: 'xxxxxxxxxxxx',
    name: 'Group name',
    message: 'This is a test! 🚀',
    attachments: ['/full/path/to/file.pdf', '/full/path/to/image.png']
);
```

### mcp

[](#mcp)

```
{
    "mcpServers": {
        "whatsapp": {
            "command": "/usr/bin/php8.1",
            "args": ["/var/www/wahelper/vendor/bin/mcp-server.php"]
        }
    }
}
```

daemon
------

[](#daemon)

```
# install pm2
npm install -g pm2

# start daemon (linux)
pm2 start npx --name wahelper-xxxxxxxxxxxx --cwd /var/www/wahelper -- wahelper-daemon --device xxxxxxxxxxxx

# start daemon (windows)
pm2 start node --name wahelper-xxxxxxxxxxxx --cwd "C:\path\to\project" -- node_modules/@vielhuber/wahelper/wahelper-daemon.js --device xxxxxxxxxxxx

## autostart (linux)
pm2 save
pm2 startup

## autostart (windows)
pm2 save
Windows Task Scheduler > Create Task > Triggers: At startup → Actions: Start a program → Program: "C:\Users\\AppData\Roaming\npm\pm2.cmd", Arguments: "resurrect"

# more commands
pm2 unstartup                      # remove autostart
pm2 status                         # show status of all processes
pm2 resurrect                      # restore saved process list
pm2 save                           # save current process list for resurrect
pm2 start wahelper-xxxxxxxxxxxx    # start a stopped process
pm2 stop wahelper-xxxxxxxxxxxx     # stop a running process
pm2 restart wahelper-xxxxxxxxxxxx  # restart a process
pm2 logs wahelper-xxxxxxxxxxxx     # tail live logs
pm2 delete wahelper-xxxxxxxxxxxx   # remove process
```

###  Health Score

48

—

FairBetter than 94% of packages

Maintenance96

Actively maintained with recent releases

Popularity17

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity59

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

73

Last Release

22d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3183737?v=4)[David Vielhuber](/maintainers/vielhuber)[@vielhuber](https://github.com/vielhuber)

---

Top Contributors

[![vielhuber](https://avatars.githubusercontent.com/u/3183737?v=4)](https://github.com/vielhuber "vielhuber (103 commits)")

### Embed Badge

![Health badge](/badges/vielhuber-wahelper/health.svg)

```
[![Health](https://phpackages.com/badges/vielhuber-wahelper/health.svg)](https://phpackages.com/packages/vielhuber-wahelper)
```

###  Alternatives

[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k39.6k](/packages/matomo-matomo)[google/cloud-core

Google Cloud PHP shared dependency, providing functionality useful to all components.

346137.0M127](/packages/google-cloud-core)[tempest/framework

The PHP framework that gets out of your way.

2.3k37.6k21](/packages/tempest-framework)[phpactor/phpactor

PHP refactoring and intellisense tool for text editors

1.9k17.9k1](/packages/phpactor-phpactor)[brianhenryie/strauss

Prefixes dependencies namespaces so they are unique to your plugin

192484.7k41](/packages/brianhenryie-strauss)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
