# `Chime.Event`
[🔗](https://github.com/hattoriai/chime/blob/v0.1.0-dev/lib/chime/event.ex#L1)

Something that happened, once, whoever it notifies: a call of
`Chime.notify/3`. Its notifications point to it.

  * `:notifier` - the module that made it; `:kind` - its name, as the
    JSON API and the components give it (`"new_comment"`).
  * `:category` - the category of `Chime.Config` it is of.
  * `:data` - what the notifier's `data/1` kept of the params, as JSON:
    the feed and the emails are made from it when they are shown.
  * `:workspace` - the workspace it happened in, or nil.
  * `:actor` - who did it (`%{"id" => ..., "name" => ...}`), or nil.
  * `:group_key` - the group its notifications join, or nil.
  * `:key` - the idempotency key it was given, or nil: a second call
    with the same key does nothing.
  * `:recipients` - how many people it notified.
  * `:status` - `"sent"`; `"scheduled"` until its time, `:scheduled_at`
    (`Chime.notify/3` with `:at`), its people kept in `:audience`; or
    `"cancelled"` before it (`Chime.cancel/2`); `"sending"` while the
    jobs of an audience (`c:Chime.Notifier.audience/1`) go through it,
    `:cursor` the key of the last person done.

# `t`

```elixir
@type t() :: %Chime.Event{
  __meta__: term(),
  actor: term(),
  audience: term(),
  category: term(),
  cursor: term(),
  data: term(),
  group_key: term(),
  id: term(),
  inserted_at: term(),
  key: term(),
  kind: term(),
  notifier: term(),
  recipients: term(),
  scheduled_at: term(),
  status: term(),
  workspace: term()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
