Public Types | Public Member Functions

Contact Class Reference

Address book entry. Encapsulates methods like GetType, GetIdentity, GetAvatar, SendAuthRequest, OpenConversation etc. Single contact can have additional phone numbers attached to it (ASSIGNED_PHONE1 .. ASSIGNED_PHONE3). Note that in the context of a conversation, Contacts are represented by Participant objects. More...

#include <skype-embedded_2.h>

List of all members.

Public Types

enum  { MODULE_ID = 2 }
enum  PROPERTY {
  P_TYPE = 202,
  P_SKYPENAME = 4,
  P_PSTNNUMBER = 6,
  P_FULLNAME = 5,
  P_BIRTHDAY = 7,
  P_GENDER,
  P_LANGUAGES,
  P_COUNTRY,
  P_PROVINCE,
  P_CITY,
  P_PHONE_HOME,
  P_PHONE_OFFICE,
  P_PHONE_MOBILE,
  P_EMAILS,
  P_HOMEPAGE,
  P_ABOUT,
  P_AVATAR_IMAGE = 37,
  P_MOOD_TEXT = 26,
  P_RICH_MOOD_TEXT = 205,
  P_TIMEZONE = 27,
  P_CAPABILITIES = 36,
  P_PROFILE_TIMESTAMP = 19,
  P_NROF_AUTHED_BUDDIES = 28,
  P_IPCOUNTRY,
  P_AVATAR_TIMESTAMP = 182,
  P_MOOD_TIMESTAMP,
  P_RECEIVED_AUTHREQUEST = 20,
  P_AUTHREQ_TIMESTAMP = 25,
  P_LASTONLINE_TIMESTAMP = 35,
  P_AVAILABILITY = 34,
  P_DISPLAYNAME = 21,
  P_REFRESHING,
  P_GIVEN_AUTHLEVEL,
  P_GIVEN_DISPLAYNAME = 33,
  P_ASSIGNED_COMMENT = 180,
  P_LASTUSED_TIMESTAMP = 39,
  P_AUTHREQUEST_COUNT = 41,
  P_ASSIGNED_PHONE1 = 184,
  P_ASSIGNED_PHONE1_LABEL,
  P_ASSIGNED_PHONE2,
  P_ASSIGNED_PHONE2_LABEL,
  P_ASSIGNED_PHONE3,
  P_ASSIGNED_PHONE3_LABEL,
  P_POPULARITY_ORD = 42
}
enum  TYPE {
  UNRECOGNIZED = 0,
  SKYPE,
  PSTN,
  EMERGENCY_PSTN,
  FREE_PSTN,
  UNDISCLOSED_PSTN,
  EXTERNAL
}
enum  AUTHLEVEL {
  NONE = 0,
  AUTHORIZED_BY_ME,
  BLOCKED_BY_ME
}
enum  AVAILABILITY {
  UNKNOWN = 0,
  PENDINGAUTH = 8,
  BLOCKED,
  BLOCKED_SKYPEOUT = 11,
  SKYPEOUT = 10,
  OFFLINE = 1,
  OFFLINE_BUT_VM_ABLE = 12,
  OFFLINE_BUT_CF_ABLE,
  ONLINE = 2,
  AWAY,
  NOT_AVAILABLE,
  DO_NOT_DISTURB,
  SKYPE_ME = 7,
  INVISIBLE = 6,
  CONNECTING = 14,
  ONLINE_FROM_MOBILE,
  AWAY_FROM_MOBILE,
  NOT_AVAILABLE_FROM_MOBILE,
  DO_NOT_DISTURB_FROM_MOBILE,
  SKYPE_ME_FROM_MOBILE = 20
}
enum  EXTRA_AUTHREQ_FIELDS {
  SEND_VERIFIED_EMAIL = 1,
  SEND_VERIFIED_COMPANY
}
enum  CAPABILITY {
  CAPABILITY_VOICEMAIL = 0,
  CAPABILITY_SKYPEOUT,
  CAPABILITY_SKYPEIN,
  CAPABILITY_CAN_BE_SENT_VM,
  CAPABILITY_CALL_FORWARD,
  CAPABILITY_VIDEO,
  CAPABILITY_TEXT,
  CAPABILITY_SERVICE_PROVIDER,
  CAPABILITY_LARGE_CONFERENCE,
  CAPABILITY_COMMERCIAL_CONTACT,
  CAPABILITY_PSTN_TRANSFER,
  CAPABILITY_TEXT_EVER,
  CAPABILITY_VOICE_EVER,
  CAPABILITY_MOBILE_DEVICE,
  CAPABILITY_PUBLIC_CONTACT
}
enum  CAPABILITYSTATUS {
  NO_CAPABILITY = 0,
  CAPABILITY_MIXED,
  CAPABILITY_EXISTS
}
typedef ContactRef Ref
typedef ContactRefs Refs

