对音频的支持
This commit is contained in:
@@ -59,8 +59,7 @@ if not os.path.isfile("credentials.py"):
|
|||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
from credentials import *
|
from credentials import *
|
||||||
|
logging.info("开始运行!")
|
||||||
logging.info("正常运行!")
|
|
||||||
except ImportError:
|
except ImportError:
|
||||||
logging.fatal(
|
logging.fatal(
|
||||||
"credentials配置文件出错,请删除重试")
|
"credentials配置文件出错,请删除重试")
|
||||||
@@ -159,6 +158,24 @@ def footer_image(message):
|
|||||||
final_text = message.chat.title
|
final_text = message.chat.title
|
||||||
return final_text
|
return final_text
|
||||||
|
|
||||||
|
def uploadfile(caption,filename, mimetype):
|
||||||
|
rmediajson = {"i": misskey_token}
|
||||||
|
files = {'file': (filename, open(filename, "rb"), mimetype)}
|
||||||
|
try:
|
||||||
|
trycount=0
|
||||||
|
mediapost = requests.post(misskey_instance+'/api/drive/files/create', timeout=10, data=rmediajson, files=files)
|
||||||
|
except:
|
||||||
|
trycount = trycount + 1
|
||||||
|
if trycount >= 3:
|
||||||
|
logging.info(f"服务器超时")
|
||||||
|
else:
|
||||||
|
mediapost = requests.post(misskey_instance+'/api/drive/files/create', timeout=10, data=rmediajson, files=files)
|
||||||
|
media_id_list=[]
|
||||||
|
media_id_list.append(json.loads(mediapost.text)["id"])
|
||||||
|
rjson = {'text': caption, "localOnly": False, "visibility": misskey_visibility,
|
||||||
|
"fileIds": media_id_list, "viaMobile": False, "i": misskey_token}
|
||||||
|
logging.info(f"上传成功")
|
||||||
|
return rjson
|
||||||
|
|
||||||
'''
|
'''
|
||||||
#Posting
|
#Posting
|
||||||
@@ -291,7 +308,21 @@ def get_video(message):
|
|||||||
status=caption, media_ids=media_id, visibility=mastodon_visibility)
|
status=caption, media_ids=media_id, visibility=mastodon_visibility)
|
||||||
logging.info(f"Posted: {posted['uri']}")
|
logging.info(f"Posted: {posted['uri']}")
|
||||||
|
|
||||||
|
@bot.channel_post_handler(content_types=["audio"])
|
||||||
|
def get_audio(message):
|
||||||
|
logging.info(f"New {message.content_type}")
|
||||||
|
caption = footer_image(message)
|
||||||
|
|
||||||
|
fileID = message.audio.file_id
|
||||||
|
logging.info(f"Audio ID {fileID}")
|
||||||
|
|
||||||
|
file_info = bot.get_file(fileID)
|
||||||
|
downloaded_file = bot.download_file(file_info.file_path)
|
||||||
|
with open("tmp_audio", "wb") as tmp_audio:
|
||||||
|
tmp_audio.write(downloaded_file)
|
||||||
|
rjson = uploadfile(caption, "tmp_audio", "audio/mp3")
|
||||||
|
posted = requests.post(misskey_instance + "/api/notes/create", json=rjson)
|
||||||
|
logging.info(f"发布帖子成功")
|
||||||
'''
|
'''
|
||||||
Finally run tg polling
|
Finally run tg polling
|
||||||
'''
|
'''
|
||||||
|
|||||||
Reference in New Issue
Block a user