PHPackages                             deepeloper/tunneled-webhooks - 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. deepeloper/tunneled-webhooks

ActiveProject

deepeloper/tunneled-webhooks
============================

Tunneled Webhooks

1.1.0(1y ago)237MITPHPPHP &gt;=8.2

Since Sep 16Pushed 1y ago1 watchersCompare

[ Source](https://github.com/deepeloper/tunneled-webhooks)[ Packagist](https://packagist.org/packages/deepeloper/tunneled-webhooks)[ Docs](https://github.com/deepeloper/tunneled-webhooks)[ RSS](/packages/deepeloper-tunneled-webhooks/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (6)Versions (7)Used By (0)

Tunneled Webhooks
=================

[](#tunneled-webhooks)

[![Packagist version](https://camo.githubusercontent.com/d62e93949d7caa90fcd34a3b2097946dc1f7eeae63b06b0a8dfbb0ee77fde299/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b73)](https://packagist.org/packages/deepeloper/tunneled-webhooks)[![PHP from Packagist](https://camo.githubusercontent.com/967384d973bf631d939d91c43c091bd0f45b86183acc9b6e7283e6e893301549/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b732e737667)](http://php.net/)[![GitHub license](https://camo.githubusercontent.com/9bde76ace38590458c642983bc566882e84b259b4d7aaec9f40236a856710eed/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b732e737667)](https://github.com/deepeloper/tunneled-webhooks/blob/main/LICENSE)[![GitHub issues](https://camo.githubusercontent.com/6233af34a5094284dcf056180a9b1a8644183a64731af8f40fc9e8bc8f6ad35a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732d7261772f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b732e737667)](https://github.com/deepeloper/tunneled-webhooks/issues)[![Packagist](https://camo.githubusercontent.com/4fc1347cc5893c3ce39dc8dc4e70ae49b3fd5b2421ca3f6e71180e182b8fd5fb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b732e737667)](https://packagist.org/packages/deepeloper/tunneled-webhooks)[![CI](https://github.com/deepeloper/tunneled-webhooks/actions/workflows/ci.yml/badge.svg?event=push)](https://github.com/deepeloper/tunneled-webhooks/actions)[![codecov](https://camo.githubusercontent.com/abea86c161cfca2a919d2b06fa8137b4ff6e08b717fb59eda757a06d503a6c04/68747470733a2f2f636f6465636f762e696f2f67682f64656570656c6f7065722f74756e6e656c65642d776562686f6f6b732f6272616e63682f6d61696e2f67726170682f62616467652e737667)](https://codecov.io/gh/deepeloper/tunneled-webhooks)

[![Donation](https://camo.githubusercontent.com/a59a69ad3d5f2b3205fc267af930d371787bc02ca5a4369f1d2556b119b28f16/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f446f6e6174696f6e2d566973612c2532304d6173746572436172642c2532304d61657374726f2c253230556e696f6e5061792c253230596f6f4d6f6e65792c2532302544302539432544302539382544302541302d726564)](https://yoomoney.ru/to/41001351141494)

Runs tunneling service and registers temporary webhooks for workstation having no white IP by one command `/path/to/php bin/run.php /path/to/config.php`.

- Implemented tunneling services: [ngrok](https://ngrok.com/);
- Implemented webhooks connectors: [Telegram](https://core.telegram.org/bots/api#setwebhook);
- Implemented bots: [Windbag](https://github.com/deepeloper/tunneled-webhooks/blob/main/src/Webhook/Handler/Windbag.php).

You can add your own tunneling services, register and handle your own webhooks.

Compatibility
-------------

[](#compatibility)

![PHP 8.0](https://camo.githubusercontent.com/7444df218d54a576685e20198de25c54c314427b59a444d8ce754b48023c2c9b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d2533453d382e302d253233374138364238)

Installation
------------

[](#installation)

`composer require deepeloper/tunneled-webhooks`

### Tunneling services

[](#tunneling-services)

[Download ngrok](https://ngrok.com/download) (and/or other tunneling services), sign up in service, get auth token and run service once `/path/to/ngrok authtoken %YOUR_NGROCK_AUTH_TOKEN%`.

### Webhooks

[](#webhooks)

[Register Telegram bot](https://core.telegram.org/bots) and receive bot auth token.

### Configuring local web server

[](#configuring-local-web-server)

- nginx

Add \*.ngrok.io subdomains:

```
server {
    listen   127.0.0.1:80;
    server_name ~^(.*)\.ngrok\.io;

    ; This application www-directory
    root /path/to/www;
}

```

and restart nginx.

- Apache

According to [ngrok docs](https://ngrok.com/docs/using-ngrok-with/virtualHosts/) in own config modify «service/command» value as `/path/to/ngrok http --host-header=%LOCAL_HOST_NAME% 80`.

### Application config

[](#application-config)

Copy «config.skeleton.php» to your own config file and put ngrok path &amp; Telegram token to the new file:

```
    // ...
    'service' => [
        'class' => "\\deepeloper\\TunneledWebhooks\\Service\Ngrok",
        // CLI command to run service.
        // Modify path here:
        'command' => "/path/to/ngrok http 80",
        // ...
    ],

    'webhook' => [
        'Telegram' => [
            'Windbag' => [
                // ...
                // Telegram bot token.
                // Modify token here:
                'token' => "",
                // ...
```

Usage
-----

[](#usage)

### Run tunneling service and bot

[](#run-tunneling-service-and-bot)

`vendor/bin/tunneled-webhooks /path/to/config.php`

Tunneling service will be started, Telegram webhook will be registered, and you could to start conversation with Telegram bot.

### Run bot from CLI

[](#run-bot-from-cli)

`vendor/bin/bot.windbag`

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance33

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity60

Established project with proven stability

 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 ~71 days

Total

5

Last Release

681d ago

PHP version history (2 changes)1.0.0PHP &gt;=8.0

1.1.0PHP &gt;=8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/b08c1bee93473eb7b0d4f736249f68bf5c6319715ea036dbfd7532db9a0a7ecc?d=identicon)[deepeloper](/maintainers/deepeloper)

---

Top Contributors

[![deepeloper](https://avatars.githubusercontent.com/u/1831371?v=4)](https://github.com/deepeloper "deepeloper (60 commits)")

---

Tags

phpwebhookstunneling

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/deepeloper-tunneled-webhooks/health.svg)

```
[![Health](https://phpackages.com/badges/deepeloper-tunneled-webhooks/health.svg)](https://phpackages.com/packages/deepeloper-tunneled-webhooks)
```

###  Alternatives

[renoki-co/laravel-aws-webhooks

Easy webhook handler for Laravel to catch AWS SNS notifications for various services.

73248.5k](/packages/renoki-co-laravel-aws-webhooks)[pestphp/pest-plugin-stressless

Stressless plugin for Pest

67792.6k16](/packages/pestphp-pest-plugin-stressless)[biegalski-llc/laravel-mailgun-webhooks

This package allows you to quick and easily integrate your Laravel application with Mailgun Webhooks thus allowing you to track the outgoing email status for each individual user. There is also an optional feature to receive alerts for specific mailgun events such as spam complaints and sending failuresgit .

2389.2k](/packages/biegalski-llc-laravel-mailgun-webhooks)[klev-o/telegram-bot-api

Simple and convenient object-oriented implementation Telegram bot API with php version ^7.4 support. You'll like it)

457.8k1](/packages/klev-o-telegram-bot-api)[borsaco/telegram-bot-api-bundle

A simple wrapper for telegram-bot-api.

5633.0k](/packages/borsaco-telegram-bot-api-bundle)

PHPackages © 2026

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