Skip to content

techinasia/laravel-stream

Repository files navigation

Laravel Stream

Dependency Status Build Status Coverage Status StyleCI Status

Stream.io bridge for Laravel 5.

Contents

Features

  • Wrapper for Stream's low-level PHP client.
  • Multiple applications support.
  • Laravel facade for client.

Installation

Install this package with Composer:

composer require techinasia/laravel-stream

Register the service provider in your config/app.php:

Techinasia\GetStream\StreamServiceProvider::class

[Optional] Register the facade in your config/app.php, under aliases:

'Stream' => Techinasia\GetStream\Facades\Stream::class

Configuration

Publish all the vendor assets:

php artisan vendor:publish

This will create a file called stream.php in the config folder. Create an application via Stream's admin interface and copy the API key and secret to the configuration file.

You can add more applications by adding more key/secret pairs to the configuration file:

'applications' => [
    'main' => [
        'key' => 'key1',
        'secret' => 'secret1',
    ],
    'foo' => [
        'key' => 'foo',
        'secret' => 'bar',
    ],
],

Examples

use Techinasia\GetStream\Facades\Stream;

// Add an activity to a user feed via the default application.
$feed = Stream::feed('user', 1);
$feed->addActivity([
    'actor' => 1,
    'verb' => 'like',
    'object' => 3,
    'foreign_id' => 'post:42',
]);

// Add another activity to a user feed via another application.
$feed = Stream::application('another')->feed('user', 1);
$feed->addActivity([
    'actor' => 1,
    'verb' => 'like',
    'object' => 3,
    'foreign_id' => 'post:42',
]);

Changelog

Please see CHANGELOG for more information for what has changed recently.

Testing

composer test

Security

If you discover any security related issues, please email [email protected] instead of using the issues tracker.

Contributing

Please see CONTRIBUTING for details.

Credits

License

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

Packages

No packages published

Languages