PHPackages                             fowitech/laravel-sms - 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. fowitech/laravel-sms

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

fowitech/laravel-sms
====================

Persistent sms package for Laravel

162556PHP

Since Mar 3Pushed 2y agoCompare

[ Source](https://github.com/fowitech/laravel-sms)[ Packagist](https://packagist.org/packages/fowitech/laravel-sms)[ RSS](/packages/fowitech-laravel-sms/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Laravel SMS Gateway
===================

[](#laravel-sms-gateway)

[![GitHub License](https://camo.githubusercontent.com/295fff32fa9774e0835bb224bbd3c01b2d4d6ac0eacb314f3f3c40ea8b71b80e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f666f7769746563682f6c61726176656c2d736d733f7374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/295fff32fa9774e0835bb224bbd3c01b2d4d6ac0eacb314f3f3c40ea8b71b80e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f666f7769746563682f6c61726176656c2d736d733f7374796c653d666f722d7468652d6261646765)[![Latest Version on Packagist](https://camo.githubusercontent.com/aaf1f1bfac88f6791f29e52f7680017a67c2d04560c475e0896733da0db2d2f1/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f666f7769746563682f6c61726176656c2d736d732e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d636f6d706f736572)](https://packagist.org/packages/fowitech/laravel-sms)[![GitHub Tests Action Status](https://camo.githubusercontent.com/542998ab8e86287e1414380208927f78e7634888bad80956edb3455e215a3065/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f776f726b666c6f772f7374617475732f666f7769746563682f6c61726176656c2d736d732f54657374733f6c6162656c3d7465737473267374796c653d666f722d7468652d6261646765266c6f676f3d676974687562)](https://github.com/fowitech/laravel-sms/actions?query=workflow%3ATests+branch%3Amaster)[![Total Downloads](https://camo.githubusercontent.com/7ad4ad9fb97b8fd751eb26acd2ac7f465e860a07b75ffafc4e956010f22835a7/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f666f7769746563682f6c61726176656c2d736d732e7376673f7374796c653d666f722d7468652d6261646765266c6f676f3d6c61726176656c)](https://packagist.org/packages/fowitech/laravel-sms)

This is a Laravel Package for SMS Gateway Integration. Now Sending SMS is easy.

List of supported gateways:

- [Twilio](https://www.twilio.com/sms)
- [Netgsm](https://www.netgsm.com.tr/)
- [Mutlucell](https://www.mutlucell.com.tr/)
- [Verimor](https://www.verimor.com.tr/)
- [Iletimerkezi](https://www.iletimerkezi.com/)
- [Vatansms](https://www.vatansms.com/)
- [Toplusms](https://toplusmspaketleri.com/)
- Others are under way.

📦 Install
---------

[](#package-install)

Via Composer

```
$ composer require fowitech/laravel-sms
```

⚡ Configure
-----------

[](#zap-configure)

Publish the config file

```
$ php artisan vendor:publish --tag="sms"
```

In the config file you can set the default driver to use for all your SMS. But you can also change the driver at runtime.

Choose what gateway you would like to use for your application. Then make that as default driver so that you don't have to specify that everywhere. But, you can also use multiple gateways in a project.

```
// Eg. if you want to use Netgsm.
 'driver' => env('SMS_DRIVER', 'netgsm'),
```

Then fill the credentials for that gateway in the drivers array.

```
// Eg. for Netgsm.
'netgsm' => [
    'transport' => \Fowitech\Sms\Drivers\Netgsm::class,
    'sender' => env('NETGSM_SENDER', ''),
    'username' => env('NETGSM_USERNAME', ''),
    'password' => env('NETGSM_PASSWORD', ''),
    'options' => [
        // some options
    ]
],
```

🔥 Usage
-------

[](#fire-usage)

In your code just use it like this.

```
# On the top of the file.
use Sms;

...

# In your Controller.
Sms::message("this message")->to(['Number 1', 'Number 2'])->send();

# If you want to use a different driver.
Sms::via('gateway')->message("this message")->to(['Number 1', 'Number 2'])->send();

# If you want to use options array
$options = [
    'send_date' => now()->addHour()
];
Sms::via('gateway')->message("this message")->to(['Number 1', 'Number 2'])->send($options);

# If you are not a Laravel's facade fan, you can use sms helper:
sms()->message("this message")->to(['Number 1', 'Number 2'])->send();

# If you want to use a different driver.
sms()->via('gateway')->message("this message")->to(['Number 1', 'Number 2'])->send();
```

😍 Channel Usage
---------------

[](#heart_eyes-channel-usage)

First you have to create your notification using `php artisan make:notification` command. then `SmsChannel::class` can be used as channel like the below:

```
namespace App\Notifications;

use Illuminate\Bus\Queueable;
use Fowitech\Sms\Channels\SmsChannel;
use Illuminate\Notifications\Notification;
use Illuminate\Contracts\Queue\ShouldQueue;

class InvoicePaid extends Notification
{
    use Queueable;

    /**
     * Get the notification channels.
     *
     * @param  mixed  $notifiable
     * @return array|string
     */
    public function via($notifiable)
    {
        return [SmsChannel::class];
    }

    /**
     * Get the recipients and body of the notification.
     *
     * @param  mixed  $notifiable
     * @return Builder
     */
    public function toSms($notifiable)
    {
        return "Sms message";
    }
}
```

#### Custom Made Driver, How To:

[](#custom-made-driver-how-to)

First you have to name your driver in the drivers array and also you can specify any config params you want.

```
'my_driver' => [
    'transport' => \App\Packages\SMSDriver\MyDriver::class,
    'sender' => env('MYDRIVER_SENDER', ''),
    'username' => env('MYDRIVER_USERNAME', ''),
    'password' => env('MYDRIVER_PASSWORD', ''),
    'options' => [
        // some options
    ]
    ... # Your Config Params here.
]
```

Ex. You created a class : `App\Packages\SMSDriver\MyDriver`.

```
namespace App\Packages\SMSDriver;

use Fowitech\Sms\Drivers\Driver;

class MyDriver extends Driver
{
    public function __construct($options = [])
    {
        $this->sender = config('sms.my_driver.sender');
        $this->username = config('sms.my_driver.username');
        $this->password = config('sms.my_driver.password');
        $this->client = $this->getInstance();
    }

    public function send($options = [])
    {
        # Main logic of Sending SMS.
    }
}
```

🔬 Testing
---------

[](#microscope-testing)

```
composer test
```

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity19

Early-stage or recently created project

 Bus Factor1

Top contributor holds 87% 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/718a18049b8dca76b7acbcf2fece4e1ceb7440a9276d5676bf6ab8d71164bb19?d=identicon)[fowitech](/maintainers/fowitech)

---

Top Contributors

[![subasioguz](https://avatars.githubusercontent.com/u/95227620?v=4)](https://github.com/subasioguz "subasioguz (20 commits)")[![relliv](https://avatars.githubusercontent.com/u/17010054?v=4)](https://github.com/relliv "relliv (2 commits)")[![batv45](https://avatars.githubusercontent.com/u/32638802?v=4)](https://github.com/batv45 "batv45 (1 commits)")

---

Tags

laravellaravel-smssmssms-apisms-gateway

### Embed Badge

![Health badge](/badges/fowitech-laravel-sms/health.svg)

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

###  Alternatives

[nitotm/efficient-language-detector

Fast and accurate natural language detection. Detector written in PHP. Nito-ELD, ELD.

59252.9k6](/packages/nitotm-efficient-language-detector)[savannabits/primevue-datatables

Easy Laravel Server-Side implementation of PrimeVue Datatables

337.7k1](/packages/savannabits-primevue-datatables)

PHPackages © 2026

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