yangtb24 commited on
Commit
1bcd225
·
verified ·
1 Parent(s): ce4eac2

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +1 -9
app.py CHANGED
@@ -51,7 +51,6 @@ BOT_COMMANDS = [
51
  {"command": "test", "description": "获取当前使用的提示词索引"},
52
  ]
53
  DEFAULT_TEMP = 1.5
54
- # 新增的用户和群组信息存储
55
  USER_LAST_ACTIVE = {}
56
  GROUP_ACTIVE_USERS = {}
57
  GROUP_INFO = {}
@@ -114,11 +113,9 @@ async def handleTelegramUpdate(update):
114
  fromUserLastName = update['message']['from'].get('last_name', '')
115
  fromUserName = update['message']['from'].get('username', '')
116
 
117
- # 更新用户最后活跃时间
118
  USER_LAST_ACTIVE[fromUserId] = datetime.now()
119
 
120
  if isGroupChat:
121
- # 更新群组活跃用户
122
  GROUP_ACTIVE_USERS.setdefault(chatId, set()).add(fromUserId)
123
  if chatId not in GROUP_INFO:
124
  chat_info = await getChatInfo(chatId)
@@ -181,12 +178,10 @@ async def handleTelegramUpdate(update):
181
  await sendTelegramMessage(chatId, f'当前群组触发前缀为: {prefix}')
182
  return
183
 
184
- # 在群组中处理私聊指令
185
  if userMessage.startswith('/settemp ') or userMessage.startswith('/promat ') or command in ['gettemp', 'getpromat', 'resetuser']:
186
  await handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat)
187
  return
188
  else:
189
- # 私聊中处理所有指令
190
  if userMessage.startswith('/settemp ') or userMessage.startswith('/promat ') or command in ['gettemp', 'getpromat', 'resetuser']:
191
  await handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat)
192
  return
@@ -214,7 +209,6 @@ def parseCommand(userMessage):
214
  command = command.split('@')[0]
215
  return command[1:]
216
 
217
-
218
  async def handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat):
219
  command = parseCommand(userMessage)
220
  if userMessage.startswith('/settemp '):
@@ -258,12 +252,10 @@ async def processAiMessage(chatId, userMessage, fromUserId, message_id, fromUser
258
  userPromptIndex = USER_SETTINGS.get(fromUserId, {}).get('prompt_index', CURRENT_PROMPT_INDEX)
259
  currentPrompt = PROMPT_TEMPLATES.get(userPromptIndex, "")
260
 
261
- # 获取用户和群组的上下文信息
262
  user_last_active = USER_LAST_ACTIVE.get(fromUserId, None)
263
  group_info = GROUP_INFO.get(chatId, None)
264
  group_active_users = GROUP_ACTIVE_USERS.get(chatId, None)
265
 
266
- # 构建更丰富的系统提示
267
  system_prompt = f"""
268
  {currentPrompt}
269
  当前时间: {datetime.now().strftime("%Y-%m-%d %H:%M:%S")}
@@ -441,4 +433,4 @@ async def getChatInfo(chatId):
441
  return None
442
 
443
  if __name__ == '__main__':
444
- app.run(host='0.0.0.0', port=int(os.environ.get('PORT', 7860)))
 
51
  {"command": "test", "description": "获取当前使用的提示词索引"},
52
  ]
53
  DEFAULT_TEMP = 1.5
 
54
  USER_LAST_ACTIVE = {}
55
  GROUP_ACTIVE_USERS = {}
56
  GROUP_INFO = {}
 
113
  fromUserLastName = update['message']['from'].get('last_name', '')
114
  fromUserName = update['message']['from'].get('username', '')
115
 
 
116
  USER_LAST_ACTIVE[fromUserId] = datetime.now()
117
 
118
  if isGroupChat:
 
119
  GROUP_ACTIVE_USERS.setdefault(chatId, set()).add(fromUserId)
120
  if chatId not in GROUP_INFO:
121
  chat_info = await getChatInfo(chatId)
 
178
  await sendTelegramMessage(chatId, f'当前群组触发前缀为: {prefix}')
179
  return
180
 
 
181
  if userMessage.startswith('/settemp ') or userMessage.startswith('/promat ') or command in ['gettemp', 'getpromat', 'resetuser']:
182
  await handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat)
183
  return
184
  else:
 
185
  if userMessage.startswith('/settemp ') or userMessage.startswith('/promat ') or command in ['gettemp', 'getpromat', 'resetuser']:
186
  await handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat)
187
  return
 
209
  command = command.split('@')[0]
210
  return command[1:]
211
 
 
212
  async def handlePrivateCommand(chatId, userMessage, fromUserId, isGroupChat):
213
  command = parseCommand(userMessage)
214
  if userMessage.startswith('/settemp '):
 
252
  userPromptIndex = USER_SETTINGS.get(fromUserId, {}).get('prompt_index', CURRENT_PROMPT_INDEX)
253
  currentPrompt = PROMPT_TEMPLATES.get(userPromptIndex, "")
254
 
 
255
  user_last_active = USER_LAST_ACTIVE.get(fromUserId, None)
256
  group_info = GROUP_INFO.get(chatId, None)
257
  group_active_users = GROUP_ACTIVE_USERS.get(chatId, None)
258
 
 
259
  system_prompt = f"""
260
  {currentPrompt}
261
  当前时间: {datetime.now().strftime("%Y-%m-%d %H:%M:%S")}
 
433
  return None
434
 
435
  if __name__ == '__main__':
436
+ app.run(host='0.0.0.0', port=int(os.environ.get('PORT', 7860)))