> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XGameInviteEventCallback (preterido)

> XGameInviteEventCallback (preterido)

# XGameInviteEventCallback (preterido)

> [!NOTE]
>
> Esta API agora está preterida. Use [XGameActivationCallback](https://docs.xbox.com/pt-BR/reference/system/xgameactivation/functions/xgameactivationcallback.md) em vez disso.

Um retorno de chamada que um aplicativo define para um evento de convite de jogo.

## Sintaxe

```cpp theme={null}
void XGameInviteEventCallback(  
         void* context,  
         const char* inviteUri  
)  
```

### Parâmetros

*context*   \_In\_opt\_\
Tipo: void\*

O contexto que passamos para [XGameInviteRegisterForEvent](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteregisterforevent.md).

*inviteUri*   \_In\_\
Tipo: char\*

O URI para ingressar na sessão de jogo.\
\[!NOTE] O XSAPI sabe como consumir o URI.

### Valor retornado

Tipo: void

## Comentários

Para registrar um retorno de chamada para um evento de convite de jogo, chame [XGameInviteRegisterForEvent](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteregisterforevent.md). A função usa um ponteiro para um **XGameInviteEventCallback** como argumento.

Para cancelar o registro de um retorno de chamada para um evento de convite de jogo, chame [XGameInviteUnregisterForEvent](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteunregisterforevent.md).

O exemplo de código a seguir registra um retorno de chamada de convite de jogo.

```cpp theme={null}
#include <XTaskQueue.h>
#include <XGameInvite.h>  
  
XTaskQueueHandle g_taskQueue;  
XTaskQueueRegistrationToken g_gameInviteEventToken;  
  
void OnGameInvite(void* context, const char* inviteUri)  
{  
    if (inviteUri != nullptr)
    {
        std::string inviteString(inviteUri);
        auto pos = inviteString.find("handle=");
        auto inviteHandeId = inviteString.substr(pos + 7, 36);
        // Now call XblMultiplayerManagerJoinLobby if using MPM
        // or call XblMultiplayerWriteSessionByHandleAsync if using MPSD APIs
    }
}  
  
void InitializeGame()  
{  
    XGameInviteRegisterForEvent(g_taskQueue, nullptr, OnGameInvite, &g_gameInviteEventToken);  
}  
  
void ShutdownGame()  
{  
    XGameInviteUnregisterForEvent(g_gameInviteEventToken);  
}  
```

## Requisitos

**Cabeçalho:** XGameInvite.h

**Biblioteca:** xgameruntime.lib

**Plataformas compatíveis:** Windows, consoles da família XBOX One e consoles XBOX Series

## Confira também

[XGameInvite](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/xgameinvite_members.md)

[XGameInviteRegisterForEvent](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteregisterforevent.md)

[XGameInviteUnregisterForEvent](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteunregisterforevent.md)


## Related topics

- [XGameInviteUnregisterForEvent (preterido)](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteunregisterforevent.md)
- [XGameInviteRegisterForEvent (preterido)](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/functions/xgameinviteregisterforevent.md)
- [XGameInvite (preterido)](https://docs.xbox.com/pt-BR/reference/system/xgameinvite/xgameinvite_members.md)
- [XGameActivationCallback](https://docs.xbox.com/pt-BR/reference/system/xgameactivation/functions/xgameactivationcallback.md)
- [XGameProtocolUnregisterForActivation (preterido)](https://docs.xbox.com/pt-BR/reference/system/xgameprotocol/functions/xgameprotocolunregisterforactivation.md)
