assoconnect/rudderstack-bundle

此包已被废弃,不再维护。未建议替代包。

Rudderstack PHP 库

1.0.4 2022-05-23 13:27 UTC

This package is auto-updated.

Last update: 2022-07-18 08:05:51 UTC


README

此捆绑包包含用于分析的 Rudderstack 库

包含 rudderlabs/rudder-php-sdk

文档

大部分文档存储在此捆绑包的 Resources/doc 文件夹中

安装

通过 Packagist 安装捆绑包是安装捆绑包最快、最简单的方法。以下是步骤

步骤 1:Composer require

$ php composer.phar require "assoconnect/reudderstack-bundle":"dev-master"

步骤 2:在内核中启用捆绑包

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new AssoConnect\RudderstackBundle\RudderstackBundle(),
        // ...
    );
}

就这样!您现在可以使用 symfony 使用 Rudderstack。

配置

所需的 rudderstack 写入密钥

Symfony 4.X || 5.X

# config/packages/rudderstack.yml

rudderstack:
    write_key: "%env(RUDDERSTACK_KEY)%"  # add your key
    guest_id: "guest" # default guest. Guest id for annotation Track and Page
    env: prod #default prod. Can be prod (sending to rudderstack) and dev (not sending)
    options:
        consumer: socket #default
        debug: false #default
        ssl: false #default
        max_queue_size: 10000 #default
        batch_size: 100 #default
        timeout: 0.5 #default
        filename: null #default

Symfony 2.X || 3.X

# app/config/config.yml

rudderstack:
        write_key: "%your_key%" #add your key
        guest_id: "guest" # default guest. Guest id for annotation Track and Page
        env: prod #default prod. Can be prod (sending to rudderstack) and dev (not sending)
        options:
            consumer: socket #default
            debug: false #default
            ssl: false #default
            max_queue_size: 10000 #default
            batch_size: 100 #default
            timeout: 0.5 #default
            filename: null #default

使用方法

从服务容器获取 rudderstack.analytics 服务并开始使用它

$analytics = $this->get('rudderstack.analytics');
$analytics->page([])

或使用注解(页面和跟踪)

用户注解来自 TokenStorage。如果用户不存在,则 id 设置为 guest 或配置中的 'guest_id'

use AssoConnect\RudderstackBundle\Configuration\Page;
use AssoConnect\RudderstackBundle\Configuration\Track;

/**
     * @Route("/", name="homepage")
     *
     * @Page(
     *     name="index",
     *     category="page",
     *     properties={"foo":"bar"}
     * )
     * @Track(
     *     event="visit homepage",
     *     properties={"bar":"foo"},
     *     useTimestamp=true,
     *     context={"aa":"bb"}
     * )
     */
    public function indexAction(Request $request)
    {
        // your code
    }

请参阅 rudderstack analytics-php 库