Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

4
Become a Fan
5.0

Available as/for:
Description:
Freeremote

The system was developed to provide remote management of Linux on the means of IR-remote controls, mobile devices (mobile phones) and other sources (eg network). In terms of the object interacting with a source of commands is called a controller. The controller is waiting for commands (pressing the button on the remote device) and sends a signal to its customers on the bus DBus.

The system consists of two parts: server and client.

Server
Server (daemon), which tracks click on the buttons and controllers notify their customers of the event. Server provides its service to DBus.
The work with each type of controller is a special module that loads the server. So, to work with IR-remote control (LIRC), using the module controller-lirc.so, and for mobile devices - controller-serial.so.
Server expandable, ie you can write modules for other teams.
Mobile devices can connect via:
* USB or Serial cable (using a device /dev/ttySx or /dev/ttyACMx);
* Bluetooth on the protocol RFCOMM (using device /dev/rfcommx);
* IR-port.
The main thing is that the mobile device provides the ability to track events click on the button.

TODOs:
* Redesign the architecture iolib (on paper, all ready).

Client
Client is an application which has been (was) writen by using Qt4, which during launching connects to server and performs actions which were provided by user according to held buttons.
The actions specified in the scripting language ECMAScript (ECMA-262) or simply JAVAScript. Functional script language extensible. You can write plugins, as in C + +, and in java.
To run external programs in the script put the function runCommand, and access to services DBus class DBusInterface.
Examples of writing script extensions made two modules to manage through the DBus system kmix mixer and player amarok.

TODOs:
* Group action.
* Disconnecting the controller is not required.
* Syntax JAVA scripts in the editor.
* Completion code in the script (control structure, the current expansion).
* Assistant for DBus-interface with the ability to insert code in the script.

Ratings & Comments

8 Comments

pascal79

Hi, I'm trying to compile under Slackware 13. It has kde 4.2.4 (so no irkick), is it compatible? When I try to compile the server I get:

