package Net::IM::YMSG::Constants 0.01;

use 5.14.0;
use strict;
use warnings;
use Net::IM::Util "const";

# "Public" constants: things we don't need internally but which will make the
# user's life easier; maybe.
const YMSG_TYPING_STARTED     => 1;
const YMSG_TYPING_STOPPED     => 0;
const YMSG_STATUS_ONLINE      => 0x00;
const YMSG_STATUS_AVAILABLE   => 0x00;
const YMSG_STATUS_NOTIFY      => 0x01;
const YMSG_STATUS_BRB         => 0x01;
const YMSG_STATUS_BUSY        => 0x02;
const YMSG_STATUS_NOTATHOME   => 0x03;
const YMSG_STATUS_NOTATDESK   => 0x04;
const YMSG_STATUS_NOTINOFFICE => 0x05;
const YMSG_STATUS_ONPHONE     => 0x06;
const YMSG_STATUS_ONVACATION  => 0x07;
const YMSG_STATUS_OUTTOLUNCH  => 0x08;
const YMSG_STATUS_STEPPEDOUT  => 0x09;
const YMSG_STATUS_INVISIBLE   => 0x0C;
const YMSG_STATUS_CUSTOM      => 0x63;
const YMSG_STATUS_IDLE        => 0x3E7;
const YMSG_STATUS_OFFLINE     => 0x5A55AA56;
const YMSG_STATUS_TYPING      => 0x16;
const YMSG_STATUS_HTTP_AVATAR => 1718886472;

# Services and constants.
const YMSG_HEADER                  => "YMSG";     # Standard packet header
const YMSG_VER                     => 0x10;       # Protocol version (16)
const YMSG_SEP                     => "\xC0\x80"; # Argument separator
const YMSG_SERVICE_LOGON           => 0x01;
const YMSG_SERVICE_LOGOFF          => 0x02;
const YMSG_SERVICE_ISAWAY          => 0x03;
const YMSG_SERVICE_ISBACK          => 0x04;
const YMSG_SERVICE_IDLE            => 0x05;
const YMSG_SERVICE_MESSAGE         => 0x06;
const YMSG_SERVICE_IDACT           => 0x07;
const YMSG_SERVICE_IDDEACT         => 0x08;
const YMSG_SERVICE_MAILSTAT        => 0x09;
const YMSG_SERVICE_USERSTAT        => 0x0A;
const YMSG_SERVICE_NEWMAIL         => 0x0B;
const YMSG_SERVICE_CHATINVITE      => 0x0C;
const YMSG_SERVICE_CALENDAR        => 0x0D;
const YMSG_SERVICE_NEWPERSONALMAIL => 0x0E;
const YMSG_SERVICE_NEWCONTACT      => 0x0F;
const YMSG_SERVICE_ADDIDENT        => 0x10;
const YMSG_SERVICE_ADDIGNORE       => 0x11;
const YMSG_SERVICE_PING            => 0x12;
const YMSG_SERVICE_GROUPRENAME     => 0x13;
const YMSG_SERVICE_SYSMESSAGE      => 0x14;
const YMSG_SERVICE_PASSTHROUGH2    => 0x16;
const YMSG_SERVICE_CONFINVITE      => 0x18;
const YMSG_SERVICE_CONFLOGON       => 0x19;
const YMSG_SERVICE_CONFDECLINE     => 0x1A;
const YMSG_SERVICE_CONFLOGOFF      => 0x1B;
const YMSG_SERVICE_CONFADDINVITE   => 0x1C;
const YMSG_SERVICE_CONFMSG         => 0x1D;
const YMSG_SERVICE_CHATLOGON       => 0x1E;
const YMSG_SERVICE_CHATLOGOFF      => 0x1F;
const YMSG_SERVICE_CHATMSG         => 0x20;
const YMSG_SERVICE_GAMELOGON       => 0x28;
const YMSG_SERVICE_GAMELOGOFF      => 0x29;
const YMSG_SERVICE_GAMEMSG         => 0x2A;
const YMSG_SERVICE_FILETRANSFER    => 0x46;
const YMSG_SERVICE_VOICECHAT       => 0x4A;
const YMSG_SERVICE_NOTIFY          => 0x4B;
const YMSG_SERVICE_VERIFY          => 0x4C;
const YMSG_SERVICE_P2PFILEXFER     => 0x4D;
const YMSG_SERVICE_PEERTOPEER      => 0x4F;
const YMSG_SERVICE_AUTHRESP        => 0x54;
const YMSG_SERVICE_LIST            => 0x55; # after auth; serv sends us our first/last name
const YMSG_SERVICE_LIST_Y15        => 0xF1; # getting the buddy list
const YMSG_SERVICE_AUTH            => 0x57;
const YMSG_SERVICE_ADDBUDDY        => 0x83;
const YMSG_SERVICE_REMBUDDY        => 0x84;
const YMSG_SERVICE_IGNORECONTACT   => 0x85;
const YMSG_SERVICE_REJECTCONTACT   => 0x86;
const YMSG_SERVICE_FRIEND_ICON     => 0xBD;
const YMSG_SERVICE_FRIEND_ICON_DOWNLOAD => 0xBE;
const YMSG_SERVICE_ACCEPTCONTACT   => 0xD6;
const YMSG_SERVICE_DISCONNECT      => 0x07D1;
const YMSG_SERVICE_ICON_UPLOADED   => 0xC2;
const YMSG_SERVICE_BUDDYSTATUS     => 0xC6;
const YMSG_SERVICE_HTTP_AVATAR     => 26233;

