Передача ввода в команду Curl внутри python3 - PullRequest
0 голосов
/ 22 мая 2018

В настоящее время я работаю с errbot, но у меня возникают проблемы с разрешением пользователям вводить сообщение для передачи вместе с командой curl.мой плагин выглядит следующим образом:

@arg_botcmd('team_key', type=str)
@arg_botcmd('--message' , dest='message', type=str)
def oncall_page(self, msg, team_key=None, message=None):
  if team_key in page_list.keys():
     team_id = page_list[team_key]
     data = {"message_type":"CRITICAL","state_message":"{0}".format(message)}                                     
     response = requests.post('https://www.apiurl.com/{0}'.format( team_id), data)
     yield "Paging {0} ".format( team_id )

Моя проблема связана с этой строкой:

data = {"message_type":"CRITICAL","state_message":"{0}".format(message)}

Кажется, что это сбой команды полностью, я надеюсь, что пользователи могут выполнить одну такую ​​командукак "! oncall page team_name --message"

Любая помощь будет принята:)

1 Ответ

0 голосов
/ 23 мая 2018
@arg_botcmd('team_key', type=str)
@arg_botcmd('--message' , dest='message', type=str)
def oncall_page(self, msg, team_key=None, message=None):
  if team_key in page_list.keys():
     team_id = page_list[team_key]
     text = str(message)
     msg_type = "critical"
     data = '{"message_type":"%s", "state_message":"%s"}' % (msg_type, text)
    # data = '{"message_type":"critical", "state_message":"%s"}'(text)
     URL = 'https://www.apiurl.com/{0}'.format( team_id)
     response = requests.post(URL , data) 

Это исправление для этого!

...