> ## Documentation Index
> Fetch the complete documentation index at: https://sequence-0fb8d9e6-6256-forte-config.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Unity セッション管理

> SequenceのUnity SDK用エコシステムウォレットのドキュメント

### セッションを追加する

既存のログイン方法に追加のセッションを追加できます。すべてのセッションは同じウォレットアドレスを共有し、各セッションごとに異なる権限を割り当てることが可能です。`AddSession`を呼び出す際は必ず`IPermissions`オブジェクトを指定してください。

[権限の構成方法はこちらをご覧ください。](/sdk/unity/ecosystem-wallet/permissions)

```csharp theme={null}
Address contractAddress = new Address("0x33985d320809E26274a72E03268c8a29927Bc6dA");
BigInteger deadline = new BigInteger(DateTimeOffset.UtcNow.ToUnixTimeSeconds() * 1000 + 1000 * 60 * 5000);

IPermissions permissions = new ContractPermissions(Chain.TestnetAbitrumSepolia, contractAddress, deadline, 0);
await wallet.AddSession(permissions);
```

### 切断する

サインアウトするとローカルストレージがクリアされます。

```csharp theme={null}
wallet.Disconnect();
```

### すべてのセッションウォレットを取得する

現在接続中のすべてのセッションを取得します。

```csharp theme={null}
Address[] signerAddresses = wallet.GetAllSigners();
```

## イベント

### ウォレット作成時のイベント

`WalletCreated`イベントは、サインイン時またはストレージからウォレットを復元した際に呼び出されます。

```csharp theme={null}
SequenceWallet.WalletCreated += wallet =>
{
    // Integrate your own logic to handle wallet creations.
}
```

### ウォレット切断時のイベント

切断イベントは`wallet.Disconnect()`を実行した際に呼び出されます。再接続が必要です。

```csharp theme={null}
SequenceWallet.Disconnected += () =>
{
    // Integrate your own logic to handle disconnects.
}
```
