You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hyperstone/dota/dota_gcmessages_client_chat...

236 lines
6.4 KiB
Protocol Buffer

package dota;
import "dota_shared_enums.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
message CMsgClientToGCPrivateChatInvite {
optional string private_chat_channel_name = 1;
optional uint32 invited_account_id = 2;
}
message CMsgClientToGCPrivateChatKick {
optional string private_chat_channel_name = 1;
optional uint32 kick_account_id = 2;
}
message CMsgClientToGCPrivateChatPromote {
optional string private_chat_channel_name = 1;
optional uint32 promote_account_id = 2;
}
message CMsgClientToGCPrivateChatDemote {
optional string private_chat_channel_name = 1;
optional uint32 demote_account_id = 2;
}
message CMsgGCToClientPrivateChatResponse {
enum Result {
SUCCESS = 0;
FAILURE_CREATION_LOCK = 1;
FAILURE_SQL_TRANSACTION = 2;
FAILURE_SDO_LOAD = 3;
FAILURE_NO_PERMISSION = 4;
FAILURE_ALREADY_MEMBER = 5;
FAILURE_NOT_A_MEMBER = 7;
FAILURE_NO_REMAINING_ADMINS = 8;
FAILURE_NO_ROOM = 9;
FAILURE_CREATION_RATE_LIMITED = 10;
FAILURE_UNKNOWN_CHANNEL_NAME = 11;
FAILURE_UNKNOWN_USER = 12;
FAILURE_UNKNOWN_ERROR = 13;
FAILURE_CANNOT_KICK_ADMIN = 14;
FAILURE_ALREADY_ADMIN = 15;
}
optional string private_chat_channel_name = 1;
optional CMsgGCToClientPrivateChatResponse.Result result = 2 [default = SUCCESS];
optional string username = 3;
}
message CMsgClientToGCPrivateChatInfoRequest {
optional string private_chat_channel_name = 1;
}
message CMsgGCToClientPrivateChatInfoResponse {
message Member {
optional uint32 account_id = 1;
optional string name = 2;
optional uint32 status = 3;
}
optional string private_chat_channel_name = 1;
repeated CMsgGCToClientPrivateChatInfoResponse.Member members = 2;
optional uint32 creator = 3;
optional uint32 creation_date = 4;
}
message CMsgDOTAJoinChatChannel {
optional string channel_name = 2;
optional DOTAChatChannelType_t channel_type = 4 [default = DOTAChannelType_Regional];
}
message CMsgDOTALeaveChatChannel {
optional uint64 channel_id = 1;
}
message CMsgDOTAClientIgnoredUser {
optional uint32 ignored_account_id = 1;
}
message CMsgDOTAChatMessage {
message DiceRoll {
optional int32 roll_min = 1;
optional int32 roll_max = 2;
optional int32 result = 3;
}
optional uint32 account_id = 1;
optional uint64 channel_id = 2;
optional string persona_name = 3;
optional string text = 4;
optional uint32 timestamp = 5;
optional uint32 suggest_invite_account_id = 6;
optional string suggest_invite_name = 7;
optional uint32 fantasy_draft_owner_account_id = 8;
optional uint32 fantasy_draft_player_account_id = 9;
optional uint32 event_id = 10;
optional bool suggest_invite_to_lobby = 11;
optional uint32 event_points = 12;
optional bool coin_flip = 13;
optional int32 player_id = 14 [default = -1];
optional uint32 share_profile_account_id = 15;
optional uint32 channel_user_id = 16;
optional CMsgDOTAChatMessage.DiceRoll dice_roll = 17;
optional uint64 share_party_id = 18;
optional uint64 share_lobby_id = 19;
optional uint64 share_lobby_custom_game_id = 20;
optional string share_lobby_passkey = 21;
optional uint32 private_chat_channel_id = 22;
optional uint32 status = 23;
optional bool battle_cup_victory = 24;
}
message CMsgDOTAChatMember {
optional fixed64 steam_id = 1;
optional string persona_name = 2;
optional uint32 channel_user_id = 3;
optional uint32 status = 4;
}
message CMsgDOTAJoinChatChannelResponse {
enum Result {
JOIN_SUCCESS = 0;
INVALID_CHANNEL_TYPE = 1;
ACCOUNT_NOT_FOUND = 2;
ACH_FAILED = 3;
USER_IN_TOO_MANY_CHANNELS = 4;
RATE_LIMIT_EXCEEDED = 5;
CHANNEL_FULL = 6;
CHANNEL_FULL_OVERFLOWED = 7;
FAILED_TO_ADD_USER = 8;
CHANNEL_TYPE_DISABLED = 9;
PRIVATE_CHAT_CREATE_FAILED = 10;
PRIVATE_CHAT_NO_PERMISSION = 11;
PRIVATE_CHAT_CREATE_LOCK_FAILED = 12;
PRIVATE_CHAT_KICKED = 13;
}
optional uint32 response = 1;
optional string channel_name = 2;
optional fixed64 channel_id = 3;
optional uint32 max_members = 4;
repeated CMsgDOTAChatMember members = 5;
optional DOTAChatChannelType_t channel_type = 6 [default = DOTAChannelType_Regional];
optional CMsgDOTAJoinChatChannelResponse.Result result = 7 [default = JOIN_SUCCESS];
optional bool gc_initiated_join = 8;
optional uint32 channel_user_id = 9;
optional string welcome_message = 10;
}
message CMsgDOTAChatChannelFullUpdate {
optional fixed64 channel_id = 1;
repeated CMsgDOTAChatMember members = 2;
}
message CMsgDOTAOtherJoinedChatChannel {
optional fixed64 channel_id = 1;
optional string persona_name = 2;
optional fixed64 steam_id = 3;
optional uint32 channel_user_id = 4;
optional uint32 status = 5;
}
message CMsgDOTAOtherLeftChatChannel {
optional fixed64 channel_id = 1;
optional fixed64 steam_id = 2;
optional uint32 channel_user_id = 3;
}
message CMsgDOTAChatChannelMemberUpdate {
message JoinedMember {
optional fixed64 steam_id = 1;
optional string persona_name = 2;
optional uint32 channel_user_id = 3;
optional uint32 status = 4;
}
optional fixed64 channel_id = 1;
repeated fixed64 left_steam_ids = 2;
repeated CMsgDOTAChatChannelMemberUpdate.JoinedMember joined_members = 3;
}
message CMsgDOTARequestChatChannelList {
}
message CMsgDOTARequestChatChannelListResponse {
message ChatChannel {
optional string channel_name = 1;
optional uint32 num_members = 2;
optional DOTAChatChannelType_t channel_type = 3 [default = DOTAChannelType_Regional];
}
repeated CMsgDOTARequestChatChannelListResponse.ChatChannel channels = 1;
}
message CMsgDOTAChatGetUserList {
optional fixed64 channel_id = 1;
}
message CMsgDOTAChatGetUserListResponse {
message Member {
optional fixed64 steam_id = 1;
optional string persona_name = 2;
optional uint32 channel_user_id = 3;
optional uint32 status = 4;
}
optional fixed64 channel_id = 1;
repeated CMsgDOTAChatGetUserListResponse.Member members = 2;
}
message CMsgDOTAChatGetMemberCount {
optional string channel_name = 1;
optional DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
}
message CMsgDOTAChatGetMemberCountResponse {
optional string channel_name = 1;
optional DOTAChatChannelType_t channel_type = 2 [default = DOTAChannelType_Regional];
optional uint32 member_count = 3;
}
message CMsgDOTAChatRegionsEnabled {
message Region {
optional float min_latitude = 1;
optional float max_latitude = 2;
optional float min_longitude = 3;
optional float max_longitude = 4;
}
optional bool enable_all_regions = 1;
repeated CMsgDOTAChatRegionsEnabled.Region enabled_regions = 2;
}