Public Member Functions

virtual ~Contact ()
ContactRef ref ()
bool GetType (TYPE &type)
bool GetIdentity (Sid::String &identity)
bool GetAvatar (bool &present, Sid::Binary &avatar)
bool GetVerifiedEmail (Sid::String &email)
bool GetVerifiedCompany (Sid::String &company)
bool IsMemberOf (const ContactGroupRef &group, bool &result)
bool IsMemberOfHardwiredGroup (const ContactGroup::TYPE &groupType, bool &result)
bool SetBlocked (const bool &blocked, const bool abuse=false)
bool IgnoreAuthRequest ()
bool GiveDisplayName (const Sid::String &name)
bool SetBuddyStatus (const bool &isMyBuddy, const bool syncAuth=true)
bool SendAuthRequest (const Sid::String &message, const uint extras_bitmask=0)
bool HasAuthorizedMe (bool &result)
bool SetPhoneNumber (const uint &num, const Sid::String &label, const Sid::String &number)
bool OpenConversation (ConversationRef &conversation)
bool HasCapability (const CAPABILITY &capability, bool &result, const bool queryServer=false)
bool GetCapabilityStatus (const CAPABILITY &capability, CAPABILITYSTATUS &status, const bool queryServer=false)
bool RefreshProfile ()
bool GetPropType (Contact::TYPE &type)
bool GetPropSkypename (Sid::String &skypename)
bool GetPropPstnnumber (Sid::String &pstnnumber)
bool GetPropFullname (Sid::String &fullname)
bool GetPropBirthday (uint &birthday)
bool GetPropGender (uint &gender)
bool GetPropLanguages (Sid::String &languages)
bool GetPropCountry (Sid::String &country)
bool GetPropProvince (Sid::String &province)
bool GetPropCity (Sid::String &city)
bool GetPropPhoneHome (Sid::String &phone_home)
bool GetPropPhoneOffice (Sid::String &phone_office)
bool GetPropPhoneMobile (Sid::String &phone_mobile)
bool GetPropEmails (Sid::String &emails)
bool GetPropHomepage (Sid::String &homepage)
bool GetPropAbout (Sid::String &about)
bool GetPropAvatarImage (Sid::Binary &avatar_image)
bool GetPropMoodText (Sid::String &mood_text)
bool GetPropRichMoodText (Sid::String &rich_mood_text)
bool GetPropTimezone (uint &timezone)
bool GetPropCapabilities (Sid::Binary &capabilities)
bool GetPropProfileTimestamp (uint &profile_timestamp)
bool GetPropNrofAuthedBuddies (uint &nrof_authed_buddies)
bool GetPropIpcountry (Sid::String &ipcountry)
bool GetPropAvatarTimestamp (uint &avatar_timestamp)
bool GetPropMoodTimestamp (uint &mood_timestamp)
bool GetPropReceivedAuthrequest (Sid::String &received_authrequest)
bool GetPropAuthreqTimestamp (uint &authreq_timestamp)
bool GetPropLastonlineTimestamp (uint &lastonline_timestamp)
bool GetPropAvailability (AVAILABILITY &availability)
bool GetPropDisplayname (Sid::String &displayname)
bool GetPropRefreshing (bool &refreshing)
bool GetPropGivenAuthlevel (AUTHLEVEL &given_authlevel)
bool GetPropGivenDisplayname (Sid::String &given_displayname)
bool GetPropAssignedComment (Sid::String &assigned_comment)
bool GetPropLastusedTimestamp (uint &lastused_timestamp)
bool GetPropAuthrequestCount (uint &authrequest_count)
bool GetPropAssignedPhone1 (Sid::String &assigned_phone1)
bool GetPropAssignedPhone1Label (Sid::String &assigned_phone1_label)
bool GetPropAssignedPhone2 (Sid::String &assigned_phone2)
bool GetPropAssignedPhone2Label (Sid::String &assigned_phone2_label)
bool GetPropAssignedPhone3 (Sid::String &assigned_phone3)
bool GetPropAssignedPhone3Label (Sid::String &assigned_phone3_label)
bool GetPropPopularityOrd (uint &popularity_ord)

Detailed Description