pascal@Toothy:~/freeremote/freeremoted-0.1.4$ ./build.bash Usage: build.bash <build_dir> [project_dir] [configuration] [arguments...] pascal@Toothy:~/freeremote/freeremoted-0.1.4$ cmake . -- The C compiler identification is GNU -- The CXX compiler identification is GNU -- Check for working C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Boost version: 1.38.0 -- Found the following Boost libraries: -- filesystem -- program_options -- signals -- thread -- Could NOT find TINYXML (missing: TINYXML_LIBRARY TINYXML_INCLUDE_DIR) -- Could NOT find DBUSPP (missing: DBUSPP_LIBRARY DBUSPP_INCLUDE_DIR) --------------------------------------------------------------------------------- Install bin: /home/pascal/freeremote/bin Install config: /home/pascal/freeremote/etc/freeremoted Install module: /home/pascal/freeremote/lib/freeremoted Log file: /home/pascal/freeremote/freeremoted.log --------------------------------------------------------------------------------- -- Configuring done -- Generating done -- Build files have been written to: /home/pascal/freeremote/freeremoted-0.1.4 pascal@Toothy:~/freeremote/freeremoted-0.1.4$ ls AUTHORS CMakeLists.txt Doxyfile Makefile build.bash* cmake.local/ config.h module/ CMakeCache.txt COPYING INSTALL-en README build.debug* cmake_install.cmake config.h.in server/ CMakeFiles/ ChangeLog INSTALL-ru TODO build.release* config/ iolib/ templates/ pascal@Toothy:~/freeremote/freeremoted-0.1.4$ make Scanning dependencies of target io [ 4%] Building CXX object iolib/CMakeFiles/io.dir/fddevice.cpp.o [ 9%] Building CXX object iolib/CMakeFiles/io.dir/fdnamedevice.cpp.o [ 14%] Building CXX object iolib/CMakeFiles/io.dir/iodevice.cpp.o [ 19%] Building CXX object iolib/CMakeFiles/io.dir/iolib.cpp.o [ 23%] Building CXX object iolib/CMakeFiles/io.dir/serialdevice.cpp.o [ 28%] Building CXX object iolib/CMakeFiles/io.dir/socketdevice.cpp.o [ 33%] Building CXX object iolib/CMakeFiles/io.dir/socketnotifier.cpp.o [ 38%] Building CXX object iolib/CMakeFiles/io.dir/timer.cpp.o Linking CXX static library libio.a /usr/bin/ar cr libio.a CMakeFiles/io.dir/fddevice.cpp.o CMakeFiles/io.dir/fdnamedevice.cpp.o CMakeFiles/io.dir/iodevice.cpp.o CMakeFiles/io.dir/iolib.cpp.o CMakeFiles/io.dir/serialdevice.cpp.o CMakeFiles/io.dir/socketdevice.cpp.o CMakeFiles/io.dir/socketnotifier.cpp.o CMakeFiles/io.dir/timer.cpp.o /usr/bin/ranlib libio.a [ 38%] Built target io Scanning dependencies of target freeremoted [ 42%] Building CXX object server/CMakeFiles/freeremoted.dir/application.cpp.o In file included from /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:25: /home/pascal/freeremote/freeremoted-0.1.4/server/manager.h:23:29: error: dbus++/object.hpp: No such file or directory In file included from /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:30: /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:27:29: error: dbus++/dbus++.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:28:38: error: dbus++/interface_proxy.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:29:41: error: dbus++/basic_object_proxy.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:30:35: error: dbus++/basic_struct.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:31:30: error: dbus++/variant.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:32:34: error: dbus++/fixed_array.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:33:47: error: dbus++/standard_interface_proxy.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:35:27: error: dbus++/dbus.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:36:38: error: dbus++/mainloop_object.hpp: No such file or directory /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:37:32: error: dbus++/exception.hpp: No such file or directory In file included from /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:25: /home/pascal/freeremote/freeremoted-0.1.4/server/manager.h:39: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/manager.h:39: error: expected `{' before ‘object’ /home/pascal/freeremote/freeremoted-0.1.4/server/manager.h:39: error: function definition does not declare parameters In file included from /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:30: /home/pascal/freeremote/freeremoted-0.1.4/server/dbus.h:35: error: expected constructor, destructor, or type conversion before ‘(’ token /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In constructor ‘freeremote::Application::Application()’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:67: error: ‘MODULEFILE_PATH’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In member function ‘void freeremote::Application::parseCommandLine(int, char**)’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:101: error: ‘cout’ is not a member of ‘std’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:107: error: ‘cout’ is not a member of ‘std’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:107: error: ‘VERSION’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:139: error: ‘cout’ is not a member of ‘std’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:140: error: ‘cout’ is not a member of ‘std’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In member function ‘void freeremote::Application::isRunning() const’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:152: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:152: error: expected `;' before ‘dbus’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:153: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:153: error: expected `;' before ‘service’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:155: error: ‘root’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:155: error: expected `;' before ‘dbusRoot’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:156: error: ‘dbusRoot’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:156: error: ‘service’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In member function ‘void freeremote::Application::daemonize()’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:174: error: ‘LOGFILE’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In member function ‘void freeremote::Application::checkCfgFile()’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:199: error: ‘CONFIGFILE_PATH’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp: In member function ‘void freeremote::Application::exec()’: /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:226: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:226: error: expected `;' before ‘dbus’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:227: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:227: error: expected `;' before ‘service’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:229: error: ‘dbuspp’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:229: error: expected `;' before ‘mainLoop’ /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:230: error: ‘mainLoop’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:230: error: ‘service’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:232: error: aggregate ‘freeremote::Manager manager’ has incomplete type and cannot be defined /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:239: error: ‘dbus’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: ISO C++ forbids declaration of ‘dbuspp’ with no type /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: expected `)' before ‘::’ token /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: expected `{' before ‘::’ token /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: ‘::dbus_exception’ has not been declared /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: ‘x’ was not declared in this scope /home/pascal/freeremote/freeremoted-0.1.4/server/application.cpp:243: error: expected `;' before ‘)’ token make[2]: *** [server/CMakeFiles/freeremoted.dir/application.cpp.o] Error 1 make[1]: *** [server/CMakeFiles/freeremoted.dir/all] Error 2 make: *** [all] Error 2

BRE

You need to install the missing libraries: libdbus + + (http://sourceforge.net/projects/libdbuspp/) tinyxml (http://sourceforge.net/projects/tinyxml/)

mxttie

is this somehow related to the kde4 port of irkick or is this a whole new project?

BRE

This is a new project. Wants to create a common service (daemon) which will be able to work different carefull (KDE, Gnome, console).

BRE

carefull == clients :)

mxttie

in any case, it's an interesting project :) keep going ;)

BRE

Thank you for your kind words. :)

BRE

Add archive contains two archives: the source server and client

Pling
0 Affiliates
Details
license
version 0.1.0
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 1

More System Tools (NOT OS or ROMS) from BRE:

FreeRemote
BRE
last update date: 16 years ago

Score 5.0

Other System Tools (NOT OS or ROMS):

KDE CDEmu Manager
marcel83
last update date: 1 year ago

Score 7.0

QPhotoRec
caezsar
last update date: 11 years ago

Score 5.7

Burg-manager
ingalex
last update date: 14 years ago

Score 7.4

Multi-Platform File Manager
Lunik
last update date: 21 years ago

Score 5.0

KFS
jrockey
last update date: 21 years ago

Score 5.0

dolphin-perforce-plugin
martin9000andersen
last update date: 11 years ago

Score 5.0



System Tags