Download the PHP package slashequip/laravel-segment without Composer

On this page you can find all versions of the php package slashequip/laravel-segment. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-segment

Laravel Segment

Latest Version on Packagist tests code style psalm Total Downloads

Laravel Segment Logo Banner

Laravel Segment is an opinionated, approach to integrating Segment into your Laravel application.

Installation

You can install the package via composer:

You can publish the config file with:

This is the contents of the published config file, which should be located at config/segment.php:

Setting your write key

Your write key is the API key given to you by Segment which can be found under your PHP source settings; https://app.segment.com/{your-workspace-name}/sources/{your-source-name}/settings/keys in the Segment UI.

What is a Segment User

When we talk about a 'user' in the context of this package we mean any object that implements the SlashEquip\LaravelSegment\Contracts\CanBeIdentifiedForSegment contract the package comes with a trait (and the interface) you can attach to your default User model;

Using this trait will automagically use your users' primary key as the identifier that is sent to Segment. Alternatively, you can implement your own instance of the public function getSegmentIdentifier(): string; method on your User model and not use the trait.

Globally identifying users

If you are sending Segment events in multiple places through your application and through-out a request it might make sense to globally identify a user to make it more convenient when making tracking calls.

Globally setting context

Segment allows you to send context with your tracking events too, you can set a global context that applies to all tracking events.

Here have some convenience

Laravel Segment ships with a middleware that you can apply in your HTTP Kernal that will handle the setting of the global user and some sensible global context too. It should be simple to extend this middleware and adjust for your needs if you want to add to the default context provided.

Usage

For tracking events

For identifying users

Laravel Notifications

This package includes an out-of-the-box notification channel, to allow you to use Laravel's built-in notification feature. To send Segment events to users as notifications, generate your notification as normal;

You must ensure your notification implements the CanNotifyViaSegment interface, and add the required toSegment method. Then you can configure the via method to include the SegmentChannel class.

You can then adjust the toSegment method to return the event you'd like.

Misc

Deferring

When you start to fire many events in your application, even 2-3 per request it can be hyper-beneficial to turn on deferring (see config). When deferring is enabled, the service will store all of your tracking events triggered through-out the request or process and then send them in batch after your application has responded to your user. This happens during the Laravel termination.

Safe mode

By default, safe-mode is turned on. When safe-mode is active it will swallow any exceptions thrown when making the HTTP request to Segmenta and report them automatically to the exception handler, allow your app to continue running. When disabled then the exception will be thrown.

Testing

Changelog

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

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

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


All versions of laravel-segment with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
guzzlehttp/guzzle Version ^7.8
illuminate/contracts Version ^9.0|^10.0|^11.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package slashequip/laravel-segment contains the following files

Loading the files please wait ....