Proposal for "Services_Nabaztag"

» Metadata » Status
  • Category: Web Services
  • Proposer: Walter Hop 
  • License: BSD Style
» Description
The Nabaztag class performs communication with a Nabaztag Wi-Fi rabbit (see

Through the Nabaztag API, the rabbit can speak English and French texts using Text-To-Speech with various voices. These texts can also be added to a Nabcast. The rabbit can also replay messages stored on the site.

The rabbit can move its ears to a specified position and report the position of its ears. There is a "dance" command to carry out a specified sequence of LEDs colors/blinking/ear movements. The status of the rabbit can be queried, and various operations on the Nabaztag owner account can be carried out via the API.

The Nabaztag owner must activate the API at The Nabaztag serial number and API token are required to use this class.

Latest version via anonymous SVN: svn://
» Dependencies » Links
  • PHP 5
  • SimpleXML extension
  • HTTP_Request
» Timeline » Changelog
  • First Draft: 2006-12-08
  • Proposal: 2006-12-08
  • Call for Votes: 2008-01-31
  • Walter Hop
    [2006-12-28 03:48 UTC]

    New in 0.5:
    - Style fixes, API location changed, first steps with API 2.0.

    New in 0.6:
    - Changed: XML parsing of API 2.0 responses using SimpleXML
    - Changed: say(): Support for text-to-speech pitch and voices
    - Changed: __construct(): allow optional third "idapp" parameter
    - Added: playMessage(): play back a stored mp3
    - Added: recordNabcast(): add TTS text to a Nabcast
  • Walter Hop
    [2006-12-29 03:02 UTC]

    Version 0.6.1:
    - Added: allowedVoices(): enumerates the voice strings known by the API
    - Changed: say(): method arguments reordered more logically; now can supply partial voice strings (e.g. "graham" instead of "graham22s")
    - Changed: use PEAR versioning style (x.y.z), thanks Cipri

    The class is now feature complete for Nabaztag API 2.0 and method signatures can be considered stable. Testing is welcomed.

    Note: API currently returns NOTAVAILABLE on "dance" and "nabcast" commands for the last week. I have created a support ticket about this.
  • Walter Hop
    [2007-12-31 00:29 UTC] API URL updated.
  • Walter Hop
    [2007-12-31 14:56 UTC]

    + New Nabaztag API functions exposed: getVoices(), isSleeping(), setSleep/sleep/wakeUp(), getInbox(), getFriendList(), getBlackList(), getVersion(), getName(), getTimeZone(), getSignature(), getSelectedLanguages().
    * Uses PEAR HTTP_Request instead of file().
    * Hard-coded allowedVoices() list was removed, new (partly undocumented) voices have been added in the API; instead use getVoices() to retrieve current list of available voices from the Nabaztag API.

    The only new Nabaztag feature not implemented yet is mp3 streaming; I have a first version Nabaztag so I cannot test this myself. Nabaztag/tag (version 2) owners, please get in touch so I can complete the class!
  • Walter Hop
    [2008-01-31 21:38 UTC]

    There does not seem to be much interest in the (untestable by me) mp3 streaming function of the Nabaztag/tag rabbit version, so I am no longer waiting on testers. As adding this feature will not impact on existing functionality, I consider the class ready for its first release.

    I found no bugs during the past month, and from a cursory google search there seems to be an open source project already using the proposed package, so I'm moving forward.

    We'll see if the PEAR people like rabbits enough to actually vote on the package. :_)