定制 daniyal2959/persian-sms 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

daniyal2959/persian-sms

最新稳定版本:1.1.0

Composer 安装命令:

composer require daniyal2959/persian-sms

包简介

Package for send sms from any persian service provider to numbers

README 文档

README

alt text

PHP SMS Services

Software License Latest Version on Packagist Total Downloads on Packagist

This is a PHP library for Sms Services Integration. This library supports PHP 8.0+.

For PHP integration you can use daniyal2959/persian-sms package.

This packages works with multiple drivers, and you can create custom drivers if you can't find them in the current drivers list (below list).

List of available drivers

Help me to add the services below by creating pull requests

  • farazsms.com
  • sms.ir
  • mellipayamak.com
  • farapayamak.ir
  • ...

All services that work with ippanel can used default service ippanel

you can create your own custom drivers if it's not exists in the list, read the Create custom drivers section.

Install

Via Composer

$ composer require daniyal2959/persian-sms

Configure

Just include library's autoload.php file in your code

include_once 'vendor/autoload.php'

There is not any config file in this package. so you can set settings for your sms service provider in your code.

How to use

available methods:

  • driver: set the driver
  • text: set the message to send without pattern
  • patten: set your pattern code
  • data: set array of data pattern
  • to: set array of numbers receivers
  • from: set sender number
  • send: send your sms and return response as json or plain string

Methods with Parameters

Method driver text pattern data to from credential send
Parameter $key $text $pattern_code $data $numbers $number $credentials $asJson
Type string string string array array string array boolean
Required * * * * *

Example for sending sms message from kavenegar service provider:

$apiKey = '<YOUR_API_KEY>';
$sms = new SMS($apiKey);
$response = $sms->driver('kavenegar')
    ->text('<MESSAGE_TO_SEND>')
    ->from('<SERVICE_PROVIDER_NUMBER>')
    ->to('<ARRAY_OF_PHONE_NUMBERS>')
    ->send();

Example for sending sms pattern from kavenegar service provider:

$apiKey = '<YOUR_API_KEY>';
$sms = new SMS($apiKey);
$response = $sms->driver('kavenegar')
    ->pattern('<YOUR_PATTERN_NAME>')
    ->data('<ARRAY_OF_PATTERN_VALUES>') #E.g:['%token' => '1234']
    ->from('<SERVICE_PROVIDER_NUMBER>')
    ->to('<ARRAY_OF_PHONE_NUMBERS>')
    ->send();

Example for sending sms message from ippanel service provider:

$apiKey = '<YOUR_API_KEY>';
$sms = new SMS($apiKey);
$response = $sms->driver('ippanel')
    ->text('<MESSAGE_TO_SEND>')
    ->from('<SERVICE_PROVIDER_NUMBER>')
    ->to('<ARRAY_OF_PHONE_NUMBERS>')
    ->send();

Example for sending sms pattern from ippanel service provider:

$apiKey = '<YOUR_API_KEY>';
$sms = new SMS($apiKey);
$response = $sms->driver('ippanel')
    ->pattern('<YOUR_PATTERN_CODE>')
    ->data('<ARRAY_OF_PATTERN_VALUES>')
    ->from('<SERVICE_PROVIDER_NUMBER>')
    ->to('<ARRAY_OF_PHONE_NUMBERS>')
    ->send();

Create custom drivers:

You can create your custom driver with one step. this step is:

Created a class: Sms\Driver\MyDriver.

namespace Sms\Driver;

use Sms\Contract\IDriver;
use Sms\Driver;

class MyDrive extends Driver implements IDriver
{
    const BASE_URL = '';
    
    /**
     * @return void
     */
    public function __construct()
    {
        $this->client = new Http(self::BASE_URL, 30, []);
    }
    
    /**
     * @return bool|mixed|string
     */
    public function sendPattern()
    {
        // TODO: Implement send pattern code for current service provider
    }

    /**
     * @param $text
     * @return bool|mixed|string
     */
    public function message($text)
    {
        // TODO: Implement send message code for current service provider
    }
    
    /**
     * @return void
     */
    public function setCredential()
    {
        // TODO: Implement set credential code for current service provider
    }
}

Donate (if you like it ❤️)

Security

If you discover any security related issues, please email daniyal.s.2959@gmail.com instead of using the issue tracker.

Credits

The MIT License (MIT). Please see License File for more information.

统计信息

  • 总下载量: 13
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-02-18