Concept of the local Windows panel I would deliver after auditing your code. Everything here is simulated in your browser; no real accounts or services are touched. Your existing modules and interfaces stay, this is the layer on top.
| Add | Community | Type | Topic | Lang | Location | Members | Relevance | Posting allowed |
|---|
Relevance = keyword match in title and description, plus size. Duplicates are detected by normalized handle and invite link.
| Community | Status | Detail |
|---|---|---|
| Nothing queued yet. Select communities on the first tab, then approve. Only communities flagged "posting allowed" are queued. | ||
| Recipient | Opt-in | Campaign | Progress | Status |
|---|
Queue state is saved after each item, so a restart resumes where it stopped and never sends the same message twice to the same recipient.
| Check | Result |
|---|---|
| Meta API token valid | OK |
| Messaging permission (opt-in window 24h) | OK |
| Webhook for inbound DMs and comments | Needs HTTPS tunnel on the local PC |
| Rate limit headroom | 72% |
| From | Type | Message | Handled by | Status |
|---|
Auto-replies only for clear intents and only to opted-in users. Anything unclear goes to a human with the full conversation attached.
| Feature | Test type | Result |
|---|---|---|
| CSV import and export | Automated, local | Verified |
| Duplicate detection | Automated, local | Verified |
| Queue recovery after restart | Automated, local | Verified |
| Telegram discovery against the live API | Real service, your authorized account | Pending access |
| Instagram inbound DMs via Meta API | Mocked until you provide a test account | Mocked, not reported as working |
Mocked and real checks are always labelled separately; nothing is called operational until verified.