1
My Telegram 봇은 인라인 쿼리에 대한 답변을 얻지 못합니다.전보 인라인 쿼리에 응답하는 방법은 무엇입니까?
urlid = url['result'][0]['inline_query']['id']
str(urlid)
fromid = url['result'][0]['inline_query']['from']['id']
str(fromid)
query = url['result'][0]['inline_query']['query']
if query == '/getinfo':
r = requests.get('http://' + address + ':' + port + '/')
D = r.json()
message_text = str(len(D['info']))
results = [{'type': 'article', 'message_text': message_text, 'id': '1', 'title': 'count'}]
json.dumps(results)
data = {'inline_query_id': urlid, 'results': results}
bot.answerInlineQuery(data)
그리고이 응답 기능입니다 : 당신이 볼 수 있듯이, 여기에 마커를 작동 할 수있는 전환
def answerInlineQuery(self, data):
global url
print('ok, we in answer func')
sendurl = url + 'answerInlineQuery'
requests.post(sendurl, data)
가 : print('ok, we in answer func')
여기
UPD : results
dict에 "input _message_content"
키를 추가했지만 문제가 해결되지 않았습니다.
{"id": "1", "input _message_content": {"message_text": "Hello"}}
당신은 자세한 내용은 공식 reference을 볼 수 귀하의 results
맞아요, 고칠 수는 있지만 어쨌든 작동하지 않습니다. – ErvingGoffman
@ErvingGoffman 당신은 requests.get없이이 방법을 시도 할 수 있습니까? – Sean
요청 본문이나 쿼리에 대한 문제인지 확인할 수 없습니다. 나는 당신이 세부 사항을 위해 전보 오류 출력을보아야한다고 생각한다. – Sean