本文整理汇总了Golang中github.com/mattermost/platform/model.Message.ToJson方法的典型用法代码示例。如果您正苦于以下问题:Golang Message.ToJson方法的具体用法?Golang Message.ToJson怎么用?Golang Message.ToJson使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/mattermost/platform/model.Message
的用法示例。
在下文中一共展示了Message.ToJson方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: PublishAndForget
func PublishAndForget(message *model.Message) {
go func() {
c := RedisClient()
result := c.Publish(message.TeamId, message.ToJson())
if result.Err() != nil {
l4g.Error("Failed to publish message err=%v, payload=%v", result.Err(), message.ToJson())
}
}()
}
示例2: TestSocket
func TestSocket(t *testing.T) {
th := Setup().InitBasic()
Client := th.BasicClient
team := th.BasicTeam
channel1 := th.BasicChannel
channel2 := th.CreateChannel(Client, team)
Client.Must(Client.AddChannelMember(channel1.Id, th.BasicUser2.Id))
url := "ws://localhost" + utils.Cfg.ServiceSettings.ListenAddress + model.API_URL_SUFFIX + "/users/websocket"
header1 := http.Header{}
header1.Set(model.HEADER_AUTH, "BEARER "+Client.AuthToken)
c1, _, err := websocket.DefaultDialer.Dial(url, header1)
if err != nil {
t.Fatal(err)
}
th.LoginBasic2()
header2 := http.Header{}
header2.Set(model.HEADER_AUTH, "BEARER "+Client.AuthToken)
c2, _, err := websocket.DefaultDialer.Dial(url, header2)
if err != nil {
t.Fatal(err)
}
time.Sleep(300 * time.Millisecond)
var rmsg model.Message
// Test sending message without a channelId
m := model.NewMessage(team.Id, "", "", model.ACTION_TYPING)
m.Add("RootId", model.NewId())
m.Add("ParentId", model.NewId())
c1.WriteJSON(m)
if err := c2.ReadJSON(&rmsg); err != nil {
t.Fatal(err)
}
t.Log(rmsg.ToJson())
if team.Id != rmsg.TeamId {
t.Fatal("Ids do not match")
}
if m.Props["RootId"] != rmsg.Props["RootId"] {
t.Fatal("Ids do not match")
}
// Test sending messsage to Channel you have access to
m = model.NewMessage(team.Id, channel1.Id, "", model.ACTION_TYPING)
m.Add("RootId", model.NewId())
m.Add("ParentId", model.NewId())
c1.WriteJSON(m)
if err := c2.ReadJSON(&rmsg); err != nil {
t.Fatal(err)
}
if team.Id != rmsg.TeamId {
t.Fatal("Ids do not match")
}
if m.Props["RootId"] != rmsg.Props["RootId"] {
t.Fatal("Ids do not match")
}
// Test sending message to Channel you *do not* have access too
m = model.NewMessage("", channel2.Id, "", model.ACTION_TYPING)
m.Add("RootId", model.NewId())
m.Add("ParentId", model.NewId())
c1.WriteJSON(m)
go func() {
if err := c2.ReadJSON(&rmsg); err != nil {
t.Fatal(err)
}
t.Fatal(err)
}()
time.Sleep(2 * time.Second)
}