Update oasisSdk and apply breaking changes

This commit is contained in:
2025-08-31 15:53:00 +01:00
parent 5988eead04
commit 1da705a1b0
3 changed files with 221 additions and 215 deletions

2
go.mod
View File

@@ -7,7 +7,7 @@ require (
fyne.io/x/fyne v0.0.0-20250418202416-58a230ad1acb
github.com/rrivera/identicon v0.0.0-20240116195454-d5ba35832c0d
mellium.im/xmpp v0.22.0
pain.agency/oasis-sdk v0.0.0-20250809192709-a3e5dff1aa61
pain.agency/oasis-sdk v0.0.0-20250831105702-85385dca3a95
)
require (

2
go.sum
View File

@@ -101,3 +101,5 @@ mellium.im/xmpp v0.22.0 h1:UthQVSwEAr7SNrmyc90c2ykGpVHxjn/3yw8Ey4+Im8s=
mellium.im/xmpp v0.22.0/go.mod h1:WSjq12nhREFD88Vy/0WD6Q8inE8t6a8w7QjzwivWitw=
pain.agency/oasis-sdk v0.0.0-20250809192709-a3e5dff1aa61 h1:7zb69SAfLAJhXoqXZaS0pq/p1Y9W19Pm4FjcwWjTVoE=
pain.agency/oasis-sdk v0.0.0-20250809192709-a3e5dff1aa61/go.mod h1:eyvDgfpHo+9bdB/AkMEMZ3ETeoSONTULVx9X4w9kGAU=
pain.agency/oasis-sdk v0.0.0-20250831105702-85385dca3a95 h1:BcB7/hnMnQIU+pERvQRGFMt9i0/o8XCnHbK1kYG3/K4=
pain.agency/oasis-sdk v0.0.0-20250831105702-85385dca3a95/go.mod h1:eyvDgfpHo+9bdB/AkMEMZ3ETeoSONTULVx9X4w9kGAU=

28
main.go
View File

@@ -202,8 +202,6 @@ func CreateUITab(chatJidStr string) ChatTabUI {
return
}
if strings.HasSuffix(chatTabs[chatJidStr].Messages[i].ImageURL, "mp4") || strings.HasSuffix(chatTabs[chatJidStr].Messages[i].ImageURL, "mp3") || strings.HasSuffix(chatTabs[chatJidStr].Messages[i].ImageURL, "gif") || strings.HasSuffix(chatTabs[chatJidStr].Messages[i].ImageURL, "webp") { // FIXME: This code is fucking terrible // TODO: Could check mime?
url, err := url.Parse(chatTabs[chatJidStr].Messages[i].ImageURL)
if err != nil {
@@ -396,8 +394,9 @@ func main() {
notifications = config.Notifications
client, err := oasisSdk.CreateClient(
&login,
func(client *oasisSdk.XmppClient, msg *oasisSdk.XMPPChatMessage) {
&login)
client.SetDmHandler(func(client *oasisSdk.XmppClient, msg *oasisSdk.XMPPChatMessage) {
correction := false
userJidStr := msg.From.Bare().String()
tab, ok := chatTabs[userJidStr]
@@ -467,8 +466,9 @@ func main() {
}
})
}
},
func(client *oasisSdk.XmppClient, muc *muc.Channel, msg *oasisSdk.XMPPChatMessage) {
})
client.SetGroupChatHandler(func(client *oasisSdk.XmppClient, muc *muc.Channel, msg *oasisSdk.XMPPChatMessage) {
// HACK: IGNORING ALL MESSAGES FROM CLASSIC MUC HISTORY IN PREPARATION OF MAM SUPPORT
ignore := false
correction := false
@@ -560,8 +560,9 @@ func main() {
}
})
}
},
func(_ *oasisSdk.XmppClient, from jid.JID, state oasisSdk.ChatState) {
})
client.SetChatstateHandler(func(_ *oasisSdk.XmppClient, from jid.JID, state oasisSdk.ChatState) {
switch state {
case oasisSdk.ChatStateComposing:
fyne.Do(func() {
@@ -585,10 +586,13 @@ func main() {
statBar.SetText("")
})
}
},
})
client.SetDeliveryReceiptHandler(
func(_ *oasisSdk.XmppClient, from jid.JID, id string) {
fmt.Printf("Delivered %s to %s", id, from.String())
},
})
client.SetReadReceiptHandler(
func(_ *oasisSdk.XmppClient, from jid.JID, id string) {
for _, tab := range chatTabs {
for i := len(tab.Messages) - 1; i >= 0; i-- {
@@ -603,8 +607,8 @@ func main() {
}
}
fmt.Printf("%s has seen %s\n", from.String(), id)
},
)
})
if err != nil {
log.Fatalln("Could not create client - " + err.Error())
}