Skip to content

MahmoudSaidHaggag/msegat-laravel-8

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Msegat

About Msegat

The leading SMS providers in Saudi Arabia, Maximize your reach with reliable deliverability.

Features

  • Send SMS to multiple recipients.
  • Send SMS to multiple recipients with Customized Sender Name ID.
  • Send OTP.
  • Calculate message cost points.
  • Sender Names ID Inquiry.
  • Balance Inquiry.



Installation

composer require jodeveloper/msegat

Publish repository configurations

php artisan vendor:publish --provider="jodeveloper\Msegat\MsegatServiceProvider"

This will publish msegat.php configtations to config/msegat.php



Prepare Environment

Add the following configration to .env file .

MSEGAT_DEFAULT_SENDER="Type your default sender name"
MSEGAT_USERNAME="Your Msegat Account Username"
MSEGAT_API_KEY="Your API Key"

<You can get your api Key from this URL MSEGAT, after successful login.




Usage

Sending SMS message

  • Send SMS to multiple recipients with default sender name ID that you fill in .env file.
    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::numbers(['05xxxxxxxx', '05xxxxxxxx'])
            ->message('Hello World')
            ->sendWithDefaultSender();
  • Send SMS to multiple recipients with custom sender name ID.
    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::numbers(['05xxxxxxxx', '05xxxxxxxx'])
            ->message('Hello World')
            ->sendWithSender('DigitalTunnel');
JSON Response Example
{
    "response": {
        "code": "1",
        "message": "Success"
    }
}




OTP ( One Time Password )

  • Send OTP Message with default sender name ID.
    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::numbers(['05xxxxxxxx'])
            ->sendOTP();
  • If you would like to send free OTP using OTP sender name you can pass 'OTP' to sendOTP method.
    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::numbers(['05xxxxxxxx'])
            ->sendOTP('OTP');
JSON Response Example
{
    "response": {
        "code": "1",
        "message": "Success"
    },
    "pin": "7693"
}




Inquiries

Caculate message cost with Msegat

    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::numbers(['9665xxxxxxxx', '9665xxxxxxxx', '9665xxxxxxxx'])
        ->message('Hello World')
        ->calculateCost();
JSON Response Example
{
    "total_numbers": 3,
    "point_cost": 2.75,
    "message_length": 23
}




Get All Sender Names ID

    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::getSenders();
JSON Response Example
{
    "response": [
        {
            "SenderID": "Digital",
            "Status": "Refused"
        },
        {
            "SenderID": "DigitalTunnel",
            "Status": "Activated"
        }
    ]
}




Get Account Balance

    use jodeveloper\Msegat\Facades\Msegat;

    Msegat::getBalance();
JSON Response Example
{
    "response": {
        "balance": 964795
    }
}




Error Codes

  • 1 - Success

  • M0000 - Success

  • M0001 - Variables missing

  • M0002 - Invalid login info

  • M0022 - Exceed number of senders allowed

  • M0023 - Sender Name is active or under activation or refused

  • M0024 - Sender Name should be in English or number

  • M0025 - Invalid Sender Name Length

  • M0026 - Sender Name is already activated or not found

  • M0027 - Activation Code is not Correct

  • 1010 - Variables missing

  • 1020 - Invalid login info

  • 1050 - MSG body is empty

  • 1060 - Balance is not enough

  • 1061 - MSG duplicated

  • 1064 - Free OTP , Invalid MSG content you should use "Pin Code is: xxxx" or "Verification Code: xxxx" or "رمز التحقق: 1234" , or upgrade your account and activate your sender to send any content

  • 1110 - Sender name is missing or incorrect

  • 1120 - Mobile numbers is not correct

  • 1140 - MSG length is too long

  • M0029 - Invalid Sender Name - Sender Name should contain only letters, numbers and the maximum length should be 11 characters

  • M0030 - Sender Name should ended with AD

  • M0031 - Maximum allowed size of uploaded file is 5 MB

  • M0032 - Only pdf,png,jpg and jpeg files are allowed!

  • M0033 - Sender Type should be normal or whitelist only

  • M0034 - Please Use POST Method

  • M0036 - There is no any sender

License

Msegat package is open-sourced software licensed under the MIT license.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%