com.skype.api
Class Participant

java.lang.Object
  extended by com.skype.ipc.SidObject
      extended by com.skype.api.Participant
All Implemented Interfaces:
SidGetResponding

public final class Participant
extends SidObject

Conversation participant class. Instances of this class represent contacts when in the context of conversations. Amongst others, this class has a Ring method for requesting live status with the target contact. This class also holds typing indicator property and access rights for the contact in context of public conversations.


Nested Class Summary
static class Participant.Dtmf
           
static class Participant.Property
          Properties of the Participant class
static class Participant.Rank
          Recognized values for the P_RANK property.
static class Participant.TextStatus
          Recognized values for the P_TEXT_STATUS property.
static class Participant.VideoStatus
          Recognized values for the P_VIDEO_STATUS property.
static class Participant.VoiceStatus
          Recognized values for the P_VOICE_STATUS property.
 
Field Summary
 java.lang.String mAdder
           
 Conversation mConversation
           
 java.lang.String mDebugInfo
           
 java.lang.String mIdentity
           
 Skype.LeaveReason mLastLeavereason
           
 java.lang.String mLastVoiceError
           
 java.lang.String mLiveCountry
           
 java.lang.String mLiveFwdIdentities
           
 java.lang.String mLiveIdentity
           
 java.lang.String mLivePriceForMe
           
 int mLiveStartTimestamp
           
 Skype.IdentityType mLiveType
           
 java.lang.String mQualityProblems
           
 Participant.Rank mRank
           
 Participant.Rank mRequestedRank
           
 int mSoundLevel
           
 Participant.TextStatus mTextStatus
           
 java.lang.String mTransferredBy
           
 java.lang.String mTransferredTo
           
 Participant.VideoStatus mVideoStatus
           
 Participant.VoiceStatus mVoiceStatus
           
 
Fields inherited from class com.skype.ipc.SidObject
mSidCached, mSidOid, mSidRoot, mSidTimestamp
 
Constructor Summary
Participant(int oid, SidRoot root)
           
 
Method Summary
 boolean canSetRankTo(Participant.Rank rank)
          Checks whether the current user can set this Participant's conversation privileges to the specified RANK.
 java.lang.String getAdder()
          [ALL] Identity of the user who added this participant to the conversation, type: Sid.String
 Conversation getConversation()
          [ALL] ID of corresponding conversation.
 java.lang.String getDebugInfo()
          [OTHERS] call (audio and video) debug info
 java.lang.String getIdentity()
          [ALL] skypename OR pstn_number OR namespace:identity
 Skype.LeaveReason getLastLeavereason()
          [OTHERS] last reason for leaving conversation or live session.
 java.lang.String getLastVoiceError()
          [OTHERS] DEPRECATED, use last_leavereason instead
 java.lang.String getLiveCountry()
          [OTHERS] participant livesession country code - used for emergency calls only atm
 java.lang.String getLiveFwdIdentities()
          [OTHERS] list of identities where the live session is being forwarded (if they are disclosed), space separated
 java.lang.String getLiveIdentity()
          [ALL] identity that was used to establish current live session with that participant (can be different from participant identity)
 java.lang.String getLivePriceForMe()
          [OTHERS] 'price_per_minute_float currency' - eg '0.01 EUR'.
 int getLiveStartTimestamp()
          [ALL] time of joining the live session
 Skype.IdentityType getLiveType()
          [ALL] participant type during livesession as specified in IDENTITYTYPE
 java.lang.String getPropertyAsString(int prop)
           
 java.lang.String getPropertyAsString(Participant.Property prop)
           
 java.lang.String getQualityProblems()
          [ALL] space separated tokens values: CPU_INUSE CPU_SLOW CPU_HIGH HIGH_ECHO HIGH_NOISE MUTED_INPUT LOW_INPUT MUTED_INPUT_ACTIVITY FW_STRONG FW_BAD NOT_UDP CALL_BW_LOW RECORD_ERROR + values in video debug info
 Participant.Rank getRank()
          [ALL] Participant.RANK
 Participant.Rank getRequestedRank()
          Not set (should be: requested Participant.RANK, higher than the current one)
 int getSoundLevel()
          [ALL] current 'loudness' level when SPEAKING (0..10)
 Participant.TextStatus getTextStatus()
          [ALL] the typing indicator
 java.lang.String getTransferredBy()
          [OTHERS] Transferor identity (transferee side)
 java.lang.String getTransferredTo()
          [OTHERS] Identity of recipient of transfer (transferor side, caller side)
 Video getVideo()
          Retrieves a reference to the Video object that corresponds to the Participant.
 Participant.VideoStatus getVideoStatus()
          [ALL] video status
 Participant.VoiceStatus getVoiceStatus()
          [ALL] voice status
 void hangup()
          Removes this participant from the current live session.
 Participant mgetInfo()
          multiget the following properties - P_VOICE_STATUS - P_TEXT_STATUS - P_VIDEO_STATUS - P_RANK - P_LIVE_TYPE - P_LIVE_PRICE_FOR_ME - P_IDENTITY