# Message fields.
const YMSG_FLD_INVALID => -1;
const YMSG_FLD_USER_NAME => 0;
const YMSG_FLD_CURRENT_ID => 1;
const YMSG_FLD_ACTIVE_ID => 2;
const YMSG_FLD_USER_ID => 3;
const YMSG_FLD_SENDER => 4;
const YMSG_FLD_TARGET_USER => 5;
const YMSG_FLD_PASSWORD => 6;
const YMSG_FLD_BUDDY => 7;
const YMSG_FLD_NUM_BUDDIES => 8;
const YMSG_FLD_NUM_EMAILS => 9;
const YMSG_FLD_AWAY_STATUS => 10;
const YMSG_FLD_SESSION_ID => 11;
const YMSG_FLD_IP_ADDRESS => 12;
const YMSG_FLD_FLAG => 13;
const YMSG_FLD_MSG => 14;
const YMSG_FLD_TIME => 15;
const YMSG_FLD_ERR_MSG => 16;
const YMSG_FLD_PORT => 17;
const YMSG_FLD_MAIL_SUBJECT => 18;
const YMSG_FLD_AWAY_MSG => 19;
const YMSG_FLD_URL => 20;
const YMSG_FLD_ALERT_TIME => 21;
const YMSG_FLD_NEWS => 22;
const YMSG_FLD_DEV_SPEED => 23;
const YMSG_FLD_WEB_ID => 24;
const YMSG_FLD_USER_ALERT_STATS => 25;
const YMSG_FLD_STATS_DATA => 26;
const YMSG_FLD_FILE_NAME => 27;
const YMSG_FLD_FILE_SIZE => 28;
const YMSG_FLD_FILE_DATA => 29;
const YMSG_FLD_SYMANTEC_IPADDR => 30;
const YMSG_FLD_COMMAND => 31;
const YMSG_FLD_STATUS => 32;
const YMSG_FLD_NUM_NEWS => 33;
const YMSG_FLD_NUM_MSGS => 34;
const YMSG_FLD_ITEM => 35;
const YMSG_FLD_OLD_GRP_NAME => 36;
const YMSG_FLD_NEW_GRP_NAME => 37;
const YMSG_FLD_EXPIRATION_TIME => 38;
const YMSG_FLD_NUM_PERSONAL_MSGS => 39;
const YMSG_FLD_SYS_MSG_CODE => 40;
const YMSG_FLD_MSG_NUM_DUMMY => 41;
const YMSG_FLD_FROM_EMAIL => 42;
const YMSG_FLD_FROM_NAME => 43;
const YMSG_FLD_ADD_ID => 44;
const YMSG_FLD_DELETE_ID => 45;
const YMSG_FLD_DEBUG_INFO => 46;
const YMSG_FLD_CUSTOM_DND_STATUS => 47;
const YMSG_FLD_CONTAINS_TAGS => 48;
const YMSG_FLD_APPNAME => 49;
const YMSG_FLD_NET2PHONE_CALL_LEN => 50;
const YMSG_FLD_AD_SPACE_ID => 51;
const YMSG_FLD_USES_IMIP_CLIENT => 52;
const YMSG_FLD_SHORTCUT => 53;
const YMSG_FLD_FEED_VER => 54;
const YMSG_FLD_INVITOR_NAME => 50;
const YMSG_FLD_INVITEE_NAME => 51;
const YMSG_FLD_INVITED_USER => 52;
const YMSG_FLD_JOINED_USER => 53;
const YMSG_FLD_DECLINED_USER => 54;
const YMSG_FLD_UNAVAILABLE_USER => 55;
const YMSG_FLD_LEFT_USER => 56;
const YMSG_FLD_ROOM_NAME => 57;
const YMSG_FLD_CONF_TOPIC => 58;
const YMSG_FLD_COOKIE => 59;
const YMSG_FLD_DEVICE_TYPE => 60;
const YMSG_FLD_USER_TYPE => 60;
const YMSG_FLD_WEBCAM_TOKEN => 61;
const YMSG_FLD_WEBCAM_STATUS => 62;
const YMSG_FLD_TIMED_P2P_CONN_FLG => 61;
const YMSG_FLD_IMV_ID => 63;
const YMSG_FLD_IMV_FLAG => 64;
const YMSG_FLD_BUDDY_GRP_NAME => 65;
const YMSG_FLD_ERROR_CODE => 66;
const YMSG_FLD_NEWBUDDYGRP_NAME => 67;
const YMSG_FLD_PHONE_CARRIER_CODE => 68;
const YMSG_FLD_SCREEN_NAME => 69;
const YMSG_FLD_CONVERSE_COMMAND => 70;
const YMSG_FLD_CONVERSE_IDENTITY => 71;
const YMSG_FLD_CONVERSE_OTHERGUY => 72;
const YMSG_FLD_CONVERSE_TOPIC => 73;
const YMSG_FLD_CONVERSE_COMMENT => 74;
const YMSG_FLAG_CONVERSE_MAX => 75;
const YMSG_FLAG_CONVERSE_URL => 76;
const YMSG_FLAG_CONVERSE_YOURCOMMENT => 77;
const YMSG_FLD_STAT_TYPE => 78;
const YMSG_FLD_IMIP_SERVICE => 79;
const YMSG_FLD_IMIP_LOGIN => 80;
const YMSG_FLD_ALERT_TYPEID => 81;
const YMSG_FLD_ALERT_SUBTYPEID => 82;
const YMSG_FLD_ALERT_DOC_TITLE => 83;
const YMSG_FLD_ALERT_PRIO_LEVEL => 84;
const YMSG_FLD_ALERT_TYPE => 85;
const YMSG_FLD_ALERT_COUNTRY => 86;
const YMSG_FLD_BUDDY_LIST => 87;
const YMSG_FLD_IGNORE_LIST => 88;
const YMSG_FLD_IDENTITY_LIST => 89;
const YMSG_FLD_HAS_MAIL => 90;
const YMSG_FLD_CONVERSE_CMD_DECTEXT => 90;
const YMSG_FLD_SMS_PHONE => 70;
const YMSG_FLD_ANON_NAME => 91;
const YMSG_FLD_ANON_ID => 92;
const YMSG_T_COOKIE_EXPIRE => 93;
const YMSG_FLD_CHALLENGE => 94;
const YMSG_FLD_OLD_PASSWORD => 96;
const YMSG_FLD_UTF8_FLAG => 97;
const YMSG_FLD_COUNTRY_CODE => 98;
const YMSG_FLD_COBRAND_CODE => 99;
const YMSG_FLD_DATE => 100;
const YMSG_FLD_IMV_DATA => 101;
const YMSG_FLD_WEBCAM_FARM => 102;
const YMSG_FLD_NETSTAT_MSG => 1000;
const YMSG_FLD_SERVER_TYPE => 1001;
const YMSG_FLD_TRY_P2P => 1002;
const YMSG_FLD_P2P_CONN_STATE => 1003;
const YMSG_FLD_INTERNET_CONN_TYPE => 1004;
const YMSG_NEED_CMD_RETURN => 1005;
const YMSG_FLD_CHAT_IGNORE_USER => 103;
const YMSG_FLD_CHAT_ROOM_NAME => 104;
const YMSG_FLD_CHAT_ROOM_TOPIC => 105;
const YMSG_FLD_CHAT_ROOM_URL => 106;
const YMSG_FLD_CHAT_ROOM_PARAMETER => 107;
const YMSG_FLD_CHAT_NUM_USERS => 108;
const YMSG_FLD_CHAT_ROOM_USER_NAME => 109;
const YMSG_FLD_CHAT_ROOM_USER_AGE => 110;
const YMSG_FLD_CHAT_ROOM_USER_GENDER => 111;
const YMSG_FLD_CHAT_ROOM_USER_TIMESTAMP => 112;
const YMSG_FLD_CHAT_ROOM_USER_FLAG => 113;
const YMSG_FLD_CHAT_ERR_NO => 114;
const YMSG_FLD_CHAT_SIMILAR_ROOM => 115;
const YMSG_FLD_CHAT_EMOT_MSG => 116;
const YMSG_FLD_CHAT_MSG => 117;
const YMSG_FLD_CHAT_INVITED_USER => 118;
const YMSG_FLD_CHAT_INVITER => 119;
const YMSG_FLD_CHAT_EXTENDED_DATA_ID => 120;
const YMSG_FLD_CHAT_EXTENDED_DATA => 121;
const YMSG_FLD_CHAT_USER_SETTINGS => 122;
const YMSG_FLD_CHAT_LOGOFF_MSG => 123;
const YMSG_FLD_CHAT_MSG_TYPE => 124;
const YMSG_FLD_CHAT_FRAME_NAME => 125;
const YMSG_FLD_CHAT_FLG => 126;
const YMSG_FLD_CHAT_ROOM_TYPE => 127;
const YMSG_FLD_CHAT_ROOM_CATEGORY => 128;
const YMSG_FLD_CHAT_ROOM_SPACEID => 129;
const YMSG_FLD_CHAT_VOICE_AUTH => 130;
const YMSG_FLD_ALERT_BUTTONLABEL => 131;
const YMSG_FLD_ALERT_BUTTONLINK => 132;
const YMSG_FLD_ALERT_MIN_DIMENSION => 133;
const YMSG_FLD_BIZ_MAIL_TEXT => 134;
const YMSG_FLD_VERSION => 135;
const YMSG_FLD_COBRAND_ROOM_INFO => 136;
const YMSG_FLD_IDLE_TIME => 137;
const YMSG_FLD_NO_IDLE_TIME => 138;
const YMSG_FLD_CHAT_USER_NICKNAME => 141;
const YMSG_FLD_CHAT_USER_LOCATION => 142;
const YMSG_FLD_PING_INTERVAL => 143;
const YMSG_FLD_KEEP_ALIVE_INTERVAL => 144;
const YMSG_FLD_CPU_TYPE => 145;
const YMSG_FLD_OS_VERSION => 146;
const YMSG_FLD_TIME_ZONE => 147;
const YMSG_FLD_TIME_BIAS => 148;
const YMSG_FLD_BLINDED_USERID => 149;
const YMSG_FLD_CACHE_CRYPTO_KEY => 150;
const YMSG_FLD_LOCAL_CRYPTO_KEY => 151;
const YMSG_FLD_YPC_PREFS => 153;
const YMSG_FLD_PARENT_ID => 154;
const YMSG_FLD_MSG_NUM => 159;
const YMSG_FLD_GAME_ID => 180;
const YMSG_FLD_GAME_NAME => 181;
const YMSG_FLD_GAME_DATA => 182;
const YMSG_FLD_GAME_URL => 183;
const YMSG_FLD_STATUS_DATA => 184;
const YMSG_FLD_INVISIBLE_TO => 185;
const YMSG_FLD_VISIBLE_TO => 186;
const YMSG_FLD_STATUS_LINK_TYPE => 187;
const YMSG_FLD_AVATAR_FLAG => 190;
const YMSG_FLD_AVATAR_MOOD_ID => 191;
const YMSG_FLD_ICON_CHECKSUM => 192;
const YMSG_FLD_ICON_DATA => 193;
const YMSG_FLD_SEQUENCE_NO => 194;
const YMSG_FLD_MAX_SEQUENCE_NO => 195;
const YMSG_FLD_ANTIBOT_TEXT => 196;
const YMSG_FLD_AVATAR_HASH => 197;
const YMSG_FLD_AVATAR_USER => 198;
const YMSG_FLD_WIDTH => 199;
const YMSG_FLD_HEIGHT => 200;
const YMSG_FLD_ALERT_DATA => 203;
const YMSG_FLD_AVATAR_DEFMOOD => 204;
const YMSG_FLD_AVATAR_ZOOM => 205;
const YMSG_FLD_DISPLAY_TYPE => 206;
const YMSG_FLD_BTUSER_ID => 207;
const YMSG_FLD_T_COOKIE => 208;
const YMSG_FLD_STATS_BUFFER => 211;
const YMSG_FLD_APPLY_TO_ALL => 212;
const YMSG_FLD_SHOW_MY_AVATAR_IN_FRIEND_TREE => 213;
const YMSG_FLD_GAME_PROWLER_PREF => 214;
const YMSG_FLD_VAS_USER => 215;
const YMSG_FLD_NICKNAME => 216;
const YMSG_FLD_YPM_KEY => 217;
const YMSG_FLD_AVATAR_COUNT => 218;
const YMSG_FLD_ANTIBOT_URL => 225;
const YMSG_FLD_ANTIBOT_SECRET => 226;
const YMSG_FLD_ANTIBOT_RESPONSE => 227;
const YMSG_FLD_AUDIBLE_ID => 230;
const YMSG_FLD_AUDIBLE_TEXT => 231;
const YMSG_FLD_AUDIBLE_HASH => 232;
const YMSG_FLD_EE_CONFIRM_DELIVERY => 160;
const YMSG_FLD_EE_SENDER => 161;
const YMSG_FLD_EE_NONCE => 162;
const YMSG_FLD_FEATURE_ID => 221;
const YMSG_FLD_ACTION_TYPE => 222;
const YMSG_FLD_UNAUTH => 223;
const YMSG_FLD_GROUP => 224;
const YMSG_FLD_IGNORED_USER => 236;
const YMSG_FLD_PROFILE_ID => 237;
const YMSG_FLD_INVISIBLE_TO_FRIEND => 238;
const YMSG_FLD_VISIBLE_TO_FRIEND => 239;
const YMSG_FLD_CONTACT_INFO => 240;
const YMSG_FLD_CLOUD_ID => 241;
const YMSG_FLD_BRANDING_ID => 242;
const YMSG_FLD_NUM_ATTRIBUTED_BUDDIES => 243;
const YMSG_FLD_CAPABILITY_MATRIX => 244;
const YMSG_FLD_OBJECT_ID => 245;
const YMSG_FLD_OBJECT_NAME => 246;
const YMSG_FLD_META_DATA => 247;
const YMSG_FLD_OBJECT_SIZE => 248;
const YMSG_FLD_TRANSFER_TYPE => 249;
const YMSG_FLD_TRANSFER_TAG => 250;
const YMSG_FLD_TOKEN => 251;
const YMSG_FLD_HASH => 252;
const YMSG_FLD_CHECKSUM => 253;
const YMSG_FLD_LASTNAME => 254;
const YMSG_FLD_DATA => 257;
const YMSG_FLD_APP_ID => 258;
const YMSG_FLD_INSTANCE_ID => 259;
const YMSG_FLD_ALERT_ID => 260;
const YMSG_FLD_OPI_STATUS => 261;
const YMSG_FLD_APP_REGISTER => 262;
const YMSG_FLD_CHECKLOGIN_STATUS => 263;
const YMSG_FLD_TARGET_GROUP => 264;
const YMSG_FLD_FT_SESSION_ID => 265;
const YMSG_FLD_TOTAL_FILE_COUNT => 266;
const YMSG_FLD_THUMBNAIL => 267;
const YMSG_FLD_FILE_INFO => 268;
const YMSG_FLD_SPAMMER_ID => 269;
const YMSG_FLD_INITIATOR => 270;
const YMSG_FLD_FT_ONE_FILE_DONE => 271;
const YMSG_FLD_XPOS => 272;
const YMSG_FLD_YPOS => 273;
const YMSG_FLD_MSG_RECORD => 274;
const YMSG_FLD_FLAG_MINGLE_USER => 275;
const YMSG_FLD_ABUSE_SIGNATURE => 276;
const YMSG_FLD_LOGIN_Y_COOKIE => 277;
const YMSG_FLD_LOGIN_T_COOKIE => 278;
const YMSG_FLD_LOGIN_CRUMB => 279;
const YMSG_FLD_BUDDY_DETAIL => 280;
const YMSG_FLD_VALID_CLIENT_COOKIES => 281;
const YMSG_FLD_NUM_LCS_BUDDIES => 282;
const YMSG_FLD_IS_RELOGIN => 283;
const YMSG_FLD_START_OF_RECORD => 300;
const YMSG_FLD_END_OF_RECORD => 301;
const YMSG_FLD_START_OF_LIST => 302;
const YMSG_FLD_END_OF_LIST => 303;
const YMSG_FLD_CRUMB_HASH => 307;
const YMSG_FLD_PLUGIN_INFO => 316;
const YMSG_FLD_VISIBILITY_FLAG => 317;
const YMSG_FLD_GROUPS_RECORD_LIST => 318;
const YMSG_FLD_BUDDIES_RECORD_LIST => 319;
const YMSG_FLD_IGNORED_BUDDIES_RECORD_LIST => 320;
const YMSG_FLD_YMAIL_FARM => 10001;
const YMSG_FLD_PERSONALS_USER => 10002;
const YMSG_FLD_END => -1;

1;
