# cnfGetConferenceAttribute

Returns the current value of a conference attribute.

#### Prototype

DWORD cnfGetConferenceAttribute ( CNFRESOURCEHD cnfresourcehd, DWORD confid, DWORD attribute, INT32 *value)

Argument | Description
cnfresourcehd | Handle returned by cnfOpenResource.
confid | Conference identifier returned by cnfCreateConference.
attribute | Specifies the attribute to be retrieved. Refer to the Details section for a description of conference attributes.
value | Pointer to the returned attribute value.

#### Return values

Return value | Description
SUCCESS |
CTAERR_BAD_ARGUMENT | value is NULL.
CTAERR_INVALID_HANDLE | cnfresourcehd is not a valid conference resource handle.
CNFERR_INVALID_ATTRIBUTE | attribute is not a valid attribute for a conference.
CNFERR_INVALID_IDENTIFIER | confid is not a valid conference identifier.

#### Details

The following table describes the valid conference attributes:

Keyword | Allowed values | Description
--- | --- | ---
CONF_ATTR_NUM_LOUDEST_SPEAKERS | 1..n when coaching is disabled 1..8 on AG boards when coaching is enabled 1..16 on CG boards when coaching is enabled | Number of members used for generating the conference output signal. In the interest of quality, the number of mixed member voices is minimized for output signal generation. An application can adjust this number according to its needs.
CONF_ATTR_EVENT_MASK | 0 to disable all the events or CNF_EVNMSK_ACTIVE_ TALKERS_CHANGE or CNF_EVNMSK_TONE_ DONE | Bitmask describing the event the application is to receive for the conference.
CONF_ATTR_ACTIVE_TALKERS | 1..n | Number of talking members factored in while generating CNFEVN_ACTIVE_TALKERS_CHANGE. This attribute enables an application to tune the way CNFEVN_ACTIVE_TALKERS_CHANGE is generated. For example, when set to one (1), NaturalConference generates an event only when the main talker is changing. If set to 6, NaturalConference generates an event when one of the 6 main talkers has changed. This has nothing to do with the selection of the loudest speaker except that if both attributes are set with the same value, the application considers the active talkers member list as the current member used for generating the conference's output signal.
CONF_ATTR_ACTIVE_TALKERS_TIMER | 100 to 60000 | Minimum time (in multiples of 20 ms) between the generation of two CNFEVN_ACTIVE_TALKERS_CHANGE events.

Refer to CNF.CONFERENCE_ATTR for attribute default values.

#### See also

cnfCreateConference, cnfGetConferenceInfo, cnfSetConferenceAttribute

#### Example

extern CNFRESOURCEHD cnfresourcehd;
INT32 getActiveTalkersTimer(DWORD confid)
{
INT32 timer;
DWORD error;
error = cnfGetConferenceAttribute(cnfresourcehd, confid,
CONF_ATTR_ACTIVE_TALKERS_TIMER,
&timer);
return(timer);
}