static Participant[] mgetInfo(Participant[] objects)
          multiget the following properties for a list of Participant - P_VOICE_STATUS - P_TEXT_STATUS - P_VIDEO_STATUS - P_RANK - P_LIVE_TYPE - P_LIVE_PRICE_FOR_ME - P_IDENTITY
 int moduleId()
           
 void retire()
          Forcibly removes this participant from conversation.
 void ring(java.lang.String identityToUse, boolean videoCall, int nrofRedials, int redialPeriod, boolean autoStartVm, java.lang.String origin)
          Initiates live conversation attempt with Participant.
 void ringIt()
          Rings this participant, using P_LIVE_IDENTITY property if set.
 void setLiveIdentityToUse(java.lang.String identityToUse)
          Sets LIVE_IDENTITY property, an alternate identity to use when ringing, such as a PSTN.
 void setRankTo(Participant.Rank rank)
          Sets Participant's conversation privileges to the given RANK * @param rank Target Participant.RANK value.
 EnumConverting sidGetEnumProperty(PropertyEnumConverting prop)
           
 int sidGetIntProperty(PropertyEnumConverting prop)
           
 SidObject sidGetObjectProperty(PropertyEnumConverting prop)
           
 java.lang.String sidGetStringProperty(PropertyEnumConverting prop)
           
 SidGetResponding sidMultiGet(Participant.Property[] requested)
          generic multiget of a list of Property
static SidGetResponding[] sidMultiGet(Participant.Property[] requested, Participant[] objects)
          generic multiget of list of Property for a list of Participant
protected  void sidOnChangedProperty(int propertyId, int value, java.lang.String svalue)
           
 void sidSetProperty(PropertyEnumConverting prop, int newValue)
           
 void sidSetProperty(PropertyEnumConverting prop, SidObject newValue)
           
 void sidSetProperty(PropertyEnumConverting prop, java.lang.String newValue)
           
 
Methods inherited from class com.skype.ipc.SidObject
finalize, getOid, hasCached, invalidateCache, isCached, sidDoRequest, sidGetBinaryProperty, sidGetBoolProperty, sidGetFilenameProperty, sidGetLongProperty, sidGetObject, sidGetUintProperty, sidGetXmlProperty, sidMultiGet, sidMultiGet, sidMultiGet, sidMultiGet, sidRequestBinaryProperty, sidRequestBoolProperty, sidRequestEnumProperty, sidRequestFilenameProperty, sidRequestIntProperty, sidRequestObjectProperty, sidRequestProperty, sidRequestStringProperty, sidRequestUintProperty, sidRequestXmlProperty, sidSetProperty, sidSetProperty
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mConversation

public Conversation mConversation

mIdentity

public java.lang.String mIdentity

mRank

public Participant.Rank mRank

mRequestedRank

public Participant.Rank mRequestedRank

mTextStatus

public Participant.TextStatus mTextStatus

mVoiceStatus

public Participant.VoiceStatus mVoiceStatus

mVideoStatus

public Participant.VideoStatus mVideoStatus

mLiveIdentity

public java.lang.String mLiveIdentity

mLivePriceForMe

public java.lang.String mLivePriceForMe

mLiveFwdIdentities

public java.lang.String mLiveFwdIdentities

mLiveStartTimestamp

public int mLiveStartTimestamp

mSoundLevel

public int mSoundLevel

mDebugInfo

public java.lang.String mDebugInfo

mLastVoiceError

public java.lang.String mLastVoiceError

mQualityProblems

public java.lang.String mQualityProblems

mLiveType

public Skype.IdentityType mLiveType

mLiveCountry

public java.lang.String mLiveCountry

mTransferredBy

public java.lang.String mTransferredBy

mTransferredTo

public java.lang.String mTransferredTo

mAdder

