/usr/bin/jsb-sleek is in jsonbot 0.84.4-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | #!/usr/bin/python
#
#
## bootstrap
import warnings
warnings.simplefilter("ignore")
## basic imports
import logging
import time
import os
import sys
## sys.path manipulation
sys.path.insert(0, os.getcwd())
## print version
from jsb.version import getversion
print getversion('SLEEK')
## options parser
from jsb.utils.opts import makesxmppopts
opts = makesxmppopts()
from jsb.utils.log import setloglevel
setloglevel(opts.loglevel or "warn", not opts.nocolors)
## set datadir early on
if opts.datadir:
if not os.path.isdir(opts.datadir): os.mkdir(opts.datadir)
from jsb.lib.datadir import setdatadir
setdatadir(opts.datadir)
## remaining jsb imports
from jsb.lib.boot import boot
from jsb.lib.errors import NoOwnerSet
from jsb.lib.fleet import getfleet
from jsb.lib.exit import globalshutdown
from jsb.utils.exception import handle_exception
from jsb.utils.mainloop import mainloop
from jsb.lib.threads import start_new_thread
## boot the bot
boot(opts.datadir)
## create bots config
from jsb.utils.opts import makesxmppconfig
try: cfg = makesxmppconfig(opts, botname = opts.name or "default-sleek", type="sleek")
except Exception, ex: print str(ex) ; os._exit(1)
cfg.type = "sleek"
if not cfg.user and not opts.user: logging.error("no user set .. use the -u option")
got = False
if opts.nick: cfg.nick = opts.nick ; got = True
if opts.port: cfg.port = opts.port ; got = True
if opts.user: cfg.user = opts.user ; got = True
if opts.password: cfg.password = opts.password ; got = True
if cfg.disabled: cfg.disabled = 0 ; got = True
if got: cfg.save()
## start the bot
try:
from jsb.drivers.sleek.bot import SleekBot
bot = SleekBot(cfg, register=opts.doregister)
except NoOwnerSet, ex:
print "owner is not set in %s - use the -o option" % str(ex)
os._exit(1)
if opts.channel and not opts.channel in bot.state['joinedchannels']:
bot.state['joinedchannels'].append(opts.channel)
bot.state.save()
try:
logging.warn("starting sleekxmpp bot with user %s" % bot.cfg.user)
start_new_thread(bot.boot, ())
except KeyboardInterrupt: globalshutdown()
except: handle_exception() ; globalshutdown()
mainloop()
|