Version 2.0.1 - Changement de l'API des Lyrics

This commit is contained in:
2024-02-06 17:59:17 +01:00
parent a51c027985
commit 0b32b28b7f
8 changed files with 299 additions and 1029 deletions

View File

@ -19,8 +19,8 @@ const markdownit = require("markdown-it")({
typographer: true
})
const Genius = require("genius-lyrics");
const GClient = new Genius.Client("OHOV9c0B4uuyfWTK2w2YRliC9iyPjjF2Kk6ijCtZ2RtqfkZ2JpntnO2fwraF1A5h");
const Lyrics = require('song-lyrics-api');
const lyrics = new Lyrics();
module.exports.WebServer = class {
@ -479,26 +479,13 @@ function IOConnection(io) {
})
PostRequest("LYRICS", async (data) => {
const searches = await GClient.songs.search(data);
if(!searches) {
lyrics.getLyrics(data)
.then((response) => {
PostAnswer("LYRICS", response[0].lyrics)
})
.catch((error) => {
PostAnswer("LYRICS", null)
return
}
const firstSong = searches[0];
if(!firstSong) {
PostAnswer("LYRICS", null)
return
}
const lyrics = await firstSong.lyrics();
if(!lyrics) {
PostAnswer("LYRICS", null)
return
}
PostAnswer("LYRICS", lyrics)
})
})

View File

@ -8,9 +8,9 @@ const cgu = `
<br>
<p>En utilisant Subsonics, vous bénéficiez du droit d'accès au service et de l'écoute du contenu. Cependant, veuillez noter que Raphix n'est pas tenu de fournir la provenance ni l'autorisation d'exploitation des musiques par les ayants droits. Il vous incombe donc d'obtenir les autorisations nécessaires des ayants droits pour écouter le contenu.</p>
<br>
<p>Les paroles fournies sur ce site sont obtenues auprès de Genius (c).</p>
<p>Les paroles fournies sur ce site sont obtenues auprès de Deezer (c).</p>
<br>
<p>En utilisant Subsonics, vous acceptez de respecter les conditions d'utilisation de Genius (c) et de ne pas utiliser les paroles à des fins commerciales.</p>
<p>En utilisant Subsonics, vous acceptez de respecter les conditions d'utilisation de Deezer (c) et de ne pas utiliser les paroles à des fins commerciales.</p>
<br>
<p>En utilisant Subsonics, vous acceptez de ne pas utiliser le bot pour diffuser des contenus illégaux, violents, haineux, discriminatoires, ou à caractère sexuel.</p>
<br>
@ -129,7 +129,7 @@ function oobeStep2() {
</div>
<div class='oobe-line'>
<span class="oobe-wh"><i class="fa fa-microphone-lines icon"></i></span>
<p>Appuyez sur ce bouton pour afficher les paroles - <span class='oobe-ctrl'>Ctrl + Click</span> Recherche n'importe quelles paroles sur Genius.</p>
<p>Appuyez sur ce bouton pour afficher les paroles - <span class='oobe-ctrl'>Ctrl + Click</span> Recherche n'importe quelles paroles sur Deezer.</p>
</div>
<div class='oobe-line'>
<span class="oobe-wh"><i class="fa fa-phone-slash icon"></i></span>

View File

@ -323,8 +323,9 @@ lyrics.addEventListener('click', (e) => {
})
function showLyrics(title) {
title = title.replace(/\(.*?\)/g, "").replace(/\[.*?\]/g, "").trim()
post("LYRICS", title).then((res) => {
if(!res) {
if(!res || res.error) {
const modal = new ModalComponent({"title": "Paroles" , "width": "50%", "closable": true})
modal.setContent(`
<p class="lyrics">Aucune paroles trouvées pour cette musique !</p>
@ -332,11 +333,14 @@ function showLyrics(title) {
modal.show()
} else {
const lyricsArray = new Array()
for(var line of res.split("\n")) {
for(var line of res.lyrics.split("\n")) {
// Remove the line if it's start with Paroles de la chanson
if(line.startsWith("Paroles de la chanson")) {
continue
}
if(line == "") {
lyricsArray.push("<br>")
}
@ -353,7 +357,7 @@ function showLyrics(title) {
}
lyricsArray.push("<br><br><a href='https://genius.com' target='_blank' class='lyrics-info wh'>Distribué par Genius ©️</a>")
lyricsArray.push("<br><br><a href='https://deezer.com' target='_blank' class='lyrics-info wh'>Distribué par Deezer ©️</a>")
setTileActive(null)