This guide provides documentation for Wickr IO Integrations. If you're using AWS Wickr, see AWS Wickr Administration Guide.
Wickr control messages
Wickr control messages are used to setup and configure the Wickr group and secure room conversations. These control messages will also be passed on to the integration software. You can use these control messages to construct and maintain the list of users that are part of group and secure conversations. The control JSON object contains the specific control message fields, as described in this table:
| Field | Description |
|---|---|
|
bor |
The burn on read time in seconds. |
|
changemask |
A number that is the sum of values associated with which fields are being changed by the control message. Table below defines these values. |
|
description |
The description of the secure room conversation. |
|
masters |
Array of Wickr IDs that are moderators for the secure room conversation. In group conversations all members should be moderators. |
|
members |
Array of Wickr IDs that are members of the group or secure room conversation. |
|
title |
The title of the secure room conversation |
|
ttl |
The title of the secure room conversation |
The changemask value is a number value that is created by adding the following
flag values, based on what fields are contained in the control
object:
| Field | Value |
|---|---|
|
Masters field |
1 |
|
Time to live |
2 |
|
Time filed |
4 |
|
Description |
8 |
|
Meeting ID key |
16 |
|
Burn on read |
32 |
|
File vault info |
64 |
The following sections contain examples of control messages, note the values of the
changemask fields.
Create room control message
The create room control message is used to create a group or secure room conversation. The following depicts a typical create room control message:
{ "control":{ "bor":0, "changemask":47, "description":"", "masters":["user001", "user002"], "members":["user001", "user002", "user003"], "msgtype":4001, "title":"Creating a room", "ttl":2592000 }, "message_id":"be452b00f89711e883588d1e7a946847", "msg_ts":"1544019125.75323", "msgtype":4001, "sender":"user002", "sender_type": "normal", "time": "7/11/23 5:12 PM", "time_iso": "2023-07-11 17:12:45.168", "ttl": "7/10/24 5:12 PM", "vgroupid":"S58a15186365d2125a9b417e71b99bcb29e3770078e157e953cfbe28443eb750" }
In the example above you will see the changemask value 47 which is equal to
the sum of the "burn on read" (32), "masters field" (1), "time to live" (2), "title field" (4)
and the "description" (8). The changemask values are used in other control messages as
well.
Modify room members control message
The modify room member control message is used to modify the list of users associated with a group or secure room conversation. Members can be added or removed from the conversation using this control message.
{ "control":{ "addedusers":[], "deletedusers":["testbot"], "msgtype":4002 }, "message_id":"d34058a0f89711e88760d7c8037ea946", "msg_ts":"1544019160.275884", "msgtype":4002, "sender":"user002", "sender_type": "normal", "time": "7/11/23 5:15 PM", "time_iso": "2023-07-11 17:15:49.079", "ttl": "7/10/24 5:15 PM", "vgroupid":"S58a15186365d2125a9b417e71b99bcb29e3770078e157e953cfbe28443eb750" }
The addedusers field identifies the list of users that were added to the
conversation. The deletedusers field identifies the list of users that were
removed from the conversation.
Note
This control message has a fixed set of fields and does not require the
changemask field.
Leave room control message
The leave room control message is sent when a user is leaving a secure room or group conversation. The sender is the user leaving the conversation:
{ "message_id":"f660fe80f89711e887d86d198d2ef374", "msg_ts":"1544019219.210107", "msgtype":4003, "sender":"user002", "sender_type": "normal", "time": "7/11/23 5:54 PM", "time_iso": "2023-07-11 17:54:31.688", "ttl": "7/10/24 5:54 PM", "vgroupid":"S58a15186365d2125a9b417e71b99bcb29e3770078e157e953cfbe28443eb750" }
This control message is a simple control message and does not contain the "control" JSON
object. The msgtype fields identifies the leave room action.
Modify room parameters control message
The modify room parameters control message is used to modify one or more fields associated with a group or secure room conversation.
{ "control":{ "bor":0, "changemask":47, "description":"change description", "masters":["user001", "user002"], "members":["user002","user002"], "msgtype":4004, "title":"Creating a room", "ttl":2592000 }, "message_id":"db805750f89711e8a01ab328ac0b2f04", "msg_ts":"1544019174.117057", "msgtype":4004, "sender":"user002", "sender_type": "normal", "time": "7/11/23 5:59 PM", "time_iso": "2023-07-11 17:59:57.473", "ttl": "7/10/24 5:59 PM", "vgroupid":"S58a15186365d2125a9b417e71b99bcb29e3770078e157e953cfbe28443eb750" }
This message is similar to the create room control message. The changemask
field has the same definition as well.
Delete room control message
The delete room control message is used to delete a specific group or secure room conversation.
{ "message_id":"06364710f89811e899418b6723464a0c", "msg_ts":"1544019245.773676", "msgtype":4005, "sender":"user002", "sender_type": "normal", "time": "7/11/23 6:03 PM", "time_iso": "2023-07-11 18:03:01.100", "ttl": "7/12/23 6:03 PM", "vgroupid":"S7879eb406958d83b991a5f2acb29e5ad8565a4faa41e1c5cbd7004c5586ddd5" }
This control message does not have a "control" JSON object. The msgtype
identifies that action to be performed.
Delete message
Here is the delete control message that will delete a message from all of the specified sender's devices. The sender is the sender of the control message, not the original sender of the message being deleted. The message will not be deleted from other users devices: The message to delete is identified by the id value in the control group.
{ "control": { "message_id":"a59a3520ca2f11e7a14cd1c8bf2a1be8", "isrecall":false, "msgtype":4011 }, "message_id":"aa4a3580ca2f11e7a156a34c720bab3d", "msg_ts":"1510769172.735225", "msgtype":4011, "sender":"user003", "time":"11/15/17 1:06 PM", "vgroupid":"Sb0e9297f2208dc86b63b288df8c226882e1052b65022edb9edb9ecf6e77db08" }
Here is the delete control message that will recall the message from all users the message was sent to:
{ "control": { "isrecall":true, "message_id":"c2855a10ca2f11e7afa15b0943d8c736", "msgtype":4011 }, "message_id":"c5bce5e0ca2f11e78946112c51861afa", "msg_ts":"1510769218.785332", "msgtype":4011, "sender":"user003", "time": "7/11/23 6:04 PM", "time_iso": "2023-07-11 18:04:03.772", "ttl": "7/10/24 6:04 PM", "vgroupid":"Sb0e9297f2208dc86b63b288df8c226882e1052b65022edb9edb9ecf6e77db08" }
Modify private property
This message identifies when a conversation is pinned or un-pinned. The "pinned" value will be true when the conversation is pinned, and "false" when it is being un-pinned.
{ "control": { "pinned":true, "msgtype":4014 }, "message_id":"c5bce5e0ca2f11e78946112c51861afa", "msg_ts":"1510769218.785332", "msgtype":4014, "sender":"user003", "sender_type": "normal", "time": "7/11/23 6:07 PM", "time_iso": "2023-07-11 18:07:21.981", "ttl": "7/10/24 6:07 PM", "vgroupid":"Sb0e9297f2208dc86b63b288df8c226882e1052b65022edb9edb9ecf6e77db08" }
This message identifies when a message is starred:
{ "control": { "attributes": [ { "isstarred": true, "msgid": "74f16f3011d511ee9456414dec7866b3" } ], "msgtype": 4012 }, "message_id": "7a38aa00201511eeb723c79384d92c63", "msg_ts": "1689098711.200122", "msgtype": 4012, "sender": "cn0623_01@amazon.com", "sender_type": "normal", "time": "7/11/23 6:05 PM", "time_iso": "2023-07-11 18:05:11.200", "ttl": "7/10/24 6:05 PM", "vgroupid": "S5d76ccc43c2bb3bc93e7273798ce8f4b89bfa8429b33888fbcd454e5d233a19" }