PHPackages                             tourze/user-event-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. tourze/user-event-bundle

ActiveSymfony-bundle[Utility &amp; Helpers](/categories/utility)

tourze/user-event-bundle
========================

用户交互事件处理和收集系统

1.0.1(6mo ago)04.5k10MITPHPCI passing

Since Apr 15Pushed 4mo ago1 watchersCompare

[ Source](https://github.com/tourze/user-event-bundle)[ Packagist](https://packagist.org/packages/tourze/user-event-bundle)[ RSS](/packages/tourze-user-event-bundle/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (7)Dependencies (15)Versions (8)Used By (10)

UserEventBundle
===============

[](#usereventbundle)

[English](README.md) | [中文](README.zh-CN.md)

\[[![Latest Version](https://camo.githubusercontent.com/bba70456ff6ac593545ef14237870706f3ef089149f184085867001bcdb5918e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/bba70456ff6ac593545ef14237870706f3ef089149f184085867001bcdb5918e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)\] () \[[![License](https://camo.githubusercontent.com/8c597d82b11f289d5a6fe496720523d8022dd28dcbc867eb56e087fbf3ebfbef/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/8c597d82b11f289d5a6fe496720523d8022dd28dcbc867eb56e087fbf3ebfbef/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)\] () \[[![PHP Version Require](https://camo.githubusercontent.com/1ca2e7bee6d5c8e3dae7970ce0bdf094a4af6b7f832f69740fa408e3ac664b6a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/1ca2e7bee6d5c8e3dae7970ce0bdf094a4af6b7f832f69740fa408e3ac664b6a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)\] () \[[![Build Status](https://camo.githubusercontent.com/76a3568c21d96f6edbe2193a3912cae48621f611c2e19a9fc5896484017e2b32/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f746f75727a652f757365722d6576656e742d62756e646c652f63692e796d6c3f6272616e63683d6d61696e267374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/76a3568c21d96f6edbe2193a3912cae48621f611c2e19a9fc5896484017e2b32/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f746f75727a652f757365722d6576656e742d62756e646c652f63692e796d6c3f6272616e63683d6d61696e267374796c653d666c61742d737175617265)\] () \[[![Code Coverage](https://camo.githubusercontent.com/17689ccb150a0f73898dd2aa000108e83fc8c79bc12001295b68b7fcf7803d77/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/17689ccb150a0f73898dd2aa000108e83fc8c79bc12001295b68b7fcf7803d77/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f746f75727a652f757365722d6576656e742d62756e646c652e7376673f7374796c653d666c61742d737175617265)\] ()

A Symfony bundle for managing user interaction events with flexible and extensible features. It provides a foundation for implementing write-spread model messaging systems where events are dispatched between users in a one-to-one relationship.

Table of Contents
-----------------

[](#table-of-contents)

- [Features](#features)
- [Installation](#installation)
- [Quick Start](#quick-start)
    - [1. Bundle Registration](#1-bundle-registration)
    - [2. Create Custom Events](#2-create-custom-events)
    - [3. Dispatch Events](#3-dispatch-events)
    - [4. Use Event Finder](#4-use-event-finder)
- [Advanced Usage](#advanced-usage)
    - [Custom Event Contexts](#custom-event-contexts)
    - [Event Collection Services](#event-collection-services)
    - [Event Listeners](#event-listeners)
- [API Reference](#api-reference)
    - [UserInteractionEvent](#userinteractionevent)
    - [EventFinder](#eventfinder)
    - [EventCollector](#eventcollector)
- [Requirements](#requirements)
- [Configuration](#configuration)
- [Architecture](#architecture)
- [Testing](#testing)
- [Contributing](#contributing)
- [License](#license)

Features
--------

[](#features)

- 🎯 **User Interaction Event Management**: Comprehensive system for handling user-to-user interactions
- 🔧 **Extensible Event Base Class**: Abstract `UserInteractionEvent` class for creating custom events
- 📊 **Event Collection &amp; Discovery**: Automatic collection and enumeration of event classes
- 🔍 **Event Finder Service**: Easy selection and discovery of available events
- 🏗️ **Dependency Injection**: Full Symfony DI container integration
- 📝 **Context Support**: Built-in context information handling for events
- 🔄 **Write-Spread Model**: Designed for one-to-one message distribution patterns

Installation
------------

[](#installation)

```
composer require tourze/user-event-bundle
```

Quick Start
-----------

[](#quick-start)

### 1. Bundle Registration

[](#1-bundle-registration)

The bundle is automatically registered in your Symfony application.

### 2. Create Custom Events

[](#2-create-custom-events)

```