public java.lang.String mAdder

mLastLeavereason

public Skype.LeaveReason mLastLeavereason
Constructor Detail

Participant

public Participant(int oid,
                   SidRoot root)
Method Detail

canSetRankTo

public boolean canSetRankTo(Participant.Rank rank)
Checks whether the current user can set this Participant's conversation privileges to the specified RANK. This enables you to gray out or disable in your UI all the unavailable options for Participant.SetRankTo method. * @param rank Participant.RANK value to check for.

Returns:
result Returns true if local user can set participant's rank to the value given in rank argument.

setRankTo

public void setRankTo(Participant.Rank rank)
Sets Participant's conversation privileges to the given RANK * @param rank Target Participant.RANK value.


ring

public void ring(java.lang.String identityToUse,
                 boolean videoCall,
                 int nrofRedials,
                 int redialPeriod,
                 boolean autoStartVm,
                 java.lang.String origin)
Initiates live conversation attempt with Participant. * @param identityToUse Ring an alternate identity, such as a PSTN number.

Parameters:
videoCall - Enable video.
nrofRedials - Unused.
redialPeriod - Unused.
autoStartVm - Unused. On dialog, if falling on VM, greeting and recording will be automatically started.
origin - When call is initiated from web link, must contain the URI that was used

ringIt

public void ringIt()
Rings this participant, using P_LIVE_IDENTITY property if set.


setLiveIdentityToUse

public void setLiveIdentityToUse(java.lang.String identityToUse)
Sets LIVE_IDENTITY property, an alternate identity to use when ringing, such as a PSTN. * @param identityToUse Empty string will reset it to default, i.e IDENTITY property value


getVideo

public Video getVideo()
Retrieves a reference to the Video object that corresponds to the Participant. It can be either local video - you can check if this participant's name (P_IDENTITY property) matches the name of the currently logged in account (P_SKYPENAME property) or incoming video from a remote participant. Note that for GetVideo to be successful, the video has to be available for that participant. This can be checked for by examining Participant VIDEO_STATUS property - once it becomes VIDEO_AVAILABLE - you can use GetVideo to obtain the Video object.

Returns:
video Returns reference to a constructed video object.

hangup

public void hangup()
Removes this participant from the current live session. Note that this does not remove the participant from conversation (for this, use Participant.Retire). It only removes participant from live state.


retire

public void retire()
Forcibly removes this participant from conversation. This method is for removing other people from conversations (for example: as administrative punishment for flooding conversation with spam messages). For local user to leave a conversation, use Conversation.RetireFrom instead.


sidMultiGet

public SidGetResponding sidMultiGet(Participant.Property[] requested)
generic multiget of a list of Property

Parameters:
requested - the list of requested properties of Participant
Returns:
SidGetResponding

sidMultiGet

public static SidGetResponding[] sidMultiGet(Participant.Property[] requested,
                                             Participant[] objects)
generic multiget of list of Property for a list of Participant

Parameters:
requested - the list of requested properties
Returns:
SidGetResponding[] can be casted to (Participant[]) if all properties are cached

mgetInfo

public Participant mgetInfo()
multiget the following properties - P_VOICE_STATUS - P_TEXT_STATUS - P_VIDEO_STATUS - P_RANK - P_LIVE_TYPE - P_LIVE_PRICE_FOR_ME - P_IDENTITY


mgetInfo

public static Participant[] mgetInfo(Participant[] objects)
multiget the following properties for a list of Participant - P_VOICE_STATUS - P_TEXT_STATUS - P_VIDEO_STATUS - P_RANK - P_LIVE_TYPE - P_LIVE_PRICE_FOR_ME - P_IDENTITY

Parameters:
objects - targets of the request
Returns:
Participant[] responses

getConversation

public Conversation getConversation()
[ALL] ID of corresponding conversation. Here and below, [ALL] tag indicates that the property has meaning and is set in context of all participants in the conversation. [OTHERS] tag has meaning only for participants who are not the local user.


getIdentity

public java.lang.String getIdentity()
[ALL] skypename OR pstn_number OR namespace:identity


getRank

public Participant.Rank getRank()
[ALL] Participant.RANK


getRequestedRank

public Participant.Rank getRequestedRank()
Not set (should be: requested Participant.RANK, higher than the current one)


getTextStatus

public Participant.TextStatus getTextStatus()
[ALL] the typing indicator


getVoiceStatus

public Participant.VoiceStatus getVoiceStatus()
[ALL] voice status


