Properties

$config

$config : \Overtrue\EasySms\Support\Config

Type

Config

$defaultGateway

$defaultGateway : string

Type

string

$customCreators

$customCreators : array

Type

array

$gateways

$gateways : array

Type

array

$messenger

$messenger : \Overtrue\EasySms\Messenger

Type

Messenger

$strategies

$strategies : array

Type

array

Methods

__construct()

__construct(array  $config) : mixed

Constructor.

Parameters

array $config

Returns

mixed —

send()

send(string|array  $to, \Overtrue\EasySms\Contracts\MessageInterface|array  $message, array  $gateways = []) : array

Send a message.

Parameters

string|array $to
\Overtrue\EasySms\Contracts\MessageInterface|array $message
array $gateways

Throws

\Overtrue\EasySms\Exceptions\InvalidArgumentException
\Overtrue\EasySms\Exceptions\NoGatewayAvailableException

Returns

array —

gateway()

gateway(string|null  $name) : \Overtrue\EasySms\Contracts\GatewayInterface

Create a gateway.

Parameters

string|null $name

Throws

\Overtrue\EasySms\Exceptions\InvalidArgumentException

Returns

\Overtrue\EasySms\Contracts\GatewayInterface —

strategy()

strategy(string|null  $strategy = null) : \Overtrue\EasySms\Contracts\StrategyInterface

Get a strategy instance.

Parameters

string|null $strategy

Throws

\Overtrue\EasySms\Exceptions\InvalidArgumentException

Returns

\Overtrue\EasySms\Contracts\StrategyInterface —

extend()

extend(string  $name, \Closure  $callback) : $this

Register a custom driver creator Closure.

Parameters

string $name
\Closure $callback

Returns

$this —

getConfig()

getConfig() : \Overtrue\EasySms\Support\Config

Returns

\Overtrue\EasySms\Support\Config —

getMessenger()

getMessenger() : \Overtrue\EasySms\Messenger

Returns

\Overtrue\EasySms\Messenger —

createGateway()

createGateway(string  $name) : \Overtrue\EasySms\Contracts\GatewayInterface

Create a new driver instance.

Parameters

string $name

Throws

\InvalidArgumentException
\Overtrue\EasySms\Exceptions\InvalidArgumentException

Returns

\Overtrue\EasySms\Contracts\GatewayInterface —

makeGateway()

makeGateway(string  $gateway, array  $config) : \Overtrue\EasySms\Contracts\GatewayInterface

Make gateway instance.

Parameters

string $gateway
array $config

Throws

\Overtrue\EasySms\Exceptions\InvalidArgumentException

Returns

\Overtrue\EasySms\Contracts\GatewayInterface —

formatGatewayClassName()

formatGatewayClassName(string  $name) : string

Format gateway name.

Parameters

string $name

Returns

string —

callCustomCreator()

callCustomCreator(string  $gateway, array  $config) : mixed

Call a custom gateway creator.

Parameters

string $gateway
array $config

Returns

mixed —

formatPhoneNumber()

formatPhoneNumber(string|\Overtrue\EasySms\Contracts\PhoneNumberInterface  $number) : \Overtrue\EasySms\Contracts\PhoneNumberInterface|string

Parameters

string|\Overtrue\EasySms\Contracts\PhoneNumberInterface $number

Returns

\Overtrue\EasySms\Contracts\PhoneNumberInterface|string —

formatMessage()

formatMessage(array|string|\Overtrue\EasySms\Contracts\MessageInterface  $message) : \Overtrue\EasySms\Contracts\MessageInterface

Parameters

array|string|\Overtrue\EasySms\Contracts\MessageInterface $message

Returns

\Overtrue\EasySms\Contracts\MessageInterface —

formatGateways()

formatGateways(array  $gateways) : array

Parameters

array $gateways

Throws

\Overtrue\EasySms\Exceptions\InvalidArgumentException

Returns

array —