game_server.game_social
简介
为游戏服务器提供的基于engine层的一站式接入社交服的功能模块
组件接口
FUserSocial.gs
为User对象提供的社交服组件
- 生成一个随机数提供给游戏客户端,做为游 戏客户端登录社交服务器的凭证(token)
- 游戏客户端可以通过refresh_social_token指令,向游戏服务器重新请求社交服登录凭证(token)
函数原型 | 函数作用 |
---|---|
void assure_social_account(map para = ) | 确保社交服账号存在并向游戏客户端发送社交服登录凭证(已经存在则下发登录token,不存在则创建账号后再下发登录token) |
bool check_social_token(mixed token) | 校验社交服登录token是否和玩家持有的token匹配 |
bool refresh_social_token() | 刷新社交服登录凭证(token) |
game_social.gs
和社交服务器交互的功能模块
本功能模块导入项目的几点说明
- 本模块基于engine层
- 本模块依赖游戏服务器的网络服务和http服务,必须在游戏服务器的网络服务和http服务就位后才能进行加载
- 需要调用本模块的setup方法进行初始化
- 本模块提供一些预置的脚本功能和游戏指令等,也可以通过包含本模块提供的组件进行扩展
其它说明:
- cmds/refresh_social_token.gs - 刷新游戏客户端用于登录社交服的token
- cmds/take_mail_gifts.gs - 领取邮件附件奖励的指令
- http_cmds/auth_social_account.gs - 游戏服务器做为社交服的登录验证代理时提供的http指令(验证游戏服提供的登录社 交服的token)
- scripts/chat_scripts.gs - 预置的几个聊天相关的功能函数的集合
- scripts/mail_scripts.gs - 预置的几个邮件相关的功能函数的集合
- 可以通过game_social.dump_scripts()输出所有可用的功能脚本(通过game_social.eval调用)
- 可以通过包含FUserSocial组件,开启社交服用户创建、验证等功能
- 可以通过包含FSocialScript组件,自定扩展功能模块的功能(通过game_social.eval方法进行调用)
函数原型 | 函数作用 |
---|---|
void setup(object game_server = nil) | 模块初始: 挂载内置的功能脚本/游戏服务器指令/http指令 |
mixed send_request(string cmd, map args) | 向社交服发送指令,并阻塞等待指令结果返回 |
void send(string cmd, map args) | 向社交服发送指令,不等待指令结果返回 |
bool contains_script(mixed script_name_list) | 是否包含指定的脚本函数 |
mixed eval(string script_name, ...) | 执行脚本函数 |
void register_script_func_dict(map dict) | 登记一组脚本函数(登记后才能通过game_social.eval函数调用) |
void register_script_func(string script_name, function func) | 登记脚本函数 |
void unregister_script_func(string script_name) | 移除已登记脚本函数 |
void unregister_script_funcs(array script_name_list) | 移除一组已登记的脚本函数 |
void dump_scripts() | 调试接口 - 显示所有已登记脚本函数名称 |
bool create_account(string account, map info = ) | 创建社交服账号 |
bool check_account(string account) | 检查指定社交服账号是否存在 |
bool delete_account(string account, bool mark_deleted = true) | 删除社交服账号 |
样例
public void pkg_sample()
{
write("sample");
}