<commit_before>## Parley: Polymorphic Messaging for Laravel Applications

With Parley you can easily send messages between different object types within a Laravel application.   These "conversations" can be bi-directional, allowing for easy communication with your users about topics relevant to your application. 

* Keep track of which members have or haven't "read" the messages
* 

Here is an example:

```php
Parley::discuss([
    'subject' => "A New Game has been added",
    'body'   => "A new game with {$teamB->name} has been added to the schedule.",
    'alias'  => "The Commissioner",
    'author' => $admin,
    'regarding' => $game
])->withParticipant($teamA);
```

When a player logs in, their unread Parley messages can be retrieved like so:

```php
$messages = Parley::gatherFor([$user, $user->team])->unread()->get();<commit_msg>Expand bullet points in readme<commit_after>## Parley: Polymorphic Messaging for Laravel Applications

With Parley you can easily send messages between different object types within a Laravel application.   These "conversations" can be bi-directional, allowing for easy communication with your users about topics relevant to your application. 

* Associate threads with reference objects, such as orders or any other eloquent model instance
* Keep track of which members have or haven't "read" the messages
* Optionally mark threads as "open" or "closed"

Here is an example:

```php
Parley::discuss([
    'subject' => "A New Game has been added",
    'body'   => "A new game with {$teamB->name} has been added to the schedule.",
    'alias'  => "The Commissioner",
    'author' => $admin,
    'regarding' => $game
])->withParticipant($teamA);
```

When a player logs in, their unread Parley messages can be retrieved like so:

```php
$messages = Parley::gatherFor([$user, $user->team])->unread()->get();
{'fraction_non_alphanumeric': 0.11243243243243244, 'fraction_numerical': 0.0, 'mean_word_length': 4.609090909090909, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1481148', 'n_tokens_mistral': 529, 'n_tokens_neox': 505, 'n_words': 228}