**************** *** Mon Nemo *** **************** Last update: 2006/07/31 ------------------------------------------------------ Sebastien VINCENT ------------------------------------------------------ MoNemo displays information coming from a PAN, using direct access (as accessing the IPv6 SNMP sensors), or by requesting the data from a database. MonNemo is licensed under the GPL license, see the COPYING file joined in the archive. Presently supported data types are: -- Temperature and humididty, Direction, Acceleration, GPS (from IPv6 sensors) -- Chat messages -- Panasonic IPv6 Camera flow and image -- In src/dataManagers/CameraManager.java, replace "ipv6-camera.org" with your real camera's address for the following fields: "private String jpgURL" "private String mjpgURL" ###################################################################### Important Notes: - You need JAVA (>= 1.5) runtime environment installed on your system - If you are using Windows, the Microsoft Java Virtual Machine (installed by default with Internet Explorer) does not work properly with the Applet version of this application, you need to install the SUN JVM and reboot your computer. ###################################################################### Compilation and execution: - Compile the source code with "make" in the "src" directory. - Create the client jar file with "make client", and the server jar file with "make server". The jars are located in the MonNemo's root directory. - Client: The client displays the PAN information through a GUI. Fill the src/config.properties file and execute the client with: "javac -jar MonNemo-client.jar". The config.properties files takes the following options: !!! This current development version requires to replace the location !!! of your config file in src/gui/nemogui/NemoGUI.java, in the !!! "public NemoGUI()" function and to recompile MonNemo. Command !!! line argument to specify the file location will be provided in !!! the future. server_db=myserver.org myserver.org is the URL where your database is located. Default is the Nautilus6's one. type_db={postgresql,mysql} the type of your database (postgresql, or MySQL) Default is postgresql. name_db=DB DB is the name of your database. Default is the Nautilus6's one. user_db=username the username to login on your database. Default is a read-only user on the Nautilus6's one. password_db=password the password to login on your database. Default is for the read-only user on the Nautilus6's one. selected_session=n to display the session number n. mode_session={0,1} 1 means SNMP Client mode: gets the data directly with SNMP, by requesting the sensors (requires IPv6 connectivity). Note that you still need to specify the database, where some information about the session will be retrieved. 0 means Database mode: gets the data from the database. updatefreq=n to update the sensor information every n seconds, overwriting this session's default frequency (ignored in DB client mode). autopic=n if "Automatic" is set in the Chat window, MonNemo will refresh and blog pictures every n seconds (Default is 0, which means disable). th_display={0,1} gps_display={0,1} acc_display={0,1} dir_display={0,1} to display or not the temperature/humidity, GPS, direction and acceleration informations (Default is 1). user_chat=name Your nickname for the Chat. ipv6_map={0,1} If your client is on an IPv6-only link. server_map={YAHOO_JP,EXPEDIA_COM,EXPEDIA_UK,EXPEDIA_DE} The map server to use. Default one is EXPEDIA_COM. Note that Expedia does not fully covers maps on Asia, so a zoom under 1/197500 will result a false positionning and moving. So use YAHOO_JP for Japan localisation. For Europe or USA localisation, YAHOO_JP will give you blank map, so use expedia servers. - Server: the server mode does SNMP requests to the sensors and saves them in the database (this mode requires special access to the database). Execute "javac -jar MonNemo-server.jar --mode=server" with the following command arguments line (the server does not support the config.properties file yet): --user=user_name --password=password to change the access user to the database. --session=id to retrieve information for session "id". --update=n to update the sensor information every n seconds, overwriting this session's default frequency. --url=db to change the URL of the database. The format of the URL is "jdbc:postgresql://server/dbname". --ipv6only if you are in an IPv6-only network. --overwrite if you want the server only to keep the last value in the database. --mapserver=ms mapserver to use where ms={yahoo.co.jp, expedia.com, expedia.de, expedia.co.uk} --nopicture don't save picture from the webcam. For example: $ java -jar MonNemo-server.jar --mode=server --session=1 --overwrite Why do we use a database? (FYI, we use PostgreSQL 7.4 database, which works in IPv6) - Only one instance of the application (the server) is connecting to the PAN, this is thus useful if low-bandwidth connectivity at the PAN. - Easy central session administration. - People without IPv6 connectivity can also follow the demonstrations. - We can keep the gathered data for further study. For demonstrations, complete technical documentation, and this application in Applet mode, please refer to: http://demo.nautilus6.org/