PHPackages                             ypl/transistor - 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. ypl/transistor

AbandonedArchivedLibrary

ypl/transistor
==============

0211PHP

Since Jun 29Pushed 7y ago1 watchersCompare

[ Source](https://github.com/paulandroshchuk/transistor)[ Packagist](https://packagist.org/packages/ypl/transistor)[ RSS](/packages/ypl-transistor/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Instalation
===========

[](#instalation)

For Laravel 5.5

```
composer require ypl/transistor
```

Usage
=====

[](#usage)

Select a gateway and send an SMS message to recipient via the selected gateway.

```
Transistor::from('twilio', '+10000000000')->send('+10000000000', 'Test Message');
```

Extend Transistor adding&amp;using your own gateways.

```
class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        // Register a gateway
        Transistor::extend('nexmo', function (string $senderNumber) {
            return new NexmoGateway($this->app['config']->get('transistor.gateways.nexmo'), $senderNumber);
        });
    }
}

// Use the gateway
Transistor::from('nexmo', '+10000000000')->...
```

Coming Soon:
============

[](#coming-soon)

- Testing Compatibility

```
Transistor::fake();

// Sending stuff

Transistor::assertSent('twilio', '+10000000000')->withMessage('bla bla');
```

- Bulk Send

```
$recipients = [
    '+10000000001',
    '+10000000002' => 'Unique Text',
    '+10000000003',
];

$responses = Transistor::from('twilio', '+10000000000')->send($recipients, 'Bulk Test Message');

$responses->each(function (TwilioResponse $response) {
    //
});

$responses->whereNumber('+10000000001')->getMessageBody(); // Bulk Test Message
$responses->whereNumber('+10000000002')->getMessageBody(); // Unique Text
```

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity40

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/6040228cf5e3aa33c42531316c844d7b5d1e5e1fcb82cbb77bdc70a03aa62ed5?d=identicon)[ypl](/maintainers/ypl)

---

Top Contributors

[![paulandroshchuk](https://avatars.githubusercontent.com/u/13240539?v=4)](https://github.com/paulandroshchuk "paulandroshchuk (44 commits)")

### Embed Badge

![Health badge](/badges/ypl-transistor/health.svg)

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

PHPackages © 2026

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