Download the PHP package xenon/laravelbdsms without Composer

On this page you can find all versions of the php package xenon/laravelbdsms. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravelbdsms

Xenon\LaravelBDSms is a sms gateway package for sending text message to Bangladeshi mobile numbers using several gateways for Laravel Framework. You can watch installation process from youtube.

Installation

Step 1:

Step 2:

Publish the package using command

Step 3:

Select Vendor From Console

Step 4:

Usage

Simply use the facade

Note: For sending message using facade you must have to set .env credentials and set default provider; Find .env credentials for different providers from inside config/sms.php)

use Xenon\LaravelBDSms\Facades\SMS;

SMS::shoot('017XXYYZZAA', 'helloooooooo boss!');
SMS::shoot(['017XXYYZZAA','018XXYYZZAA'], 'helloooooooo boss!'); 

Or, with facade alias

use LaravelBDSms, SMS;

LaravelBDSms::shoot('017XXYYZZAA', 'helloooooooo boss!');
SMS::shoot('017XXYYZZAA', 'helloooooooo boss!');

Or, if you need to change the default provider on the fly

use Xenon\LaravelBDSms\Facades\SMS;
use Xenon\LaravelBDSms\Provider\Ssl;

$response = SMS::via(Ssl::class)->shoot('017XXYYZZAA', 'helloooooooo boss!');

Or, you can send message with queue. This queue will be added in your jobs table. Message will be sent as soon as job is run.

Make sure you have jobs table and other jobs related functionalities enabled

use Xenon\LaravelBDSms\Facades\SMS;
use Xenon\LaravelBDSms\Provider\Ssl;

SMS::shootWithQueue("01XXXXXXXXX",'test sms');
SMS::via(Ssl::class)->shootWithQueue("01XXXXXXXXX",'test sms');

Log Generate

You can generate log for every sms api request and save in database or file. For doing this. Follow below points

  1. Laravelbdsms stores log in two drivers(database, file). database is default. You can change it from config/sms.php
  2. Find and make true 'sms_log' => true,
  3. Be confirm you have completed step-2 and step-3
  4. For database driver
    1. Change log driver to log_driver =>'database' from config/sms.php
    2. Run command php artisan migrate. This will create lbs_log table in your database
  5. For file driver
    1. Change log driver to log_driver =>'file' from config/sms.php

Otherwise, if you want more control, you can use the underlying sender object. This will not touch any laravel facade or service provider.

Sample Code

SSLCommerz

use Xenon\LaravelBDSms\Provider\Ssl;
use Xenon\LaravelBDSms\Sender;

$sender = Sender::getInstance();
$sender->setProvider(Ssl::class); //change this provider class according to need
$sender->setMobile('017XXYYZZAA');
//$sender->setMobile(['017XXYYZZAA','018XXYYZZAA']);
$sender->setMessage('helloooooooo boss!');
$sender->setQueue(true); //if you want to sent sms from queue
$sender->setConfig(
   [
       'api_token' => 'api token goes here',
       'sid' => 'text',
       'csms_id' => 'sender_id'
   ]
);
$status = $sender->send();

----------Demo Response Using SSL-------------
array:6 [▼
  "status" => "response"
  "response" => "{"status":"FAILED","status_code":4003,"error_message":"IP Blacklisted"}"
  "provider" => "Xenon\LaravelBDSms\Provider\Ssl"
  "send_time" => "2021-07-06 08:03:23"
  "mobile" => "017XXYYZZAA"
  "message" => "helloooooooo boss!"
]
--------------------------------------------------

Sms Send Using Custom Gateway

We have tried to added most of the gateways of Bangladesh in this package as much as possible. But still if you don't find your expected gateway in this list, then use Custom Gateway using following code snippet.

use Xenon\LaravelBDSms\Provider\CustomGateway;
use Xenon\LaravelBDSms\Sender;

