Scopo dello strumento Hub Chat
Lo strumento Hub Chat è un client diagnostico live Direct Connect solo amministratore. Si collega agli hub pubblici NMDC, NMDCS, ADC e ADCS con identità controllata, mantiene il socket dell'hub in un Session Worker in background, trasmette gli eventi dell'hub in entrata al browser, elenca gli utenti in linea, registra richieste e risposte di protocollo non elaborate e consente a un amministratore di inviare messaggi di chat pubblici quando l'hub consente alla classe utente corrente di parlare.
Usalo quando devi confermare cosa invia effettivamente un hub durante l'accesso, verificare se un hub accetta chat ospiti o registrate, ispezionare MOTD e gli avvisi dei bot dell'hub, testare l'accesso con nome utente/password, confrontare i requisiti dell'hub con il profilo pubblico o risolvere i problemi relativi al motivo per cui un hub appare online ma blocca comunque gli utenti reali.
Persistenza della sessione e aggiornamenti in tempo reale
Quando ti connetti, l'applicazione crea un ID di sessione e lo mantiene nell'URL della pagina. L'aggiornamento della pagina dovrebbe riprendere la stessa sessione di chat invece di ricominciare da capo. Gli aggiornamenti in tempo reale utilizzano una connessione in streaming ove possibile, con il polling dello stato come fallback, quindi le linee di chat, le modifiche all'elenco degli utenti, i frame grezzi e le modifiche allo stato possono essere visualizzati senza un aggiornamento completo della pagina.
La chiusura di una sessione richiede all'operatore di disconnettersi dall'hub e di mantenere la trascrizione disponibile per la revisione. Reconnect utilizza la destinazione, il protocollo, il nickname, l'impostazione della password e i valori del profilo avanzato salvati per avviare un nuovo socket preservando la stessa sessione diagnostica lato browser.
Campi di connessione
- Host o indirizzo: inserisci un nome host pubblico, un indirizzo IP o l'URL completo dell'hub come
dchub://example.com:411Onmdcs://hub.example.com:4111. Quando un URL dell'hub include un protocollo e una porta, il modulo deve utilizzare tali valori per i campi del protocollo e della porta TCP. - Protocollo: Scegli il protocollo Direct Connect da testare. I protocolli sicuri come NMDCS e ADCS eseguono un handshake TLS prima dell'accesso all'hub.
- Porta TCP: Override opzionale. Lasciarlo vuoto quando l'impostazione predefinita del protocollo è corretta oppure immettere l'esatta porta dell'hub pubblicizzata quando l'hub utilizza una porta personalizzata.
- Nome utente/soprannome: utilizza un nickname dell'hub registrato durante il test dell'accesso all'account oppure lascialo vuoto per generare un'identità temporanea come
user-123456. - Password dell'hub: utilizzato solo quando l'hub richiede una password per il nickname selezionato. Le password vengono oscurate dalle trascrizioni grezze in uscita e non devono apparire negli eventi in streaming.
Profilo cliente avanzato
Il profilo avanzato controlla i valori di identità che un client DC++ normalmente espone a un hub: dimensioni di condivisione false, slot di caricamento, conteggi di hub connessi, conteggi di hub registrati, conteggi di hub dell'operatore, porte aperte opzionali, descrizione, e-mail, tag client e flag di supporto NMDC.
Questi valori sono importanti perché molti hub limitano gli ospiti in base a condivisione minima, numero di slot, numero di hub, tag client, visibilità IP, classe di registrazione o supporto TLS. Il client di chat non dovrebbe inviare BotINFO per impostazione predefinita, perché si tratta di un normale client di chat diagnostico, non di un bot. Abilita BotINFO solo quando si testa intenzionalmente il comportamento in stile bot.
Riferimento al campo del profilo avanzato
Utilizza il profilo avanzato per riprodurre ciò che un vero client DC++ riporterebbe durante il login. Questi valori vengono annunciati all'hub solo per la sessione diagnostica corrente; non pubblicano file, non aprono porte firewall né modificano il record dell'hub pubblico.
| Campo | Cosa invia | Come usarlo |
|---|---|---|
| Condivisione falsa | Dimensioni della condivisione inviate all'hub in byte. | Utilizzo 0 quando desideri testare le restrizioni sulla condivisione minima. Utilizzare un valore byte realistico quando si desidera che l'utente diagnostico assomigli a un normale client. Questo valore è solo una statistica riportata e non espone i file locali. |
| Hub normali | Numero di hub normali riportati nel tag client. | Gli hub NMDC spesso lo leggono come il primo valore nel H: parte del tag cliente. Aumentalo solo durante il test delle restrizioni max-hub o multi-hub. |
| Hub registrati | Numero di hub registrati riportati nel tag client. | Usalo per imitare un client registrato su altri hub. Alcuni hub lo utilizzano per decidere se un profilo utente sembra normale. |
| Hub operatori | Numero di hub operatore riportati nel tag cliente. | Utilizzalo quando testi il modo in cui un hub reagisce ai metadati del client in stile operatore. Non utilizzarlo per impersonare privilegi; sono solo metadati riportati dal cliente. |
| Slot aperti | Slot di caricamento aperti segnalati all'hub. | Molti hub richiedono almeno uno slot aperto. Imposta questo valore basso per testare le restrizioni sugli slot o utilizza un valore realistico quando provi a chattare normalmente. |
| Porta TCP | Porta di ascolto TCP opzionale esposta nelle informazioni del client ADC. | Lascia vuoto a meno che non si stiano testando i metadati di connettività in stile ADC. Compilando questo campo non si apre effettivamente quella porta sul server. |
| Porta UDP | Porta di ascolto UDP opzionale esposta nelle informazioni del client ADC. | Utilizzare solo per convalidare il modo in cui un hub ADC/ADCS legge le informazioni sulla funzionalità UDP. Lascia vuoto per la diagnostica ordinaria della chat. |
| TLS Porto | Porta di ascolto TLS facoltativa esposta nelle informazioni del client ADC. | Da utilizzare durante il test dei metadati del profilo client protetto. Questo è diverso dal protocollo di connessione dell'hub; NMDCS / ADCS controlla comunque se il socket stesso utilizza TLS. |
| Descrizione del cliente | Descrizione facoltativa esposta all'hub come descrizione del client di diagnostica. | Mantienilo breve e riconoscibile, ad esempio PWiAM++ V:0.0.1 o una nota di prova chiara. Non inserire qui segreti, note private o credenziali. |
| E-mail del cliente | Campo email facoltativo esposto agli hub NMDC. | NMDC $MyINFO può includere un campo email. Lascialo vuoto a meno che non stai testando una regola che dipende dai metadati dell'e-mail ed evita di utilizzare un indirizzo personale privato. |
NMDCS upporto Bandiere
Il campo NMDCS upport Flags sceglie il $Supports funzionalità inviate durante l'accesso NMDC o NMDCS. Questi flag indicano all'hub quali funzionalità facoltative NMDC comprendono il client. Possono influenzare l'ordine di accesso, il comportamento degli elenchi di utenti, gli elenchi di bot, la visibilità IP e se l'hub tratta la connessione come un normale utente o un bot.
| Bandiera | Senso | Raccomandazione |
|---|---|---|
NoHello | Segnala il supporto per una sequenza di saluto ridotta in modo che l'hub non debba inviare informazioni di saluto duplicate. | Mantieni abilitato per gli hub NMDC moderni a meno che non si stia eseguendo il debug di un flusso di accesso legacy NMDC. |
NoGetINFO | Segnala che il cliente può evitare extra $GetINFO richieste per ogni utente. | Mantieni abilitato per ridurre il traffico dell'hub non necessario. |
UserIP2 | Consente all'hub di inviare frame di mappatura da utente a IP nel nuovo stile NMDC. | Mantieni abilitato quando è necessario che la tabella Utenti online mostri le informazioni IP restituite dall'hub. |
BotList | Consente all'hub di identificare gli account bot separatamente dagli utenti normali. | Mantieni abilitato in modo che i bot di servizio, i bot di sicurezza, i bot di feed e i bot hublist possano essere visualizzati con icone specifiche del bot. |
FailOver | Segnala il supporto per lo spostamento dell'hub o il comportamento di failover quando un hub reindirizza gli utenti a un altro indirizzo. | Mantieni abilitato in modo che le risposte di spostamento forzato siano più facili da interpretare nelle risposte grezze. |
NickRule | Consente all'hub di inviare regole di nickname come lunghezza minima, lunghezza massima o caratteri non consentiti. | Mantieni abilitato durante il test dei nickname generati o dei nickname registrati rispetto alle regole dell'hub. |
HubURL | Consente all'hub di richiedere o pubblicizzare le informazioni sull'URL dell'hub durante l'accesso. | Mantieni abilitato perché alcuni hub in stile Verlihub richiedono informazioni sull'URL prima di completare l'accesso. |
ExtJSON2 | Segnala il supporto per i metadati JSON estesi quando un hub espone dati NMDC più ricchi. | Mantieni abilitato quando vuoi che il client di diagnostica accetti metadati moderni da hub compatibili. |
BotINFO | Segnala il supporto delle informazioni in stile bot e può far sì che alcuni hub considerino la connessione come un client bot automatizzato. | Lasciare perdere il normale comportamento del client di chat. Abilitarlo solo quando si testa deliberatamente la gestione dei bot, perché può modificare le restrizioni dell'hub, la classificazione dei ruoli o il comportamento di accesso. |
Preset pratici
- Test di chat normale: utilizza una condivisione falsa realistica, almeno uno slot aperto, conteggi hub normali, il tuo nickname/password registrato quando disponibile e mantieni
BotINFOdisabilitato. - Prova di restrizione: Usa condivisione falsa
0, slot bassi e conteggi hub bassi quando si desidera intenzionalmente che l'hub spieghi le restrizioni relative a condivisione minima, slot o classe. - Test di amministrazione dell'hub registrato: utilizzare il nickname e la password dell'hub configurati per l'hub o il pinger, statistiche client realistiche e i normali flag di supporto. Questo è il modo migliore per verificare se le restrizioni degli ospiti nascondono MOTD, cronologia chat o elenchi di utenti.
- Test del comportamento dei bot: Abilitare
BotINFOsolo durante il test di regole specifiche del bot. Se la chat viene limitata o l'utente appare come un bot, disabilita BotINFO e riconnettiti.
Chat dal vivo, registri grezzi e utenti
Il pannello della chat mostra lo stato della connessione, i blocchi MOTD, gli avvisi dei bot dell'hub, i blocchi della cronologia, i messaggi di restrizione, la chat principale e i messaggi accettati dall'hub. Un messaggio che appare localmente non è sufficiente; la chat pubblica è considerata significativa solo quando il lavoratore scrive il frame del protocollo e l'hub risponde o lo trasmette.
Il pannello di risposta non elaborata mostra i frame di protocollo in entrata dall'hub, incluse stringhe di blocco, supporti, nome dell'hub, comandi di spostamento forzato, richieste di password, frame di elenchi di utenti, messaggi bot, testo MOTD e avvisi di restrizione. Il pannello delle richieste non elaborate mostra i frame del protocollo in uscita con i segreti oscurati, in modo da poter confermare esattamente ciò che ha inviato il client diagnostico.
Il pannello Utenti online mostra gli utenti dell'hub analizzati in una fitta tabella ricercabile. Gli operatori ordinano prima degli utenti normali, quindi i nickname ordinano in modo naturale. Filtri di ricerca per nickname nel browser. La descrizione e il tag client sono campi separati, la condivisione viene visualizzata come B/KB/MB/GB/TB durante l'ordinamento per byte e i campi IPv4/IPv6 possono mostrare una bandiera del paese quando l'hub fornisce informazioni sufficienti.
Icone di ruolo blu, argento e oro
L'elenco degli utenti della chat dal vivo utilizza la stessa lingua dei ruoli delle pagine del profilo dell'hub. Un robot argentato contrassegna un bot o un utente del servizio, ad esempio un bot di feed, un bot di sicurezza, un bot hublist, un bot dell'orologio o un account di annunci automatizzati. Una chiave dorata contrassegna un operatore o un account privilegiato. Un'icona utente blu viene utilizzata sugli snapshot del profilo hub per le voci utente registrate o riconosciute quando l'hub espone tale ruolo. Mantenere gli utenti bot in argento evita di confondere gli account dei servizi automatizzati con i normali utenti riconosciuti.
Errori e restrizioni comuni
- Chat principale disabilitata: l'hub ha accettato la connessione, ma la classe temporanea non può scrivere nella chat pubblica. Utilizza un nickname e una password registrati se prevedi l'accesso alla chat.
- Sequenza di accesso non valida: l'hub ha rifiutato i comandi inviati prima del completamento della convalida del nickname. Riconnettiti e attendi lo stato di accesso prima di inviare la chat.
- Movimento forzato: l'hub ha reindirizzato il client a un altro host o porta. Utilizza la destinazione restituita dall'hub se il reindirizzamento è intenzionale.
- Password richiesta: immettere la password dell'hub registrata per quel nickname e riconnettersi.
- N. MOTD: Alcuni hub inviano MOTD solo agli utenti registrati, solo dopo la convalida della password o solo dopo l'accettazione del profilo cliente previsto.
- Nessun elenco utenti: alcuni hub nascondono gli elenchi di utenti agli ospiti, inviano i dati degli utenti lentamente o richiedono flag di supporto specifici.
- Mancata corrispondenza del protocollo: Semplice NMDC rispetto a una porta TLS o NMDCS rispetto a una porta di testo normale, può apparire come un timeout o una connessione filtrata.
- Chiuso o filtrato: il socket è stato chiuso prima del completamento dell'accesso, in genere a causa di filtri firewall, divieti, requisiti errati o restrizioni sul lato hub.
Sicurezza operativa
Al termine, chiudere le sessioni in modo che l'hub non mantenga un utente fantasma online. Non testare ripetutamente lo stesso hub pubblico; ruotare gli hub con requisiti bassi dal live hublist durante il debug. Lo strumento blocca le reti private e riservate, limita le trascrizioni, limita le sessioni, oscura le password e collega l'attività del browser alla pulizia dei lavoratori.
Riferimento alle icone
| Icona | Etichetta | Cosa fa |
|---|---|---|
| Chat dell'Hub | Contrassegna il pannello della chat dal vivo in cui vengono visualizzati gli eventi di connessione, MOTD, cronologia, restrizioni e messaggi di chat accettati. | |
| Utenti in linea | Contrassegna la tabella utente ricercabile e ordinabile restituita dalla sessione hub. | |
| Inviare | Inviare | Invia il messaggio di chat pubblica digitato tramite il Session Worker quando l'hub ha accettato l'accesso. |
| Riconnettiti | Riconnettiti | Avvia un nuovo socket per le stesse impostazioni di sessione salvate dopo uno stato di chiusura, errore o obsoleto. |
| Ricomincia | Riavvia la sessione | Richiede un arresto controllato e avvia un nuovo lavoratore/socket per la stessa sessione salvata mantenendo il contesto della sessione diagnostica visibile. |
| Vicino | Chiudi sessione | Accoda una disconnessione controllata in modo che l'hub non mantenga in linea il nickname di diagnostica. |
| Cerca utenti | Filtra la tabella Utenti online per nickname senza riconnettersi o aggiornare la pagina. | |
| Pannello di commutazione | Comprime o espande la chat o il pannello degli utenti mantenendo visibile almeno un pannello principale. | |
| Robot d'argento | Contrassegna un bot, un feed, una sicurezza, un orologio, hublist o un altro account di servizio automatizzato. | |
| Chiave d'oro | Contrassegna un operatore hub, un moderatore o un account privilegiato. | |
| Utente Blu | Utilizzato sugli snapshot del profilo hub per le voci utente registrate o riconosciute quando l'hub espone tale ruolo. | |
Raw Hub Response | Protocollo in arrivo | Mostra i frame del protocollo e il testo ricevuti dall'hub, inclusi MOTD, le restrizioni e i frame dell'elenco utenti. |
Raw Hub Requests | Protocollo in uscita | Mostra i frame di protocollo inviati dal client di diagnostica con password e segreti oscurati. |