{ "config": { "step": { "user": { "title": "Connect to Reticulum", "description": "Home Assistant will run a Reticulum instance and connect out to your Reticulum stack over TCP. A first LXMF identity is created automatically; add more later from the integration page.", "data": { "target_host": "Target host", "target_port": "Target port", "interface_name": "Interface name", "display_name": "First identity name" }, "data_description": { "target_host": "Hostname or IP of the machine running the Reticulum TCP server.", "target_port": "TCP port of the Reticulum TCPServerInterface (default 4242).", "interface_name": "Label used for this connection in the Reticulum config.", "display_name": "Announce name of the first LXMF identity." } } }, "error": { "cannot_connect": "Could not reach the Reticulum TCP server at that host and port." }, "abort": { "already_configured": "Reticulum is already configured.", "single_instance_allowed": "Only a single Reticulum stack is allowed. Add more identities to the existing one." } }, "options": { "step": { "init": { "title": "Reticulum stack options", "data": { "loglevel": "Reticulum log level (0-7)" } } } }, "config_subentries": { "identity": { "initiate_flow": { "user": "Add identity", "reconfigure": "Reconfigure identity" }, "entry_type": "LXMF identity", "step": { "user": { "title": "Add LXMF identity", "data": { "display_name": "Name (announced to peers)", "enable_assist": "Route incoming messages to Assist", "assist_agent": "Assist agent", "assist_language": "Assist language", "allow_all_senders": "Reply to any sender", "allowed_identities": "Allowed sender addresses", "default_recipient": "Default recipient address", "greeting": "Auto-reply message (when Assist is off)", "delivery_method": "Default delivery method", "announce_interval": "Announce interval", "propagation_node": "Propagation node address", "sync_interval": "Propagation sync interval" }, "data_description": { "display_name": "Contact name announced to other Reticulum peers. Also used as the identity's name in Home Assistant.", "enable_assist": "When enabled, incoming LXMF messages are answered by the Assist conversation agent and the reply is sent back.", "allowed_identities": "One address per line (or comma separated). Only used when 'Reply to any sender' is off.", "greeting": "Sent as an automatic reply to incoming messages only when 'Route incoming messages to Assist' is off. Leave blank to disable.", "default_recipient": "16-byte hex LXMF address that this identity's notify entity sends to.", "announce_interval": "How often (seconds) to announce this identity. 0 disables periodic announces.", "propagation_node": "Optional LXMF propagation node for store-and-forward delivery.", "sync_interval": "How often (seconds) to pull queued messages from the propagation node. 0 disables." } }, "reconfigure": { "title": "Reconfigure LXMF identity", "data": { "display_name": "Name (announced to peers)", "enable_assist": "Route incoming messages to Assist", "assist_agent": "Assist agent", "assist_language": "Assist language", "allow_all_senders": "Reply to any sender", "allowed_identities": "Allowed sender addresses", "default_recipient": "Default recipient address", "greeting": "Auto-reply message (when Assist is off)", "delivery_method": "Default delivery method", "announce_interval": "Announce interval", "propagation_node": "Propagation node address", "sync_interval": "Propagation sync interval" }, "data_description": { "display_name": "Contact name announced to other Reticulum peers. Changing it updates future announces.", "greeting": "Sent as an automatic reply to incoming messages only when 'Route incoming messages to Assist' is off. Leave blank to disable." } } }, "abort": { "reconfigure_successful": "Identity updated." } } }, "entity": { "sensor": { "lxmf_address": { "name": "LXMF address" }, "messages_received": { "name": "Messages received" }, "messages_sent": { "name": "Messages sent" }, "messages_failed": { "name": "Messages failed" }, "peers": { "name": "Known peers" }, "last_message": { "name": "Last message" }, "last_message_time": { "name": "Last message time" }, "rx_bytes": { "name": "Received" }, "tx_bytes": { "name": "Transmitted" }, "bitrate": { "name": "Bitrate" }, "rssi": { "name": "RSSI" }, "snr": { "name": "SNR" }, "link_quality": { "name": "Link quality" } }, "binary_sensor": { "connected": { "name": "Connected" } }, "button": { "announce": { "name": "Announce" }, "sync": { "name": "Sync propagation node" }, "regenerate": { "name": "Regenerate identity" } }, "notify": { "message": { "name": "Send message" } } }, "selector": { "delivery_method": { "options": { "direct": "Direct (establish a link)", "opportunistic": "Opportunistic (single packet)", "propagated": "Propagated (store and forward)" } } }, "device_automation": { "trigger_type": { "message_received": "Message received", "message_delivered": "Message delivered", "message_failed": "Message delivery failed", "announce_received": "Announce received (peer heard)" } }, "services": { "send_message": { "name": "Send message", "description": "Send an LXMF message to a Reticulum destination.", "fields": { "destination": { "name": "Destination", "description": "16-byte hex LXMF destination hash of the recipient." }, "content": { "name": "Content", "description": "The message body." }, "title": { "name": "Title", "description": "Optional message title / subject." }, "method": { "name": "Method", "description": "Delivery method to use." }, "identity": { "name": "Identity", "description": "Which identity to send from (name or LXMF address). Defaults to the first identity." }, "fields": { "name": "Fields", "description": "Optional advanced LXMF fields dictionary." } } }, "announce": { "name": "Announce", "description": "Announce an identity's LXMF destination on the network.", "fields": { "identity": { "name": "Identity", "description": "Which identity to announce. Defaults to the first identity." } } }, "request_path": { "name": "Request path", "description": "Ask the network for a path to a destination.", "fields": { "destination": { "name": "Destination", "description": "Destination hash to resolve a path to." }, "identity": { "name": "Identity", "description": "Which identity to act through. Defaults to the first identity." } } }, "set_propagation_node": { "name": "Set propagation node", "description": "Set the outbound LXMF propagation node for an identity.", "fields": { "destination": { "name": "Destination", "description": "Propagation node destination hash." }, "identity": { "name": "Identity", "description": "Which identity to configure. Defaults to the first identity." } } }, "sync_propagation": { "name": "Sync propagation node", "description": "Pull queued messages from an identity's propagation node.", "fields": { "max_messages": { "name": "Max messages", "description": "Maximum number of messages to retrieve." }, "identity": { "name": "Identity", "description": "Which identity to sync. Defaults to the first identity." } } } } }