$sender = Sender::getInstance();
$sender->setProvider(CustomGateway::class);
$sender->setUrl('https://your_cusom_gateway_provider_url_here')
        ->setMethod('post')
        ->setHeaders([
            'Content-Type: application/json',
            'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
        ], false);
$sender->setMobile('017XXYYZZAA');
$sender->setMessage('text message goes here');
$sender->setQueue(false);
//use required parameters based on your sms gateway. This will be changed according to need
$sender->setConfig(
    [
        'MsgType' => 'TEXT',
        'masking' => 'sample',
        'userName' => 'test_user',
        'message' => 'test message',
        'receiver' => '017xxxxxxxxxx',
    ]
);
echo $status = $sender->send();

Currently Supported Sms Gateways

Provider Credentials Required
For Sending SMS
Support Multiple Status Comment Contact
AjuraTech apikey, secretkey , callerID - Done - -
Adn api_key, type, senderid - Done - -
Alpha api_key Yes Done - -
Banglalink userID, passwd , sender - Done - -
BDBulkSMS token - Done - -
BoomCast masking , userName , password - Done - -
BulksmsBD api_key,senderid - Done - -
CustomGateway provide necessary token/api_key/others based on requirements - Done Be careful using this and test based on several scenario -
DhorolaSms apikey, sender - Done - -
DianaHost api_key, type, senderid - Done - -
DianaSMS ApiKey, ClientId, SenderId - Done - -
DurjoySoft ApiKey, SenderID - Done - -
ElitBuzz api_key, type, senderid, type - Done not tested yet in live -
Esms api_token, sender_id - Done - -
Grameenphone username, password, messagetype - Done not tested yet in live -
Infobip user, password - Done not tested yet in live -
Lpeek acode, apiKey, requestID, masking - Done - -
MDL api_key, type, senderid - Done not tested yet in live -
Metronet api_key, mask Done - -
MimSms api_key, type, senderid - Done - -
Mobireach Username,Password, From - Done - -
Muthofun sender_id Yes Done - -
NovocomBD ApiKey , ClientId , SenderId - Done - -
OnnoRokomSMS userName, userPassword, type, maskName, campaignName - Done not tested yet in live -
QuickSms api_key, senderid, type,scheduledDateTime - Done not tested yet in live -
RedmoITSms api_token, sender_id - Support closed -
SendMySms user, closed - Done tested in live
SmartLabSMS user, password, sender - Done - -
Sms4BD publickey, privatekey, type,sender, delay - Done - -
SmsBangladesh user, password, from - Done - -
SmsinBD api_token, senderid - Done -
SMS.net.bd api_key - Done -
SmsQ sender_id, client_id, api_key - Done -
SMSNet24 user_id, user_password, route_id(optional), sms_type_id(optional) - Done -
SmsNoc sender_id, bearer_token - Done -
SongBird apikey, secretkey, callerID - Done -
Sslsms api_token, sid, csms_id Yes Done - -
Tense user, password, campaign, masking - Done - -
Twenty4BulkSms api_key, sender_id,user_email - Done - -
TwentyFourBulkSmsBD customer_id, api_key - Done - -
Trubosms api_token, sender_id - Done - -
Viatech api_key, mask - Done - -
WinText token, messagetype, ismasking, masking - Done - -
ZamanIT api_key, senderid,type - Done - -

Stargazers

Stargazers repo roster for @arif98741/laravelbdsms

Forkers

Forkers repo roster for @arif98741/laravelbdsms

Contributors


We are continuously working in this open source library for adding more Bangladeshi sms gateway. If you feel something is missing then make a issue regarding that. If you want to contribute in this library, then you are highly welcome to do that....

For clear documentation read this blog in Medium! and also you can download several sms providers documentations as pdf from this link!

Special thanks to
tusharkhan
tusher9352


All versions of laravelbdsms with dependencies

PHP Build Version
Package Version
Requires guzzlehttp/guzzle Version ^6.3|^7.3
ext-json Version *
ext-curl Version *
php Version ^8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package xenon/laravelbdsms contains the following files

Loading the files please wait ....