Obedience
App to send commands to your servers from your mobile by Telegram
Pre-requisites
Obedience is based in vysheng’s telegram-cli project. You must install and configure this great project previously to use Obedience. You can obtain every info that you need in vysheng’s repository.
Also, you must install nodeJs 0.10 or above. You can check more info here.
Installation
Easy. If you use npm (recommended):
npm install obedience
If you prefer git:
git clone https://github.com/GuillermoPena/obedience.git
After, you can run installation shell script (with root permissions please) to help you to complete configuration and install it like a daemon.
install.sh
Obedience has been tested in Ubuntu 14.04 and Raspberry Pi with Raspbmc. This doesn’t mean that Obedience doesn’t work in other systems… try it!
Different types of users
Two different types of users exist in obedience: users and administrator. What can do each of them do?
-
Administrators : create/remove users and alias, run any command in target system line command, run private and admin alias
-
Users : execute public alias, show users and public alias list, help…
Commands
ADVICE: Obedience is always case-sensitive… be careful!
‘Adduser’ : Only for admins. Send ‘Adduser’ by Telegram and complete wizard. Easy!
‘Removeuser [user name]' : Only for admins, but an admin can’t remove another admin user
‘Addalias’ : Only for admins. Send ‘Addalias’ by Telegram and complete wizard. You can choose who can run it
‘Removealias [alias name]' : Only for admins, but an admin can’t remove another private aliases
‘Run [command]’ : Only for admins. Run anything that you want in your system command line
‘Help’ : show all commands that your user can run
‘Showuser’ : show an user list
‘Showalias’ : show all alias that your user can run
Preferences properties
Many issues can be solved checking your preferences.json file. Know means of each property:
‘node’ : Node full path of your system. Check it if you have 'spawn node ENOENT' issues
‘tgBinFile’ : full path of Telegram-cli bin file
‘tgKeysFile’ : full path of Telegram-cli keys file
‘tgProfileDir’ : full path of Telegram-cli profile folder
‘logFile’ : log file (full psth please)
‘logLevel’ : level of debug. 'info' by default. You can set 'error', warn', 'info', 'debug'... etc
‘tglogfile’ : Telegram-cli debug file. Empty by default but usefull if you want to debug Telegram-cli output
‘tgoptions’ : array with extra Telegram-cli options (for example: ['-vv'] means extra verbose)