From b00dae2f6043cf263b9f42f7ef24c6e2311f6345 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 01 七月 2022 16:37:46 +0800
Subject: [PATCH] 9537 【越南】服务器中心接口2(事件汇报优化: 如果配置仅汇报,则仅配置中的事件ID才汇报)

---
 ServerPython/CoreServerGroup/GameServer/Script/EventReport.py |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py b/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py
index 083efde..2dbb565 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/EventReport.py
@@ -38,6 +38,8 @@
 import md5
 import os
 import re
+import urllib
+import IpyGameDataPY
 
 
 EventFilepath = "D:\\EventServer\\PythonScribe\\EventLog\\" 
@@ -87,7 +89,15 @@
 def EventReport(eventActionID, eventParam, curPlayer=None, OperatorID=""):
     # 组成例子 eventParam 的格式必须是 xx=yy&zz=cc
     #  "http://192.168.0.249:12000/event_receiver?EventID=3099&OperatorID=test&PlayerCount=102&Time=2018-02-08 18:30:30&ProductID=snxxz&RegionName=s1"
-
+    
+    reportActionIDList = IpyGameDataPY.GetFuncEvalCfg("EventReport", 3)
+    if reportActionIDList and eventActionID not in reportActionIDList:
+        #GameWorld.DebugLog("非需要汇报的事件ID! %s" % eventActionID)
+        return
+    if eventActionID in IpyGameDataPY.GetFuncEvalCfg("EventReport", 1):
+        #GameWorld.DebugLog("不需要汇报的事件! %s" % eventActionID)
+        return
+    
     if not curPlayer and not OperatorID:
         return
 
@@ -121,7 +131,7 @@
         
     getUrl = "%s?ProductID=%s&OperatorID=%s&RegionName=%s&EventID=%s%s&Time=%s%s"%(\
              ReportUrl, ProductID, OperatorID, RegionName, eventActionID, playerInfo,
-             str(datetime.datetime.today()).split('.')[0], eventParam)
+             urllib.quote(str(datetime.datetime.today()).split('.')[0]), eventParam)
     GameWorld.DebugLog("EventReport: %s"%getUrl)
     
     # 第五个参数0代表get发送  1代表post

--
Gitblit v1.8.0