# cafegame 网咖游戏业务包:游戏来源常量(云更新/网维大师/易乐游)、按目录特征识别游戏 (ID/名称/来源)、前台进程监控与运行记录上报回调框架。 > 迁移自 go-hua/cafegame,代码保持原样。**网吧业务专用包**(目录特征与各游戏 > 平台的落盘规则强耦合)。 ## 用法 ```go import "git.zeroonesoft.cn/golib/zogo/cafegame" // 游戏来源常量 cafegame.SourceYGX // 1 云更新 cafegame.SourceWWDS // 2 网维大师 cafegame.SourceYLY // 3 易乐游 cafegame.SourceToName(cafegame.SourceYGX) // 按目录特征识别游戏(各平台一个判定函数) ok, info, err := cafegame.IsGameDirByYGX(`D:\40001示例游戏`) // info: AppData{AppId, AppName, AppSource, AppGuid...} // 运行记录上报框架:启动后台监控,游戏开始/停止触发 recordCallback, // 周期性触发 countCallback(在线游戏数+前台进程),事件触发 eventCallback cafegame.RunAppRecord(recordCallback, countCallback, eventCallback, []int{cafegame.SourceYGX}, 60 /* 上报间隔秒 */) ``` 完整可运行例程:[examples/cafegame/main.go](../examples/cafegame/main.go) ## 注意 - 目录识别规则与对应游戏平台版本耦合,平台更新落盘规则后需同步维护本包。 - `RunAppRecord` 内部启动 goroutine,服务进程常驻场景使用;回调里不要阻塞。