aboutsummaryrefslogtreecommitdiff
path: root/mxlib
diff options
context:
space:
mode:
Diffstat (limited to 'mxlib')
-rw-r--r--mxlib/api.go18
-rw-r--r--mxlib/registration.go25
2 files changed, 43 insertions, 0 deletions
diff --git a/mxlib/api.go b/mxlib/api.go
new file mode 100644
index 0000000..59e1267
--- /dev/null
+++ b/mxlib/api.go
@@ -0,0 +1,18 @@
+package mxlib
+
+import (
+ _ "encoding/json"
+)
+
+type Transaction struct {
+ Events []Event `json:"events"`
+}
+
+type Event struct {
+ Content map[string]string `json:"content"`
+ Type string `json:"type"`
+ EventId string `json:"event_id"`
+ RoomId string `json:"room_id"`
+ Sender string `json:"sender"`
+ OriginServerTs int `json:"origin_server_ts"`
+}
diff --git a/mxlib/registration.go b/mxlib/registration.go
new file mode 100644
index 0000000..d4b18dc
--- /dev/null
+++ b/mxlib/registration.go
@@ -0,0 +1,25 @@
+package mxlib
+
+import (
+ _ "gopkg.in/yaml.v2"
+)
+
+type Registration struct {
+ Id string `yaml:"id"`
+ Url string `yaml:"url"`
+ AsToken string `yaml:"as_token"`
+ HsToken string `yaml:"hs_token"`
+ SenderLocalpart string `yaml:"sender_localpart"`
+ Namespaces RegistrationNamespaceSet `yaml:"namespaces"`
+}
+
+type RegistrationNamespaceSet struct {
+ Users []RegistrationNamespace `yaml:"users"`
+ Aliases []RegistrationNamespace `yaml:"aliases"`
+ Rooms []RegistrationNamespace `yaml:"rooms"`
+}
+
+type RegistrationNamespace struct {
+ Exclusive bool `yaml:"exclusive"`
+ Regex string `yaml:"regex"`
+}