commit 0587df2cd29ff2f37e72c2557495105bf0090cf6
parent 21e85e2fa9146131e77faef59ce24178976af9a4
Author: MTRNord <mtrnord1@gmail.com>
Date: Thu, 18 Jan 2024 20:00:01 +0100
Add some homeserver support and make sure thank you causes the correct intent
Diffstat:
3 files changed, 164 insertions(+), 2 deletions(-)
diff --git a/data/nlu.yml b/data/nlu.yml
@@ -14,13 +14,13 @@ nlu:
- good morning
- good evening
- hey there
- - Hi
- intent: goodbye
examples: |
- bye
- goodbye
- see you around
- see you later
+ - thank you
- intent: query_knowledge_base
examples: |
- What [matrix clients]{"entity": "object_type", "value": "client"} can you recommend?
@@ -29,6 +29,13 @@ nlu:
- Which matrix tools can you recommend with an [Apache-2.0](licence) licence?
- Which tools are using the [Apache-2.0](licence) licence?
- Which tools are using the [MIT](licence) Licence?
+ - Where can I [host]{"entity": "object_type", "value": "provider"} my Homeserver?
+ - Which [Homeserver]{"entity": "object_type", "value": "server"} options exist?
+- synonym: Homeserver
+ examples: |
+ - Homeserver
+ - Server
+ - Serversoftware
- synonym: client
examples: |
- matrix clients
diff --git a/knowledge_base_data.json b/knowledge_base_data.json
@@ -1602,5 +1602,151 @@
"room": "#source:etke.cc",
"id": 20
}
+ ],
+ "server": [
+ {
+ "name": "Synapse",
+ "description": "Matrix.org homeserver",
+ "author": "Matrix.org team",
+ "maturity": "Stable",
+ "language": "Python",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/matrix-org/synapse/",
+ "room": "#synapse:matrix.org",
+ "id": 0
+ },
+ {
+ "name": "Dendrite",
+ "description": "Dendrite is a second-generation Matrix homeserver written in Go!",
+ "author": "Matrix.org team",
+ "maturity": "Beta",
+ "language": "Go",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/matrix-org/dendrite",
+ "room": "#dendrite:matrix.org",
+ "id": 1
+ },
+ {
+ "name": "Conduit",
+ "description": "Conduit is a simple, fast and reliable chat server written in Rust",
+ "author": "Timo Kösters",
+ "maturity": "Beta",
+ "language": "Rust",
+ "licence": "Apache-2.0",
+ "repository": "https://gitlab.com/famedly/conduit",
+ "room": "#conduit:matrix.org",
+ "id": 2
+ },
+ {
+ "name": "Construct",
+ "description": "Construct is a C++ Matrix Homeserver",
+ "author": "Jason Volk",
+ "maturity": "Beta",
+ "language": "C++",
+ "licence": "BSD",
+ "repository": "https://github.com/matrix-construct/construct",
+ "id": 3
+ },
+ {
+ "name": "Ligase",
+ "description": "Ligase is a Cloud-native Matrix home server written in Golang.",
+ "author": "Finogeeks team",
+ "maturity": "Obsolete",
+ "language": "Go",
+ "licence": "AGPLv3",
+ "repository": "https://github.com/finogeeks/Ligase",
+ "id": 4
+ },
+ {
+ "name": "bullettime",
+ "description": "An experimental golang Matrix homeserver",
+ "author": "Patrik Oldsberg",
+ "maturity": "Obsolete",
+ "language": "Go",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/matrix-org/bullettime",
+ "id": 5
+ },
+ {
+ "name": "Dendron",
+ "description": "Discontinued in favour of Dendrite (\"Dendron, done right\")",
+ "author": "Matrix.org team",
+ "maturity": "Obsolete",
+ "language": "Go",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/matrix-org/dendron",
+ "id": 6
+ },
+ {
+ "name": "jSynapse",
+ "description": "",
+ "author": "Swarmcom",
+ "language": "Java",
+ "maturity": "Obsolete",
+ "licence": "Apache-2.0",
+ "id": 7
+ },
+ {
+ "name": "Maelstrom",
+ "description": "A high-performance Matrix Home-Server written in Rust designed to be scalable, light on resources, and have a pluggable storage engine.",
+ "author": "Chris Bruce",
+ "maturity": "Obsolete",
+ "language": "Rust",
+ "licence": "Apache-2.0 OR MIT",
+ "repository": "https://github.com/maelstrom-rs/maelstrom",
+ "room": "#m-server:matrix.org",
+ "id": 8
+ },
+ {
+ "name": "Matrex",
+ "description": "A WIP toy Matrix server implementation in Elixir.",
+ "author": "Ryan Johnson",
+ "maturity": "Obsolete",
+ "language": "Elixir",
+ "licence": "MIT",
+ "repository": "https://github.com/bismark/matrex",
+ "id": 9
+ },
+ {
+ "name": "mxhsd",
+ "description": "mxhsd is Matrix Homeserver aimed towards entities who want to have in-depth control of their servers",
+ "author": "Max Dor",
+ "maturity": "Obsolete",
+ "language": "Java",
+ "licence": "AGPL-3.0-or-later",
+ "repository": "https://github.com/kamax-io/mxhsd",
+ "id": 10
+ },
+ {
+ "name": "Pallium",
+ "description": "",
+ "author": "KoFish",
+ "language": "Go",
+ "maturity": "Obsolete",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/KoFish/pallium",
+ "id": 11
+ },
+ {
+ "name": "Transform",
+ "description": "Transform is a matrix homeserver built using Typescript and Redis.",
+ "author": "bettiah",
+ "maturity": "Obsolete",
+ "language": "TypeScript",
+ "licence": "Apache-2.0",
+ "repository": "https://github.com/bettiah/transform",
+ "id": 12
+ },
+ {
+ "name": "Telodendria",
+ "description": "Telodendria is an open source Matrix homeserver implementation written from scratch in ANSI C and designed to be lightweight and simple, yet functional.",
+ "author": "Jordan Bancino",
+ "maturity": "Alpha",
+ "language": "C",
+ "licence": "MIT",
+ "repository": "https://git.telodendria.io/Telodendria/Telodendria",
+ "room": "#telodendria-general:bancino.net",
+ "id": 13
+ }
]
}
\ No newline at end of file
diff --git a/scripts/matrix_org_to_json.py b/scripts/matrix_org_to_json.py
@@ -6,7 +6,7 @@ import toml
BASE_PATH = Path("../../matrix.org")
ECOSYSTEM_PATH = BASE_PATH / "content/ecosystem/"
-output_json = {"client": [], "provider": [], "sdk": [], "integration": []}
+output_json = {"client": [], "provider": [], "sdk": [], "integration": [], "server": []}
clients_path = (ECOSYSTEM_PATH / "clients").glob("*.md")
id = 0
@@ -52,5 +52,14 @@ for provider in providers["providers"]:
output_json["provider"].append(provider_json)
id += 1
+servers_path = ECOSYSTEM_PATH / "servers" / "servers.toml"
+servers = toml.load(servers_path)
+id = 0
+for server in servers["servers"]:
+ server_json = server
+ server_json["id"] = id
+ output_json["server"].append(server_json)
+ id += 1
+
with open("../knowledge_base_data.json", "w", encoding="utf-8") as f:
json.dump(output_json, f, ensure_ascii=False, indent=4)