2025-11-30, 00:16
  #13
Medlem
Citat:
Ursprungligen postat av Mr.RedHat
Det är regelbrott: 1.01

Se här *klick* och här *klick* samt här *klick*

Så man behöver skapa en egen server med egen kanal med egen webhook.

Men jag håller med om att det hade varit enklare. Men vill inte riskera att bryta mot regelverket. Vill heller inte outa mig själv.


Förstår det men att alla ska installera programmet och köra det mot en egen discord är bara en konstig lösning.
Citera
2025-11-30, 00:25
  #14
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av 8978wxu642
Förstår det men att alla ska installera programmet och köra det mot en egen discord är bara en konstig lösning.
Ja, jag fattar. Vilket är precis vad jag bemöter: Man slipper installera programmet. Man behöver bara en webhook.

Alltså för mig:
Backend körs antingen på min server lokalt mot en central databas där URL:erna är hashade.
Alternativt körs det på en serverless på en molntjänst (typ AWS, Vercel, GCP, Azure etc) som sköter watch och sedan skickar till de URL:erna som finns lagrade i databasen (om man nu ska kalla json för databas, men för enkelhetens skull gör vi det).

För användaren:
1. Gör steg 1 i README *klick*
2. Gå därefter in på pages som länkas i projektet på Github (tror det blir typ knarka.githubpages.com) och paste där.
3. Färdigt.


Eftersom det är envägskommunikation så kan jag inte se att det faller under kontaktannons. Det bryter heller inte mot 1.06 eftersom, även om jag skulle se URL i klartext kan jag inte koppla det till någon användare.
Det är även säkert eftersom i värsta fall (om någon kommer åt alla URL:er) så blir man drabbad av spam.
Så bara att skapa en discardable discord-server som man vill använda. Eller radera webhooken.

Behöver bara säkerställa så det inte går att backtracka till min riktiga identitet. Men jag tror detta ska gå att lösa genom att lägga in secrets i projektet (sidorna som datan skickas till).

Men jag inväntar PM från moderatorerna innan jag kör igång tänker att jag behöver feedback på designen enligt ovan.

Ska tilläggas att det kommer fortfarande vara opensource även i dessa delar. Allt ovan går att fixa med github actions (CI/CD), så det blir transparent. Enda är att Discord har ratelimit på 50 requests per sekund. Så tänker att där behöver jag lägga mindre delay (typ 100-200ms) och köa arbeten för scaling antingen sekventiellt eller parallellt.
__________________
Senast redigerad av Mr.RedHat 2025-11-30 kl. 01:16.
Citera
2025-11-30, 01:06
  #15
Medlem
WetCigarettes avatar
Väldigt bra och faktiskt användbart projekt!

Eftersom du du frågar om förslag på förbättringar har jag två. Men det är egentligen småskit och allt är bra som det är redan.

1. På exempelbilden visas inte bokstaven Ö i meddelandet. Vet du varför? Kan det fixas?

2. Jag tror det är väldigt svårt för folk som inte är insatta i systemutveckling eller liknande att få det här att funka. Kan man inte klicka ”Installera” och sen vara klar så tappar man en stor del potentiella användare. Ska kommandotolken upp så tappas 99% av användarna. Jag vet dock inte en bra lösning till detta och ser att du redan diskuterat problemet i tråden.

Återigen, kul projekt!
Citera
2025-11-30, 01:09
  #16
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av WetCigarette
Väldigt bra och faktiskt användbart projekt!

Eftersom du du frågar om förslag på förbättringar har jag två. Men det är egentligen småskit och allt är bra som det är redan.

1. På exempelbilden visas inte bokstaven Ö i meddelandet. Vet du varför? Kan det fixas?

2. Jag tror det är väldigt svårt för folk som inte är insatta i systemutveckling eller liknande att få det här att funka. Kan man inte klicka ”Installera” och sen vara klar så tappar man en stor del potentiella användare. Ska kommandotolken upp så tappas 99% av användarna. Jag vet dock inte en bra lösning till detta och ser att du redan diskuterat problemet i tråden.

Återigen, kul projekt!
Tack!

1. Vet ej. Ville bara ha en MVP snabbt (byggde detta på under två timmar). Kan kika senare. Men tror det går att lösa.

2. Se (FB) Knarka (watcher på drogakuten)
Inväntar PM, sen kör jag igång beroende på feedback från mods ang. designen så jag inte råkar göra något dumt.
Men vad som framgår i det inlägget är annars spikad design.
Citera
2025-11-30, 01:58
  #17
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av WetCigarette
1. På exempelbilden visas inte bokstaven Ö i meddelandet. Vet du varför? Kan det fixas?
Jag vet inte vad som ska fixas. Men jag vet hur jag ska fixa det. Måste bygga en API som är limited till en testkanal så jag kan mata den med fejktrådar (med åäö). För det är ett unicode-problem (kör nog utf-8 per default). Det är nog enkelt löst. Men jag behöver skapa rätt förutsättningar för mig själv för att lösa det så forumet slipper fler test-trådar från mig.

Hoppas det besvarade din fråga!
Citera
2025-11-30, 02:32
  #18
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av Mr.RedHat
För användaren:
1. Gör steg 1 i README *klick*
2. Gå därefter in på pages som länkas i projektet på Github *klick* och paste där.
3. Färdigt.
Fixade länk. Den kommer att 404 ett tag framöver (WIP). Pages blir det sista steget.

