# SoftBank Robotics documentation What's new in NAOqi 2.8?

# ALSpeakingMovement API

NAOqi Interaction engines - Overview | API

Namespace : AL

ALSpeakingMovement does not have a specialized proxy yet.

## Method list

class `SpeakingMovementProxy`

- `ALSpeakingMovementProxy::setEnabled`
- `ALSpeakingMovementProxy::isEnabled`
- `ALSpeakingMovementProxy::isRunning`
- `ALSpeakingMovementProxy::setMode`
- `ALSpeakingMovementProxy::getMode`
- `ALSpeakingMovementProxy::addTagsToWords`
- `ALSpeakingMovementProxy::resetTagsToWords`

## Methods

void `ALSpeakingMovementProxy::``setEnabled`(const bool& enabled)

  Enables or disables the speaking movements.

  Parameters: | enabled – True to enable, False to disable.

bool `ALSpeakingMovementProxy::``isEnabled`()

  Returns whether the speaking movements are enabled.

  Returns: | True if the speaking movements are enabled, False otherwise.

bool `ALSpeakingMovementProxy::``isRunning`()

  Returns whether the speaking movements are running.

  Returns: | True if the speaking movements are running, False otherwise.

void `ALSpeakingMovementProxy::``setMode`(const std::string& mode)

  Sets the current speaking movement mode.

  Parameters: | mode – The chosen speaking movement mode. 2 modes exist: “random” “contextual”

  For further details, see: Speaking Movement Modes.

std::string `ALSpeakingMovementProxy::``getMode`()

  Returns the current speaking movement mode.

  Returns: | The current speaking movement mode.

  For further details, see: Speaking Movement Modes.

void `ALSpeakingMovementProxy::``addTagsToWords`(const ALValue& tagsToWords)

  Links some words to some specific animation tags.

  Parameters: | tagsToWords – Map of tags to words.

  For further details, see: Speaking Movement Modes.

`alspeakingmovement_add_links_between_tags_and_words.py`

    #! /usr/bin/env python
    # -*- encoding: UTF-8 -*-

    """Example: Use ALSpeakingMovement and ALAnimatedSpeech Modules"""

    import qi
    import argparse
    import sys

    def main(session):
        """
        This example uses the ALSpeakingMovement and ALAnimatedSpeech modules.
        """
        # Get the services ALSpeakingMovement and ALAnimatedSpeech.

        speak_move_service = session.service("ALSpeakingMovement")
        anim_speech_service = session.service("ALAnimatedSpeech")

        # removes all the tagged words dynamically added by the method addTagsToWords()
        speak_move_service.resetTagsToWords()

        # here the word "testword" is not linked with with the tag "hello"
        anim_speech_service.say("I am saying the word testword !")

        # associate word "hey" with animation tag "hello"
        # associate word "yo" with animation tag "hello"
        # associate word "testword" with animation tag "hello"
        # assiciate word "everybody" with animation tag "everything"
        ttw = { "hello" : ["hey", "yo", "testword"],
                "everything" : ["everybody"] }
        speak_move_service.addTagsToWords(ttw)

        # here the word "testword" is linked with with the tag "hello"
        anim_speech_service.say("I am saying the word testword !")

    if __name__ == "__main__":
        parser = argparse.ArgumentParser()
        parser.add_argument("--ip", type=str, default="127.0.0.1",
                            help="Robot IP address. On robot or Local Naoqi: use '127.0.0.1'.")
        parser.add_argument("--port", type=int, default=9559,
                            help="Naoqi port number")

        args = parser.parse_args()
        session = qi.Session()
        try:
            session.connect("tcp://" + args.ip + ":" + str(args.port))
        except RuntimeError:
            print ("Can't connect to Naoqi at ip \"" + args.ip + "\" on port " + str(args.port) +".\n"
                   "Please check your script arguments. Run with -h option for help.")
            sys.exit(1)
        main(session)

void `ALSpeakingMovementProxy::``resetTagsToWords`()

  Removes all the tagged words dynamically added by the method `ALSpeakingMovementProxy::addTagsToWords`.

  For further details, see: Speaking Movement Modes.

Glossary Site map Index Support Contact Legal Notices