feat: ajout du lien dans la liste
This commit is contained in:
21
hoarder.py
21
hoarder.py
@@ -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:
|
||||||
|
|||||||
Reference in New Issue
Block a user