Address book entry. Encapsulates methods like GetType, GetIdentity, GetAvatar, SendAuthRequest, OpenConversation etc. Single contact can have additional phone numbers attached to it (ASSIGNED_PHONE1 .. ASSIGNED_PHONE3). Note that in the context of a conversation, Contacts are represented by Participant objects.

Contact member functions all return a Boolean indicating the success (true) or failure (false) of processing the request itself (transport, runtime availability, and so forth)?not the success or failure of its associated functionality. For example, Contact::IsMemberOf returns true if it was able to make a determination, and its result parameter reflects whether this Contact is a member of the target group. Similarly, Contact::IsMemberOf returns false if it was unable to make a determination, and the value of its result parameter is undefined.

Examples:

tutorial_12.cpp, and tutorial_4.cpp.

Definition at line 207 of file skype-embedded_2.h.


Member Typedef Documentation

Definition at line 216 of file skype-embedded_2.h.

Definition at line 217 of file skype-embedded_2.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
MODULE_ID 

Definition at line 218 of file skype-embedded_2.h.

Describes the recognized relational states between a local account and a remote contact.

Enumerator:
NONE 

Authorization request is either ignored or pending. In this state several functionalities may be blocked, depending on settings. For example, accounts may only allow seeing online presence to be viewable or only receive calls from authorized contacts.

AUTHORIZED_BY_ME 

Contact has been authorized by the local account.

BLOCKED_BY_ME 

Contact has been blocked by the local account. This prevents incoming calls, chat messages, additional authorization requests etc.

Definition at line 296 of file skype-embedded_2.h.

Describes the superset list of possible Account and Contact online statuses. In case of Account they apply to local user, in case of Contact they apply to remote contacts.

Enumerator:
UNKNOWN 

Contact online status cannot be determined. This availability state should not normally reach the SkypeKit UI level.

PENDINGAUTH 

Seeing Contact online status is blocked because authorization between contact and local account has not taken place.

BLOCKED 

Remote contact has been blocked by local account. This applies to online accounts.

BLOCKED_SKYPEOUT 

Remote SkypeOut contact has been blocked by local account.

SKYPEOUT 

Contact does not have an online status because he is a PSTN contact.

OFFLINE 

Contact appears to be offline.

OFFLINE_BUT_VM_ABLE 

Contact appears to be offline but has voicemail enabled.

OFFLINE_BUT_CF_ABLE 

Contact appears to be offline but has enabled call forwarding, so calls may actually get through to him.

ONLINE 

Contact / Account is online

AWAY 

Contact / Account is online but away from keyboard. This can be either turned on manually or by automatic timer. In Windows desktop client, the timer can be configured with minute precision.

NOT_AVAILABLE 

This online status is marked as deprecated. If a remote contact indicates its status as NOT_AVAILABLE, the UI should handle this as equivalent of AWAY status.

DO_NOT_DISTURB 

Contact / Account is online but does not wish to be disturbed. This status supersedes AWAY status when the account is DO_NOT_DISTURB the AWAY timer should not modify the status.

SKYPE_ME 

This online status is marked as deprecated. If a remote contact indicates its status as SKYPE_ME, the UI should handle this as equivalent of ONLINE status.

INVISIBLE 

Account status is set to INVISIBLE. This status in not applicable to remote Contacts. When the remote contact has set his availability to INVISIBLE, he will appear as OFFLINE to others.

CONNECTING 

only possible for local user/account

ONLINE_FROM_MOBILE 
AWAY_FROM_MOBILE 

*_FROM_MOBILE only possible for remote user

NOT_AVAILABLE_FROM_MOBILE 
DO_NOT_DISTURB_FROM_MOBILE 
SKYPE_ME_FROM_MOBILE 

Definition at line 303 of file skype-embedded_2.h.

This enumerator is used by both Contact and Account objects. Thus the items here can have slightly different meaning, depending on which context you will examine their values. In case of Contact, the values apply to a user - across all the instances that user has logged in with Skype. In case of Account, the capability is that of a local, currently logged in instance of Skype client.

The values that CAPABILITY items can have are also dependant on class context. In context of Contact, a capability can be CAPABILITY_MIXED. Which in case of CAPABILITY_VIDEO, for example, would mean that the remote use has logged in with different clients, some of which support video calls and some of which don't. In context of Account - there are no mixed result. Currently logged in Skype instance either supports video or it doesn't.

Enumerator:
CAPABILITY_VOICEMAIL 

