diff --git a/README.md b/README.md index c3d9abd..cab2654 100644 --- a/README.md +++ b/README.md @@ -1,862 +1,158 @@ -# ?? AutoBidder - Bidoo Automation Tool +# AutoBidder - Guida completa all'uso -> **Programma intelligente per automatizzare le offerte su Bidoo.com** -> Monitora le aste in tempo reale e piazza offerte precise al secondo ottimale per massimizzare le probabilità di vincita. +> AutoBidder è uno strumento desktop per Windows (WPF, .NET 8) pensato per automatizzare le offerte sul sito Bidoo.com. Questa guida descrive caratteristiche, installazione, configurazione, modalità operative, strategie avanzate, dettagli tecnici e risoluzione dei problemi. ![Version](https://img.shields.io/badge/version-2.10-blue) ![.NET](https://img.shields.io/badge/.NET-8.0-purple) -![Platform](https://img.shields.io/badge/platform-Windows-lightgrey) -![License](https://img.shields.io/badge/license-Private-red) --- -## ?? Indice - -- [Caratteristiche Principali](#-caratteristiche-principali) -- [Requisiti di Sistema](#-requisiti-di-sistema) -- [Installazione](#-installazione) -- [Guida Rapida](#-guida-rapida) -- [Modalità Operative](#-modalità-operative) -- [Funzionalità Avanzate](#-funzionalità-avanzate) -- [Impostazioni](#-impostazioni) -- [FAQ](#-faq) -- [Changelog](#-changelog) +Sommario +- Caratteristiche principali +- Requisiti di sistema +- Installazione e avvio +- Guida rapida (primi passi) +- Modalità operative: Asta Singola e Multi-Asta +- Strategie e consigli pratici +- Dettagli tecnici: Polling, Click HTTP e sincronizzazione cookie +- Impostazioni e persistenza +- Esportazione e diagnostica +- FAQ e risoluzione problemi +- Changelog sintetico --- -## ?? Caratteristiche Principali +## Caratteristiche principali +- Monitoraggio in tempo reale di singole aste o molte aste contemporaneamente +- Due modalità operative: `Asta Singola` (massima precisione) e `Multi-Asta` (monitoraggio e auto-switch) +- Polling adattivo (HTTP / WebView2 / Active) per ridurre uso di CPU e RAM +- Click HTTP diretto (reverse engineered) con sincronizzazione dei cookie dal WebView2 +- Persistenza della lista aste (`auctions.json`) e esportazione CSV delle statistiche +- UI dark theme moderna con griglia in tempo reale, dettagli asta, log e contatori -### ? Automazione Intelligente -- **Click ultra-precisi** al secondo esatto del timer -- **Polling dinamico** (20-400ms) basato sul timer dell'asta -- **Lettura diretta** delle variabili JavaScript di Bidoo -- **Multi-click paralleli** per massima affidabilità +## Requisiti di sistema +- Windows 10 (1809+) o Windows 11 +- .NET 8.0 Runtime +- RAM: 4 GB (consigliati 8 GB) +- Connessione internet stabile -### ?? Due Modalità Operative +## Installazione e avvio +1. Assicurarsi di avere .NET 8.0 Runtime installato: `dotnet --version` (output: 8.0.x) +2. Clonare il repository (privato): + - `git clone https://192.168.30.23/Alby96/Mimante` +3. Costruire il progetto: + - `dotnet restore` + - `dotnet build --configuration Release` +4. Eseguire l'app: + - `dotnet run` (dalla cartella del progetto) oppure avviare `AutoBidder.exe` in `bin\\Release\\net8.0-windows` -#### ?? Modalità Asta Singola -- Monitoraggio **intensivo** di una singola asta -- Statistiche in tempo reale (click, reset, prezzo) -- Elenco completo degli utenti competitori -- Log dettagliato di ogni operazione +## Guida rapida (primi passi) +1. Avvia l'app: l'interfaccia principale mostra due pannelli (controlli a sinistra, browser WebView2 a destra). +2. Login: accedi a `bidoo.com` tramite il browser integrato (se vuoi usare il Click HTTP diretto devi essere loggato). +3. Scegli modalità: + - `Asta Singola` per concentrarti su un solo oggetto + - `Multi-Asta` per monitorare più aste e lasciare che l'app esegua auto-switch +4. Aggiungi aste (Multi-Asta): + - Metodo Automatico: vai sulla pagina Preferiti e lascia che l'app rilevi le aste + - Metodo Manuale: clicca `+ URL` o `Pagina` e incolla/aggiungi l'URL dell'asta +5. Configura impostazioni globali o per-asta (Timer Click, Min/Max Price, Max Clicks, Max Resets, Ritardo, Multi-Click) +6. Premi `Avvia` per attivare il Click Loop; il background polling rimane sempre attivo anche senza Avvia. -#### ?? Modalità Multi-Asta -- Monitoraggio **simultaneo** di tutte le aste preferite -- **Auto-switch** sull'asta con timer più basso -- Gestione **indipendente** per ogni asta: - - Impostazioni personalizzate (timer, prezzi) - - Pausa/Riprendi per-asta - - Log e statistiche separate -- Griglia in tempo reale con aggiornamenti istantanei +## Modalità operative -### ?? Interfaccia Moderna -- **Dark theme** professionale GitHub-style -- **Layout ridimensionabile** con GridSplitter -- **Visualizzazione dual-panel** (controlli + browser) -- **Indicatori visivi** di stato (verde = tua puntata, arancione = pausa) +### Asta Singola +- Ideale per oggetti di valore dove la precisione è critica. +- Monitoraggio intensivo del DOM tramite WebView2, contatori dettagliati, lista utenti e log dedicato. +- Supporta `Multi-Click` (click multipli paralleli) per aumentare probabilità in connessione instabile. +- Impostazioni consigliate per asta singola: `Timer Click` 0-1, `Multi-Click` ON, `Ritardo` 0ms. -### ?? Sicurezza -- Navigazione **limitata a Bidoo.com** -- **Blocco automatico** di link esterni -- **Validazione URL** su tutti i domini Bidoo internazionali +### Multi-Asta +- Monitoraggio simultaneo di molte aste. +- L'app punta solo sull'asta con `timer` più basso (auto-switch) per evitare concorrere contro se stessa. +- Per ogni asta è possibile impostare opzioni indipendenti (Timer Click, Min/Max Price, Pausa/Riprendi). +- Metodo manuale (URL diretto) è raccomandato per monitoraggi massivi (consumo risorse minimo). + +## Strategie consigliate +- Monitoraggio massivo (50+ aste): usa `URL Manuale`, `Timer Click` 0, limiti di prezzo bassi. +- Asta singola ad alto valore: `Timer Click` 0-1, `Multi-Click` ON, `Ritardo` 0ms. +- Caccia all'affare: `Max Price` molto basso, monitora molte aste con Timer Click 0. + +## Approfondimento tecnico + +### Polling adattivo (Dual-Track) +- Track 1 — Background Polling: esegue richieste HTTP ogni ~5s per aggiornare timer, prezzo e ultimo bidder. Mantiene uso CPU/RAM minimo. +- Track 2 — Click Loop: attivo solo dopo `Avvia`. Polling dinamico 20-400ms per aste critiche e invio dei click (HTTP diretto o WebView2 fallback). + +### Click HTTP diretto +- Al momento dell'azione, il client costruisce una GET verso l'endpoint reverse engineered di Bidoo tipo: + `GET https://it.bidoo.com/bid.php?AID=81204347&sup=0&shock=0` +- Richiede i cookie di sessione (PHPSESSID, user_token, ecc.) che vengono sincronizzati dal WebView2. +- Latenza tipica: 10-30ms (molto più veloce del click via WebView2 che può impiegare 50-100ms) +- Se il Click HTTP fallisce, l'app esegue fallback automatico con `ExecuteScript` su WebView2. + +### Sincronizzazione cookie +- Al primo `Avvia` viene letto il `CookieManager` di `CoreWebView2`, copiato in un `CookieContainer` per l'`HttpClient` utilizzato dai Click HTTP. +- I cookie sono conservati solo in memoria, mai su disco. Devono essere rinfrescati ri-effettuando il login nel WebView2 se scadono. + +## Persistenza e file locali +- Lista aste manuali salvata in: + `%AppData%\\AutoBidder\\auctions.json` +- La lista viene ricaricata automaticamente all'avvio dell'app. +- Esportazione CSV: la funzionalità `Export CSV` genera un file contenente statistiche per ogni asta (nome, ID, URL, timer, prezzo, strategy, click/resets, impostazioni per-asta). + +## Impostazioni principali +- `Timer Click` (0-8): secondo del countdown al quale si desidera effettuare il click (0 = 0.0-0.9s) +- `Max Clicks` / `Max Resets`: limiti operativi (0 = illimitato) +- `Min/Max Price`: evita puntate fuori dal range desiderato +- `Ritardo (ms)`: delay aggiuntivo prima di inviare il click +- `Multi-Click`: invia più click paralleli (utile su connessioni con jitter) + +## Interfaccia e controlli +- Pannello sinistro: controlli principali (modalità, Avvia, Pausa, Stop, aggiungi/rimuovi aste, esporta CSV) +- Pannello destro: browser integrato (WebView2) + dettagli asta quando selezionata +- Griglia aste (multi-asta): mostra Timer, Prezzo, Strategia, Clicks, Resets, Ultimo bidder +- Log in tempo reale per ogni asta con dettagli di latenza, risposta server e fallimenti + +## Diagnostica ed esportazione +- Abilita log dettagliato prima di aprire issue o per analisi locali +- Usa `Export CSV` per conservare storici e confrontare strategie +- Mantieni screenshot del pannello log per report più chiari + +## FAQ e risoluzione dei problemi +- "Non vedo Click HTTP riuscito": assicurati di essere loggato nel WebView2 e che la sincronizzazione cookie sia avvenuta (vedi log "Cookie sincronizzati (X cookie)"). Premi `Avvia` dopo il login. +- "Aste non rilevate": assicurati di essere nella pagina Preferiti per il metodo automatico oppure aggiungi gli URL manualmente. +- "Il programma non si avvia": verifica .NET 8.0 Runtime installato e che il build sia andato a buon fine. +- "Click non funzionano": verifica Timer Click, limiti di prezzo e connessione internet. Controlla se il fallback WebView è attivo nei log. + +## Avvisi e responsabilità +- L'automazione potrebbe violare i Termini di Servizio di Bidoo. L'uso è a rischio e responsabilità dell'utente. +- Non salvare credenziali su disco: l'app non memorizza login, usa il WebView2 per la sessione. +- Cookie e dati di sessione rimangono in memoria e vengono rimossi alla chiusura dell'app. + +## Changelog sintetico (ultime versioni) +- v2.10: Click HTTP diretto, sincronizzazione cookie automatica, miglioramenti prestazionali +- v2.9: Persistenza automatica, UI improvements, export CSV +- v2.8: Polling adattivo e strategie ibride + +## Supporto +- Repository privato Gitea: `https://192.168.30.23/Alby96/Mimante` +- Per problemi tecnici aprire issue nel repository privato (se abilitato) o contattare il manutentore del progetto. --- -## ?? Requisiti di Sistema - -### Minimi -- **Sistema Operativo:** Windows 10 (1809+) o Windows 11 -- **Framework:** .NET 8.0 Runtime -- **RAM:** 4 GB -- **Spazio Disco:** 100 MB -- **Connessione Internet:** Stabile e veloce - -### Consigliati -- **RAM:** 8 GB o superiore -- **Processore:** Quad-core o superiore -- **Connessione:** Fibra/ADSL (latenza < 50ms) - ---- - -## ?? Installazione - -### 1. Prerequisiti -```bash -# Scarica e installa .NET 8.0 Runtime Desktop -# https://dotnet.microsoft.com/download/dotnet/8.0 -``` - -### 2. Clone Repository (Privato) -```bash -git clone https://192.168.30.23/Alby96/Mimante -cd Mimante\Mimante -``` - -### 3. Build -```bash -dotnet restore -dotnet build --configuration Release -``` - -### 4. Esecuzione -```bash -dotnet run -# oppure avvia AutoBidder.exe dalla cartella bin\Release\net8.0-windows -``` - ---- - -## ?? Guida Rapida - -### Primo Avvio (Modalità Multi-Asta) - -1. **Apertura automatica** - ? Il programma si apre direttamente sui **Preferiti di Bidoo** - -2. **Aggiungi aste ai preferiti** - Naviga su Bidoo e clicca ? sulle aste che vuoi monitorare - -3. **Avvia monitoraggio** - Clicca **"Avvia"** ? Le aste vengono scansionate automaticamente - -4. **Seleziona un'asta** (opzionale) - Click sulla griglia ? Visualizza dettagli, log e utenti - -5. **Personalizza** (opzionale) - Imposta Timer Click, Min/Max prezzo per ogni asta - -6. **Osserva** - Il programma punta automaticamente sull'asta più vicina al momento del click - ---- - -## ??? Modalità Operative - -### ?? Asta Singola - -**Quando usarla:** -- Focus totale su **un'asta specifica** -- Massima precisione e controllo -- Analisi dettagliata della competizione - -**Workflow:** -``` -1. Click "Asta Singola" -2. Naviga all'asta su Bidoo -3. Imposta Timer Click (0-8 secondi) -4. Click "Avvia" -5. Il programma punta al secondo esatto -``` - -**Impostazioni disponibili:** -- ?? **Timer Click:** Secondo del timer per puntare (0-8) -- ?? **Max Clicks:** Limite massimo di click (0 = illimitato) -- ?? **Max Resets:** Limite di reset dell'asta (0 = illimitato) -- ?? **Min/Max Price:** Range di prezzo accettabile -- ? **Ritardo (ms):** Delay aggiuntivo prima del click -- ??? **Multi-Click:** Click multipli paralleli per affidabilità - -**Visualizzazione:** -- Contatori click/reset in tempo reale -- Prezzo corrente aggiornato -- Elenco utenti con numero puntate -- Log operazioni dettagliato - ---- - -### ?? Multi-Asta - -**Quando usarla:** -- Monitorare **10+ aste contemporaneamente** -- Puntare automaticamente sulla **più conveniente** -- Gestire più strategie simultaneamente - -**Due metodi di monitoraggio:** - -#### ??? Metodo Automatico (Preferiti) -``` -1. Click "Multi-Asta" (già attivo di default) -2. Naviga ai Preferiti su Bidoo (auto) -3. Le aste preferite vengono rilevate automaticamente -4. Click "Avvia" -``` - -#### ??? Metodo Manuale (URL Diretti) ? RACCOMANDATO -``` -1. Click "Multi-Asta" -2. Metodo A: Click "+ URL" ? Incolla URL asta - Metodo B: Click "?? Pagina" ? Aggiungi pagina corrente -3. Ripeti per ogni asta -4. Click "Avvia" -``` - -**Formati URL supportati:** -- ? `https://it.bidoo.com/asta/123456` -- ? `https://it.bidoo.com/auction.php?a=Galaxy_A26_5G_6_128_81353316` - -**Nuove Funzionalità v2.9:** -- ?? **Persistenza automatica** - Lista aste salvata e ricaricata all'avvio -- ?? **Quick Add Pagina** - Aggiungi l'asta che stai visualizzando con 1 click -- ?? **Export CSV** - Esporta statistiche complete in Excel -- ?? **Indicatore Strategia** - Vedi quale metodo usa ogni asta (HTTP/WebView/Active) - -**Vantaggi Metodo Manuale:** -- ? **Polling HTTP ultra-veloce** per aste lontane -- ?? **CPU/RAM quasi zero** (no rendering browser) -- ?? **Precisione massima** quando timer < 10s (auto-switch a WebView) -- ?? **Strategia adattiva** automatica per ogni asta - -**Strategia automatica:** -``` -1. Legge timer di tutte le aste -2. Identifica quella con timer più basso -3. Verifica limiti prezzo (se impostati) -4. Verifica se in pausa -5. Punta al momento giusto -``` - -**Griglia Aste - Colonne:** -- ?? **Asta:** Nome prodotto -- ?? **Timer:** Tempo rimanente (aggiornamento real-time) -- ?? **Prezzo:** Prezzo corrente -- ?? **Strategia:** Metodo polling corrente (?? HTTP / ?? WebView / ? Active) -- ??? **Clicks:** Tue puntate su questa asta -- ?? **Resets:** Numero di reset rilevati -- ?? **Ultimo:** Ultimo utente che ha puntato - -**Indicatori visivi:** -- ?? **Verde:** Tua ultima puntata -- ?? **Arancione:** Asta in pausa -- ?? **Blu:** Asta selezionata - ---- - -## ??? Funzionalità Avanzate - -### ?? Gestione Aste (Multi-Asta v2.9) - -#### Pulsanti Toolbar -- **?? Pagina** - Aggiungi asta corrente visualizzata nel browser -- **+ URL** - Aggiungi asta manualmente da URL -- **-** - Rimuovi asta selezionata -- **?? CSV** - Esporta statistiche complete in formato Excel - -#### Persistenza Dati -Le aste aggiunte manualmente vengono **salvate automaticamente** in: -``` -%AppData%\AutoBidder\auctions.json -``` -All'avvio, la lista viene **ricaricata automaticamente**. - -#### Export Statistiche CSV -File esportato contiene: -- Nome asta, ID, URL -- Timer corrente, Prezzo, Strategia -- Miei click, Reset, Ultimo bidder -- Impostazioni per-asta (Timer Click, Min/Max Prezzo) -- Totale bidders competitori - ---- - -### ?? Gestione Per-Asta (Multi-Asta) - -**Seleziona un'asta** dalla griglia per accedere a: - -#### Pannello Dettagli -``` -??????????????????????????????????????? -? ?? [Nome Asta] [Pausa] [Riprendi] ? -??????????????????????????????????????? -? Timer Click: [0] Min€: [10] Max€: [150] ? -??????????????????????????????????????? -? Utenti su questa asta: 5 ? -? ??????????????????????????????? ? -? ? user1 12 puntate ? ? -? ? user2 8 puntate ? ? -? ? Tu 3 puntate ? ? -? ??????????????????????????????? ? -? ??????????????????????????????????? ? -? Log asta ? -? ??????????????????????????????? ? -? ? 10:23 - Click #1 ? ? -? ? 10:24 - Reset #1 ? ? -? ??????????????????????????????? ? -??????????????????????????????????????? -``` - -#### Funzioni -- ?? **Pausa:** Stoppa temporaneamente questa asta (le altre continuano) -- ?? **Riprendi:** Riattiva l'asta -- ?? **Impostazioni:** Timer, Min/Max prezzo **solo per questa asta** -- ?? **Utenti:** Elenco ordinato per numero puntate -- ?? **Log:** Storico eventi specifico dell'asta - ---- - -### ?? Analisi Competizione - -**Griglia Utenti (Asta Singola):** -``` -???????????????????????????????????? -? Utente Puntate Ultima ? -???????????????????????????????????? -? user1 25 10:34 ? -? user2 18 10:33 ? -? Tu 12 10:35 ? ? Le tue -? user3 3 10:30 ? -???????????????????????????????????? -``` - -**Griglia Utenti Per-Asta (Multi-Asta):** -``` -???????????????????????? -? Utente Puntate ? -???????????????????????? -? user1 5 ? -? user2 3 ? -? Tu 2 ? -???????????????????????? -``` - -**Cosa puoi scoprire:** -- ?? Chi punta di più (competitor principale) -- ?? Livello di competizione sull'asta -- ? Pattern temporali delle puntate -- ?? Bot sospetti (troppi click) - ---- - -## ?? Impostazioni - -### Impostazioni Globali (Asta Singola) - -| Impostazione | Range | Default | Descrizione | -|--------------|-------|---------|-------------| -| **Max Clicks** | 0-? | 0 | Limite click totali (0 = illimitato) | -| **Max Resets** | 0-? | 0 | Limite reset asta (0 = illimitato) | -| **Min Price €** | 0-? | 0 | Prezzo minimo per puntare (0 = no limite) | -| **Max Price €** | 0-? | 0 | Prezzo massimo (0 = no limite) | -| **Timer Click** | 0-8 | 0 | Secondo del timer per click | -| **Ritardo (ms)** | 0-2000 | 0 | Delay aggiuntivo prima del click | -| **Multi-Click** | On/Off | Off | Click multipli paralleli | - -### Impostazioni Per-Asta (Multi-Asta) - -| Impostazione | Descrizione | -|--------------|-------------| -| **Timer Click** | Momento del click **solo per questa asta** | -| **Min €** | Prezzo minimo **solo per questa asta** | -| **Max €** | Prezzo massimo **solo per questa asta** | -| **Pausa/Riprendi** | Stato **solo per questa asta** | - ---- - -## ?? Controlli UI - -### Pulsanti Principali - -| Pulsante | Scorciatoia | Funzione | -|----------|-------------|----------| -| **Asta Singola** | - | Attiva modalità asta singola | -| **Multi-Asta** | - | Attiva modalità multi-asta | -| **Avvia** | - | Avvia automazione | -| **Pausa** | - | Pausa globale (tutte le aste) | -| **Stop** | - | Ferma automazione | - -### Navigazione Browser - -| Pulsante | Funzione | -|----------|----------| -| **Indietro** | Torna alla pagina precedente | -| **Aggiorna** | Ricarica la pagina corrente | -| **Vai** | Naviga all'URL inserito | - -### Ridimensionamento - -- **Pannello sinistro:** Trascina il separatore verticale ? -- **Griglia aste:** Trascina il separatore orizzontale ? (sopra dettagli) -- **Utenti/Log:** Trascina il separatore ? (tra utenti e log) - ---- - -## ?? Polling Adattivo Tecnico (Multi-Asta v2.10) - -### ?? Sistema Dual-Track: Polling + Click - -AutoBidder v2.10 utilizza un **sistema a doppio binario** per massimizzare efficienza: - -#### Track 1: Background Polling (Sempre Attivo) ?? -``` -? Attivo SEMPRE (anche senza "Avvia") -? Polling HTTP ogni 5 secondi -? Aggiorna: Timer, Prezzo, Ultimo Bidder -? Calcola strategia polling automatica -? CPU: <1% | RAM: 0MB -? NO CLICK - Solo monitoraggio -``` - -#### Track 2: Click Loop (Solo con Automazione) ? -``` -? Attivo SOLO dopo click "Avvia" -? Polling dinamico 20-400ms -? Click HTTP diretto (10-30ms latenza) -? Fallback WebView automatico -? CPU: 5-15% | RAM: 25-50MB -? CLICK ATTIVI - Puntate reali -``` - ---- - -### ? Click HTTP Diretto (Novità v2.10) - -**Tecnologia:** Reverse Engineering endpoint Bidoo - -**Come Funziona:** -1. All'avvio automazione: Sincronizza cookie da WebView2 ? HttpClient -2. Quando timer ? impostato: Invia GET a `/bid.php?AID=...&sup=0&shock=0` -3. Risposta server: `ok|155|0|0|1|0|81204347|0|0` -4. Se fallisce: Fallback automatico a click WebView - -**Performance:** -``` -Latenza: 10-30ms (vs 50-100ms WebView) ? ? 3-5x PIÙ VELOCE -RAM: ~0MB (vs 50MB WebView) ? ?? 100% RISPARMIO -CPU: <1% (vs 15% WebView) ? ?? 15x MENO CPU -``` - -**Log Esempio:** -``` -? Cookie sincronizzati (12 cookie) -?? Timer asta 81204347: 0.8s -? Click HTTP riuscito in 18ms ? ok|155|0|0|1|0|81204347|0|0 -``` - ---- - -### ?? Sincronizzazione Cookie - -**Problema:** Click HTTP necessita cookie di sessione Bidoo -**Soluzione:** Estrazione automatica da WebView2 - -**Processo:** -``` -1. Click "Avvia" ? Trigger sincronizzazione -2. Estrae cookie da webView.CoreWebView2.CookieManager -3. Crea HttpClient dedicato con CookieContainer -4. Copia tutti cookie Bidoo (PHPSESSID, user_token, dess, ecc.) -5. Usa HttpClient per tutti i click HTTP -``` - -**Sicurezza:** -- ? Cookie gestiti solo in memoria RAM -- ? Mai salvati su disco -- ? Scadenza automatica con sessione - ---- - -### ?? Strategie Polling Automatiche - -Il sistema utilizza **3 strategie** basate sul timer dell'asta: - -| Timer Asta | Strategia | Tecnologia | CPU | RAM | Polling | Precisione Click | -|------------|-----------|------------|-----|-----|---------|------------------| -| **> 30s** | ?? HTTP Headless | HttpClient + Regex | ~0% | 0 MB | 5s | Media (±500ms) | -| **10-30s** | ?? WebView Rotation | WebView2 Background | ~5% | 50 MB | 1-2s | Alta (±100ms) | -| **< 10s** | ? HTTP Click Active | HTTP Direct + Fallback | ~5% | 0 MB | 20ms | **Massima (±10ms)** | - -### Come Funziona Internamente (v2.10) - -**Fase 1: Avvio Applicazione** -``` -??????????????????????????? -? Carica aste salvate ? ? auctions.json -? Avvia Background Polling? ? HTTP ogni 5s -? Naviga ai Preferiti ? ? Se Multi-Asta -??????????????????????????? -``` - -**Fase 2: Background Polling (Sempre Attivo)** -``` -??????????????????????????? -? HTTP GET ogni 5s ? ? Parsing HTML con Regex -? Nessun rendering ? ? Estrai: Timer, Prezzo, Bidder -? CPU: <1% per asta ? ? Aggiorna cache locale -? ?? NO CLICK ? ? Solo monitoraggio dati -??????????????????????????? -``` - -**Fase 3: Click "Avvia" ? Sincronizza Cookie** -``` -??????????????????????????? -? Estrai cookie WebView2 ? ? PHPSESSID, user_token, dess -? Crea HttpClient dedicato? ? Con CookieContainer -? Avvia Click Loop ? ? MultiAuctionLoop attivo -??????????????????????????? -``` - -**Fase 4: Click Loop (Solo se Automazione Attiva)** -``` -??????????????????????????? -? Trova asta timer < X ? ? Auto-switch asta critica -? Verifica prezzi/pausa ? ? Skip se fuori range -? ? TENTATIVO 1: ? -? HTTP Click Diretto ? ? GET /bid.php?AID=... -? Latenza: 10-30ms ? ? ok|155|0|0|1|0|... -? ?? TENTATIVO 2: ? -? Fallback WebView ? ? Se HTTP fallisce -? Latenza: 50-100ms ? ? JavaScript ExecuteScript -??????????????????????????? -``` - -**Fase 5: Gestione Risposta** -``` -??????????????????????????? -? Parsing risposta HTTP ? ? ok|155|... = Successo -? Incrementa contatori ? ? MyClicks++ -? Aggiorna UI griglia ? ? Riga verde se tuo click -? Log dettagliato ? ? ? Click HTTP 18ms -??????????????????????????? -``` - ---- - -### Esempio Pratico: 50 Aste Monitorate (v2.10) - -**Composizione tipica:** -- **40 aste** con timer > 30s ? Background Polling HTTP (CPU: ~0%, RAM: 0MB) -- **8 aste** con timer 10-30s ? Background Polling HTTP (CPU: ~0%, RAM: 0MB) -- **2 aste** con timer < 10s ? Click HTTP Diretto (CPU: ~5%, RAM: 0MB) -- **1 asta** timer critico < 2s ? Fallback WebView se necessario (CPU: +10%, RAM: +50MB) - -**Risultato:** -- ? CPU Totale: ~5-15% (vs 80%+ v2.7) -- ? RAM Totale: ~50-100 MB (vs 1.5 GB+ v2.7) -- ? Click Precision: ±10ms (HTTP) / ±50ms (WebView fallback) -- ? Latenza Media Click: **18ms** (vs 75ms v2.8) - ---- - -## ?? Strategie Consigliate - -### Multi-Asta - Monitoraggio Massivo (50+ Aste) -``` -Metodo: URL Manuale -Timer Click: 0 (ultra-aggressivo) -Max Price: 15€ (solo occasioni) -Polling: Automatico (adattivo) -``` -**Perché:** Il polling HTTP consuma zero risorse finché non serve - -### Asta Singola - Oggetto di Valore Alto -``` -Timer Click: 0-1 (molto aggressivo) -Max Price: [valore massimo disposto] -Multi-Click: ON -Ritardo: 0ms -``` -**Perché:** Massima velocità su asta competitiva - -### Multi-Asta - Aste a Basso Costo -``` -Timer Click per asta: 2-3 (conservativo) -Min Price: 1€ -Max Price: 20€ -Pausa aste troppo alte -``` -**Perché:** Punta solo su occasioni convenienti - -### Multi-Asta - Caccia all'Affare -``` -Max Price molto basso (es: 10€) -Timer Click: 0 (aggressivo) -Monitora 20+ aste -``` -**Perché:** Prima o poi una scende sotto la soglia - ---- - -## ? FAQ - -### Come funziona il Timer Click? -Il **Timer Click** indica a quale **secondo** del countdown vuoi che il programma clicchi. -- **Timer Click = 0** ? Clicca tra 0.0s e 0.9s -- **Timer Click = 1** ? Clicca tra 1.0s e 1.9s -- **Timer Click = 2** ? Clicca tra 2.0s e 2.9s - -?? **Consiglio:** 0-1 per massima aggressività, 2-3 per essere conservativi - -### Perché l'asta si resetta? -Un **reset** avviene quando qualcuno vince l'asta (timer arriva a 0). Il timer riparte e l'asta continua. -Il programma **rileva automaticamente** i reset e mostra il vincitore. - -### Posso puntare su più aste contemporaneamente? -**No**, il programma (in Multi-Asta) punta solo sull'asta con **timer più basso** in ogni momento. -Questo massimizza l'efficienza evitando sprechi. - -### Cosa succede se imposto Min/Max Price? -Il programma **salta il click** se il prezzo è fuori dal range: -- Prezzo < Min ? ?? Click bloccato -- Prezzo > Max ? ?? Click bloccato -- Nel range ? ? Click eseguito - -### Come metto in pausa una singola asta? -1. Passa a **Multi-Asta** -2. **Seleziona** l'asta dalla griglia -3. Click **"Pausa"** nel pannello dettagli -4. Solo quella asta viene fermata, le altre continuano - -### Come aggiungo velocemente un'asta che sto guardando? -1. Naviga all'asta su Bidoo nel browser integrato -2. Passa a **Multi-Asta** -3. Click **"?? Pagina"** in alto a destra -4. L'URL viene pre-compilato automaticamente -5. Click **"? Aggiungi"** - -### Dove vengono salvate le mie aste? -Le aste aggiunte manualmente vengono salvate in: -``` -C:\Users\[TuoNome]\AppData\Roaming\AutoBidder\auctions.json -``` -Vengono **ricaricate automaticamente** all'avvio. - -### Come esporto le statistiche? -1. Passa a **Multi-Asta** -2. Click **"?? CSV"** in alto -3. Scegli dove salvare il file -4. Apri con Excel o qualsiasi programma CSV - -### Cosa significa "?? HTTP", "?? WebView", "? Active"? -Sono le **strategie di polling** automatiche: -- **?? HTTP** - Timer > 30s, polling HTTP leggero (background) -- **?? WebView** - Timer 10-30s, WebView in background (legacy) -- **? Active** - Timer < 10s, **Click HTTP diretto** (10-30ms latenza!) - -### Come funziona il Click HTTP? (Novità v2.10) -Quando clicchi **"Avvia"**: -1. I cookie vengono **copiati** da WebView2 ? HttpClient -2. Al momento del click, invia **richiesta GET diretta** a Bidoo: - ``` - GET https://it.bidoo.com/bid.php?AID=81204347&sup=0&shock=0 - Cookie: PHPSESSID=abc123; user_token=xyz789; ... - ``` -3. Bidoo risponde in **10-30ms** (vs 50-100ms WebView) -4. Se fallisce: **Fallback automatico** a WebView - -**Vantaggi:** -- ? **3-5x più veloce** di WebView -- ?? **Zero RAM** per i click -- ?? **15x meno CPU** - -**Svantaggi:** -- ?? Richiede **login manuale** iniziale su Bidoo (una volta) -- ?? Cookie **scadono** dopo X ore (ri-sincronizza con "Avvia") - -### Perché non vedo "Click HTTP riuscito" nei log? -Possibili cause: -1. **Non hai cliccato "Avvia"** ? Solo background polling attivo -2. **Cookie non sincronizzati** ? Fai login su Bidoo e riprova "Avvia" -3. **Timer troppo alto** ? Click HTTP si attiva solo quando timer < TimerClick -4. **Fallback WebView attivo** ? Se HTTP fallisce, usa WebView (silenzioso) - -Cerca nei log: -- ? `Cookie sincronizzati (X cookie)` ? HTTP click pronto -- ?? `Nessun cookie trovato` ? Fai login su Bidoo - -### Il Multi-Click migliora le probabilità? -**Sì!** Invia **2 click paralleli** a 20ms di distanza per compensare lag di rete. -?? Usa solo in Asta Singola su connessioni instabili. - -### Posso usare AutoBidder su più computer? -**Tecnicamente sì**, ma **non consigliato**: -- Rischio di competere contro te stesso -- Spreco di click -- Ban potenziale da Bidoo - -### È rilevabile da Bidoo? -Il programma **emula comportamento umano**: -- Usa il browser Microsoft Edge (WebView2) -- Click via JavaScript nativo -- Timing realistico - -?? **Disclaimer:** Usa a tuo rischio. Bidoo potrebbe avere sistemi anti-bot. - ---- - -## ?? Changelog - -### v2.10 (Corrente) - HTTP Click Diretto ? -- ? **Reverse Engineering Completato** - Endpoint Bidoo scoperto -- ? **Click HTTP Diretto** - Latenza 10-30ms (vs 50-100ms WebView) -- ? **Sincronizzazione Cookie** - Automatica da WebView2 -- ? **RAM/CPU Minimi** - Click senza rendering browser -- ? **Fallback Automatico** - WebView se HTTP fallisce -- ? **Logging Dettagliato** - Latenza e risposta per ogni click - -### v2.9 - Persistenza & UX Improvements -- ? **Fix validazione URL** - Supporta formato `auction.php?a=...` -- ? **Pulsante "Aggiungi Pagina Corrente"** - Quick add asta visualizzata -- ? **Persistenza automatica** - Salva/Carica lista aste in JSON -- ? **Indicatore Strategia** - Colonna che mostra HTTP/WebView/Active -- ? **Dialog UI migliorato** - Icona, dimensioni corrette, pulsanti visibili -- ? **Background Polling** - Monitoraggio continuo anche senza automazione - -### v2.8 - Hybrid Adaptive Polling -- ? **Polling HTTP Headless** per aste lontane (timer > 30s) - CPU/RAM quasi zero -- ? **Strategia adattiva** automatica basata sul timer (3 livelli) -- ? **Gestione URL manuale** - Aggiungi/Rimuovi aste singolarmente -- ? **Multi-source polling** - Combina HTTP e WebView per efficienza -- ? **Nessuna pagina Preferiti richiesta** - Monitora aste da URL diretti - -### v2.7 - Layout Verticale -- ? **Separazione verticale** Utenti/Log con GridSplitter -- ? **Margini ottimizzati** rispetto al bordo principale -- ? **MinHeight** garantito (80px) per entrambe le sezioni - -### v2.6 - UI Polish & Auto-Navigation -- ? **Margini simmetrici** tra pannelli -- ? **Navigazione automatica** ai Preferiti all'avvio (Multi-Asta) -- ? **Smart URL check** evita reload inutili - -### v2.5 - Bidders Per-Auction -- ? **Griglia utenti per-asta** con numero puntate -- ? **Layout 50/50 ridimensionabile** (Utenti | Log) -- ? **Aggiornamento real-time** quando qualcuno punta - -### v2.4 - UI Refinements -- ? **Pausa/Riprendi per-asta** separati -- ? **Visual feedback** (aste in pausa colorate) -- ? **GridSplitter ingrandito** (12px) per migliore UX - -### v2.3 - Multi-Auction Improvements -- ? **Log e bidders separati** per ogni asta -- ? **Impostazioni indipendenti** per-asta -- ? **Evidenziazione** riga verde quando è la tua puntata - -### v2.2 - Per-Auction Management -- ? **Pannello dettagli asta selezionata** -- ? **Pausa individuale** (non globale) -- ? **Impostazioni personalizzate** per ogni asta - -### v2.1 - Multi-Auction Core -- ? **Modalità Multi-Asta** implementata -- ? **Scansione automatica** aste preferite -- ? **Auto-switch** sull'asta con timer più basso -- ? **Griglia real-time** con 6 colonne - -### v2.0 - Major Refactor -- ? **Dark theme** GitHub-style -- ? **Dual-panel layout** ridimensionabile -- ? **WebView2** integrato -- ? **Sicurezza navigazione** (solo Bidoo) - -### v1.x - Initial Release -- ? **Automazione base** asta singola -- ?? **Lettura timer** da DOM -- ??? **Click automatico** al secondo target - ---- - -## ?? Sicurezza e Privacy - -### Navigazione Limitata -- ? **Solo domini Bidoo** consentiti (bidoo.com, .it, .fr, .es, .de) -- ? **Link esterni bloccati** automaticamente -- ? **Validazione URL** su ogni navigazione - -### Dati Locali -- ? **Nessun dato inviato** a server esterni -- ? **Log solo in memoria** (mai salvati su disco) -- ? **Nessun tracking** o analytics - -### Credenziali Bidoo -- ?? **Non salvate** dal programma -- ?? **Gestite da WebView2** (come Edge browser) -- ?? **Cancella cache browser** per logout completo - ---- - -## ?? Supporto - -### Problemi Comuni - -**Il programma non si avvia:** -```bash -# Verifica .NET 8.0 installato -dotnet --version -# Output atteso: 8.0.x -``` - -**Click non funzionano:** -- Verifica di essere **loggato su Bidoo** -- Controlla impostazioni **Timer Click** -- Verifica **connessione internet stabile** - -**Aste non rilevate (Multi-Asta):** -- Assicurati di essere sulla **pagina Preferiti** -- Clicca ? sulle aste per aggiungerle ai preferiti -- Clicca **"Avvia"** per avviare la scansione - -**Navigazione bloccata:** -- Stai cercando di aprire un link **non-Bidoo** -- Solo i domini Bidoo sono consentiti per sicurezza - -### Contatti - -- ?? **Email:** [Alby96] -- ?? **Issues:** Repository privato Gitea -- ?? **Git:** `https://192.168.30.23/Alby96/Mimante` - ---- - -## ?? Disclaimer - -?? **Uso a Proprio Rischio** - -Questo software è fornito "così com'è" senza garanzie di alcun tipo. -L'uso di bot/automazione potrebbe **violare i Termini di Servizio di Bidoo**. - -**Responsabilità dell'utente:** -- ? Verificare compatibilità con ToS Bidoo -- ? Usare in modo responsabile -- ? Non abusare del sistema -- ? Non creare account multipli -- ? Non utilizzare per frode - -**L'autore non è responsabile per:** -- Ban o sospensioni account Bidoo -- Perdite finanziarie -- Malfunzionamenti del software -- Uso improprio del programma - ---- - -## ?? Licenza - -**Privato** - Non redistribuire senza autorizzazione - -© 2024 Alby96. Tutti i diritti riservati. - ---- - -## ?? Conclusione - -**AutoBidder** è uno strumento potente per ottimizzare le tue strategie su Bidoo. - -### Punti di Forza -- ? **Precisione al millisecondo** nei click -- ? **Gestione multipla aste** simultanea -- ? **Controllo totale** su ogni parametro -- ? **Analisi competizione** dettagliata -- ? **Interfaccia intuitiva** e moderna - -### Usa con Saggezza -- ?? Imposta **limiti di prezzo** ragionevoli -- ?? Non puntare su **troppe aste** contemporaneamente -- ?? Monitora il **budget** speso -- ?? **Pausa** le aste diventate troppo costose - ---- - -**Buona fortuna con le tue aste! ????** - -*Happy Bidding!* \ No newline at end of file +Note tecniche per sviluppatori +- Progetto target: `.NET 8.0` (WPF + WebView2) +- Aree chiave del codice: + - `Services\\BidooApiClient.cs` — gestione Click HTTP e parsing risposte + - `Services\\AuctionMonitor.cs` — loop di polling e logica auto-switch + - `Services\\SessionManager.cs` — sincronizzazione cookie e HttpClient creation + - `Utilities\\PersistenceManager.cs` — salvataggio/ricaricamento `auctions.json` + - `ViewModels\\AuctionViewModel.cs` + XAML corrispondenti — visualizzazione e binding UI + +## Contributi +- Questo repository è privato. Per contribuire, aprire PR verso branch `main` e seguire le convenzioni del progetto. + +## Licenza +- Privato — non distribuire senza autorizzazione del proprietario. + +Buona fortuna con le aste e usa AutoBidder responsabilmente. \ No newline at end of file