HexDroid IRC Welcome to HexDroid Let\'s get you set up before we start. Language Nickname Choose your IRC nickname This will be used across all default server profiles. Continue Nickname can\'t be empty Nickname contains invalid characters Nickname must be 16 characters or fewer Back Cancel Save Delete Close Done Next Skip Run Set Reset Manage Not now Copy Collapse all networks Mark all as read Search buffer Search buffer Text or sender… Search across all buffers on this network Search Settings Intro tour A quick walkthrough of the main screens and shortcuts. Appearance UI Landscape Sidebar Settings Portrait Nicklist Highlights IRC Notifications Logging Privacy IRCv3 History File transfers Font size Colourise nicks My nick colour Auto Custom Pick colour Reset Enable mIRC colours Enable ANSI colours Shrink ASCII/ANSI art Show topic bar Show timestamps Timestamp format (Java) Hide MOTD on connect Hide join/part/quit messages Hide away/back messages Coloured channel events Hide topic on entry Show network/chans by default Show nicklist by default Highlight on nick Extra highlight words (one per line) Compact mode Network tabs Show networks as tabs instead of a tree. Network bar above input Show channel switcher at the bottom of the chat. Side pane nicklist Show the nicklist as a resizable side pane instead of a popup. When enabled, the nicklist toggle acts as a persistent show/hide. Ignore list Hide messages and DCC offers from specific nicks (per network). Quit message Part message Auto-reconnect Reconnect interval (seconds) How often to retry when the connection drops. Seconds Auto-connect on startup Rejoin on kick Automatically rejoin a channel after being kicked. A second kick on the same channel within 60 seconds is not rejoined, to avoid loops against +i/+k/+b modes. Enable notifications Highlight notifications Private message notifications Show connection status notification Sound on highlight Vibrate on highlight Enable logging Log server buffer Log folder Choose folder Retention days 0 = keep forever Keeping logs forever (auto-delete off) Max scrollback lines History fetch limit Number of messages to request per channel on join (CHATHISTORY LATEST). Set to 0 to disable. Messages Count fetched history as unread Trigger notifications for fetched history Download folder Incoming port min Incoming port max Keep the connection alive Enable DCC Open app settings Battery optimization list Theme Dark Light System Open Sans Inter Monospace Custom font file… Chat font style Regular Bold Italic Bold + Italic Vibration intensity Low Medium High Nicklist %1$s • %2$d users Not in a channel Disconnected Type a message… Channel tools Topic New topic Kick / Ban Nick Reason Duration e.g. 1d, 2h; 0 is usually permanent Kick Ban Kick+Ban Networks Connect Disconnect Edit Add network Auto-connect Edit network Add network Name Host Port Use TLS (SSL) Allow invalid certificates Pinned certificate fingerprints (TOFU) TOFU pinning only engages when \"Allow invalid certificates\" is on. The fingerprints below are kept for reference; the current connection is verified by the system CA chain instead. Reset & re-pin (clears all) STS policy active This server published a Strict Transport Security policy: connections are forced onto TLS and certificate errors cannot be bypassed until the policy expires or the server withdraws it. Forget STS policy for this host Retry Trust this server too (round-robin DNS) Nickname Alt nickname Username Real name Your networks Tap + to add a server, or edit the ones already here. HexDroid ships with a few defaults. Connect Tap Connect to open a connection. You can have multiple networks connected at once. Buffer list This panel lists every server, channel, and private message you have open. Swipe or tap the ☰ button to show it. Tap any item to switch to it Send messages Type here to chat. Slash commands work too: /join #channel, /msg nick text, /part, /whois nick, /me action text, and more. More actions This menu reaches channel list, file transfers, ignore list, network settings, and more. It also shows channel mode and topic management when you\'re an op. Appearance & settings Choose a theme, adjust font size, tweak notification sounds, privacy options, and much more. Changes apply instantly. File transfers (DCC) Enable DCC to send and receive files directly between users. If you\'re behind a router, Passive DCC avoids port-forwarding headaches. SDCC is also supported. Send a file Enter the target nick, then pick a file from storage. Incoming DCC offers also arrive here, accept or reject them from notifications. Need help? Connect to AfterNET and join #HexDroid for support, feature requests, or just to chat with other HexDroid users. AfterNET isn\'t in your list yet: tap Add AfterNET to add it, then connect and join #HexDroid for support. Add AfterNET Replay this tour You can run the walkthrough again any time from Settings → About. Tap Done to finish. About File transfers Ignore list Channel list English Deutsch Español Français Italiano Nederlands Polski Português Русский Türkçe العربية 日本語 한국어 中文 Advanced IRCv3 caps Basic IRCv3 features enabled by default. Switch on to see advanced options. Bouncer caps Enable DCC DCC send mode Send file Target nick Pick file to send DCC Chat Start DCC CHAT Incoming chat offers Incoming file offers No chat offers yet. No file offers yet. Accept Reject Resume Resuming from %1$s %1$s partially downloaded. resume? Accept & Open Active transfers No transfers in progress. Share file Tap to mention IRC Connection IRC Highlights (Silent) IRC Highlights IRC Private Messages DCC Requests Incoming DCC chat from %1$s Tap to open or use Transfers to accept/reject Incoming file from %1$s DCC complete %1$s saved to %2$s Open Transfers %1$s is typing… %1$s and %2$s are typing… Several people are typing… Send typing indicators Let others see when you are composing a message (draft/typing). Disabled by default for privacy. Show others\' typing indicators Display an indicator when someone else is composing a message in a channel or query. Channel renamed from %1$s to %2$s %1$s reacted with %2$s %1$s removed reaction %2$s History available for Network Name Host Port Nickname Alternate Nick Username (ident) Username For bouncer profiles, this is your login name on the bouncer Real Name Use TLS Allow insecure plaintext Connect on app start Show in channel switcher Auto-reconnect on disconnect Bouncer Mode Bouncer type None / unspecified soju (user/network@clientid) ZNC (user@clientid/network) Generic (user/network) Network name (optional) Which upstream network on the bouncer this profile targets (e.g. \"afternet\", \"libera\"). Combined with the bouncer username field above and, depending on which auth method you choose, in SASL or the PASS line. Client ID (optional) A short identifier for this device, e.g. \"phone\" or \"hexdroid\". Enables per-client buffers and history when the bouncer supports it (ZNC clientbuffer, soju per-client history). Leave blank to share a single buffer across all clients. Server password (PASS) Enable SASL Mechanism Username (authcid) Password Recommended for bouncers (leave the username field blank to use the bouncer username from the General section above.) Certificate format PEM (.pem/.crt/.cer) CRT + KEY (.crt/.key) PKCS#12 (.p12/.pfx) Key password (if encrypted) Encoding Delay before commands (seconds) Wait this many seconds after connecting before running commands Service auth command e.g., /msg NickServ IDENTIFY password One command per line. Append ;wait N to pause N seconds after that line, e.g. /msg NickServ identify pass ;wait 3 No network selected Undo remove Selected Add to favourites Remove from favourites Drag to reorder Insecure connection blocked Local network access required Connecting to {0} requires the Local Network permission. This is a new Android 17 requirement for connecting to servers on your local network (home network, bouncer, etc.). Grant permission Plaintext IRC connections are not encrypted and can expose your messages and password. To connect to %1$s without TLS, you must explicitly allow insecure plaintext connections for this network. Allow & Connect Reconnect Channels Search channels / topic Fetch current modes Key / password Max users Message Channel Nick or host mask Bans Quiets Except Invex Text formatting Send message User list Drag to reorder Clear all Channel list File transfers Settings Networks System info IRCop tools About Reconnect Disconnect Exit Launch scripts Edit topic Jump to unread Scroll to bottom Close %1$s Cancel reply Encryption configured (%1$s, %2$s) Upload file to server Reply to %1$s Delete message Removes it for everyone via the server Copy messages… Select multiple messages to copy K-line G-line D-line Z-line Shun Kill SAJoin SAPart WALLOPS GLOBOPS LOCOPS ADMIN MOTD Links Uptime Nick to ignore No ignored nicks. No networks configured yet. Add Remove Export backup Restore backup Restore backup? Restore OK System default Matrix Custom font file… Share / Open file Open Website Auto Active Passive Channel lists… Clear Connection Identity Auto-connect & Password SASL Authentication TLS Client Certificate Auto-join Channels Post-connect Commands Character Encoding IRCv3.x Capabilities Proxy (SOCKS/Tor) Proxy type None (direct connection) SOCKS5 SOCKS4a Proxy host Port Username (optional) Password (optional) Tor (Orbot) Tor Browser The destination is resolved at the proxy (remote DNS), so .onion addresses work and the server hostname isn\'t leaked to your local network. For Tor, run Orbot and use 127.0.0.1 with port 9050. DCC file sends are routed through the proxy and use passive mode automatically; receiving passive offers and DCC chat hosting are unavailable while a proxy is active, since they require listening outside the tunnel. Notifications Notify on errors Show a notification for server and connection errors. Off by default; transient reconnects never notify. Mute highlights from e.g. GitHub, *-bot, or /^(travis|circleci)/ [One per line] One sender per line whose messages should never highlight or notify. Use a plain nick, an IRC wildcard (* and ?), or a regular expression wrapped in /slashes/. Messages still appear in their channel. Network Skips auto-join, requests playback of missed messages Uses TLS client certificate for authentication Selected: %1$s No certificate selected. The .pem should include both your certificate and private key. Choose PEM Replace PEM Choose .crt Replace .crt Choose .key Replace .key Choose .p12/.pfx Replace .p12/.pfx If the file is password protected, enter the password below. Certificate: %1$s Key: %1$s One per line. Format: #channel [key] Additional commands (one per line): Recommended. Starts with UTF-8 and auto-detects other encodings. Use for Bulgarian, Russian, Serbian, and other Cyrillic networks. Standard Unicode. Works with most modern IRC networks. Manual encoding selection for legacy networks. Please select both a certificate and a key Intro tour A quick walkthrough of the main screens and shortcuts. UI font Chat font Font size Internal storage Custom folder selected Downloads (default) Custom folder Backup & Restore Export your network configurations and app settings to a JSON file. Passwords and TLS certificates are not included. Restoring replaces all current networks and settings. This will replace all current networks and settings with those in the backup file. Passwords were not included in the backup and will need to be re-entered. This cannot be undone. Error Done To stay connected overnight, please disable Battery Optimization for this app and allow background activity. OnePlus tip: also lock the app in Recents (padlock) and ensure background activity / auto-launch is allowed in battery settings. System Matrix Terminal Media Previews Enable image & video previews Allow previews for images and YouTube links posted in chat. Twitter/X links are resolved via fxtwitter.com - Previews are not automatic. Wi-Fi only Only load previews when connected to Wi-Fi to avoid using mobile data. System default Send file DCC CHAT DCC is currently disabled. Turn it on to send/accept files. Auto: try Passive DCC or fall back to Active if there is no reply. Active: classic DCC SEND (the receiver connects to you). Passive: request the receiver to open a port, then you connect to them. Incoming chat offers Incoming offers Transfers unknown size passive (waiting for port) Error: %1$s Topic Channel modes No external messages Block messages from users not in the channel Ops-only topic Only ops can change the topic Moderated Only voiced users and ops can speak Invite only Users must be invited to join Secret Channel hidden from /LIST and /WHOIS Private Channel shown as private in /LIST Registered only Only registered nicks can join No colour Strip mIRC colour codes from messages No CTCPs Block CTCP messages to the channel Channel key (+k) User limit (+l) Kick / Ban Current modes: %1$s IRCop tools Target Punishments No reason Force join / part Broadcast Server queries Text colour Background Code %1$s %2$s No entries. set by %1$s Refresh Quiet lists not supported on this server Exception lists not supported on this server Invex lists not supported on this server This server doesn\'t advertise a +q quiet list. This server doesn\'t advertise a +e exception list. This server doesn\'t advertise a +I invite-exemption list. Ban list (+b) Quiet list (+q) Except list (+e) Invex list (+I) Unban Unquiet Remove IRC Colour Open query Start a private message conversation Whois Show user info, channels, idle time Mention Insert @%1$s into your message Direct connection (DCC) Send file Send a file via DCC SEND DCC is disabled in settings DCC Chat Open a direct peer-to-peer chat session Ignore Unignore Hide all messages from this user Show messages from this user again Mute notifications Unmute notifications Mute highlight & PM alerts; messages still show Allow alerts from this user again Moderation Kick / Ban… Remove or ban %1$s from this channel Channel privileges Give op (+o) Take op (-o) Voice (+v) Devoice (-v) Network Ignored nicks are matched case-insensitively and apply to chat + notices + incoming DCC offers on this network. Tip: you can also ignore someone from the nick list or by tapping their name in chat. Loading… (%1$d) Join IRC Client for Android Documentation & Support Visit the website for guides, FAQs, and to report issues. Contribs Want to contribute? Use SDCC (TLS encryption) Outgoing file transfers use DCC SSEND (TLS-wrapped). The remote client must also support SDCC. Users: Min Max tap Apply to refetch with these limits Filters the loaded list (this server can\'t filter by size remotely) Apply Edit topic Topic Set Bouncer networks Upstreams reported by %1$s Refresh No upstreams reported yet. Tap refresh once the bouncer has registered. connected connecting disconnected unknown Import Imported (unnamed upstream) Dismiss For bouncers, SASL is recommended. If you do use this PASS field instead, just enter the password; the bouncer username and network from the fields above are prepended automatically. Typing the full username/network:password also works. Edit metadata Your metadata Profile details other clients on this network can see. Leave a field blank to clear it. Emptying a field and saving removes that value from the server. Display name Status Nick colour (6 hex digits) Enter exactly 6 hex digits, e.g. 3f8ac2 Avatar URL (https) Homepage URL Pronouns Bio Register account Register account Register an account with this network directly, without contacting services. Account name (optional) Email (required) Email (optional) Password Confirm password Register Verification code Verify Enter the verification code the server sent you. You are registered as %1$s and logged in. your account Save this password for automatic login (SASL) next time Registration failed. Check the details and try again. Away Bot Add Mask, or account for extban Ban account Extended bans supported (%1$s): %2$s Copy Share Paste Confirm Import Clear Encryption for %1$s channel query Messages in this %1$s are sent and received in cleartext. Active: +AGE is on and encrypts messages here. Your saved %1$s key is kept but stays unused until you turn +AGE off. Safety number Verify this matches what the other party sees. Cipher HexDroid\'s Authenticated Group Messaging. One 256-bit random key, per-message authenticated encryption. You share the key. Authenticated Group Exchange. Keys are negotiated automatically and rotate forward. Forward-secrecy for PMs. Only use FiSH when the other side can\'t speak +AGM or +AGE. Regen Generate a new key? The current key stops working immediately and the other party must import the new one. Remove encryption for this %1$s? Messages will be sent and received in cleartext. Generate key Your +AGE safety number Copy safety number Share this so contacts can confirm they\'re really talking to you. This channel This contact No +AGE identity seen for %1$s yet. It pins automatically the first time they advertise one (trust-on-first-use); then you can verify it here. Verified. Pinned but not verified. Compare this with what %1$s reads out, then confirm. Mark verified Turn off +AGE Turn on identity-based (Ed25519) forward-secret (X25519/X3DH) encryption here. Keys are exchanged automatically once both sides advertise +AGE. Turn on +AGE Reveal key to share Key (32 bytes, base64) Anyone with this string can decrypt messages for this target. Paste a key from another user Base64-enc 32-byte key Reveal passphrase Passphrase Type the same passphrase your FiSH contact will use. Passphrase (4-56 chars)… Short passphrases (<8 chars) are easy to brute-force. Use at least 12. Load preview Close player YouTube thumbnail Twitter/X video thumbnail Image preview Play video Open tweet video Dismiss preview Failed to load preview Preview too large (max 5 MB) No media in this tweet Wi-Fi only – connect to Wi-Fi Stability cooldown over. Resuming auto-reconnect… Network lost. Waiting for connectivity… Network changed. Reconnecting… Network available. Reconnecting… Disconnected Reconnecting in %1$s (attempt %2$s)… Network available. Retrying… Battery saver is active - reconnect paused. Will retry when battery saver is off. Battery saver off. Retrying… Retrying to connect (attempt %1$s)… Resuming connection… Server CAP LS complete CAP NEW: %1$s CAP DEL: %1$s CAP ACK: %1$s Starting SASL… CAP NAK: %1$s SASL authentication succeeded SASL PLAIN aborted: refusing to send password over an unencrypted connection. Enable TLS or switch to SCRAM-SHA-256. SASL PLAIN aborted: no password set for this profile. Open Network Settings and re-enter the SASL password (passwords are not included in backups for security reasons). SASL PLAIN: server aborted authentication SASL PLAIN: unexpected server challenge "%1$s", aborting SASL EXTERNAL: server aborted authentication SASL EXTERNAL: unexpected server challenge "%1$s", aborting SASL SCRAM-SHA-256 aborted: no password set for this profile. Open Network Settings and re-enter the SASL password (passwords are not included in backups for security reasons). SASL: could not decode server AUTHENTICATE payload SCRAM state missing SASL SCRAM-SHA-256 aborted: %1$s SCRAM: server signature verified SCRAM server signature verification failed Looking up %1$s for %2$s-based ban… CTCP %1$s from %2$s ignored (rate limited) CTCP VERSION reply sent to %1$s CTCP PING reply sent to %1$s CTCP TIME reply sent to %1$s CTCP %1$s reply sent to %2$s CTCP CLIENTINFO reply sent to %1$s CTCP SOURCE reply sent to %1$s Unknown CTCP %1$s from %2$s * %1$s from %2$s: %3$s Usage: /knock <channel> [reason] Server does not support KNOCK CTCP %1$s sent to %2$s CTCP FINGER sent to %1$s CTCP USERINFO sent to %1$s CTCP CLIENTINFO sent to %1$s Usage: /setname <new realname> Server does not support SETNAME (setname CAP not negotiated) CTCP PING sent to %1$s Looking up %1$s... Resolved to: No resolution found for %1$s DNS lookup failed: %1$s Unknown error Connecting… TLS: %1$s Using encoding: %1$s Regained primary nick %1$s. Attempting to regain primary nick %1$s… Metadata: unsubscribed from %1$s Metadata subscriptions: %1$s (none) MONITOR list is empty MONITOR list (%1$s): %2$s Negotiating capabilities… Auto-detected legacy encoding: %1$s — you can set this explicitly in Network Settings Nick in use; trying alt nick: %1$s Nick in use; trying: %1$s %1$s%2$s — %3$s affected No matches for \"%1$s\" %1$s wants to talk with +AGE end-to-end encryption. Turn it on from the lock menu to encrypt this conversation. STS: %1$s requires TLS - connecting securely on port %2$s Please turn on WiFi or Mobile data to auto-reconnect. Connection error: %1$s (stack trace in logcat) /agm-key gen [target] | set <target> <b64> | clear <target> | info [target] /agm-key gen needs a target (or run it inside a channel/query) AGM key generated for %1$s. Fingerprint: %2$s On the other device, run: /agm-key set %1$s %2$s (Verify the fingerprint matches on both sides before sending anything sensitive.) Usage: /agm-key set <target> <base64> /agm-key set: invalid base64 in key argument /agm-key set: expected 32-byte key (got %1$s bytes after base64 decode) AGM key installed for %1$s. Fingerprint: %2$s Failed to store key: %1$s /agm-key clear needs a target (or run it inside a channel/query) AGM key cleared for %1$s. Messages will now be sent in cleartext. /agm-key info needs a target (or run it inside a channel/query) No encryption key configured for %1$s %1$s: scheme=%2$s fingerprint=%3$s Usage: /%1$s <emoji> [n] - n is how many messages back, default 1 /%1$s requires an active channel or query This server doesn\'t support reactions (no message-tags cap) /%1$s couldn\'t find %2$s with a server msgId - the server may not support message-tags Usage: /find <text> Usage: /gsearch <text> No matches for \"%1$s\" across %2$s buffers Found %1$s matches for \"%2$s\" - use /gsearch overlay to navigate Ignore list is empty. Usage: /ignore <nick> Ignored (%1$s): %2$s Usage: /ignore <nick> Usage: /unignore <nick> Not connected. Usage: /names #channel Usage: /slap <nick> Auto-reconnect halted: %1$s (manual reconnect needed) Auto-reconnect halted: authentication failed. Fix credentials, then reconnect manually. Auth failed — reconnect halted SASL credentials unavailable. the Android Keystore key was invalidated (this can happen after a biometric or screen-lock change). Connecting without SASL; please re-enter your SASL password in Network Settings to restore services authentication. +AGE WARNING: %1$s announced a different key (%2$s) to the one pinned for that nick (%3$s). Normal after a reinstall or on a second device, and also what a nick takeover looks like. Their +AGE messages are ignored until you decide. Verify the fingerprint out of band, then: /age trust %1$s or /age reject %1$s Usage: /banlist #channel Usage: /quietlist #channel Usage: /exceptlist #channel Usage: /invexlist #channel Usage: /dcc chat <nick> +AGE send failed; message not sent. Ignoring %1$s Unignored %1$s Notifications muted for %1$s Notifications unmuted for %1$s Auto-reconnect halted: server rejected the connection. TLS: Could not persist certificate fingerprint: %1$s Mode %1$s %2$s STS: policy for %1$s cleared by server STS: TLS-only policy stored for %1$s (valid %2$ss) STS: server requires TLS - reconnecting securely on port %1$s Registered as %1$s Reconnected Waiting %1$ss before auto-join & commands… Waiting %1$ss… Incoming DCC file offer from %1$s: %2$s (Transfers screen to accept) Auto-reconnect halted: TLS error is unlikely to fix itself. Adjust certificate trust settings, then reconnect manually. Auto-reconnect halted: server unreachable (hostname doesn\'t resolve or port is closed). Check the host and port in Network Settings, then reconnect manually. TLS: Certificate fingerprint learned and pinned (TOFU). Future connections will verify: %1$s Certificate hostname mismatch: connected to %1$s but cert SANs are: %2$s. Connection allowed. Ignored DCC RESUME from %1$s for %2$s — no matching send in progress. DCC RESUME from %1$s has out-of-range position %2$s (size %3$s); ignoring. Honouring DCC RESUME from %1$s at %2$s bytes. Incoming DCC CHAT from %1$s - tap \'DCCCHAT:%1$s\' buffer, or open Transfers to accept DCC CHAT offer from %1$s (%2$s:%3$s). Use /dcc accept %1$s or open Transfers to accept. Closed buffer %1$s (not on channel) Left %1$s Auto-rejoin suppressed (kicked again within %1$ss) %1$s: %2$s please try again shortly %1$s invited you here Server added capabilities: %1$s Server removed capabilities: %1$s Bouncer network removed: %1$s Bouncer network %1$s: %2$s%3$s [%4$s] %1$s deleted a message NAMES for %1$s: (none) NAMES for %1$s (%2$s): Log write failed for %1$s: %2$s DCC from %1$s: local network permission required (Android 17+). Grant it in Settings → Apps → HexDroid → Permissions. Accepted passive DCC offer: %1$s (listening on %2$s)%3$s Requested DCC RESUME for %1$s at %2$s bytes… Sender accepted RESUME at %1$s bytes (we asked for %2$s) No DCC ACCEPT from %1$s — restarting transfer from the beginning. Rejected DCC offer: %1$s DCC CHAT disconnected%1$s Can\'t accept passive DCC from %1$s while a proxy is active: it would require listening outside the tunnel. Ask them to send actively, or disable the proxy for this transfer. Refusing DCC from %1$s: it advertises a private/LAN address (%2$s) that isn\'t reachable through the proxy. Disable the proxy for this transfer if they\'re on your LAN. Refusing DCC CHAT from %1$s: it advertises a private/LAN address (%2$s) not reachable through the proxy. Disable the proxy for this network if they\'re on your LAN. DCC CHAT failed: %1$s DCC CHAT closed DCC CHAT connected to %1$s DCC CHAT not connected. DCC CHAT send failed: %1$s DCC CHAT from %1$s: local network permission required (Android 17+). Grant it in Settings → Apps → HexDroid → Permissions. Connecting DCC CHAT to %1$s (%2$s:%3$s)… DCC CHAT connect failed: %1$s Rejected DCC CHAT offer from %1$s Offering DCC%1$s CHAT to %2$s… Sent DCC%1$s CHAT offer to %2$s (port %3$s) DCC CHAT offer failed: %1$s Offering %1$s to %2$s via DCC%3$s (active, port %4$s)… Offering %1$s to %2$s via DCC%3$s (passive)… %1$s accepted; resuming from %2$s bytes… %1$s accepted; connecting… Proxy active: using passive DCC (active send can\'t listen through a proxy). DCC send complete: %1$s → %2$s DCC send failed: %1$s DCC send cancelled: %1$s Disconnected Connected Plaintext disabled Local network permission required Not configured Waiting for network… Connecting… Reconnecting… Reconnecting in %1$ss… Paused (battery saver) Retrying to connect… Connected to %1$s Unstable - paused %1$s min Unstable - reconnect paused TLS error: reconnect halted Event handler error: %1$s Server unreachable: reconnect halted Server rejected connection: reconnect halted Server error: %1$s DCC is disabled in settings. Can\'t offer DCC CHAT while a proxy is active (it requires listening outside the tunnel). Disable the proxy for this network to use DCC CHAT. Server password (PASS) rejected. If this is a bouncer profile, the password format is usually user:password or user/network:password. SASL authentication rejected. Bouncers require valid SASL to route the connection. Check the SASL username/password (or client certificate) on this profile. SASL authentication rejected. Check the SASL username/password (or client certificate) on this profile. Authentication rejected. Auto-reconnect halted; tap reconnect after fixing credentials. reacted with removed reaction (ref: %1$s) Server certificate fingerprint has CHANGED! Expected: %1$s • Got: %2$s - Connection refused. Auto-reconnect halted. If this server uses round-robin DNS (irc.example.tld), open Network Settings and tap \'Trust this server too\' to add the new fingerprint without losing the others. If the cert was rotated/renewed, tap \'Reset & re-pin\' instead - that discards every previously-trusted fingerprint and re-learns from scratch. no local profile for \"%1$s\" - add one to connect to this upstream. Scrollback from logs • Last message: %1$s OK Remove Add HexDroid logo boxlabs Port must be between 1 and 65535 EXTERNAL (client cert) PEM (.pem) CRT + KEY (.crt/.key) Reset to 100% Custom Aliases No aliases yet. Alias name (no “/”) Expansion (a command, no “/”) Add alias Scripts Load and manage .hex scripts (games, tools, custom commands). this network Disconnected Server error: %1$s TLS certificate fingerprint changed Connect failed: %1$s Connection error: %1$s Registration timeout Ping timeout Registration timeout: the server did not send 001 within %1$ds Proxy error: %1$s TLS certificate verification failed. The server\'s certificate may be expired, self-signed, or untrusted. TLS handshake failed. The server may not support TLS 1.2/1.3. TLS handshake rejected by server. Check the port and TLS settings. TLS handshake failed: %1$s TLS session interrupted. The connection will retry. TLS protocol error. The connection will retry. TLS read error. The network may have changed. TLS write error. The network may have changed. TLS session closed TLS error: %1$s Connection refused. Check the hostname and port. Network unreachable. Check your internet connection. Connection timed out DNS resolution timed out. The resolver is not responding. Could not resolve hostname Connection lost (broken pipe) Connection reset by server Connection closed Disconnected: %1$s ⚠ Connection is unstable: %1$d ping timeouts in the last %2$d minutes. Auto-reconnect paused for %2$d minutes to avoid flooding the server. Tap Reconnect to retry sooner. Usage: /%1$s %2$s Usage: %1$s Usage: /msg <nick|#channel> <message> Usage: /query <nick> [message] Usage: /kill <nick> [reason] Usage: /notice <nick|#channel> <message> Usage: /%1$s <nick> [#channel] Usage: /redact [target] <msgid> [reason] Usage: /metadata %1$s <key> [key...] Usage: /verify [account] <code> Usage: /monitor +nick[,nick] | -nick[,nick] | C | L | S%1$s /%1$s needs a channel. Switch to one, or pass #channel as the first argument. /%1$s needs a channel. Switch to one, or pass it as the second argument. /invite needs a channel. Switch to one, or pass it as the second argument. No text to send Run /redact from the channel or query the message is in. This server does not support message deletion (draft/message-redaction). This server does not support IRCv3 metadata (draft/metadata-2). This server does not support IRCv3 account registration. Try services instead: /ns REGISTER <password> <email> This server does not support IRCv3 account verification. Try services instead: /ns VERIFY ... This server registers your current nick as the account name, so omit the account argument. %1$s " - this server requires an email address" MONITOR is not supported by this server. " (server advertises no limit)" " (server limit: %1$d entries)" Server does not support read markers /dns is disabled while a proxy is active (a local lookup would bypass the proxy and leak the query). (IPv6 records may exist but this device has no IPv6 connectivity) %1$s is not logged in to services Could not resolve the host for %1$s Ban by %1$s failed: %2$s. Falling back to nick mask. You are now an IRC operator %1$s sets mode %2$s%3$s %1$s invited %2$s to %3$s Bouncer error: %1$s Channel renamed: %1$s → %2$s Channel renamed: %1$s → %2$s (%3$s) Account %1$s registered. You are now logged in. Account %1$s verified. You are now logged in. Verification required for %1$s: %2$s. Complete it with /verify <code> check your email (already registered? try /verify <code>, or pick another name) (choose a different password and try again) (check the email address) (re-check the code from the verification message) (wait until fully connected, then try again) (try again later) +AGE is on for %1$s but this message wasn\'t encrypted, so it was NOT sent (HexDroid will not put it on the wire in the clear). Turn off +AGE here to chat normally. %1$s is still in use; retrying quietly in the background (a lingering session usually clears within a few minutes). Gave up trying to regain %1$s, still in use. Use /nick %1$s to retry. Dropped an oversize inbound IRC line (>32 KiB). Connection kept alive; further drops will be silent. SASL handler error: %1$s MONITOR list is full (limit: %1$s). Could not add: %2$s MONITOR list is full (limit: %1$s) You\'re not on that channel You\'ve reached the server\'s channel limit (%1$d) You have joined too many channels Cannot join channel Cannot join channel (+l) Cannot join channel (+i) Cannot join channel (+b) Cannot join channel (+k) Password incorrect — MOTD — — End of MOTD command — No MOTD found Your hidden host is now %1$s There are %1$s users and %2$s invisible on %3$s servers operator(s) online channels formed unknown connection(s) I have %1$s clients and %2$s servers Current local users: %1$s Max: %2$s Current global users: %1$s Max: %2$s Channel URL: %1$s Channel created on: %1$s unknown Away %1$s is away: %2$s %1$s is an IRC operator %1$dh %2$dm %3$ds idle signed on %1$s End of /WHOIS list. %1$s on channels: %2$s %1$s has special/registered status is logged in as %1$s is logged in as %2$s %1$s is marked as a bot/service %1$s: actual host info %1$s %2$s (metadata set) is connected via SSL No such nickname/channel No such server No such channel No such channel: %1$s Cannot send to channel There was no such nickname Unknown command Unknown command: %1$s Nickname is already in use Not enough parameters You may not reregister You are banned from this server Administrative info about this server Admin location: %1$s Admin info: %1$s Admin contact: %1$s Extended admin info: %1$s Network callback registration failed: %1$s. Auto-reconnect on network change may not work on this device. keystore error Failed to save credentials: %1$s. Try again, or restart the app if the problem persists. Failed to import certificate Unable to open the output stream for the backup file Backup saved.\nNote: passwords and certificates are not included. Backup failed: %1$s Unable to read the backup file Backup restored.\nPasswords were not restored, so re-enter them in each network\'s settings. Restore failed: %1$s Parent profile not found. Discover-and-clone is only available for soju and ZNC. This bouncer network has no name yet. Try refreshing. Already imported as \"%1$s\". Imported \"%1$s\". Enable auto-connect to use it. Imported \"%1$s\" with SASL PLAIN auth from the server password. Enable auto-connect to use it. Imported \"%1$s\". The parent password looks pre-formatted for the bouncer, so review the clone\'s auth settings before enabling auto-connect. Imported \"%1$s\". Set credentials and auto-connect on the new profile to use it. discovered state changed Establishing +AGE encryption with %1$s… +AGE encryption established with %1$s. Messages are end-to-end encrypted. +AGE encryption with %1$s failed: %2$s. Messages are NOT encrypted. +AGE is not available on this network. +AGE: no identities awaiting a decision. +AGE awaiting a decision: Usage: /age trust <nick> | /age reject <nick> | /age pending +AGE: pinned %1$s\'s new key. Their messages will verify again. +AGE: discarded %1$s\'s new key; the previously pinned key stays authoritative. +AGE: nothing pending for %1$s. +AGE for %1$s is still keying with the other +AGE members. Your message was NOT sent. Try again in a moment. Key is empty Not a valid base64 string Expected 32 bytes after base64 decode, got %1$d Failed to store key: %1$s Passphrase is empty Passphrase must be at least 4 bytes Passphrase must be at most 56 bytes (got %1$d) No aliases. Add one with: /alias add <name> <expansion> Usage: /alias add <name> <expansion> e.g. /alias add bl msg *backlog $channel $1 Usage: /alias remove <name> Usage: /alias [list] | add <name> <expansion> | remove <name> Alias name can\'t contain spaces or \'/\'. Alias saved: /%1$s > %2$s No such alias: /%1$s Alias removed: /%1$s the latest message message #%1$d back You are now known as %1$s %1$s is now known as %2$s Now talking on %1$s %1$s (%2$s) has joined %3$s logged in as %1$s You have left channel %1$s %1$s (%2$s) has left %3$s You were kicked from %1$s by %2$s %1$s was kicked by %2$s %1$s (%2$s) has quit Topic for %1$s is: %2$s Topic for %1$s set by %2$s at %3$s %1$s changed the topic to: %2$s Topic changed to: %1$s unknown time Your host is now %1$s@%2$s %1$s is now %2$s@%3$s You are no longer logged in %1$s logged out You are now logged in as %1$s %1$s is now logged in as %2$s Your realname is now \"%1$s\" %1$s changed realname to \"%2$s\" %1$s has invited you to %2$s %1$s is now away %1$s is now away (%2$s) %1$s is back %1$s is online %1$s is offline CTCP PING reply from %1$s: %2$dms CTCP PING reply from %1$s: %2$s CTCP %1$s reply from %2$s: %3$s The server is rate-limiting LIST (try again shortly). (message deleted by %1$s) (message deleted by %1$s: %2$s) ── Chat history • Last message: %1$s ── %1$d networks: %2$s Connected (%1$d), connecting (%2$d) Invalid passive DCC reply No response from %1$s, DCC timed out Unable to open the selected file Couldn\'t open this file This server does not offer file uploads File uploads are disabled for this network File upload over a SOCKS proxy is not supported yet Upload failed: %1$s Open with