For Account object, this is the same as CAPABILITY_CAN_BE_SENT_VM - it indicates that the currently logged in Skype instance supports voicemails. For Contact objects, it means that their remote system supports sending voicemails - there is no technical method for Skype to detect whether they are capable of receiving voicemails, so the assumption is that they can.

CAPABILITY_SKYPEOUT 

Indicates that the contact/account has SkypeOut and is thus capable of making PSTN calls.

CAPABILITY_SKYPEIN 

Indicates that the contact/account has SkypeIn and is thus capable of answering PSTN calls.

CAPABILITY_CAN_BE_SENT_VM 

For contacts, this is a combination of CAPABILITY_VOICEMAIL for local account (local Skype client supports sending voicemails) and CAPABILITY_VOICEMAIL of the Contact - if the contact supports sending voicemails then hopefully they can also receive them.

CAPABILITY_CALL_FORWARD 

Indicates that Account/Contact supports call forwarding.

CAPABILITY_VIDEO 

Indicates that Account/Contact supports call video calls.

CAPABILITY_TEXT 

In context of Contact, this indicates that the user is noticed running at least one Skype implementation that supports text messaging. Basically, it applies to a user. When applied to Account, the meaning is slightly different. In that case it indicates that currently running Skype implementation supports chat messaging. So, for Account objects, this is a node (rather than user) capability.

CAPABILITY_SERVICE_PROVIDER 

Indicates that the contact/account is flagged as SkypePrime service provider. This is linked to Account class SERVICE_PROVIDER_INFO property.

CAPABILITY_LARGE_CONFERENCE 

This is a legacy item, from the old times when conference calls with more than 5 people were limited to SkypePro accounts. In other words, this item is no longer relevant and will likely be removed at some point in future.

CAPABILITY_COMMERCIAL_CONTACT 
CAPABILITY_PSTN_TRANSFER 

Indicates that Account/Contact supports call transfers to PSTN numbers.

CAPABILITY_TEXT_EVER 

Indicates that the user has had his chat capability removed by Skype. Basically, this means that the user is reported as spammer too many times. This applies for both Contact and Account objects - which means your client can check locally, if the currently logged in user has been marked as a spammer.

CAPABILITY_VOICE_EVER 

Indicates that the user (Account or Contact) has had his voice call capability removed by Skype.

CAPABILITY_MOBILE_DEVICE 

Indicates that the instance of Skype client Account/Contact is or in Contact's case has at least occasionally been flagged as a mobile device.

CAPABILITY_PUBLIC_CONTACT 

Definition at line 408 of file skype-embedded_2.h.

List of possible states of each of the Contact class CAPABILITY items.

Enumerator:
NO_CAPABILITY 

Contact does not have the capability

CAPABILITY_MIXED 

Contact has occasionally logged in with Skype client that supports the capability. For example, a contact may have Skype client on several machines, only some of which have webcam - in which case CAPABILITY_VIDEO would have its value set as CAPABILITY_MIXED.

CAPABILITY_EXISTS 

Contact has the capability

Definition at line 427 of file skype-embedded_2.h.

Enumerator:
SEND_VERIFIED_EMAIL 

send verified e-mail blob with this auth request

SEND_VERIFIED_COMPANY 

send verified company blob with this auth request

Definition at line 379 of file skype-embedded_2.h.

Properties of the Contact class

Enumerator:
P_TYPE 

type: Contact::TYPE

P_SKYPENAME 

defined if it is a SKYPE contact, type: Sid::String

P_PSTNNUMBER 

type: Sid::String

P_FULLNAME 

type: Sid::String

P_BIRTHDAY 

integer of YYYYMMDD format, type: uint

P_GENDER 

1-male, 2-female, type: uint

P_LANGUAGES 

ISO language code list, space separated, type: Sid::String

P_COUNTRY 

ISO country code, type: Sid::String

P_PROVINCE 

type: Sid::String

P_CITY 

type: Sid::String

P_PHONE_HOME 

This corresponds to the Account::P_PHONE_HOME property. The value is set by the remote user in Account profile. As Contact property, this is read-only.
, type: Sid::String

P_PHONE_OFFICE 

This corresponds to the Account::P_PHONE_OFFICE property. The value is set by the remote user in Account profile. As Contact property, this is read-only. If the Contact has not populated his Account profile with sufficient phone numbers, the UI should implement locally adding additional phone numbers to Contact P_ASSIGNED_PHONE1 .. P_ASSIGNED_PHONE3 properties (and corresponding labels). See Contact::SetPhoneNumber method for more information.
, type: Sid::String

P_PHONE_MOBILE 

