mid prog
This commit is contained in:
@@ -0,0 +1,9 @@
|
|||||||
|
package WsMessageFrom
|
||||||
|
|
||||||
|
type WsMessageToUserFrom uint8
|
||||||
|
|
||||||
|
const (
|
||||||
|
Server WsMessageToUserFrom = iota
|
||||||
|
DirectMessage
|
||||||
|
Group
|
||||||
|
)
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
package main
|
|
||||||
|
|
||||||
type WsMessageToUserFrom uint8
|
|
||||||
|
|
||||||
const (
|
|
||||||
Server_ WsMessageToUserFrom = iota
|
|
||||||
DirectMessage_
|
|
||||||
Group_
|
|
||||||
)
|
|
||||||
+4
-3
@@ -20,9 +20,10 @@ type User struct {
|
|||||||
|
|
||||||
type Connection struct {
|
type Connection struct {
|
||||||
CreatedAt time.Time `json:"createdAt"`
|
CreatedAt time.Time `json:"createdAt"`
|
||||||
With uint32 `json:"-"`
|
Id uint32 `json:"id"`
|
||||||
IsFromUser bool `json:"isFromUser"`
|
RequestorId uint32 `json:"requestorId"`
|
||||||
IsAccepted bool `json:"isAccepted"`
|
RecipientId uint32 `json:"recipientId"`
|
||||||
|
MessagesBuf
|
||||||
}
|
}
|
||||||
|
|
||||||
type Group struct {
|
type Group struct {
|
||||||
|
|||||||
+6
-5
@@ -3,6 +3,7 @@ package main
|
|||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"errors"
|
"errors"
|
||||||
|
"go-socket/Enums/WsMessageFrom"
|
||||||
"log"
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"time"
|
"time"
|
||||||
@@ -84,7 +85,7 @@ func sendToAllMessageCloseIfTimeout(message *map[string]any) {
|
|||||||
|
|
||||||
func WsSendToUser(from *User, to *User, message string) {
|
func WsSendToUser(from *User, to *User, message string) {
|
||||||
var msg = map[string]any{
|
var msg = map[string]any{
|
||||||
"type": WsMessageToUserFrom(DirectMessage_),
|
"type": WsMessageFrom.DirectMessage,
|
||||||
"from": from.Id,
|
"from": from.Id,
|
||||||
"content": message,
|
"content": message,
|
||||||
}
|
}
|
||||||
@@ -99,7 +100,7 @@ func WsSendToGroup(group *Group, sender *User, message string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var msg = map[string]any{
|
var msg = map[string]any{
|
||||||
"type": WsMessageToUserFrom(Group_),
|
"type": WsMessageFrom.Group,
|
||||||
"from": group.Id,
|
"from": group.Id,
|
||||||
"sender": sender.Id,
|
"sender": sender.Id,
|
||||||
"content": message,
|
"content": message,
|
||||||
@@ -118,7 +119,7 @@ func handleUnauthenticatedMessage(ctx context.Context, user *User, userMessage *
|
|||||||
token, ok := (*userMessage)["token"].(string)
|
token, ok := (*userMessage)["token"].(string)
|
||||||
if !ok {
|
if !ok {
|
||||||
var msg = map[string]any{
|
var msg = map[string]any{
|
||||||
"type": WsMessageToUserFrom(Server_),
|
"type": WsMessageFrom.Server,
|
||||||
"error": "no token in message",
|
"error": "no token in message",
|
||||||
}
|
}
|
||||||
sendMessageCloseIfTimeout(user, &msg)
|
sendMessageCloseIfTimeout(user, &msg)
|
||||||
@@ -128,7 +129,7 @@ func handleUnauthenticatedMessage(ctx context.Context, user *User, userMessage *
|
|||||||
userId, err := TokenValidateGetId(token)
|
userId, err := TokenValidateGetId(token)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
var msg = map[string]any{
|
var msg = map[string]any{
|
||||||
"type": WsMessageToUserFrom(Server_),
|
"type": WsMessageFrom.Server,
|
||||||
"error": "invalid token",
|
"error": "invalid token",
|
||||||
}
|
}
|
||||||
sendMessageCloseIfTimeout(user, &msg)
|
sendMessageCloseIfTimeout(user, &msg)
|
||||||
@@ -138,7 +139,7 @@ func handleUnauthenticatedMessage(ctx context.Context, user *User, userMessage *
|
|||||||
userFromCache, err := CacheGetUserById(userId)
|
userFromCache, err := CacheGetUserById(userId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
var msg = map[string]any{
|
var msg = map[string]any{
|
||||||
"type": WsMessageToUserFrom(Server_),
|
"type": WsMessageFrom.Server,
|
||||||
"error": "user not found",
|
"error": "user not found",
|
||||||
}
|
}
|
||||||
sendMessageCloseIfTimeout(user, &msg)
|
sendMessageCloseIfTimeout(user, &msg)
|
||||||
|
|||||||
Reference in New Issue
Block a user