feat: ajout du lien dans la liste

This commit is contained in:
MrRaph_
2024-12-03 14:21:18 +01:00
parent 2abb14e7c0
commit f91f0d229a

View File

@@ -78,14 +78,7 @@ class HoarderForwarder(Plugin):
hoarder_url = self.config["hoarder_url"] hoarder_url = self.config["hoarder_url"]
api_key = self.config["hoarder_api_key"] api_key = self.config["hoarder_api_key"]
create_endpoint = f"{hoarder_url}/api/trpc/bookmarks.createBookmark" create_endpoint = f"{hoarder_url}/api/v1/bookmarks"
self.log.info(hoarder_url)
#title = await self.get_page_title(url) # Récupère le titre de la page
if not hoarder_url or not api_key:
self.log.warning("L'URL ou la clé API de Hoarder n'est pas configurée.")
return
headers = { headers = {
"Authorization": f"Bearer {api_key}", "Authorization": f"Bearer {api_key}",
@@ -93,20 +86,18 @@ class HoarderForwarder(Plugin):
"Accept": "application/json", "Accept": "application/json",
} }
payload = { payload = {
"json": {
"type": "link", "type": "link",
"url": url "url": url
} }
}
try: try:
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as session:
async with session.post(create_endpoint, json=payload, headers=headers) as response: async with session.post(create_endpoint, json=payload, headers=headers) as response:
if response.status == 200 or response.status == 201 or response.status == 204: if response.status == 200 or response.status == 201 or response.status == 204:
data = await response.json() data = await response.json()
bookmark_id = data[0]["result"]["data"]["json"]["id"] bookmark_id = data["id"]
await self.send_message(evt, f"Bookmark créé avec succès : {bookmark_id}", in_thread=False) await self.send_message(evt, f"Bookmark créé avec succès : {bookmark_id}", in_thread=False)
self.add_bookmark_to_list(bookmark_id, hoarder_list) await self.add_bookmark_to_list(evt, bookmark_id)
return bookmark_id return bookmark_id
else: else:
await self.send_message(evt, f"Erreur lors de la création du bookmark : {response.status}", in_thread=False) await self.send_message(evt, f"Erreur lors de la création du bookmark : {response.status}", in_thread=False)
@@ -202,7 +193,7 @@ class HoarderForwarder(Plugin):
api_key = self.config["hoarder_api_key"] api_key = self.config["hoarder_api_key"]
list_id = await self.ensure_list_exists(evt, self.config["hoarder_list_name"]) list_id = await self.ensure_list_exists(evt, self.config["hoarder_list_name"])
add_to_list_endpoint = f"{hoarder_url}/api/v1/lists/{list_id}/bookmarks" add_to_list_endpoint = f"{hoarder_url}/api/v1/lists/{list_id}/bookmarks/{bookmark_id}"
headers = { headers = {
"Authorization": f"Bearer {api_key}", "Authorization": f"Bearer {api_key}",
@@ -210,10 +201,6 @@ class HoarderForwarder(Plugin):
"Accept": "application/json", "Accept": "application/json",
} }
payload = {
"bookmarkId": bookmark_id
}
try: try:
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as session:
async with session.put(add_to_list_endpoint, headers=headers) as response: async with session.put(add_to_list_endpoint, headers=headers) as response: