labs@atheron:~/work/community-bots$ cat community-bots.md
Community-Bots
Ein Dienst, drei Aufgaben.
Moderation, Verifizierung, Rollen, Fälle und Einsprüche für einen Discord-Server und eine Telegram-Gruppe, aus einem Satz Regeln. Derselbe Dienst wird gerade so angebunden, dass er unsere Ankündigungen postet und Supportanfragen annimmt, weil Discord nur einem Prozess eine Bot-Verbindung erlaubt und Telegram nur einen Webhook.
// was es tut
- Verwaltet Server und Gruppen: automatische Moderation, Verifizierung, Rollen, Fälle und Einsprüche.
- Erkennt Betrug, Identitätsanmaßung und Doppelgängernamen und setzt ein Captcha an die Tür.
- Behandelt einen Raid als Ereignis: Moderatoren werden informiert, jeder Neuankömmling trifft auf ein Captcha, und es endet von selbst.
- Führt Ansehen, Punkte und einen Belohnungskatalog, in beiden Räumen gleich formuliert.
- Wird gerade so angebunden, dass er unsere Ankündigungen in beiden Räumen postet, jede vorher von einem Menschen im Team-Portal freigegeben.
- Wird gerade so angebunden, dass er Supportanfragen annimmt: Ein Beitrag im Supportkanal wird einen Thread öffnen und ein Slash-Befehl einen privaten.
- Wird aus dem Team-Portal gesteuert, sodass ein Moderator alles tun kann, was die Bots können.
// wie wir es gebaut haben
- Kein Bot-Framework: Der Discord-Gateway-Client und die Aufrufe der Telegram-API sind unsere eigenen, also ist eine Plattformänderung unsere Sache.
- Ein gemeinsamer Kern hält die Regeln, sodass die zwei Plattformen nie darüber uneins sind, was erlaubt ist.
- Eine Eingangstür, weil die Plattformen nur eine erlauben: Moderation, Posten und Annahme von Supportanfragen gehören alle in diesen einen Dienst, und Supportanfragen gehen über einen internen Aufruf weiter an unser Live-Chat-Produkt.
- Die Berechtigungen werden Kanal für Kanal statt über den ganzen Server vergeben, und jede Aufgabe nutzt für diesen internen Aufruf ihr eigenes abgeleitetes Geheimnis.
- Eigenschaftsbasierte Tests der Moderationsregeln, sodass auch eine Eingabe, an die niemand gedacht hat, ausprobiert wird.
- Die Bots melden sich mit einer eigenen Anmeldung bei der Datenbank an und können Gehälter und Bewerbungen nicht erreichen.
- Das Ansehen eines Mitglieds wird beim Portal abgefragt, also gibt es eine einzige Definition der Punktzahl.
// wie groß es ist
- jobs
- Drei in einem Dienst: die Moderation, die heute läuft; unsere Ankündigungen und die Annahme von Supportanfragen, die gerade angebunden werden
- platforms
- Discord und Telegram, aus einem Kern
- test files
- Mehr als 60, mit eigenschaftsbasierten Tests der Regeln
- frameworks
- Keines: Der Gateway-Client und die API-Aufrufe sind unsere
- run from
- Das Team-Portal, mit denselben Aktionen wie die Bots
// tech-stack
- TypeScript
- Node.js
- Discord-Gateway
- Telegram Bot API
- PostgreSQL
- fast-check
// wo es steht
Im Einsatz in unserem eigenen Server und unserer eigenen Gruppe, jede Moderationshandlung wird in ein Protokoll geschrieben, das die Community lesen kann, und unsere Ankündigungen werden darüber veröffentlicht. Die Annahme von Support-Anfragen wird gerade daran angeschlossen.
// eine vergleichbare Entwicklung
- Entwicklung
- ≈ 30.300 USD bis 46.400 USD, within 10 weeksCAD 43,200 to 66,100
- Hosting
- ≈ 176 USD im MonatCAD 250 im Monat
- Support
- ≈ 2.500 USD im MonatCAD 3,565 im Monat
Preise in Ihrer Währung sind Schätzungen zum heutigen Kurs der Bank of Canada. Alle Rechnungen werden in CAD oder USD gestellt.
der Aufwand darin
- Développement
- 251 to 384 h
- Développeur dorsal principal
- 26 to 40 h
- Ingénieur principal
- 24 to 37 h
- Développeur dorsal
- 22 to 34 h
- Développeur frontal
- 20 to 30 h
- Insgesamt
- 457 to 698 h
was dieser Preis abdeckt
Ein Dienst als eine Entwicklung: der gemeinsame Moderationskern, die zwei Plattform-Clients, die Warteschlange für Beiträge, die Annahme von Supportanfragen, die Wege für Verifizierung und Einsprüche und die Portalseiten, aus denen er gesteuert wird.
Eine Schätzung für eine Entwicklung wie diese, nach unserer Preisliste berechnet, während Sie lesen. Sie ist kein Angebot. Ihre ändert sich mit Ihrem Umfang, und ein echtes Angebot schreiben wir nach einem Gespräch.
Im Rechner öffnen →// der rest
Die anderen Projekte.
// anfangen
Möchten Sie so etwas bauen lassen?
Dasselbe Team, dieselben Tests, dieselbe Sorgfalt. Sagen Sie uns, was Sie brauchen, oder berechnen Sie es zuerst selbst.