diff --git a/assignment-client/src/AgentScriptingInterface.h b/assignment-client/src/AgentScriptingInterface.h
index 9fa7688778..1f592a9f18 100644
--- a/assignment-client/src/AgentScriptingInterface.h
+++ b/assignment-client/src/AgentScriptingInterface.h
@@ -18,16 +18,25 @@
#include "Agent.h"
/**jsdoc
+ * The Agent
API enables an assignment client to emulate an avatar. In particular, setting isAvatar =
+ * true
connects the assignment client to the avatar and audio mixers and enables the {@link Avatar} API to be used.
+ *
* @namespace Agent
*
* @hifi-assignment-client
*
- * @property {boolean} isAvatar
- * @property {boolean} isPlayingAvatarSound Read-only.
- * @property {boolean} isListeningToAudioStream
- * @property {boolean} isNoiseGateEnabled
- * @property {number} lastReceivedAudioLoudness Read-only.
- * @property {Uuid} sessionUUID Read-only.
+ * @property {boolean} isAvatar - true
if the assignment client script is emulating an avatar, otherwise
+ * false
.
+ * @property {boolean} isPlayingAvatarSound - true
if the script has a sound to play, otherwise false
.
+ * Sounds are played when isAvatar
is true
, from the position and with the orientation of the
+ * scripted avatar's head.Read-only.
+ * @property {boolean} isListeningToAudioStream - true
if the agent is "listening" to the audio stream from the
+ * domain, otherwise false
.
+ * @property {boolean} isNoiseGateEnabled - true
if the noise gate is enabled, otherwise false
. When
+ * enabled, the input audio stream is blocked (fully attenuated) if it falls below an adaptive threshold.
+ * @property {number} lastReceivedAudioLoudness - The current loudness of the audio input, nominal range 0.0
(no
+ * sound) – 1.0
(the onset of clipping). Read-only.
+ * @property {Uuid} sessionUUID - The unique ID associated with the agent's current session in the domain. Read-only.
*/
class AgentScriptingInterface : public QObject {
Q_OBJECT
@@ -54,20 +63,24 @@ public:
public slots:
/**jsdoc
+ * Set whether or not the script should emulate an avatar.
* @function Agent.setIsAvatar
- * @param {boolean} isAvatar
+ * @param {boolean} isAvatar - true
if the script should act as if an avatar, otherwise false
.
*/
void setIsAvatar(bool isAvatar) const { _agent->setIsAvatar(isAvatar); }
/**jsdoc
+ * Check whether or not the script is emulating an avatar.
* @function Agent.isAvatar
- * @returns {boolean}
+ * @returns {boolean} true
if the script is acting as if an avatar, otherwise false
.
*/
bool isAvatar() const { return _agent->isAvatar(); }
/**jsdoc
+ * Play a sound from the position and with the orientation of the emulated avatar's head. No sound is played unless
+ * isAvatar == true
.
* @function Agent.playAvatarSound
- * @param {object} avatarSound
+ * @param {SoundObject} avatarSound - The sound to play.
*/
void playAvatarSound(SharedSoundPointer avatarSound) const { _agent->playAvatarSound(avatarSound); }
diff --git a/assignment-client/src/avatars/ScriptableAvatar.h b/assignment-client/src/avatars/ScriptableAvatar.h
index b2ad4527b0..6b78f666e1 100644
--- a/assignment-client/src/avatars/ScriptableAvatar.h
+++ b/assignment-client/src/avatars/ScriptableAvatar.h
@@ -20,7 +20,7 @@
/**jsdoc
* The Avatar
API is used to manipulate scriptable avatars on the domain. This API is a subset of the
- * {@link MyAvatar} API.
+ * {@link MyAvatar} API. To enable this API, set {@link Agent|Agent.isAvatatr} to true
.
*
* @namespace Avatar
*