[7a1c90d] | 1 | =pod |
---|
| 2 | |
---|
| 3 | Net::OSCAR::Common -- Net::OSCAR public constants |
---|
| 4 | |
---|
| 5 | =cut |
---|
| 6 | |
---|
| 7 | package Net::OSCAR::Common; |
---|
| 8 | |
---|
| 9 | $VERSION = '1.925'; |
---|
| 10 | $REVISION = '$Revision: 1.67 $'; |
---|
| 11 | |
---|
| 12 | use strict; |
---|
| 13 | use vars qw(@ISA @EXPORT_OK %EXPORT_TAGS $VERSION); |
---|
| 14 | use Scalar::Util qw(dualvar); |
---|
| 15 | require Exporter; |
---|
| 16 | @ISA = qw(Exporter); |
---|
| 17 | |
---|
| 18 | %EXPORT_TAGS = ( |
---|
| 19 | standard => [qw( |
---|
| 20 | ADMIN_TYPE_PASSWORD_CHANGE |
---|
| 21 | ADMIN_TYPE_EMAIL_CHANGE |
---|
| 22 | ADMIN_TYPE_SCREENNAME_FORMAT |
---|
| 23 | ADMIN_TYPE_ACCOUNT_CONFIRM |
---|
| 24 | ADMIN_ERROR_UNKNOWN |
---|
| 25 | ADMIN_ERROR_DIFFSN |
---|
| 26 | ADMIN_ERROR_BADPASS |
---|
| 27 | ADMIN_ERROR_BADINPUT |
---|
| 28 | ADMIN_ERROR_BADLENGTH |
---|
| 29 | ADMIN_ERROR_TRYLATER |
---|
| 30 | ADMIN_ERROR_REQPENDING |
---|
| 31 | ADMIN_ERROR_CONNREF |
---|
| 32 | ADMIN_ERROR_EMAILLIM |
---|
| 33 | ADMIN_ERROR_EMAILBAD |
---|
| 34 | VISMODE_PERMITALL |
---|
| 35 | VISMODE_DENYALL |
---|
| 36 | VISMODE_PERMITSOME |
---|
| 37 | VISMODE_DENYSOME |
---|
| 38 | VISMODE_PERMITBUDS |
---|
| 39 | MODBL_ACTION_ADD |
---|
| 40 | MODBL_ACTION_DEL |
---|
| 41 | MODBL_WHAT_BUDDY |
---|
| 42 | MODBL_WHAT_GROUP |
---|
| 43 | MODBL_WHAT_PERMIT |
---|
| 44 | MODBL_WHAT_DENY |
---|
| 45 | TYPINGSTATUS_STARTED |
---|
| 46 | TYPINGSTATUS_TYPING |
---|
| 47 | TYPINGSTATUS_FINISHED |
---|
| 48 | RATE_CLEAR |
---|
| 49 | RATE_ALERT |
---|
| 50 | RATE_LIMIT |
---|
| 51 | RATE_DISCONNECT |
---|
| 52 | OSCAR_RATE_MANAGE_NONE |
---|
| 53 | OSCAR_RATE_MANAGE_AUTO |
---|
| 54 | OSCAR_RATE_MANAGE_MANUAL |
---|
| 55 | GROUPPERM_OSCAR |
---|
| 56 | GROUPPERM_AOL |
---|
| 57 | OSCAR_SVC_AIM |
---|
| 58 | OSCAR_SVC_ICQ |
---|
| 59 | OSCAR_DIRECT_IM |
---|
| 60 | OSCAR_DIRECT_FILESHARE |
---|
| 61 | OSCAR_DIRECT_FILEXFER |
---|
| 62 | OSCAR_RV_AUTO |
---|
| 63 | OSCAR_RV_NOPROXY |
---|
| 64 | OSCAR_RV_NODIRECT |
---|
| 65 | OSCAR_RV_MANUAL |
---|
| 66 | )], |
---|
| 67 | loglevels => [qw( |
---|
| 68 | OSCAR_DBG_NONE |
---|
| 69 | OSCAR_DBG_WARN |
---|
| 70 | OSCAR_DBG_INFO |
---|
| 71 | OSCAR_DBG_SIGNON |
---|
| 72 | OSCAR_DBG_NOTICE |
---|
| 73 | OSCAR_DBG_DEBUG |
---|
| 74 | OSCAR_DBG_PACKETS |
---|
| 75 | OSCAR_DBG_XML |
---|
| 76 | OSCAR_DBG_XML2 |
---|
| 77 | )] |
---|
| 78 | ); |
---|
| 79 | $EXPORT_TAGS{all} = [@{$EXPORT_TAGS{standard}}, @{$EXPORT_TAGS{loglevels}}]; |
---|
| 80 | @EXPORT_OK = @{$EXPORT_TAGS{all}}; |
---|
| 81 | |
---|
| 82 | # Log levels |
---|
| 83 | use constant OSCAR_DBG_NONE => 0; |
---|
| 84 | use constant OSCAR_DBG_WARN => 1; |
---|
| 85 | use constant OSCAR_DBG_INFO => 2; |
---|
| 86 | use constant OSCAR_DBG_SIGNON => 3; |
---|
| 87 | use constant OSCAR_DBG_NOTICE => 4; |
---|
| 88 | use constant OSCAR_DBG_DEBUG => 6; |
---|
| 89 | use constant OSCAR_DBG_PACKETS => 10; |
---|
| 90 | use constant OSCAR_DBG_XML => 30; |
---|
| 91 | use constant OSCAR_DBG_XML2 => 35; |
---|
| 92 | |
---|
| 93 | # Buddylist modification |
---|
| 94 | use constant MODBL_ACTION_ADD => dualvar(1, "add"); |
---|
| 95 | use constant MODBL_ACTION_DEL => dualvar(2, "delete"); |
---|
| 96 | use constant MODBL_WHAT_BUDDY => dualvar(1, "buddy"); |
---|
| 97 | use constant MODBL_WHAT_GROUP => dualvar(2, "group"); |
---|
| 98 | use constant MODBL_WHAT_PERMIT => dualvar(3, "permit"); |
---|
| 99 | use constant MODBL_WHAT_DENY => dualvar(4, "deny"); |
---|
| 100 | |
---|
| 101 | # Typing statuses |
---|
| 102 | use constant TYPINGSTATUS_STARTED => dualvar(2, "typing started"); |
---|
| 103 | use constant TYPINGSTATUS_TYPING => dualvar(1, "typing in progress"); |
---|
| 104 | use constant TYPINGSTATUS_FINISHED => dualvar(0, "typing completed"); |
---|
| 105 | |
---|
| 106 | # Administrative functions |
---|
| 107 | use constant ADMIN_TYPE_PASSWORD_CHANGE => dualvar(1, "password change"); |
---|
| 108 | use constant ADMIN_TYPE_EMAIL_CHANGE => dualvar(2, "email change"); |
---|
| 109 | use constant ADMIN_TYPE_SCREENNAME_FORMAT => dualvar(3, "screenname format"); |
---|
| 110 | use constant ADMIN_TYPE_ACCOUNT_CONFIRM => dualvar(4, "account confirm"); |
---|
| 111 | |
---|
| 112 | # Adminsitrative responses |
---|
| 113 | use constant ADMIN_ERROR_UNKNOWN => dualvar(0, "unknown error"); |
---|
| 114 | use constant ADMIN_ERROR_BADPASS => dualvar(1, "incorrect password"); |
---|
| 115 | use constant ADMIN_ERROR_BADINPUT => dualvar(2, "invalid input"); |
---|
| 116 | use constant ADMIN_ERROR_BADLENGTH => dualvar(3, "screenname/email/password is too long or too short"); |
---|
| 117 | use constant ADMIN_ERROR_TRYLATER => dualvar(4, "request could not be processed; wait a few minutes and try again"); |
---|
| 118 | use constant ADMIN_ERROR_REQPENDING => dualvar(5, "request pending"); |
---|
| 119 | use constant ADMIN_ERROR_CONNREF => dualvar(6, "couldn't connect to the admin server"); |
---|
| 120 | use constant ADMIN_ERROR_DIFFSN => dualvar(7, "the new screenname is not equivalent to the old screenname"); |
---|
| 121 | use constant ADMIN_ERROR_EMAILLIM => dualvar(8, "the email address has too many screennames"); |
---|
| 122 | use constant ADMIN_ERROR_EMAILBAD => dualvar(9, "the email address is invalid"); |
---|
| 123 | |
---|
| 124 | # Direct connect types |
---|
| 125 | use constant OSCAR_DIRECT_IM => dualvar(1, "direct IM"); |
---|
| 126 | use constant OSCAR_DIRECT_FILESHARE => dualvar(2, "file sharing"); |
---|
| 127 | use constant OSCAR_DIRECT_FILEXFER => dualvar(3, "file transfer"); |
---|
| 128 | |
---|
| 129 | # Rendezvous autonegotiate modes |
---|
| 130 | use constant OSCAR_RV_AUTO => "auto"; |
---|
| 131 | use constant OSCAR_RV_NOPROXY => "never proxy"; |
---|
| 132 | use constant OSCAR_RV_NODIRECT => "always proxy"; |
---|
| 133 | use constant OSCAR_RV_MANUAL => "manual negotiation"; |
---|
| 134 | |
---|
| 135 | |
---|
| 136 | # Visibility modes |
---|
| 137 | use constant VISMODE_PERMITALL => dualvar(0x1, "permit all"); |
---|
| 138 | use constant VISMODE_DENYALL => dualvar(0x2, "deny all"); |
---|
| 139 | use constant VISMODE_PERMITSOME => dualvar(0x3, "permit some"); |
---|
| 140 | use constant VISMODE_DENYSOME => dualvar(0x4, "deny some"); |
---|
| 141 | use constant VISMODE_PERMITBUDS => dualvar(0x5, "permit buddies"); |
---|
| 142 | |
---|
| 143 | # Rate warning types |
---|
| 144 | use constant RATE_CLEAR => dualvar(1, "clear"); |
---|
| 145 | use constant RATE_ALERT => dualvar(2, "alert"); |
---|
| 146 | use constant RATE_LIMIT => dualvar(3, "limit"); |
---|
| 147 | use constant RATE_DISCONNECT => dualvar(4, "disconnect"); |
---|
| 148 | |
---|
| 149 | # Rate handling modes |
---|
| 150 | use constant OSCAR_RATE_MANAGE_NONE => dualvar(0, "none"); |
---|
| 151 | use constant OSCAR_RATE_MANAGE_AUTO => dualvar(1, "auto"); |
---|
| 152 | use constant OSCAR_RATE_MANAGE_MANUAL => dualvar(2, "manual"); |
---|
| 153 | |
---|
| 154 | # Group permissions |
---|
| 155 | use constant GROUPPERM_OSCAR => dualvar(0x18, "AOL Instant Messenger users"); |
---|
| 156 | use constant GROUPPERM_AOL => dualvar(0x04, "AOL subscribers"); |
---|
| 157 | |
---|
| 158 | # Services - deprecated, modules should no longer use these directly |
---|
| 159 | use constant OSCAR_SVC_AIM => ( |
---|
| 160 | host => 'login.oscar.aol.com', |
---|
| 161 | port => 5190, |
---|
| 162 | supermajor => 0x0109, |
---|
| 163 | major => 5, |
---|
| 164 | minor => 5, |
---|
| 165 | subminor => 0, |
---|
| 166 | build => 0x0E0B, |
---|
| 167 | subbuild => 0x00000104, |
---|
| 168 | clistr => "AOL Instant Messenger, version 5.5.3595/WIN32", |
---|
| 169 | hashlogin => 0, |
---|
| 170 | betainfo => "", |
---|
| 171 | ); |
---|
| 172 | use constant OSCAR_SVC_ICQ => ( # Courtesy of SDiZ Cheng |
---|
| 173 | host => 'login.icq.com', |
---|
| 174 | port => 5190, |
---|
| 175 | supermajor => 0x010A, |
---|
| 176 | major => 5, |
---|
| 177 | minor => 0x2D, |
---|
| 178 | subminor => 0, |
---|
| 179 | build => 0xEC1, |
---|
| 180 | subbuild => 0x55, |
---|
| 181 | clistr => "ICQ Inc. - Product of ICQ (TM).2003a.5.45.1.3777.85", |
---|
| 182 | hashlogin => 1, |
---|
| 183 | ); |
---|
| 184 | |
---|
| 185 | 1; |
---|