GFNetworkSession¶
API Reference / Network / 类索引
- 路径:
addons/gf/extensions/network/session/gf_network_session.gd - 模块:
Network - 继承:
RefCounted - API:
public - 类别:运行时句柄 (
runtime_handle) - 首次版本:
3.17.0
网络会话状态快照。 记录当前网络工具的主机/客户端意图与连接状态,不绑定房间、账号或匹配逻辑。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 信号 | session_started |
signal session_started(mode: int, endpoint: String) |
| 信号 | session_connected |
signal session_connected(local_peer_id: int) |
| 信号 | session_closed |
signal session_closed(reason: String) |
| 枚举 | Mode |
enum Mode |
| 属性 | mode |
var mode: Mode = Mode.NONE |
| 属性 | endpoint |
var endpoint: String = "" |
| 属性 | local_peer_id |
var local_peer_id: int = -1 |
| 属性 | max_peers |
var max_peers: int = 0 |
| 属性 | is_active |
var is_active: bool = false |
| 属性 | has_connection |
var has_connection: bool = false |
| 属性 | started_at_unix |
var started_at_unix: float = 0.0 |
| 属性 | metadata |
var metadata: Dictionary = {} |
| 方法 | start_host |
func start_host(options: Dictionary = {}) -> void: |
| 方法 | start_client |
func start_client(next_endpoint: String, options: Dictionary = {}) -> void: |
| 方法 | mark_connected |
func mark_connected(next_local_peer_id: int = -1) -> void: |
| 方法 | close |
func close(reason: String = "closed") -> void: |
| 方法 | get_debug_snapshot |
func get_debug_snapshot() -> Dictionary: |
信号¶
session_started¶
- API:
public
会话开始时发出。
参数:
| 名称 | 说明 |
|---|---|
mode |
Mode 枚举值。 |
endpoint |
会话端点。 |
session_connected¶
- API:
public
会话连接成功时发出。
参数:
| 名称 | 说明 |
|---|---|
local_peer_id |
本地 peer 标识。 |
session_closed¶
- API:
public
会话关闭时发出。
参数:
| 名称 | 说明 |
|---|---|
reason |
关闭原因。 |
枚举¶
Mode¶
- API:
public
会话模式。
属性¶
mode¶
- API:
public
当前模式。
endpoint¶
- API:
public
会话端点。
local_peer_id¶
- API:
public
本地 peer 标识。
max_peers¶
- API:
public
最大远端数量。
is_active¶
- API:
public
会话是否已经启动。
has_connection¶
- API:
public
后端是否已报告连接成功。
started_at_unix¶
- API:
public
启动时间。
metadata¶
- API:
public
项目自定义元数据。
结构:
metadata: Dictionary,保存项目自定义会话元数据。
方法¶
start_host¶
- API:
public
标记主机会话已开始。
参数:
| 名称 | 说明 |
|---|---|
options |
启动选项。 |
结构:
options: Dictionary,支持 endpoint、port、max_clients、max_peers、local_peer_id、metadata。
start_client¶
- API:
public
标记客户端会话已开始。
参数:
| 名称 | 说明 |
|---|---|
next_endpoint |
远端端点。 |
options |
连接选项。 |
结构:
options: Dictionary,支持 max_peers、local_peer_id、metadata。
mark_connected¶
- API:
public
标记后端已经连接。
参数:
| 名称 | 说明 |
|---|---|
next_local_peer_id |
本地 peer;小于 0 时保留原值。 |
close¶
- API:
public
关闭会话。
参数:
| 名称 | 说明 |
|---|---|
reason |
关闭原因。 |
get_debug_snapshot¶
- API:
public
获取调试快照。
返回:会话状态字典。
结构:
return: Dictionary,包含 mode、mode_name、endpoint、local_peer_id、max_peers、is_active、has_connection、started_at_unix、metadata。