# Reference

<table><thead><tr><th width="345.3333333333333">Event</th><th>Description</th></tr></thead><tbody><tr><td><a href="#conversation_added">CONVERSATION_ADDED</a></td><td>A new conversation pops in the operator's desk or the desk is refreshed with a previously opened conversation.</td></tr><tr><td><a href="#conversation_focused">CONVERSATION_FOCUSED</a></td><td><p>The conversation gets the focus because:</p><p>- It’s the only one on the iAdvize desk</p><p>- The operator clicks on it</p><p>- Another conversation is removed from the desk and this conversation is "elected" to receive the focus</p></td></tr><tr><td><a href="#conversation_focus_lost">CONVERSATION_FOCUS_LOST</a></td><td>The operator clicks on another conversation or the operator closes, snoozes or transfers the conversation.</td></tr><tr><td><a href="#conversation_state_box_clicked">CONVERSATION_STATE_BOX_CLICKED</a></td><td>Triggered each time the operator clicks on a state box (=“conversation tab” on the left)<br><img src="https://lh7-us.googleusercontent.com/OpRsl_bW2xouK8vMly7MA69RCdMuNju8S0td_i_Lay8BnBsnboTIq14ir-y5OdJHa6fGVu3ScRKnCbeGfaSn2-CG9KQux14zhqT5E5wZxr6XvVmXDfLgFSE362USJAjgXCBH_-ZL48i38ZPaQmFBkKo" alt=""></td></tr><tr><td><a href="#conversation_removed">CONVERSATION_REMOVED</a></td><td>The conversation disappears from the desk because the conversation is closed, snoozed, or transferred.</td></tr><tr><td><a href="#conversation_visitor_updated">CONVERSATION_VISITOR_UPDATED</a></td><td><p>Triggered each time iAdvize discovers new information about the visitor:</p><p>- When the conversation is added to the iAdvize desk</p><p>- When the visitor authenticates (even during a conversation)</p><p>- When the operator edits the visitor's information from the console</p><p>- etc.</p></td></tr><tr><td><a href="#availability_updated">AVAILABILITY_UPDATED</a></td><td><p>Triggered each time the agent’s status is updated for all channels available.</p><p>The different availability status are:</p><p><code>AVAILABLE</code>: the agent is connected and available on this channel</p><p><code>UNAVAILABLE</code>: the agent is unavailable on this channel (either disconnected or the channel is disabled by an admin)</p><p><code>UNAVAILABLE_FORCED</code>: the agent is available but can’t take new conversations on this channel. This status is possible only for the call and video channels. This way, the agent can avoid taking conversations on those two channels when the agent already has a conversation in progress on the chat channel (non-parallelizable channels).</p></td></tr><tr><td><a href="#conversation_message_added">CONVERSATION_MESSAGE_ADDED</a></td><td>Triggered each time a visitor, an operator or an ibbü expert send a message in any conversations present on the desk<br><br>conversationParticipantType must have different value:<br><mark style="color:purple;">Visitor</mark> : Message is come from Visitor<br><mark style="color:purple;">Professional</mark> : Message is come from operator's desk (not ibbü expert)<br><mark style="color:purple;">Expert</mark> : Message is come from ibbü expert<br></td></tr></tbody></table>

## CONVERSATION\_ADDED

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_ADDED",
  "conversationId": "c1750366-9483-4372-a57d-844da14071c6", 
  "projectId": 1234 
}
```

## CONVERSATION\_FOCUSED

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_FOCUSED", 
  "conversationId": "c1750366-9483-4372-a57d-844da14071c6" 
}
```

## CONVERSATION\_FOCUS\_LOST

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_FOCUS_LOST", 
  "conversationId": "c1750366-9483-4372-a57d-844da14071c6" 
}
```

## CONVERSATION\_STATE\_BOX\_CLICKED

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_STATE_BOX_CLICKED", 
  "conversationId": "93d86726-aaf7-4962-877e-104c577d86ae" 
}
```

## CONVERSATION\_VISITOR\_UPDATED

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_VISITOR_UPDATED", 
  "conversationId": "c1750366-9483-4372-a57d-844da14071c6", 
  "visitor": { 
    ...allKnownIAdvizeFields 
  } 
} 
```

{% hint style="info" %}
The `allKnownIAdvizeFields` refers to the visitor fields available in an [iAdvize visitor profile](https://graphql.iadvize.dev/types/Visitor).
{% endhint %}

## CONVERSATION\_REMOVED

```json
{ 
  "event": "com.iadvize.desk.CONVERSATION_REMOVED", 
  "conversationId": "c1750366-9483-4372-a57d-844da14071c6" 
}
```

## AVAILABILITY\_UPDATED

```json
{
  "event": "com.iadvize.desk.AVAILABILITY_UPDATED",
  "availabilities": [
    {
      "channel": "CHAT",
      "status": "AVAILABLE"
    },
    {
      "channel": "CALL",
      "status": "UNAVAILABLE"
    },
    {
      "channel": "VIDEO",
      "status": "UNAVAILABLE_FORCED"
    },
    {
      "channel": "THIRD_PARTY",
      "status": "UNAVAILABLE_FORCED"
    }
  ]
}
```

## CONVERSATION\_MESSAGE\_ADDED

```json
{
    "event": "com.iadvize.desk.CONVERSATION_MESSAGE_ADDED",
    "conversationId": "c1750366-9483-4372-a57d-844da14071c6",
    "messageId": "93d86726-aaf7-4962-877e-104c577d86ae",
    "projectId": 1234,
    "conversationParticipantType": "Professional"
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.iadvize.dev/technologies/desk-events/reference.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