getVideoStatus

public Participant.VideoStatus getVideoStatus()
[ALL] video status


getLiveIdentity

public java.lang.String getLiveIdentity()
[ALL] identity that was used to establish current live session with that participant (can be different from participant identity)


getLivePriceForMe

public java.lang.String getLivePriceForMe()
[OTHERS] 'price_per_minute_float currency' - eg '0.01 EUR'. Note that this property obtains value only after the participant goes into live state. It cannot be used to display call rates before the call starts.


getLiveFwdIdentities

public java.lang.String getLiveFwdIdentities()
[OTHERS] list of identities where the live session is being forwarded (if they are disclosed), space separated


getLiveStartTimestamp

public int getLiveStartTimestamp()
[ALL] time of joining the live session


getSoundLevel

public int getSoundLevel()
[ALL] current 'loudness' level when SPEAKING (0..10)


getDebugInfo

public java.lang.String getDebugInfo()
[OTHERS] call (audio and video) debug info


getLastVoiceError

public java.lang.String getLastVoiceError()
[OTHERS] DEPRECATED, use last_leavereason instead


getQualityProblems

public java.lang.String getQualityProblems()
[ALL] space separated tokens values: CPU_INUSE CPU_SLOW CPU_HIGH HIGH_ECHO HIGH_NOISE MUTED_INPUT LOW_INPUT MUTED_INPUT_ACTIVITY FW_STRONG FW_BAD NOT_UDP CALL_BW_LOW RECORD_ERROR + values in video debug info


getLiveType

public Skype.IdentityType getLiveType()
[ALL] participant type during livesession as specified in IDENTITYTYPE


getLiveCountry

public java.lang.String getLiveCountry()
[OTHERS] participant livesession country code - used for emergency calls only atm


getTransferredBy

public java.lang.String getTransferredBy()
[OTHERS] Transferor identity (transferee side)


getTransferredTo

public java.lang.String getTransferredTo()
[OTHERS] Identity of recipient of transfer (transferor side, caller side)


getAdder

public java.lang.String getAdder()
[ALL] Identity of the user who added this participant to the conversation, type: Sid.String


getLastLeavereason

public Skype.LeaveReason getLastLeavereason()
[OTHERS] last reason for leaving conversation or live session. provides an enum alternative to last_voice_error as well as the reason this participant RETIRED, if so


sidGetStringProperty

public java.lang.String sidGetStringProperty(PropertyEnumConverting prop)
Specified by:
sidGetStringProperty in interface SidGetResponding
Overrides:
sidGetStringProperty in class SidObject

sidGetObjectProperty

public SidObject sidGetObjectProperty(PropertyEnumConverting prop)
Specified by:
sidGetObjectProperty in interface SidGetResponding
Overrides:
sidGetObjectProperty in class SidObject

sidGetIntProperty

public int sidGetIntProperty(PropertyEnumConverting prop)
Specified by:
sidGetIntProperty in interface SidGetResponding
Overrides:
sidGetIntProperty in class SidObject

sidGetEnumProperty

public EnumConverting sidGetEnumProperty(PropertyEnumConverting prop)
Specified by:
sidGetEnumProperty in interface SidGetResponding
Overrides:
sidGetEnumProperty in class SidObject

getPropertyAsString

public java.lang.String getPropertyAsString(int prop)

getPropertyAsString

public java.lang.String getPropertyAsString(Participant.Property prop)

sidOnChangedProperty

protected void sidOnChangedProperty(int propertyId,
                                    int value,
                                    java.lang.String svalue)
Specified by:
sidOnChangedProperty in class SidObject

sidSetProperty

public void sidSetProperty(PropertyEnumConverting prop,
                           java.lang.String newValue)
Specified by:
sidSetProperty in interface SidGetResponding
Overrides:
sidSetProperty in class SidObject

sidSetProperty

public void sidSetProperty(PropertyEnumConverting prop,
                           SidObject newValue)
Specified by:
sidSetProperty in interface SidGetResponding
Overrides:
sidSetProperty in class SidObject

sidSetProperty

public void sidSetProperty(PropertyEnumConverting prop,
                           int newValue)
Specified by:
sidSetProperty in interface SidGetResponding
Overrides:
sidSetProperty in class SidObject

moduleId

public int moduleId()
Specified by:
moduleId in class SidObject


Copyright © 2010, 2011 Skype Technologies. All Rights Reserved.