This corresponds to the Account::P_PHONE_MOBILE property. The value is set by the remote user in Account profile. As Contact property, this is read-only.
, type: Sid::String

P_EMAILS 

will be hashed before advertising/querying, space separated, type: Sid::String

P_HOMEPAGE 

type: Sid::String

P_ABOUT 

arbitrary introductory text, type: Sid::String

P_AVATAR_IMAGE 

Contact avatar pictures are in JPG format. The original size of avatar pictures are in no more than 96 x 96 pixels in size. However, as they can be smaller, scaling the pictures up too much to fit your UI can lead to distorted images.
, type: Sid::Binary

P_MOOD_TEXT 

Personal mood message (visible to authorized users only).
, type: Sid::String

P_RICH_MOOD_TEXT 

XML version of personal mood text, type: Sid::String

P_TIMEZONE 

24*3600+diff_to_UTC_in_seconds. NB! changes with DST
, type: uint

P_CAPABILITIES 

binary tag that can be queried via Contact::HasCapability(), type: Sid::Binary

P_PROFILE_TIMESTAMP 

UNIX timestamp of last profile change, type: uint

P_NROF_AUTHED_BUDDIES 

count of this user's authorized contacts
, type: uint

P_IPCOUNTRY 

ISO country code assigned by the IP, type: Sid::String

P_AVATAR_TIMESTAMP 

UNIX timestamp of when current avatar was set, type: uint

P_MOOD_TIMESTAMP 

UNIX timestamp of when current mood was set, type: uint

P_RECEIVED_AUTHREQUEST 

set if the contact is waiting to be authorized. The value contains auth. request text
, type: Sid::String

P_AUTHREQ_TIMESTAMP 

timestamp of last received auth-request, type: uint

P_LASTONLINE_TIMESTAMP 

X timestamp of last successful ping to that user, type: uint

P_AVAILABILITY 

Contact::AVAILABILITY, type: AVAILABILITY

P_DISPLAYNAME 

always set (assigned by lib by looking at various fields), type: Sid::String

P_REFRESHING 

true if querying additional information from p2p or server
, type: bool

P_GIVEN_AUTHLEVEL 

Contact::AUTHLEVEL, change via Contact::GiveAuthlevel(), type: AUTHLEVEL

P_GIVEN_DISPLAYNAME 

change via Contact::GiveDisplayname(), type: Sid::String

P_ASSIGNED_COMMENT 

change via Contact::AssignComment(), type: Sid::String

P_LASTUSED_TIMESTAMP 

UNIX timestamp of last outbound session (call, chat, FT, etc), type: uint

P_AUTHREQUEST_COUNT 

for contacts that have CONTACT_RECEIVED_AUTHREQUEST, how many times in a row they have requested it without positive answer, type: uint

P_ASSIGNED_PHONE1 

Office phone no. of the contact. This property should NOT be used for SkypeOut contacts
, type: Sid::String

P_ASSIGNED_PHONE1_LABEL 

Value "1" in this property will be translated as "Office" by Skype Windows desktop client, according to UI language settings
, type: Sid::String

P_ASSIGNED_PHONE2 

Mobile phone no. of the contact
, type: Sid::String

P_ASSIGNED_PHONE2_LABEL 

Value "2" in this property will be translated as "Mobile" by Skype Windows desktop client, according to UI language settings
, type: Sid::String

P_ASSIGNED_PHONE3 

"Other phone no. of the contact, type: Sid::String

P_ASSIGNED_PHONE3_LABEL 

Value "3" in this property will be translated as "Other" by Skype Windows desktop client, according to UI language settings
, type: Sid::String

P_POPULARITY_ORD 

Contact's order by presence popularity
, type: uint

Definition at line 232 of file skype-embedded_2.h.

Same as with CAPABILITY, enumerator is used by both Contact and Account objects.

Enumerator:
UNRECOGNIZED 

Contact/account has no pre-identified type. This type is reported by default for SkypeKit clients.

SKYPE 

Normal Skype contact.

PSTN 

Normal PSTN contact.

EMERGENCY_PSTN 

Emergency number (i.e. 911).

FREE_PSTN 
UNDISCLOSED_PSTN 

Undisclosed PSTN number.

EXTERNAL 

This type is currently used by Windows desktop clients for contacts imported from Outlook.

Definition at line 280 of file skype-embedded_2.h.


Constructor & Destructor Documentation

Contact::~Contact (  )  [virtual]

Definition at line 85 of file skype-embedded_2.cpp.


Member Function Documentation

bool Contact::GetAvatar ( bool &  present,
Sid::Binary &  avatar 
)

