PHPackages                             progrupa/sms-bundle - 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. [Mail &amp; Notifications](/categories/mail)
4. /
5. progrupa/sms-bundle

ActiveSymfony-bundle[Mail &amp; Notifications](/categories/mail)

progrupa/sms-bundle
===================

Bundle for sending SMS messages

051PHP

Since Apr 23Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/progrupa/SmsBundle)[ Packagist](https://packagist.org/packages/progrupa/sms-bundle)[ RSS](/packages/progrupa-sms-bundle/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

Progrupa SMS Bundle
===================

[](#progrupa-sms-bundle)

Extensible Symfony2 bundle for sending simple SMS messages.

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

[](#installation)

The bundle is available via composer, simply call `composer require progrupa/sms-bundle:dev-master` or add `"progrupa/sms-bundle": "dev-master"` to your composer.json and then call `composer update progrupa/sms-bundle`.

Then enable the bundle in your AppKernel.php:

```
    new Progrupa\SmsBundle\ProgrupaSmsBundle()

```

Basic configuration
-------------------

[](#basic-configuration)

```
# config.yml
progrupa_sms:
    transport: 'smsapi.pl'

```

Usage
-----

[](#usage)

```
    $result = $this->get('progrupa.sms')->send('48111222333', 'Text message');
    if ($result->isSuccess) {
        echo "SMS was sent";
    }

```

Default provider
----------------

[](#default-provider)

The bundle provides support for SmsApi.pl messaging service. To use it, You'll need to provide credentials of an active account. This is done through bundle configuration:

```
progrupa_sms:
    smsapi_pl:
        username: YourUsername
        password: YourPassword
        options:
            from: Awesome Co
            encoding: utf-8

```

The `options` section allows to specify any options You wish to pass with send action. Full documentation can be found on the provider's [website](https://www.smsapi.pl/rest)

Custom transport
----------------

[](#custom-transport)

To support your own SMS provider You need to create a TransportInterface class, declare it as a service and tag with `progrupa.sms.transport`. Then configure Progrupa Sms Bundle to use Your transport instead of the default one.

Example transport:

```
use Progrupa\SmsBundle\Model\Result;
use Progrupa\SmsBundle\Model\Sms;
use Progrupa\SmsBundle\Transport\TransportInterface;

class MyAwesomeTransport implements TransportInterface
{
    /**
     * @param Sms $sms Message to be sent
     * @return Result
     */
    public function send(Sms $sms)
    {
        $result = $this->magic->sendSMS($sms->recipient, $sms->message);
        return $result;
    }
}
```

Example service configuration:

```

        ...

```

or

```
services:
    foo.my_awesome_transport:
        class: MyAwesomeTransport
        tags:
            - {name: "progrupa.sms.transport", alias: "my_awesome_transport"}
```

Example configuration:

```
# config.yml
progrupa_sms:
    transport: 'my_awesome_transport'

```

Contributions
-------------

[](#contributions)

We are open to pull requests providing new transport support or new features, feel free to contact us.

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance57

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 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.

### Community

Maintainers

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

---

Top Contributors

[![WhatsOn](https://avatars.githubusercontent.com/u/2388516?v=4)](https://github.com/WhatsOn "WhatsOn (10 commits)")

### Embed Badge

![Health badge](/badges/progrupa-sms-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/progrupa-sms-bundle/health.svg)](https://phpackages.com/packages/progrupa-sms-bundle)
```

###  Alternatives

[maize-tech/laravel-email-domain-rule

Laravel Email Domain Rule

612.0k](/packages/maize-tech-laravel-email-domain-rule)

PHPackages © 2026

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