2023-06-30 09:54:08 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
package messages;
|
|
|
|
|
2023-07-17 13:51:31 +00:00
|
|
|
option go_package = "../gmproto";
|
2023-06-30 09:54:08 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
message RegisterRefreshPayload {
|
|
|
|
AuthMessage messageAuth = 1;
|
|
|
|
Device currBrowserDevice = 2;
|
|
|
|
int64 unixTimestamp = 3;
|
2023-07-09 15:39:05 +00:00
|
|
|
bytes signature = 4;
|
2023-07-09 11:16:52 +00:00
|
|
|
EmptyRefreshArr emptyRefreshArr = 13;
|
|
|
|
int32 messageType = 16;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
message EmptyRefreshArr {
|
2023-07-15 12:49:51 +00:00
|
|
|
EmptyArr emptyArr = 9;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
2023-07-15 12:49:51 +00:00
|
|
|
message StartAckMessage {
|
|
|
|
optional int32 count = 1;
|
2023-07-09 11:16:52 +00:00
|
|
|
}
|
|
|
|
|
2023-07-17 23:01:06 +00:00
|
|
|
message LongPollingPayload {
|
|
|
|
optional IncomingRPCMessage data = 2;
|
2023-07-15 12:49:51 +00:00
|
|
|
optional EmptyArr heartbeat = 3;
|
|
|
|
optional StartAckMessage ack = 4;
|
|
|
|
optional EmptyArr startRead = 5;
|
2023-07-09 11:16:52 +00:00
|
|
|
}
|
|
|
|
|
2023-07-17 23:01:06 +00:00
|
|
|
message IncomingRPCMessage {
|
2023-07-09 11:16:52 +00:00
|
|
|
string responseID = 1;
|
|
|
|
BugleRoute bugleRoute = 2;
|
|
|
|
string startExecute = 3;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
MessageType messageType = 5;
|
|
|
|
string finishExecute = 6;
|
|
|
|
string millisecondsTaken = 7;
|
2023-06-30 09:54:08 +00:00
|
|
|
Device mobile = 8;
|
|
|
|
Device browser = 9;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-17 23:01:06 +00:00
|
|
|
// Either a RPCMessageData or a RPCPairData encoded as bytes
|
|
|
|
bytes messageData = 12;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
string signatureID = 17;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
string timestamp = 21;
|
|
|
|
}
|
|
|
|
|
2023-07-17 23:01:06 +00:00
|
|
|
message RPCMessageData {
|
2023-07-09 11:16:52 +00:00
|
|
|
string sessionID = 1;
|
|
|
|
int64 timestamp = 3;
|
|
|
|
ActionType action = 4;
|
|
|
|
bool bool1 = 6;
|
|
|
|
bool bool2 = 7;
|
|
|
|
bytes encryptedData = 8;
|
|
|
|
bool bool3 = 9;
|
|
|
|
}
|
|
|
|
|
2023-07-15 23:11:25 +00:00
|
|
|
message RevokeRelayPairing {
|
|
|
|
AuthMessage authMessage = 1;
|
|
|
|
Device browser = 2;
|
|
|
|
}
|
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
message SendMessage {
|
|
|
|
Device mobile = 1;
|
|
|
|
SendMessageData messageData = 2;
|
|
|
|
SendMessageAuth messageAuth = 3;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
int64 TTL = 5; // might be something related to config
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
EmptyArr emptyArr = 9;
|
|
|
|
}
|
|
|
|
|
|
|
|
message SendMessageAuth {
|
|
|
|
string requestID = 1;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
bytes tachyonAuthToken = 6;
|
|
|
|
ConfigVersion configVersion = 7;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
message SendMessageInternal {
|
|
|
|
string requestID = 1;
|
|
|
|
ActionType action = 2;
|
|
|
|
bytes encryptedProtoData = 5;
|
|
|
|
string sessionID = 6;
|
|
|
|
}
|
|
|
|
/*
|
|
|
|
requestID = 1
|
|
|
|
|
|
|
|
encodedData = {
|
|
|
|
requestID = 1 ^same
|
|
|
|
|
|
|
|
sessionID = 6
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
message SendMessageData {
|
|
|
|
string requestID = 1;
|
|
|
|
BugleRoute bugleRoute = 2;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
bytes protobufData = 12;
|
2023-07-15 13:25:54 +00:00
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
MessageTypeData messageTypeData = 23;
|
|
|
|
}
|
|
|
|
|
|
|
|
message MessageTypeData {
|
2023-06-30 09:54:08 +00:00
|
|
|
EmptyArr emptyArr = 1;
|
2023-07-09 11:16:52 +00:00
|
|
|
MessageType messageType = 2;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message EmptyArr {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
message AuthMessage {
|
2023-06-30 13:26:46 +00:00
|
|
|
string requestID = 1;
|
2023-07-15 22:56:11 +00:00
|
|
|
optional string network = 3;
|
|
|
|
optional bytes tachyonAuthToken = 6;
|
2023-07-09 11:16:52 +00:00
|
|
|
ConfigVersion configVersion = 7;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
2023-06-30 12:49:32 +00:00
|
|
|
message ReceiveMessagesRequest {
|
2023-07-01 09:52:53 +00:00
|
|
|
AuthMessage auth = 1;
|
2023-06-30 12:49:32 +00:00
|
|
|
|
2023-07-01 09:52:53 +00:00
|
|
|
message UnknownEmptyObject1 {}
|
|
|
|
message UnknownEmptyObject2 {
|
|
|
|
UnknownEmptyObject1 unknown = 2;
|
|
|
|
}
|
|
|
|
optional UnknownEmptyObject2 unknown = 4;
|
2023-06-30 09:54:08 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message BaseData {
|
2023-06-30 13:26:46 +00:00
|
|
|
int64 TTL = 2;
|
2023-06-30 09:54:08 +00:00
|
|
|
EmptyArr emptyArr = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Device {
|
2023-06-30 13:26:46 +00:00
|
|
|
int64 userID = 1;
|
2023-07-09 11:16:52 +00:00
|
|
|
string sourceID = 2;
|
2023-06-30 09:54:08 +00:00
|
|
|
string network = 3;
|
|
|
|
}
|
|
|
|
|
2023-07-09 11:16:52 +00:00
|
|
|
enum BugleRoute {
|
|
|
|
UNKNOWN_BUGLE_ROUTE = 0;
|
|
|
|
DataEvent = 19;
|
|
|
|
PairEvent = 14;
|
|
|
|
}
|
|
|
|
/*
|
|
|
|
enum EventType {
|
|
|
|
UNKNOWN_EVENT_TYPE = 0;
|
|
|
|
ONE = 1;
|
|
|
|
TWO = 2;
|
|
|
|
THREE = 3;
|
|
|
|
FOUR = 4;
|
|
|
|
FIVE = 5;
|
|
|
|
SIXTEEN = 16;
|
|
|
|
}
|
|
|
|
*/
|
|
|
|
|
|
|
|
message ConfigVersion {
|
2023-07-15 13:25:54 +00:00
|
|
|
int32 Year = 3;
|
|
|
|
int32 Month = 4;
|
|
|
|
int32 Day = 5;
|
|
|
|
int32 V1 = 7;
|
|
|
|
int32 V2 = 9;
|
2023-07-09 11:16:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
enum ActionType {
|
2023-07-15 11:38:24 +00:00
|
|
|
UNSPECIFIED = 0;
|
2023-07-09 11:16:52 +00:00
|
|
|
LIST_CONVERSATIONS = 1;
|
2023-07-15 21:55:55 +00:00
|
|
|
LIST_CONVERSATIONS_SYNC = 1111; // fake value
|
2023-07-09 11:16:52 +00:00
|
|
|
LIST_MESSAGES = 2;
|
|
|
|
SEND_MESSAGE = 3;
|
2023-07-15 11:38:24 +00:00
|
|
|
MESSAGE_UPDATES = 4;
|
|
|
|
LIST_CONTACTS = 6;
|
|
|
|
CONVERSATION_UPDATES = 7;
|
|
|
|
GET_OR_CREATE_CONVERSATION = 9;
|
|
|
|
MESSAGE_READ = 10;
|
|
|
|
BROWSER_PRESENCE_CHECK = 11;
|
|
|
|
TYPING_UPDATES = 12;
|
|
|
|
SETTINGS_UPDATE = 13;
|
|
|
|
USER_ALERT = 14;
|
2023-07-09 17:35:29 +00:00
|
|
|
UPDATE_CONVERSATION = 15;
|
2023-07-09 11:16:52 +00:00
|
|
|
GET_UPDATES = 16;
|
2023-07-15 11:38:24 +00:00
|
|
|
ACK_BROWSER_PRESENCE = 17;
|
|
|
|
LIST_STICKER_SETS = 18;
|
|
|
|
LEAVE_RCS_GROUP = 19;
|
|
|
|
ADD_PARTICIPANT_TO_RCS_GROUP = 20;
|
2023-07-09 11:16:52 +00:00
|
|
|
GET_CONVERSATION_TYPE = 21;
|
|
|
|
NOTIFY_DITTO_ACTIVITY = 22;
|
|
|
|
DELETE_MESSAGE = 23;
|
2023-07-15 11:38:24 +00:00
|
|
|
INSTALL_STICKER_SET = 24;
|
2023-07-09 11:16:52 +00:00
|
|
|
RESEND_MESSAGE = 25;
|
2023-07-15 11:38:24 +00:00
|
|
|
GET_CONTACT_RCS_GROUP_STATUS = 26;
|
|
|
|
DOWNLOAD_MESSAGE = 27;
|
|
|
|
LIST_TOP_CONTACTS = 28;
|
|
|
|
GET_CONTACTS_THUMBNAIL = 29;
|
|
|
|
CHANGE_PARTICIPANT_COLOR = 30;
|
2023-07-09 11:16:52 +00:00
|
|
|
IS_BUGLE_DEFAULT = 31;
|
2023-07-15 11:38:24 +00:00
|
|
|
STICKER_USER_CONTEXT = 32;
|
|
|
|
FAVORITE_STICKER_PACKS = 33;
|
|
|
|
RECENT_STICKERS = 34;
|
|
|
|
UPDATE_RECENT_STICKERS = 35;
|
|
|
|
GET_FULL_SIZE_IMAGE = 36;
|
2023-07-09 17:35:29 +00:00
|
|
|
GET_PARTICIPANTS_THUMBNAIL = 37;
|
2023-07-09 11:16:52 +00:00
|
|
|
SEND_REACTION = 38;
|
2023-07-15 11:38:24 +00:00
|
|
|
SEND_REPLY = 39;
|
|
|
|
GET_BLOB_FOR_ATTACHMENT = 40;
|
|
|
|
GET_DEVICES_AVAILABLE_FOR_GAIA_PAIRING = 41;
|
|
|
|
CREATE_GAIA_PAIRING = 42;
|
|
|
|
GET_CONVERSATION = 43;
|
|
|
|
CREATE_GAIA_PAIRING_CLIENT_INIT = 44;
|
|
|
|
CREATE_GAIA_PAIRING_CLIENT_FINISHED = 45;
|
|
|
|
UNPAIR_GAIA_PAIRING = 46;
|
2023-07-09 11:16:52 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
enum MessageType {
|
|
|
|
UNKNOWN_MESSAGE_TYPE = 0;
|
|
|
|
BUGLE_MESSAGE = 2;
|
|
|
|
BUGLE_ANNOTATION = 16;
|
2023-06-30 12:49:32 +00:00
|
|
|
}
|