GFNetworkPeerIdentity¶
API Reference / Network / 类索引
- 路径:
addons/gf/extensions/network/session/gf_network_peer_identity.gd - 模块:
Network - 继承:
Resource - API:
public - 类别:值对象 (
value_object) - 首次版本:
8.0.0
网络 peer 与外部平台账号之间的中立身份描述。 该资源只保存传输 peer、平台账号和展示元信息之间的映射,不绑定 Steam、微信、 Epic、自建账号或任何具体平台 SDK。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 属性 | peer_id |
var peer_id: int = -1 |
| 属性 | platform_id |
var platform_id: StringName = &"" |
| 属性 | platform_user_id |
var platform_user_id: String = "" |
| 属性 | display_name |
var display_name: String = "" |
| 属性 | avatar_uri |
var avatar_uri: String = "" |
| 属性 | capabilities |
var capabilities: PackedStringArray = PackedStringArray() |
| 属性 | metadata |
var metadata: Dictionary = {} |
| 方法 | configure |
func configure( p_peer_id: int = -1, p_platform_id: StringName = &"", p_platform_user_id: String = "", p_display_name: String = "", p_metadata: Dictionary = {}, p_capabilities: PackedStringArray = PackedStringArray() ) -> GFNetworkPeerIdentity: |
| 方法 | add_capability |
func add_capability(capability_id: StringName) -> bool: |
| 方法 | has_capability |
func has_capability(capability_id: StringName) -> bool: |
| 方法 | get_stable_key |
func get_stable_key() -> String: |
| 方法 | to_dict |
func to_dict() -> Dictionary: |
| 方法 | apply_dict |
func apply_dict(data: Dictionary) -> void: |
| 方法 | duplicate_identity |
func duplicate_identity() -> GFNetworkPeerIdentity: |
| 方法 | get_debug_snapshot |
func get_debug_snapshot() -> Dictionary: |
| 方法 | from_dict |
static func from_dict(data: Dictionary) -> GFNetworkPeerIdentity: |
属性¶
peer_id¶
- API:
public - 首次版本:
8.0.0
传输层 peer 标识。-1 表示未知或尚未绑定传输连接。
platform_id¶
- API:
public - 首次版本:
8.0.0
平台标识,例如 steam、wechat、lan 或 custom。GF 不解释具体平台语义。
platform_user_id¶
- API:
public - 首次版本:
8.0.0
平台侧用户标识。动态外部 ID 使用 String 保存,避免把第三方账号体系写入 GF 类型系统。
display_name¶
- API:
public - 首次版本:
8.0.0
面向 UI 的显示名。框架不保证唯一性。
avatar_uri¶
- API:
public - 首次版本:
8.0.0
可选头像或资料图标 URI。由项目或 adapter 解释。
capabilities¶
- API:
public - 首次版本:
8.0.0
身份具备的平台能力标识。
metadata¶
- API:
public - 首次版本:
8.0.0
调用方自定义元数据。框架不解释该字段。
结构:
metadata: Dictionary caller-defined identity metadata.
方法¶
configure¶
- API:
public - 首次版本:
8.0.0
func configure( p_peer_id: int = -1, p_platform_id: StringName = &"", p_platform_user_id: String = "", p_display_name: String = "", p_metadata: Dictionary = {}, p_capabilities: PackedStringArray = PackedStringArray() ) -> GFNetworkPeerIdentity:
配置身份资源。
参数:
| 名称 | 说明 |
|---|---|
p_peer_id |
传输层 peer 标识。 |
p_platform_id |
平台标识。 |
p_platform_user_id |
平台侧用户标识。 |
p_display_name |
显示名。 |
p_metadata |
调用方元数据。 |
p_capabilities |
平台能力标识列表。 |
返回:当前身份资源。
结构:
p_metadata: Dictionary caller-defined identity metadata.
add_capability¶
- API:
public - 首次版本:
8.0.0
添加能力标识。
参数:
| 名称 | 说明 |
|---|---|
capability_id |
能力标识。 |
返回:成功添加或已存在时返回 true。
has_capability¶
- API:
public - 首次版本:
8.0.0
检查能力标识是否存在。
参数:
| 名称 | 说明 |
|---|---|
capability_id |
能力标识。 |
返回:存在返回 true。
get_stable_key¶
- API:
public - 首次版本:
8.0.0
获取稳定身份 key。
返回:身份 key;优先使用 platform_id:platform_user_id,缺失时回退到 peer:
to_dict¶
- API:
public - 首次版本:
8.0.0
转换为字典。
返回:身份字典。
结构:
return: Dictionary with peer_id, platform_id, platform_user_id, display_name, avatar_uri, capabilities, and metadata.
apply_dict¶
- API:
public - 首次版本:
8.0.0
从字典应用身份字段。
参数:
| 名称 | 说明 |
|---|---|
data |
身份字典。 |
结构:
data: Dictionary with peer_id, platform_id, platform_user_id, display_name, avatar_uri, capabilities, and metadata.
duplicate_identity¶
- API:
public - 首次版本:
8.0.0
创建身份深拷贝。
返回:新身份资源。
get_debug_snapshot¶
- API:
public - 首次版本:
8.0.0
获取调试快照。
返回:调试快照。
结构:
return: Dictionary JSON-safe identity debug snapshot.
from_dict¶
- API:
public - 首次版本:
8.0.0
从字典创建身份资源。
参数:
| 名称 | 说明 |
|---|---|
data |
身份字典。 |
返回:新身份资源。
结构:
data: Dictionary with peer_id, platform_id, platform_user_id, display_name, avatar_uri, capabilities, and metadata.