# `ExWapp.JID`
[🔗](https://github.com/elchemista/ex_wapp/blob/v0.1.5/lib/ex_wapp/jid.ex#L1)

Minimal representation of a WhatsApp JID.

The implementation mirrors the pieces used by the binary encoder/decoder.

# `t`

```elixir
@type t() :: %ExWapp.JID{
  device: non_neg_integer(),
  integrator: non_neg_integer(),
  raw_agent: non_neg_integer(),
  server: String.t(),
  user: String.t()
}
```

# `actual_agent`

# `broadcast?`

```elixir
@spec broadcast?(term()) :: boolean()
```

Checks if a JID string represents a broadcast list.

# `broadcast_server`

# `default_user_server`

# `empty?`

# `group?`

```elixir
@spec group?(term()) :: boolean()
```

Checks if a JID string represents a group.

# `group_server`

# `hidden_user_server`

# `hosted_server`

# `interop_server`

# `is_broadcast?`

> This function is deprecated. Use broadcast?/1 instead..

# `is_group?`

> This function is deprecated. Use group?/1 instead..

# `is_user?`

> This function is deprecated. Use user?/1 instead..

# `messenger_server`

# `new`

# `new_ad`

# `parse`

```elixir
@spec parse(term()) :: {:ok, t()} | {:error, :invalid_jid}
```

Parses a JID string into a struct.

# `to_string`

# `user?`

```elixir
@spec user?(term()) :: boolean()
```

Checks if a JID string represents a regular user.

# `with_device`

# `with_integrator`

---

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