2017 © Pedro Peláez
 

library intercom

Intercom API [Macroable] client adapter for laravel

image

mediumart/intercom

Intercom API [Macroable] client adapter for laravel

  • Friday, September 8, 2017
  • by isaacesso
  • Repository
  • 1 Watchers
  • 5 Stars
  • 11,925 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 11 Versions
  • 25 % Grown

The README.md

Mediumart Intercom

Build Status Coverage Status Latest Stable Version License Total Downloads, (*1)

Mediumart Intercom Client is macroable !, (*2)

Installation

To install, first require the package via composer:, (*3)

$ composer require mediumart/intercom

Next add the following to your config/app.php inside the 'providers' array:, (*4)

Mediumart\Intercom\IntercomServiceProvider::class

and the facade reference inside the 'aliases' array:, (*5)

'Intercom' => Mediumart\Intercom\Intercom::class

Configuration

You need to create an app with an associated access_token from your intercom.io account. You can find informations on how to do that here., (*6)

Once you got your access token, open the config/services.php in your laravel project and add a key for the intercom service like this:, (*7)

'intercom' => [
    'access_token' => '<your_access_token>'
]

The package will automatically pick out the token to authenticate any api request to your own intercom data., (*8)

Usage

You can resolve the intercom Client in many ways:, (*9)

use Mediumart\Intercom\Client;

/** 
* Manually resolving from the container 
* */
$intercom = app('intercom');
// or
$intercom = app(Client::class);


/** 
* using type hinting and laravel's automatic resolution
* */
public function index(Client $intercom) 
{
    /.../
}


/**
* Simply leverage the facade
* */
$intercomUsers = Intercom::users();

Using the instance or the facade, any resource type is mirrored as a method on the Client, that can be used to gain the corresponding resource object :, (*10)

// facade
$leads = Intercom::leads();

// instance
$intercom = app('intercom');
$conversations = $intercom->conversations();

Using the instance approach you can also resolve the resource instance as a property of the Client:, (*11)

$conversations = $intercom->conversations;

Here is the list of all the Intercom resources types :, (*12)

  • users
  • events
  • companies
  • messages
  • conversations
  • leads
  • visitors
  • admins
  • tags
  • segments
  • counts
  • bulk
  • notes

You can find related informations on their official documentation page and the api usage for each resource here., (*13)

In addition, you can also set the token in a fluent way, after the Client has been resolved, using the setToken method:, (*14)

$intercom->setToken($token)->users->getUser($id);

Defining Macros

To create a macro function, you can use the macro method on either the facade or the instance, this method accepts a name as its first argument, and a callable as its second., (*15)

// facade
Intercom::macro('usersEmails', function () {
   return // your logic here ... 
});

// instance
$intercom->macro('usersEmails', function () use ($intercom) {
   return // your logic here ... 
});

Your macro can now be called as a regular method on intercom facade or instance, (*16)

// facade
$userEmails = Intercom::usersEmails();

// instance
$userEmails = $intercom->usersEmails();

License

Mediumart Intercom is an open-sourced software licensed under the MIT license., (*17)

The Versions

08/09 2017

dev-master

9999999-dev

Intercom API [Macroable] client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

21/07 2017

0.2.1

0.2.1.0

Intercom API [Macroable] client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

05/07 2017

0.2.0

0.2.0.0

Intercom API [Macroable] client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

04/07 2017

0.1.4

0.1.4.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

27/02 2017

0.1.3

0.1.3.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

25/02 2017

0.1.2

0.1.2.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

25/02 2017

0.1.1

0.1.1.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

24/02 2017

0.1.0

0.1.0.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

22/02 2017

0.0.3

0.0.3.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

22/02 2017

0.0.2

0.0.2.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io

22/02 2017

0.0.1

0.0.1.0

Intercom API client adapter for laravel

  Sources   Download

MIT

The Requires

 

The Development Requires

by Isaac Esso

laravel intercom intercom.io