nek-v/yii-esmsc

Extension for sending SMS messages

1.0.3 2015-07-15 23:27 UTC

README

Latest Stable Version License

This extension is designed to send sms messages through different services and protocols. You can add your providers extending class ESMSCProvider. See the examples in the directory providers

Resources

Requirements

  • PHP 5.3+
  • Yii 1.1 or above

Installation

  • Configure your composer.json as in the example below
...
"require": {
    "nek-v/yii-esmsc"
}
...
  • Or extract the files with the extension in the protected/extensions
  • In your protected/config/main.php, add the following:
<?php
...
'aliases' => array(
    // Path to vendor dir
    'vendor'    => realpath(__DIR__ . '/../vendor'),
),
'import'    => array(
    'vendor.nek-v.yii-esmsc.*',
),
'components'    => array(
    'sms'   => array(
        'class' => 'vendor.nek-v.yii-esmsc.ESMSC',
        'provides'  => array(
            'dummy' => array(
                'class' => 'DummyProvider'
            ),
            'smpp'  => array(
                'class'     => 'SMPPProvider',
                'server'    => 'smpp server',
                'port'      => 'smpp port',
                'login'     => 'smpp login',
                'password'  => 'smpp passwod',
                'source'    => 'sender name'
            )
        )
    )
)
...

Usage

<?php
class SiteController extends CController {
    public function actionIndex() {
        $text = 'Hello world!';
        $phone = '1234567891011';
        $provider = Yii::app()->sms;
        // Dummy
        $provider->getInstance('dummy')->send($phone, $text);
        // SMPP
        $provider->getInstance('smpp')->send($phone, $text);
    }
}