{"id":49888307,"url":"https://github.com/boxlinknet/kwtsms-notification-channel","last_synced_at":"2026-05-15T19:33:51.044Z","repository":{"id":345001347,"uuid":"1183979231","full_name":"boxlinknet/kwtsms-notification-channel","owner":"boxlinknet","description":"kwtSMS notification channel for Laravel","archived":false,"fork":false,"pushed_at":"2026-03-17T06:40:29.000Z","size":9,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-17T21:48:12.540Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/boxlinknet.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-17T06:06:11.000Z","updated_at":"2026-03-17T06:40:32.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/boxlinknet/kwtsms-notification-channel","commit_stats":null,"previous_names":["boxlinknet/kwtsms-notification-channel"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/boxlinknet/kwtsms-notification-channel","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxlinknet%2Fkwtsms-notification-channel","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxlinknet%2Fkwtsms-notification-channel/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxlinknet%2Fkwtsms-notification-channel/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxlinknet%2Fkwtsms-notification-channel/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/boxlinknet","download_url":"https://codeload.github.com/boxlinknet/kwtsms-notification-channel/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/boxlinknet%2Fkwtsms-notification-channel/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33076223,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-15T19:33:50.219Z","updated_at":"2026-05-15T19:33:51.031Z","avatar_url":"https://github.com/boxlinknet.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kwtSMS Notification Channel for Laravel\n\n[![Latest Version on Packagist](https://img.shields.io/packagist/v/kwtsms/kwtsms-notification-channel.svg?style=flat-square)](https://packagist.org/packages/kwtsms/kwtsms-notification-channel)\n[![Total Downloads](https://img.shields.io/packagist/dt/kwtsms/kwtsms-notification-channel.svg?style=flat-square)](https://packagist.org/packages/kwtsms/kwtsms-notification-channel)\n[![Software License](https://img.shields.io/badge/license-MIT-brightgreen.svg?style=flat-square)](LICENSE)\n\nThis package makes it easy to send notifications using [kwtSMS](https://www.kwtsms.com) with Laravel.\n\n## About kwtSMS\n\n[kwtSMS](https://www.kwtsms.com) is Kuwait's leading SMS gateway, providing reliable SMS delivery for businesses across Kuwait and internationally. Unlike international providers (Twilio, Infobip, etc.), kwtSMS is a local Kuwaiti provider with direct carrier connections, ensuring fast and reliable delivery to all Kuwaiti mobile networks (Zain, Ooredoo, STC, Virgin Mobile).\n\nkwtSMS supports both promotional and transactional messaging, OTP delivery, bulk campaigns, and offers a simple REST/JSON API with client libraries in [12 programming languages](https://www.kwtsms.com/developers.html).\n\n## Features\n\n- **Laravel Notifications Integration**: Send SMS using Laravel's built-in notification system\n- **Simple API**: Clean, fluent message builder with `KwtSmsMessage::create()`\n- **Custom Sender ID**: Override the default sender ID per message\n- **Test Mode Support**: Send test messages without consuming credits during development\n- **Auto-Discovery**: Laravel package auto-discovery, no manual service provider registration needed\n- **Configurable**: Publish and customize the config file to match your setup\n- **Lightweight**: Minimal dependencies, uses Laravel's HTTP client under the hood\n\n## Contents\n\n- [About kwtSMS](#about-kwtsms)\n- [Features](#features)\n- [Installation](#installation)\n- [Setting up kwtSMS](#setting-up-kwtsms)\n- [Usage](#usage)\n- [Available Methods](#available-methods)\n- [Changelog](#changelog)\n- [Testing](#testing)\n- [Security](#security)\n- [Contributing](#contributing)\n- [Credits](#credits)\n- [License](#license)\n\n## Installation\n\nYou can install the package via Composer:\n\n```bash\ncomposer require kwtsms/kwtsms-notification-channel\n```\n\nPublish the configuration file:\n\n```bash\nphp artisan vendor:publish --provider=\"NotificationChannels\\KwtSms\\KwtSmsServiceProvider\" --tag=\"config\"\n```\n\nAdd your kwtSMS credentials to your `.env` file:\n\n```dotenv\nKWTSMS_USERNAME=your-username\nKWTSMS_PASSWORD=your-password\nKWTSMS_SENDER=your-sender-id\nKWTSMS_TEST_MODE=false\n```\n\n## Setting up kwtSMS\n\nTo get started, you need a kwtSMS account:\n\n1. Sign up at [kwtsms.com](https://www.kwtsms.com)\n2. Obtain your API username and password from the dashboard\n3. Register a Sender ID (or use the default `KWT-SMS`)\n4. Add the credentials to your `.env` file as shown above\n\n## Usage\n\nCreate a notification class that uses the `KwtSmsChannel`:\n\n```php\nuse Illuminate\\Notifications\\Notification;\nuse NotificationChannels\\KwtSms\\KwtSmsChannel;\nuse NotificationChannels\\KwtSms\\KwtSmsMessage;\n\nclass OrderShipped extends Notification\n{\n    public function via($notifiable): array\n    {\n        return [KwtSmsChannel::class];\n    }\n\n    public function toKwtSms($notifiable): KwtSmsMessage\n    {\n        return KwtSmsMessage::create(\"Your order #{$this-\u003eorder-\u003eid} has been shipped!\");\n    }\n}\n```\n\nAdd the `routeNotificationForKwtSms` method to your notifiable model:\n\n```php\npublic function routeNotificationForKwtSms($notification): string\n{\n    return $this-\u003ephone; // International format: 96598765432\n}\n```\n\nYou can also return a plain string from `toKwtSms` instead of a `KwtSmsMessage` object:\n\n```php\npublic function toKwtSms($notifiable): string\n{\n    return 'Your order has been shipped!';\n}\n```\n\n## Available Methods\n\n### KwtSmsMessage\n\n| Method | Description |\n|---|---|\n| `create(string $content = '')` | Static factory to create a new message |\n| `content(string $content)` | Set the message content |\n| `sender(string $sender)` | Override the default sender ID |\n| `getContent()` | Get the message content |\n| `getSender()` | Get the sender ID (null if not set) |\n\n## Changelog\n\nPlease see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.\n\n## Testing\n\n```bash\ncomposer test\n```\n\n## Security\n\nIf you discover any security related issues, please use the issue tracker on GitHub instead of sending an email.\n\n## Contributing\n\nPlease see [CONTRIBUTING](CONTRIBUTING.md) for details.\n\n## Credits\n\n- [BoxLink](https://github.com/boxlinknet)\n- [All Contributors](../../contributors)\n\n## License\n\nThe MIT License (MIT). Please see [LICENSE](LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxlinknet%2Fkwtsms-notification-channel","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboxlinknet%2Fkwtsms-notification-channel","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboxlinknet%2Fkwtsms-notification-channel/lists"}