上传文件至 ''
1.修改平台判断逻辑
This commit is contained in:
parent
7638e9e911
commit
3752f7dd8b
98
to_shoumeng.py
Normal file
98
to_shoumeng.py
Normal file
@ -0,0 +1,98 @@
|
||||
import copy
|
||||
import datetime
|
||||
|
||||
from utils import create_consumer
|
||||
|
||||
consumer, client = create_consumer()
|
||||
|
||||
attr_default = dict()
|
||||
|
||||
# 事件映射 legu->shoumeng
|
||||
legu_to_sm_event = {
|
||||
'create_account': 'role_create',
|
||||
# '':'role_logout', # 角色登出日志
|
||||
'login': 'role_login',
|
||||
'level_up': 'role_rank',
|
||||
'pay': 'role_pay',
|
||||
}
|
||||
# 属性映射 legu->shoumeng
|
||||
legu_to_sm_attr_base = {
|
||||
# 基础属性
|
||||
'channel': 'channel_name',
|
||||
'svrindex': 'game_server',
|
||||
'#os': 'platform_id',
|
||||
# '':'sm_user_id', # 手盟账号ID
|
||||
'binduid': 'user_id',
|
||||
'#account_id': 'role_id',
|
||||
'role_name': 'role_name',
|
||||
'ghid': 'guild_id',
|
||||
'ghname': 'guild',
|
||||
'zhanli': 'power',
|
||||
'lv': 'role_rank',
|
||||
'vip': 'role_vip',
|
||||
# '':'castle_rank', # 城堡等级
|
||||
'exp': 'exp'
|
||||
|
||||
}
|
||||
legu_to_sm_attr = {
|
||||
# 等级升级属性
|
||||
# '':'rank_before',
|
||||
'lv': 'rank',
|
||||
# '':'rank_change',
|
||||
|
||||
}
|
||||
|
||||
template_data = {
|
||||
"cp_game_id": 682,
|
||||
"category": "cp_api",
|
||||
'event_access': 'realtime',
|
||||
"event": {
|
||||
"event_time": 0,
|
||||
"event_name": ""
|
||||
},
|
||||
"data": {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
def handler_os(properties):
|
||||
os_: str = properties.get('#os', 'Android')
|
||||
if os_.lower() == 'ios':
|
||||
properties['#os'] = 102
|
||||
else:
|
||||
properties['#os'] = 101
|
||||
|
||||
|
||||
for msg in consumer():
|
||||
data: dict = msg.value
|
||||
if data.get('#type') != 'track':
|
||||
continue
|
||||
data.update(data.get('properties', {}))
|
||||
data.pop('properties')
|
||||
|
||||
event_name = data.get('#event_name')
|
||||
|
||||
if event_name not in legu_to_sm_event:
|
||||
continue
|
||||
|
||||
data.update(attr_default)
|
||||
|
||||
# if data.get('owner_name') != 'shoumeng':
|
||||
# continue
|
||||
|
||||
send_data = copy.deepcopy(template_data)
|
||||
|
||||
handler_os(data)
|
||||
|
||||
send_data['event']['event_name'] = legu_to_sm_event[event_name]
|
||||
send_data['event']['event_time'] = int(
|
||||
datetime.datetime.strptime(data['#event_time'], '%Y-%m-%d %H:%M:%S').timestamp() * 1000)
|
||||
|
||||
for k, v in legu_to_sm_attr_base.items():
|
||||
send_data['data'][v] = data.get(k)
|
||||
|
||||
for k, v in legu_to_sm_attr.items():
|
||||
send_data['data'][v] = data.get(k)
|
||||
|
||||
print(send_data)
|
Loading…
Reference in New Issue
Block a user