--- uid: Guides.ContextCommands.Reveiving title: Receiving Context Commands --- # Receiving Context Menu events User commands and Message commands have their own unique event just like the other interaction types. For user commands the event is `UserCommandExecuted` and for message commands the event is `MessageCommandExecuted`. ```cs // For message commands client.MessageCommandExecuted += MessageCommandHandler; // For user commands client.UserCommandExecuted += UserCommandHandler; ... public async Task MessageCommandHandler(SocketMessageCommand arg) { Console.Writeline("Message command received!"); } public async Task UserCommandHandler(SocketUserCommand arg) { Console.Writeline("User command received!"); } ``` User commands contain a SocketUser object called `Member` in their data class, showing the user that was clicked to run the command. Message commands contain a SocketMessage object called `Message` in their data class, showing the message that was clicked to run the command. Both return the user who ran the command, the guild (if any), channel, etc.