add hub message

This commit is contained in:
gitGnome
2026-04-27 18:03:10 +02:00
parent ca084a21fa
commit 67203c5971
+20 -16
View File
@@ -1,10 +1,11 @@
package httpRequest
import (
"go-socket/packages/Enums/WsEventType"
"go-socket/packages/cache"
"net/http"
"time"
"go-socket/packages/convertions"
"go-socket/packages/types"
"go-socket/packages/wsServer"
@@ -105,12 +106,6 @@ func HandleChannelSendMessage(response http.ResponseWriter, request *http.Reques
return
}
channelId, err := convertions.StringToUuid(request.FormValue("channelid"))
if err != nil {
http.Error(response, "invalid channelid", http.StatusBadRequest)
return
}
msgContent := request.FormValue("msgContent")
attachedFile := request.FormValue("attachedFile")
@@ -119,13 +114,7 @@ func HandleChannelSendMessage(response http.ResponseWriter, request *http.Reques
return
}
// TODO add check in future
// if attachedFile != "" && !strings.HasPrefix(attachedFile, conn.Id.String()+"/") {
// http.Error(response, "invalid attachedFile", http.StatusBadRequest)
// return
// }
channel, err := getHubChannelIfValidWithResponseOnFail(ctx, response, hub, hubUser, request.FormValue("hubid"))
channel, err := getHubChannelIfValidWithResponseOnFail(ctx, response, hub, hubUser, request.FormValue("channelid"))
if err != nil {
return
}
@@ -140,8 +129,23 @@ func HandleChannelSendMessage(response http.ResponseWriter, request *http.Reques
continue
}
targetUser, ok :=
message := &types.Message{
Id: uuid.New(),
AttachedFile: "",
Content: msgContent,
Sender: user.Id,
Receiver: channel.Id,
CreatedAt: time.Now(),
}
wsServer.WsSendMessageCloseIfTimeout()
targetUser, err := cache.GetUserById(id)
if err != nil {
// todo Add to postgres in future
continue
}
wsServer.WsSendMessageCloseIfTimeout(targetUser, types.WsEventMessage{
Type: WsEventType.HubMessage,
Event: message,
})
}
}