Returns Conrtact's avatar image (JPG).

Parameters:
present 
  • true: the Contact has a custom avatar image
  • false: the Contact does not have a custom avatar image
avatar The avatar image data (JPG). If present is false, this will be the Skype-assigned default avatar
bool Contact::GetCapabilityStatus ( const CAPABILITY capability,
CAPABILITYSTATUS status,
const bool  queryServer = false 
)

Retrieves a Contact::Capability value. Sets P_REFRESHING to true while querying from server.

Parameters:
capability The target capability, see Contact::Capability enumerator.
status Status of the target capability.
queryServer 
  • true: obtains the data from the p2p network/server, and sets P_REFRESHING to true for the duration
  • false: obtains the data from the local client
bool Contact::GetIdentity ( Sid::String &  identity  ) 
Parameters:
identity returns CONTACT_SKYPENAME or CONTACT_PSTNNUMBER value
bool Contact::GetPropAbout ( Sid::String &  about  ) 

Contact::P_ABOUT property get accessor

bool Contact::GetPropAssignedComment ( Sid::String &  assigned_comment  ) 

Contact::P_ASSIGNED_COMMENT property get accessor

bool Contact::GetPropAssignedPhone1 ( Sid::String &  assigned_phone1  ) 

Contact::P_ASSIGNED_PHONE1 property get accessor

bool Contact::GetPropAssignedPhone1Label ( Sid::String &  assigned_phone1_label  ) 

Contact::P_ASSIGNED_PHONE1_LABEL property get accessor

bool Contact::GetPropAssignedPhone2 ( Sid::String &  assigned_phone2  ) 

Contact::P_ASSIGNED_PHONE2 property get accessor

bool Contact::GetPropAssignedPhone2Label ( Sid::String &  assigned_phone2_label  ) 

Contact::P_ASSIGNED_PHONE2_LABEL property get accessor

bool Contact::GetPropAssignedPhone3 ( Sid::String &  assigned_phone3  ) 

Contact::P_ASSIGNED_PHONE3 property get accessor

bool Contact::GetPropAssignedPhone3Label ( Sid::String &  assigned_phone3_label  ) 

Contact::P_ASSIGNED_PHONE3_LABEL property get accessor

bool Contact::GetPropAuthreqTimestamp ( uint &  authreq_timestamp  ) 

Contact::P_AUTHREQ_TIMESTAMP property get accessor

bool Contact::GetPropAuthrequestCount ( uint &  authrequest_count  ) 

Contact::P_AUTHREQUEST_COUNT property get accessor

bool Contact::GetPropAvailability ( AVAILABILITY availability  ) 

Contact::P_AVAILABILITY property get accessor

bool Contact::GetPropAvatarImage ( Sid::Binary &  avatar_image  ) 

Contact::P_AVATAR_IMAGE property get accessor

bool Contact::GetPropAvatarTimestamp ( uint &  avatar_timestamp  ) 

Contact::P_AVATAR_TIMESTAMP property get accessor

bool Contact::GetPropBirthday ( uint &  birthday  ) 

Contact::P_BIRTHDAY property get accessor

bool Contact::GetPropCapabilities ( Sid::Binary &  capabilities  ) 

Contact::P_CAPABILITIES property get accessor

bool Contact::GetPropCity ( Sid::String &  city  ) 

Contact::P_CITY property get accessor

bool Contact::GetPropCountry ( Sid::String &  country  ) 

Contact::P_COUNTRY property get accessor

bool Contact::GetPropDisplayname ( Sid::String &  displayname  ) 

Contact::P_DISPLAYNAME property get accessor

bool Contact::GetPropEmails ( Sid::String &  emails  ) 

Contact::P_EMAILS property get accessor

bool Contact::GetPropFullname ( Sid::String &  fullname  ) 

Contact::P_FULLNAME property get accessor

bool Contact::GetPropGender ( uint &  gender  ) 

Contact::P_GENDER property get accessor

bool Contact::GetPropGivenAuthlevel ( AUTHLEVEL given_authlevel  ) 

Contact::P_GIVEN_AUTHLEVEL property get accessor

bool Contact::GetPropGivenDisplayname ( Sid::String &  given_displayname  ) 

Contact::P_GIVEN_DISPLAYNAME property get accessor

bool Contact::GetPropHomepage ( Sid::String &  homepage  ) 

Contact::P_HOMEPAGE property get accessor

bool Contact::GetPropIpcountry ( Sid::String &  ipcountry  ) 

Contact::P_IPCOUNTRY property get accessor