Kan även konstatera att det var många som klonade igår. Har skapat en branch för canary. Gör git pull och eventuella PR:s skickas hit. Skicka inte till main.
__________________
Senast redigerad av Mr.RedHat 2025-11-30 kl. 03:03.
Citera
2025-11-30, 04:19
  #19
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av WetCigarette
1. På exempelbilden visas inte bokstaven Ö i meddelandet. Vet du varför? Kan det fixas?
[PHP]import iconv from "iconv-lite";
const original = "Övervakat urinprov - åäö test";

// Fejka Flashback: gör om till ISO-8859-1 bytes
const isoBytes = iconv.encode(original, "latin1");

// Konvertera tillbaka som din fetch-funktion gör
const utf8 = iconv.decode(isoBytes, "latin1");

console.log("Original:", original);
console.log("Efter ISO->UTF8:", utf8);[/PHP]

Fick installera iconv-lite samt fixa lite i fetch.js för att lösa konverteringen. Ovanstående är testkoden och det verkar fungera. Kan tyvärr inte simulera det bättre än så eftersom felet låg i encoding från Flashback (ISO-8859-1) till servern(UTF-8), inte från servern till Discord. Så min nybyggda API kom inte till nytta.

Men för den som behöver köra API och testa payloads lokalt så finns nu den möjligheten:
Kod:
knarka --api
[PHP]curl -X POST http://localhost:3000/test-thread \
-H "Content-Type: application/json" \
-d '{
"title": "Fejk: övervakat urinprov, test",
"url": "https://www.flashback.org/t9999999"
}'[/PHP]

Bara att mata in testwebhook i .env.
Tänkte kunde vara bra för andra eventuella devs att veta. Kommer uppdatera dokumentationen senare. Lite trött nu

Kod:
git switch canary
git fetch
git pull
Citera
2025-11-30, 05:37
  #20
Medlem
Fast deb filer finns på Dreambox inte hos knarkare
Citat:
Ursprungligen postat av Mr.RedHat
Ifall man inte är belväm med node och hellre vill installera det som ett debianpaket och därtill får en enklare konfiguration, samt möjlighet att köra det som en daemon utan manuell konfiguration.

Helt ärligt går det nästan snabbare att fixa med ett .deb-paket än att skriva en README hur man gör allt detta manuellt. Filerna finns ju redan där.

Inte för det är raketforskning redan nu. Men fler alternativ skadar inte.
Citera
2025-11-30, 05:51
  #21
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av ibraflash
Fast deb filer finns på Dreambox inte hos knarkare


Tur att knarkare inte behöver tanka ner detta då. Hoppas snarare på att utvecklare använder och läser det så att man får konstruktiv feedback på projektet!
Citera
2025-11-30, 07:54
  #22
Moderator
vhes avatar
Citat:
Ursprungligen postat av Mr.RedHat
Fick installera iconv-lite samt fixa lite i fetch.js för att lösa konverteringen. Ovanstående är testkoden och det verkar fungera. Kan tyvärr inte simulera det bättre än så eftersom felet låg i encoding från Flashback (ISO-8859-1) till servern(UTF-8), inte från servern till Discord. Så min nybyggda API kom inte till nytta.

För att komplicera det ytterligare har jag för mig att Flashback använder olika encodings beroende på om sidan endast innehåller tecken som stöds av ISO-8859-1 eller inte. När det krävs så går det över till UTF-8.
Ingen aning om varför det är så, men det känns som något den här koden kan behöva vara medveten om. Har för mig att encoding-headern är pålitlig, i alla fall.
Citera
2025-11-30, 11:51
  #23
Medlem
Mr.RedHats avatar
Citat:
Ursprungligen postat av vhe
För att komplicera det ytterligare har jag för mig att Flashback använder olika encodings beroende på om sidan endast innehåller tecken som stöds av ISO-8859-1 eller inte. När det krävs så går det över till UTF-8.
Ingen aning om varför det är så, men det känns som något den här koden kan behöva vara medveten om. Har för mig att encoding-headern är pålitlig, i alla fall.
Hm. Tror detta bör lösa problemet.
[PhP]// fetch.js old
// Läs rå bytes
const buffer = await res.arrayBuffer();

// Konvertera ISO-8859-1 → UTF-8
const html = iconv.decode(Buffer.from(buffer), "latin1");[/php]
→
[Php]// fetch.js new
const contentType = res.headers.get("content-type") || "";
const buffer = await res.arrayBuffer();
const bytes = Buffer.from(buffer);

const isLatin1 = /charset\s*=\s*iso-8859-1/i.test(contentType);

let html;

if (isLatin1) {
html = iconv.decode(bytes, "latin1");
} else {
// Node använder alltid UTF-8 internt, så det här är korrekt
html = bytes.toString("utf8");
}
[/php]

Bra uppmärksammat!
__________________
Senast redigerad av Mr.RedHat 2025-11-30 kl. 11:54.
Citera
2025-11-30, 12:25
  #24
Medlem
Snyggt projekt.

Kommer githubben upp snart?

Eller har jag missat den i tråden lmao
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in