A Nabaztag iOS client using wizz.cc API
Objective-C C Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
ASIHTTPRequest
Classes
Coniglio.xcodeproj
English.lproj
FBConnect.bundle/images
FBConnect
FloatingWindow
French.lproj
Italian.lproj
Resources-iPad
ServerSide
.DS_Store
AddRadio.h
AddRadio.m
AddRadio.xib
AlarmChooser-iPad.xib
AlarmChooser.h
AlarmChooser.m
AlarmChooser.xib
ConiglioRadio.plist
Coniglio_Prefix.pch
Connect_iphone.png
Default.png
Default@2x.png
Entitlements.plist
FBConnectGlobal.m
FBDialog.m
FBLoginButton.m
FBLoginDialog.m
FBNativeStringUploader.m
FBPermissionDialog.m
FBRequest.m
FBSession.m
FBStreamDialog.m
FBTranslationsLoader.m
FBUploadResultReceiver.m
FBXMLHandler.h
FBXMLHandler.m
Facebook.h
Facebook.m
Facebook_favicon.png
Facebook_favicon_disabled.png
Facebook_favicon_highlighted.png
FlipsideView.xib
Icon-72.png
Icon-Small-50.png
Icon-Small.png
Icon-Small@2x.png
Icon.png
Icon@2x.png
Info.plist
LICENSE
Logout_iphone.png
MainView-iPad.xib
MainView.xib
MainWindow.xib
Nabaztag.h
Nabaztag.m
README.md
RadioChooser.h
RadioChooser.m
RadioChooser.xib
SettingsView-iPad.xib
Speech_balloon-iPad.png
Speech_balloon.png
Speech_balloon@2x.png
Splash-Landscape.png
Splash-Portrait.png
Voices.plist
alarmclock.png
alarmclock@2x.png
asleep.png
asleep@2x.png
asleep_disabled.png
asleep_disabled@2x.png
iTunesArtwork
main.m
microphone-iPad.png
microphone.png
microphone@2x.png
music.png
music@2x.png
music_disabled.png
music_disabled@2x.png
nabaztag-sfondo.png
nabaztag.png
nabaztag@2x.png
nomusic.png
nomusic@2x.png
nomusic_disabled.png
nomusic_disabled@2x.png
online.png
online@2x.png
online_disabled.png
online_disabled@2x.png
prefs.png
prefs@2x.png

README.md

Introduction

Coniglio is an universal application for iOS the controls a Nabaztag. It do not move ears but does the useful things a Nabaztag should do. Coniglio means, in Italian, what Nabaztag means in Armenian: Bunny.

The application has been sold on AppStore for a couple years. In July 2011 Mindscape cut the support to Nabaztag and shut down its server. I pulled Coniglio from the AppStore because the nabaztags were completely unuseful.

The OpenJabNab project

In the last months a couple of OpenJabNab server have been brought up everywhere (the most part in France, of course). wizz.cc (the author of the very good web application NabaztagController) brought up some API that allowed me to have Coniglio work again.

The openource path

Meanwhile I really use my nabaztag only as radio, the features of Coniglio are not used by me, nor tested and, in any case, the OpenJabNab ecosystem is fragile, I cannot ensure the level of support the I would like.

The solution? Opensource the project, so that if someone is interested to it he could fork from here and have its product.

The source is released under the MIT License (basically, make anything you want with the code, preserving my copyright notice).

Informations on Coniglio

Usage, instructions, screenshots, etc. can be found on the original web site of Coniglio.

iOS code

The code is compilable as is on XCode 4.x runs on iOS4, should run also on iOS3.1 or later but I have no device to test on it so I'm not sure. It works under the beta of the next version of iOS.

The code is stand alone for the most part. The radioalarm and the voice recorder system needs some server-side components that are into the ServerSide directory. Beware of the server URL and SHA salt in AlarmChooser.h and of the MainViewController.h. The constants are kAlarmBaseURI, kRecordingURI and kSHASalt.

The code is dependent on an ancient version of the Facebook connect (FBConnect) iOS framework for facebook status reading (you will need key and secret in Facebook.m to have meaningful answers from Facebook) and from ASIHTTPRequest for some of the network I/O.

Of course, you will need a developer certificate to use it on your device (or to publish it on the AppStore). Contact me if you need help on publishing, I could be available to push a new version (for free) if someone is available to support it.

Server-side code

The server side code are 3 python script, designed to be run under web.py. I personally run it on a Linode VPS, with Debian 6 and lighttpd as web server. Any supported platform for web.py capable of running ffmpeg binaries will do. The code is very easy to understand. code.py is the "main" responder, while alarmsender.py should be called by cron to send the radioalarms to the remote nabaztag.

The server-side code and the iOS code needs to be syncronized in called URLs and SHA salt. Beware also that some paths are hardcoded in serverside code (/usr/bin/ffmpeg, the location of SQLite db and the log files). Be aware of that and have fun!

If you need help/informations on this code

Feel free to write me, I will try to help: gt AT iltofa.it Check also the original web site for more informations and help.