bool Contact::GetPropLanguages ( Sid::String &  languages  ) 

Contact::P_LANGUAGES property get accessor

bool Contact::GetPropLastonlineTimestamp ( uint &  lastonline_timestamp  ) 

Contact::P_LASTONLINE_TIMESTAMP property get accessor

bool Contact::GetPropLastusedTimestamp ( uint &  lastused_timestamp  ) 

Contact::P_LASTUSED_TIMESTAMP property get accessor

bool Contact::GetPropMoodText ( Sid::String &  mood_text  ) 

Contact::P_MOOD_TEXT property get accessor

bool Contact::GetPropMoodTimestamp ( uint &  mood_timestamp  ) 

Contact::P_MOOD_TIMESTAMP property get accessor

bool Contact::GetPropNrofAuthedBuddies ( uint &  nrof_authed_buddies  ) 

Contact::P_NROF_AUTHED_BUDDIES property get accessor

bool Contact::GetPropPhoneHome ( Sid::String &  phone_home  ) 

Contact::P_PHONE_HOME property get accessor

bool Contact::GetPropPhoneMobile ( Sid::String &  phone_mobile  ) 

Contact::P_PHONE_MOBILE property get accessor

bool Contact::GetPropPhoneOffice ( Sid::String &  phone_office  ) 

Contact::P_PHONE_OFFICE property get accessor

bool Contact::GetPropPopularityOrd ( uint &  popularity_ord  ) 

Contact::P_POPULARITY_ORD property get accessor

bool Contact::GetPropProfileTimestamp ( uint &  profile_timestamp  ) 

Contact::P_PROFILE_TIMESTAMP property get accessor

bool Contact::GetPropProvince ( Sid::String &  province  ) 

Contact::P_PROVINCE property get accessor

bool Contact::GetPropPstnnumber ( Sid::String &  pstnnumber  ) 

Contact::P_PSTNNUMBER property get accessor

bool Contact::GetPropReceivedAuthrequest ( Sid::String &  received_authrequest  ) 

Contact::P_RECEIVED_AUTHREQUEST property get accessor

bool Contact::GetPropRefreshing ( bool &  refreshing  ) 

Contact::P_REFRESHING property get accessor

bool Contact::GetPropRichMoodText ( Sid::String &  rich_mood_text  ) 

Contact::P_RICH_MOOD_TEXT property get accessor

bool Contact::GetPropSkypename ( Sid::String &  skypename  ) 

Contact::P_SKYPENAME property get accessor

bool Contact::GetPropTimezone ( uint &  timezone  ) 

Contact::P_TIMEZONE property get accessor

bool Contact::GetPropType ( Contact::TYPE type  ) 

Contact::P_TYPE property get accessor

bool Contact::GetType ( TYPE type  ) 

Getter method for the TYPE property.

bool Contact::GetVerifiedCompany ( Sid::String &  company  ) 

returns verified-by-Skype company for this contact if exists and verifiable

bool Contact::GetVerifiedEmail ( Sid::String &  email  ) 

returns verified-by-Skype e-mail for this contact if exists and verifiable

bool Contact::GiveDisplayName ( const Sid::String &  name  ) 

sets CONTACT_GIVEN_DISPLAYNAME. clears if size(name)==0

bool Contact::HasAuthorizedMe ( bool &  result  ) 

the contact has accepted my auth request

bool Contact::HasCapability ( const CAPABILITY capability,
bool &  result,
const bool  queryServer = false 
)

Retrieves a Contact::Capability value. Sets P_REFRESHING to true while querying from server. This method is functionally the same as Contact::GetCapabilityStatus except that it returns a bool value rather than Contact::CAPABILITYSTATUS

Parameters:
capability The target capability
result 
  • true: the Contact has the target capability through at least one of the Skype clients they have logged into. Corresponds to CAPABILITY_MIXED and CAPABILITY_EXISTS
  • false: the Contact does not have the target capability. Corresponds to NO_CAPABILITY
queryServer 
  • true: obtains the data from the p2p network/server, and sets P_REFRESHING to true for the duration
  • false: obtains the data from the local client
bool Contact::IgnoreAuthRequest (  ) 

Rejects and removes a pending authorization request from this Contact.

bool Contact::IsMemberOf ( const ContactGroupRef group,
bool &  result 
)

Checks whether the contact is member of a contact group given in group reference argument.

Parameters:
group The target contact group
result 
  • true: the Contact is a member of the target contact group
  • false: the Contact is not a member of the target contact group
bool Contact::IsMemberOfHardwiredGroup ( const ContactGroup::TYPE groupType,
bool &  result 
)

