{% extends "base.html" %} {% block title %}QWK Hub Nodes — {{ config.BBS_NAME }}{% endblock %} {% block content %}

QWK Hub Nodes

Downstream QWK nodes that download packets from this hub.

Add Node Hub Overview
{% with messages = get_flashed_messages(with_categories=true) %} {% for cat, msg in messages %}
{{ msg }}
{% endfor %}{% endwith %}
{% if nodes %} {% for node in nodes %} {% endfor %}
Packet ID BBS Name Sysop Confs Status Last Poll
{{ node.packet_id }} {{ node.name }} {{ node.sysop or '—' }} {{ node.last_sent.count() }} {% if node.is_active %}active {% else %}inactive{% endif %} {% if node.last_poll_at %}{{ node.last_poll_at.strftime('%Y-%m-%d %H:%M') }} {% else %}never{% endif %} Edit
{% else %}

No QWK nodes registered yet.

Register the first node
{% endif %}
QWK Hub Endpoints

Nodes poll the following endpoints. Replace NODEID with the node's assigned Packet ID (lowercase for the URL).

Download (HTTP) GET /qwkhub/<NODEID>.qwk — authenticate with packet_id + password via HTTP Basic Auth
Upload (HTTP) POST /qwkhub/<NODEID>.rep — multipart upload of REP packet
Download (FTP) FTP to port 21, log in as packet_id / password, download <HUBID>.QWK

The hub system ID (the QWK filename the node downloads) is set by the QWK_HUB_ID setting in Admin → Settings. Set it to something short like ANET.

{% endblock %}