You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
1.3 KiB

/**
* Created by GoLand.
* User: link1st
* Date: 2019-08-01
* Time: 10:40
*/
package models
import "gowebsocket/common"
const (
MessageTypeText = "text"
MessageCmdMsg = "msg"
MessageCmdEnter = "enter"
MessageCmdExit = "exit"
)
// 消息的定义
type Message struct {
Target string `json:"target"` // 目标
Type string `json:"type"` // 消息类型 text/img/
Msg string `json:"msg"` // 消息内容
From string `json:"from"` // 发送者
}
func NewTestMsg(from string, Msg string) (message *Message) {
message = &Message{
Type: MessageTypeText,
From: from,
Msg: Msg,
}
return
}
func getTextMsgData(cmd, uuId, msgId, message string) string {
textMsg := NewTestMsg(uuId, message)
head := NewResponseHead(msgId, cmd, common.OK, "Ok", textMsg)
return head.String()
}
// 文本消息
func GetMsgData(uuId, msgId, cmd, message string) string {
return getTextMsgData(cmd, uuId, msgId, message)
}
// 文本消息
func GetTextMsgData(uuId, msgId, message string) string {
return getTextMsgData("msg", uuId, msgId, message)
}
// 用户进入消息
func GetTextMsgDataEnter(uuId, msgId, message string) string {
return getTextMsgData("enter", uuId, msgId, message)
}
// 用户退出消息
func GetTextMsgDataExit(uuId, msgId, message string) string {
return getTextMsgData("exit", uuId, msgId, message)
}