GameDataServiceTest.php 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. <?php
  2. require_once dirname(dirname(__FILE__)).'/service/SDKServerService.php';
  3. require_once dirname(dirname(__FILE__)).'/model/SDKException.php';
  4. require_once dirname(dirname(__FILE__)).'/constant/GameDataCategory.php';
  5. require_once dirname(dirname(__FILE__)).'/model/gamedata/GameData.php';
  6. require_once dirname(dirname(__FILE__)).'/model/gamedata/GuildTopList.php';
  7. require_once dirname(dirname(__FILE__)).'/model/gamedata/LoginGameRole.php';
  8. require_once dirname(dirname(__FILE__)).'/model/gamedata/RoleLevelTopList.php';
  9. require_once dirname(dirname(__FILE__)).'/model/gamedata/RolePowerTopList.php';
  10. require_once dirname(dirname(__FILE__)).'/model/gamedata/UserInfo.php';
  11. //玩家的accountId
  12. $accountId = "02592edac3d93be60af0f3665034e7d5";
  13. //=========以下5类数据,可以一起传,也可以分开传,也可以部分合并传=========
  14. //==================================================================
  15. /**
  16. * 必接功能<br>
  17. * 提交游戏扩展数据功能,游戏SDK要求游戏在运行过程中,提交一些用于运营需要的扩展数据,这些数据通过扩展数据提交方法进行提交。
  18. * 登录游戏角色成功后调用,及角色等级变化后调用
  19. * 游戏内如果没有相应的字段:int传-1,string传"不存在"
  20. */
  21. //玩家的游戏数据,content内参数必填
  22. $loginGameRole = new LoginGameRole();
  23. $loginGameRole->setRoleLevel("88");
  24. $loginGameRole->setRoleName("请∝再给我一支烟");
  25. $loginGameRole->setZoneName("终南山下-兵临城下");
  26. $loginGameRole->setRoleId("53568193");
  27. $loginGameRole->setZoneId("2705");
  28. $loginGameRole->setRoleCTime(1453355744);
  29. $loginGameRole->setOs("android");
  30. $loginGameRole->setRoleLevelMTime(1453355744);
  31. //构造玩家的游戏数据对象,构建数据后需要调SDKServerService::gameData接口提交数据,详见文档最后
  32. $roleData = new GameData(GameDataCategory::$LOGIN_GAME_ROLE, $loginGameRole);
  33. //==================================================================
  34. /**
  35. * userInfo为用户个人信息,选接
  36. */
  37. //用户个人信息,content内参数必填
  38. $userInfo1 = new UserInfo();
  39. $userInfo1->setGuildId("101");
  40. $userInfo1->setGuildName("星际联盟");
  41. $userInfo1->setGuildLevel(38);
  42. $userInfo1->setGuildLeader("a1b2c3d4e5f69876543210c0e9b2");
  43. $userInfo1->setZoneId("1");
  44. $userInfo1->setZoneName("海1区");
  45. $userInfo1->setPower(2230);
  46. $userInfo1->setOs("android");
  47. $userInfo1->setRoleId("53568193");
  48. $userInfo1->setRoleName("请∝再给我一支烟");
  49. $userInfo2 = new UserInfo();
  50. $userInfo2->setGuildId("101");
  51. $userInfo2->setGuildName("星际联盟");
  52. $userInfo2->setGuildLevel(38);
  53. $userInfo2->setGuildLeader("a1b2c3d4e5f69876543210c0e9b2");
  54. $userInfo2->setZoneId("1");
  55. $userInfo2->setZoneName("海1区");
  56. $userInfo2->setPower(2230);
  57. $userInfo2->setOs("android");
  58. $userInfo2->setRoleId("53568194");
  59. $userInfo2->setRoleName("霸王");
  60. //合并两个数据
  61. $userInfoContent = array($userInfo1, $userInfo2);
  62. //构造玩家的游戏数据对象
  63. $userInfoData = new GameData(GameDataCategory::$USER_INFO, $userInfoContent);
  64. //==================================================================
  65. /**
  66. * roleLevelTopList为游戏中角色等级排行榜,选接
  67. */
  68. //游戏中角色等级排行榜,content内参数必填
  69. $roleLevelContent1 = new RoleLevelTopList();
  70. $roleLevelContent1->setZoneId("1");
  71. $roleLevelContent1->setZoneName("海1区");
  72. $roleLevelContent1->setRoleId("10023");
  73. $roleLevelContent1->setRoleName("霸王");
  74. $roleLevelContent1->setRoleLevel("60");
  75. $roleLevelContent1->setRoleRanking(1);
  76. $roleLevelContent1->setAccountId("a1b2c3897621876543210c0e97");
  77. $roleLevelContent2 = new RoleLevelTopList();
  78. $roleLevelContent2->setZoneId("1");
  79. $roleLevelContent2->setZoneName("海1区");
  80. $roleLevelContent2->setRoleId("9821");
  81. $roleLevelContent2->setRoleName("星空无敌");
  82. $roleLevelContent2->setRoleLevel("59");
  83. $roleLevelContent2->setRoleRanking(2);
  84. $roleLevelContent2->setAccountId("b1b2c3897621876543210c0ee5");
  85. //合并两个数据,content内参数必填
  86. $roleLevelContent = array($roleLevelContent1, $roleLevelContent2);
  87. //构造玩家的游戏数据对象
  88. $roleLevelTopData = new GameData(GameDataCategory::$ROLELEVEL_TOPLIST, $roleLevelContent);
  89. //==================================================================
  90. /**
  91. * rolePowerTopList为游戏中角色战力排行榜,选接
  92. */
  93. //游戏中角色战力排行榜,content内参数必填
  94. $rolePowerContent1 = new RolePowerTopList();
  95. $rolePowerContent1->setZoneId("1");
  96. $rolePowerContent1->setZoneName("海1区");
  97. $rolePowerContent1->setRoleId("10017");
  98. $rolePowerContent1->setRoleName("冲天大炮");
  99. $rolePowerContent1->setPower(65535);
  100. $rolePowerContent1->setPowerRanking(1);
  101. $rolePowerContent1->setAccountId("a5b2c3890a21876543210c0e9c");
  102. $rolePowerContent2 = new RolePowerTopList();
  103. $rolePowerContent2->setZoneId("1");
  104. $rolePowerContent2->setZoneName("海1区");
  105. $rolePowerContent2->setRoleId("10023");
  106. $rolePowerContent2->setRoleName("霸王");
  107. $rolePowerContent2->setPower(65530);
  108. $rolePowerContent2->setPowerRanking(2);
  109. $rolePowerContent2->setAccountId("a1b2c3897621876543210c0e97");
  110. //合并两个数据
  111. $rolePowerContent = array($rolePowerContent1, $rolePowerContent2);
  112. //构造玩家的游戏数据对象
  113. $rolePowerTopData = new GameData(GameDataCategory::$ROLEPOWER_TOPLIST, $rolePowerContent);
  114. //==================================================================
  115. /**
  116. * guildTopList为游戏中公会排行榜,选接
  117. */
  118. //游戏中工会排行榜,content内参数必填
  119. $guildContent1 = new GuildTopList();
  120. $guildContent1->setGuildId("101");
  121. $guildContent1->setGuildName("星际联盟");
  122. $guildContent1->setGuildRanking(1);
  123. $guildContent1->setLeaderRoleName("我是谁");
  124. $guildContent1->setLeaderAccountId("e0b6c3897621876543210c0ec2");
  125. $guildContent1->setZoneId("1");
  126. $guildContent1->setZoneName("海1区");
  127. $guildContent2 = new GuildTopList();
  128. $guildContent2->setGuildId("109");
  129. $guildContent2->setGuildName("第一中队");
  130. $guildContent2->setGuildRanking(2);
  131. $guildContent2->setLeaderRoleName("老大");
  132. $guildContent2->setLeaderAccountId("c3b6c3897621876543210c0e06");
  133. $guildContent2->setZoneId("1");
  134. $guildContent2->setZoneName("海1区");
  135. //合并两个数据
  136. $guildContent = array($guildContent1, $guildContent2);
  137. //构造玩家的游戏数据对象
  138. $guildTopData = new GameData(GameDataCategory::$GUILD_TOP_LIST, $guildContent);
  139. //==================================================================
  140. //构造玩家的游戏数据对象
  141. $gameData = array($roleData, $userInfoData, $roleLevelTopData, $rolePowerTopData, $guildTopData);
  142. /**
  143. * ===========================
  144. * 构造完数据后,需要调用SDKServerService::gameData($accountId, $gameData)方法,才会将数据上传到服务器
  145. * ===========================
  146. */
  147. try{
  148. $result = SDKServerService::gameData($accountId, $gameData);
  149. if($result){echo "上传成功";};
  150. }
  151. catch (SDKException $e){
  152. echo $e->getCode()." ".$e->getMessage();
  153. }