|
6 | 6 | "crypto/tls" |
7 | 7 | "fmt" |
8 | 8 | "github.com/takenet/lime-go" |
| 9 | + "github.com/takenet/lime-go/chat" |
9 | 10 | "log" |
10 | 11 | "net" |
11 | 12 | "os" |
@@ -50,38 +51,21 @@ func main() { |
50 | 51 |
|
51 | 52 | log.Println("Session established") |
52 | 53 |
|
53 | | - presenceUri, _ := lime.ParseLimeURI("/presence") |
| 54 | + reqCmd := &lime.RequestCommand{} |
| 55 | + reqCmd.SetURIString("/presence"). |
| 56 | + SetResource(&chat.Presence{ |
| 57 | + Status: chat.PresenceStatusAvailable, |
| 58 | + RoutingRule: chat.RoutingRuleIdentity}). |
| 59 | + SetMethod(lime.CommandMethodSet). |
| 60 | + SetID(lime.NewEnvelopeID()) |
54 | 61 |
|
55 | | - presence := lime.JsonDocument{ |
56 | | - "status": "available", |
57 | | - "routingRule": "identity", |
58 | | - } |
59 | | - |
60 | | - cmd, err := client.ProcessCommand(ctx, &lime.RequestCommand{ |
61 | | - Command: lime.Command{ |
62 | | - Envelope: lime.Envelope{ |
63 | | - ID: lime.NewEnvelopeID(), |
64 | | - To: lime.Node{ |
65 | | - Identity: lime.Identity{Name: "postmaster", Domain: "msging.net"}, |
66 | | - Instance: "", |
67 | | - }, |
68 | | - }, |
69 | | - Method: lime.CommandMethodSet, |
70 | | - Type: &lime.MediaType{ |
71 | | - Type: "application", |
72 | | - Subtype: "vnd.lime.presence", |
73 | | - Suffix: "json", |
74 | | - }, |
75 | | - Resource: &presence, |
76 | | - }, |
77 | | - URI: presenceUri, |
78 | | - }) |
| 62 | + respCmd, err := client.ProcessCommand(ctx, reqCmd) |
79 | 63 | if err != nil { |
80 | 64 | log.Fatalln(err) |
81 | 65 | } |
82 | 66 |
|
83 | | - if cmd != nil { |
84 | | - log.Printf("Command response received - ID: %v - Status: %v\n", cmd.ID, cmd.Status) |
| 67 | + if respCmd != nil { |
| 68 | + log.Printf("Command response received - ID: %v - Status: %v\n", respCmd.ID, respCmd.Status) |
85 | 69 | } |
86 | 70 |
|
87 | 71 | scanner := bufio.NewScanner(os.Stdin) |
|
0 commit comments