mocean/symfony-mocean-bundle

Mocean API for Symfony Framework

v2.0.0 2019-06-24 10:05 UTC

This package is auto-updated.

Last update: 2024-11-29 05:21:17 UTC


README

Latest Stable Version Build Status StyleCI License Total Downloads

Symfony Mocean API Integration

Installation

To install the library, run this command in terminal:

composer require mocean/symfony-mocean-bundle

Add this to config.yml

mocean:
  defaults: main    # define the account to use here
  accounts:         # here is where you define multiple accounts
    main:
      api_key: mainAccountApiKey
      api_secret: mainAccountApiSecret
    secondary:
      api_key: secondaryAccountApiKey
      api_secret: secondaryAccountApiSecret

Symfony 4

Add the bundle to config/bundles.php

return [
    //... framework bundles
    MoceanSymBundle\MoceanBundle::class => ['all' => true],
];

Symfony 3

Add the bundle to app/AppKernel.php

$bundles = array(
    //... framework bundles
    new MoceanSymBundle\MoceanBundle(),
);

Usage

Usage through dependency injection (symfony 4 and above)

Bind mocean manager class in service yaml

# config/services.yaml

services:
  App\Controller\YourController:
    bind:
      $mocean: '@mocean_manager'

Using autowiring

# config/services.yaml

services:
  MoceanSymBundle\Services\MoceanManager: '@mocean_manager'

In controller

class YourController extends AbstractController
{
    /**
     * @Route("/")
     */
    public function index(MoceanSymBundle\Services\MoceanManager $mocean)
    {
        $res = $mocean->message()->send([
            'mocean-to' => '60123456789',
            'mocean-from' => 'MOCEAN',
            'mocean-text' => 'Hello World'
        ]);
    }
}

Usage through container

class YourController extends Controller
{
    /**
     * @Route("/")
     */
    public function index()
    {
        $mocean = $this->container->get('mocean_manager');
        $res = $mocean->message()->send(...);
    }
}

The above example will be using the account define in defaults.
If you have multiple account defined in config, you can use like this

$mocean->using('secondary')->message()->send(...);
$mocean->using('third')->message()->send(...);

License

Laravel Mocean is licensed under the MIT License