Voice State Update

Triggers when a member joins, leaves, or moves voice channels.

NOTE

Update Type will be one of Join, Leave, or Move. If the user left or moved, Previous Channel ID is populated from Inventor's cache. All other data is populated directly from Discord and represents the user's current voice state.

This trigger is based on Discord event Voice State Update.

Inputs

There are no inputs for this trigger.

Outputs

Update Type

Previous Channel ID

The ID of the previous voice channel that the user was in. Blank if the user is just joining a voice channel.

Example: 123456789012345678

User ID

The ID of the user who changed their voice state.

Example: 123456789012345678

Server ID

The server ID where the voice state was changed.

Example: 123456789012345678

Channel ID

The channel ID that the user is currently in. Blank if they left all voice channels.

Example: 123456789012345678

Session ID

The ID of the current voice session.

Example: 123456789012345678

Mute

Whether or not the user was muted by the server admins.

Example: true, false

Deaf

Whether or not the user was deafened by the server admins.

Example: true, false

Self Mute

Whether or not the user muted themselves.

Example: true, false

Self Deaf

Whether or not the user deafened themselves.

Example: true, false

Self Video

Whether or not the user has their camera enabled.

Example: true, false

Self Stream

Whether or not the user is sharing their screen.

Example: true, false

Suppressed

Whether or not the user is suppressed.

Example: true, false

Request to Speak Timestamp (Unix)

When the user requested to speak, as a Unix timestamp. Blank if they did not request to speak.

Example: 1731886315

\

Tips & Tricks

Update Type

This will tell you the majority of the information you will need… but not everything so make sure to plan your flow accordingly. In most cases, this variable tells you exactly what's going on but you should always plan your flow(s) to account for the unexpected

Member join channel

When a member joins a Voice Channel, the trigger will output some of the following variables, know how to use them to extract the data you want

  • Update Type: When a member is joining a VC, this will always be Join
  • Previous Channel ID: This will always be empty when a member is joining a VC as there is no previous channel
  • Channel ID: This will be the ID of the specific Voice Channel a member joined in the server

Member move channels

When a member moves from one VC in a server to another VC in the same server, this triggers a Move update type

  • Update Type: When a member moves from one VC to another, this will always be Move
  • Previous Channel ID: This variable is the ID of the previous channel the member was in before moving to the new channel
  • Channel ID: This will always have a value as the member is not leaving a Voice Channel, rather, they are moving from one to another. This is the Channel ID for the channel the user joined

Member leave channel

When a member leaves a voice channel, the trigger will output a Leave update type

  • Update Type: When a member leaves a Voice Channel, the update type will always be Leave
  • Previous Channel ID: This will always have a value and will be the channel the user just left
  • Channel ID: This is the ID of the channel a member is moving to. If the member is not moving to a new channel (ie: leaving), this variable is left blank

Member update

This one is by far the most complicated because as of time of writing, Inventor does not cache the states of members except for the current/past channel and it triggers a Join update

There are a few tricks to tell the difference between a member update and a member join, the easiest way is if the ==Previous Channel ID== and ==Channel ID== are the same