Use client.Queues to monitor pending messages and operations for an instance.
Common fields on every call:
| Field | Type | Required | Description |
|---|
InstanceID | string | Yes | Instance ID. |
InstanceToken | string | Yes | Instance token. |
Queues.ListMessages(ctx, req)
Lists the pending message queue.
messages, err := client.Queues.ListMessages(ctx, vzaps.QueueRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
})
fmt.Printf("%#v\n", messages)
Return: envelope { code, success, data } with count and messages[] (id, type, status, etc.).
Queues.RemoveMessage(ctx, req)
Removes one specific message from the queue.
_, err := client.Queues.RemoveMessage(ctx, vzaps.QueueMessageRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
MessageID: "queue-message-id",
})
Return: envelope { code, success, data } with message_id, count, details.
Queues.PurgeMessages(ctx, req)
Removes all pending items from the message queue. Use only when you are sure.
_, err := client.Queues.PurgeMessages(ctx, vzaps.QueueRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
})
Return: envelope { code, success, data } with removed count.
Queues.ListOperations(ctx, req)
Lists the pending operation queue.
operations, err := client.Queues.ListOperations(ctx, vzaps.QueueRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
})
fmt.Printf("%#v\n", operations)
Return: envelope { code, success, data } with pending operations queue.
Queues.RemoveOperation(ctx, req)
Removes one specific operation from the queue.
_, err := client.Queues.RemoveOperation(ctx, vzaps.QueueMessageRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
MessageID: "queue-operation-id",
})
Return: envelope { code, success, data } with message_id, count, details.
Queues.PurgeOperations(ctx, req)
Removes all pending items from the operation queue. Use only when you are sure.
_, err := client.Queues.PurgeOperations(ctx, vzaps.QueueRequest{
InstanceScopedRequest: vzaps.InstanceScopedRequest{
InstanceID: "VZ...",
InstanceToken: "instance-token",
},
})
Return: envelope { code, success, data } with removed count.