【发布时间】:2021-06-23 03:32:59
【问题描述】:
我目前有一个 python/django 平台和一个不和谐社区。在我的不和谐服务器上有一个频道“公告”。我希望当在此频道中发布消息时,它会实时上传到我的网站。这是为了将其转换为通知。
目前我设法以一种简单的方式将消息从频道上传到我的网站,但不是实时的:
def discord_get_last_message_id():
message_id = 0
try:
message_id = Notification.objects.latest('id').discord_message_id
except:
pass
return message_id
def get_channel_messages():
#load last id discord message in DB
last_message_id = discord_get_last_message_id()
#Base route
route = "/channels/"+ DISCORD_CHANNEL_ANNONCES_ID +"/messages"
#if first time to DB, load just one item
if last_message_id == 0:
add = "?limit=1"
else:
add = "?after="+last_message_id
route = route + add
data,error_message = request_discord('GET',route)
print(data)
def request_discord(method,url_access,body={}):
data =''
#Call token
error_message = ''
access_token = discord_get_token()
#Call request
headers = {'Authorization': access_token}
body = body
if method=="GET":
result = requests.get(DISCORD_BASE_URI + url_access, headers=headers)
else:
result = requests.post(DISCORD_BASE_URI + url_access, headers=headers,data=body)
#Check result
if result.status_code != 200 and result.status_code != 201:
error_message = "Impossible de d'obtenir un resultat erreur: " + str(result.status_code)
else:
data = result.json()
return data,error_message
def discord_get_token():
return DISCORD_ANNONCES_CHANNEL_TOKEN
我试图了解 discord websockets 是如何工作的,但我的印象是它只能与机器人通信。
我的问题是,我应该通过哪种方式将消息从我的不和谐频道实时获取到我的网站?我必须通过机器人吗?
注意:目标是让他的消息在我的平台上发出通知。
感谢您的回答!
【问题讨论】:
标签: python django discord discord.py