rmdmostakim/bdsms
Composer 安装命令:
composer require rmdmostakim/bdsms
包简介
A flexible and extensible Laravel package for sending SMS through multiple Bangladeshi and international gateways, including Twilio, SSL Wireless, MimSMS, Infobip. Easily configurable and developer-friendly.
README 文档
README
A brief description of what this project does and who it's for
📦 BdSms
A flexible and extensible Laravel package for sending SMS through multiple Bangladeshi and international gateways — including Twilio, SSL Wireless, MimSMS, Infobip.
🛠 Supported Gateway
- ✅ Twilio
- ✅ MimSMS
- ✅ SslWireless
- ✅ Infobip
🚀 Installation
composer require rmdmostakim/bdsms
🔧 Configuration
1. Publish Config File
php artisan vendor:publish --provider="RmdMostakim\BdSms\SmsServiceProvider"
This will publish config/bdsms.php.
2. Run Migration
php artisan migrate
3. Set Up .env Values
✅ Example for Twilio:
#twilio credentials TWILIO_ACCOUNT_SID="your-twilio-sid" TWILIO_AUTH_TOKEN="your-twilio-auth-token" TWILIO_NUMBER="your-twilio-number"
✅ Example for SSL Wireless:
#ssl wireless credentials SSL_WIRELESS_API_TOKEN="your_ssl_api_key" SSL_WIRELESS_SID="your_ssl_username" SSL_WIRELESS_API_URL="https://smsplus.sslwireless.com/api/v3/send-sms"
✅ Example for MimSMS:
#mim sms credentials MIM_SMS_API_KEY="your-mimsms-app-key" MIM_SMS_USER_NAME="your-mimsms-user-name" MIM_SMS_SENDER_NAME="your-mimsms-name" MIM_SMS_API_URL="https://api.mimsms.com/api/SmsSending/SMS"
✅ Example for Infobip:
#infobip credentials INFOBIP_API_KEY="your-infobip-api-key" INFOBIP_API_URL="your-infobip-api-url" INFOBIP_NUMBER="your-infobip-number"
✅ Usage
🔹 Using Facade (BdSms::TwilioSms()->single())
✅ Send single SMS using Twilio:
use RmdMostakim\BdSms\Facades\BdSms; BdSms::TwilioSms()->single('+8801XXXXXXXXX', 'Hello from Twilio!');
✅ Send using SSL Wireless:
BdSms::SslWireless()->single('017XXXXXXXX', 'SSL SMS test');
✅ Send using MimSMS (default type = 'D'):
BdSms::MimSms()->single('017XXXXXXXX', 'MimSMS message');
✅ Send using Infobip:
BdSms::InfobipSms()->single('017XXXXXXXX', 'Infobip test message');
✅ Multiple messages:
📤 Send to Multiple Recipients with a Single Message
BdSms::TwilioSms()->multiple(['017XXXXXXXX', '017YYYYYYYY'],'Hello World!');
📤 Send Personalized Messages to Multiple Recipients
BdSms::TwilioSms()->multiple( ['017XXXXXXXX', '017YYYYYYYY'], ['Hello A', 'Hello B'] );
✅ Check SMS Status by UUID:
$status = BdSms::check('your-sms-uuid'); if ($status?->status === 'sent') { // Delivered or accepted }
🧩 Dependency Injection
You can inject SmsManager into a controller or service:
use RmdMostakim\BdSms\SmsManager; class SmsService { public function __construct(protected SmsManager $sms) {} public function notifyUser(string $phone) { $this->sms->TwilioSms()->single($phone, 'Your order has been placed!'); } }
📦 Drivers Supported
| Method | Gateway |
|---|---|
TwilioSms() |
Twilio |
SslWireless() |
SSL Wireless |
MimSms($type) |
MimSMS |
InfobipSms() |
Infobip |
Each returns a driver instance that supports:
single(string $to, string $msg): arraymultiple(array $to, string|array $msg): array
🅾️ MimSMS Transaction Type
The MimSms driver requires a transaction type which defines the category of SMS you want to send. This value is passed into the constructor as a single-character string.
✅ Available types:
| Type | Description |
|---|---|
T |
Transactional SMS |
P |
Promotional SMS |
D |
Dynamic Masking SMS |
Default is
'D'if not provided.
📌 Example usage:
BdSms::MimSms()->single('017XXXXXXXX', 'Default D type SMS'); BdSms::MimSms('P')->single('017XXXXXXXX', 'Promotional SMS');
🧪 Build Your Own Driver
Implement the interface:
use RmdMostakim\BdSms\Contracts\SmsInterface; class CustomSmsDriver implements SmsInterface { public function single(string $to, string $msg): array { // implement } public function multiple(array $to, string|array $msg): array { // implement } }
📜 License
MIT © RmdMostakim
rmdmostakim/bdsms 适用场景与选型建议
rmdmostakim/bdsms 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 9 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 08 月 30 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 rmdmostakim/bdsms 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 rmdmostakim/bdsms 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 9
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 24
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-08-30