Checks whether the contact is member of a pre-defined contact group given in the TYPE argument (type for this property comes from the ContactGroup class).

Parameters:
groupType The type designator of the target pre-defined contact group. For example, specify this parameter as ContactGroup::TYPE.RECENTLY_CONTACTED_CONTACTS to determine if you've had a recent conversation with this Contact.
result 
  • true: the Contact is a member of the target contact group
  • false: the Contact is not a member of the target contact group
bool Contact::OpenConversation ( ConversationRef conversation  ) 

Retrieves a dialog conversation with the Contact.

Parameters:
conversation Retrieved dialog.
ContactRef Contact::ref (  )  [inline]

Definition at line 219 of file skype-embedded_2.h.

bool Contact::RefreshProfile (  ) 

Refreshes all properties, capabilities, and statuses associated with this Contact from p2p/CBL, and sets P_REFRESHING to true for the duration.

bool Contact::SendAuthRequest ( const Sid::String &  message,
const uint  extras_bitmask = 0 
)

Sends a contact authorization request to this user.

Parameters:
message Text that typically introduces the requesting user and details the reason for the authorization request. This text will be set as Message::P_BODY_XML property of the notification Message the remote user will receive upon getting the authortization request. While this can be the empty string, it cannot be null.
extras_bitmask Indicates additional information to include with this authorization request:

  • 0 (zero): do not include any additional information
  • SEND_VERIFIED_EMAIL: include the requestor's verified e-mail address
  • SEND_VERIFIED_COMPANY: include verified information regarding the requestor's company
  • SEND_VERIFIED_EMAIL + SEND_VERIFIED_COMPANY: include both e-mail and company information
bool Contact::SetBlocked ( const bool &  blocked,
const bool  abuse = false 
)

Blocks or unblocks any further incoming communication attempts from this contact.

Parameters:
blocked 
  • true: block this contact
  • false: unblock this contact
abuse Optional parameter to report abuse by this Skype user when blocking this Contact. Note that you can specifiy this parameter as true only when blocking a Contact. Defaults to false if omitted.
bool Contact::SetBuddyStatus ( const bool &  isMyBuddy,
const bool  syncAuth = true 
)

Adds or removes this Contact from the ALL_BUDDIES hardwired group.

Parameters:
isMyBuddy 
  • true: add this contact to the ALL_BUDDIES group
  • false: delete contact from the ALL_BUDDIES group
syncAuth This argument is deprecated and should not be used.
bool Contact::SetPhoneNumber ( const uint &  num,
const Sid::String &  label,
const Sid::String &  number 
)

Sets the three P_ASSIGNED_PHONEx and P_ASSIGNED_PHONEx_LABEL properties, where x reflects the value of num.

The Skype Windows desktop client uses the following conventions when interpreting and assigning values to these properties. While your solution can assign arbitrary values to these properties, we strongly recommend using these conventions to ensure interoperability with the Skype Windows desktop client. Keep in mind that the "number" of these property pairs has no relationship to how the Skype Windows client interprets their label property value strings. For example, the Skype Windows client will interpret P_ASSIGNED_PHONE3_LABEL as "Home" if its value is the string "0".

Label strings:

Populate the label properties with string representations of the numbers "0" through "3", rather than descriptive strings like "Home", "Mobile", and so forth. The Skype desktop clients interpret the numeric string values as:

  • "0" (zero) - "Home"
  • "1" (one) - "Office"
  • "2" - "Mobile"
  • "3" - "Other"

    Keep in mind that the "number" of a property pair has no relationship to its label string. For example, the Skype Windows client will interpret P_ASSIGNED_PHONE3_LABEL as "Home" if its value is the string "0".

    Phone number strings:

    The Skype Windows desktop client has distinct conventions for Skype Contacts and PSTN (SkypeOut) Contacts: any or all of the property pairs can be used for Skype Contacts; P_ASSIGNED_PHONE1 cannot be used for PSTN Contacts and P_ASSIGNED_PHONE1_LABEL has special meaning for PSTN Contacts.
    Specifically, the Skype desktop clients use P_ASSIGNED_PHONE1_LABEL as the label for a PSTN Contact's primary number (regardless of whether it's home, mobile, or office), and use P_PSTNNUMBER to hold the actual number.

Parameters:
num The property pair being set, which must be in the range 0..3
label The label text for the property being set
number The phone number for the property being set

The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

(c) Skype Technologies S.A. Confidential/Proprietary

Last updated: Fri Mar 16 2012