8 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi guys,
So i am in server1 and i have to login to server 2, 3,4 and run some script there(logging script) and output its result. What i am doing is running the script in server2 and outputting it to a file in server 2 and then Scp'ing the file to server1. Similarly i am doing this for other... (5 Replies)
Discussion started by: srkmish
5 Replies
2. Solaris
Hi,
I am trying to automate the process of fetching files from remote server to local server through sftp. I have the username and password for the remote solaris server. But I need to give password manually everytime i run the script.
Can anyone help me in automating the script such that it... (3 Replies)
Discussion started by: ssk250
3 Replies
3. UNIX for Dummies Questions & Answers
I have 3 servers A, B, C and server B is having some files in /u01/soa/ directory, these files i want to copy to server C, and i want to run the script from server A.
Script(Server A) --> Files at Server B (Source server) --> Copy the files to Server C(Target Server).
We dont have RSA key... (4 Replies)
Discussion started by: kiran_j
4 Replies
4. Shell Programming and Scripting
I need to connect to a ftp server-1 from linux server-2 and copy/get a file from server-1 which follows a name pattern of FILENAME* (located on the root directory) and copy on a directory on server-2. Later, I have to use this file for ETL loading... For this I tried using as below
/usr/bin/ftp... (8 Replies)
Discussion started by: dhruuv369
8 Replies
5. Shell Programming and Scripting
Dear Friends,
Sorry for this basic request. But I just started learning Ksh recently and still I am a newbie in this field.
Q: I have files on one server and the date format is 20121001000009_224625.in which has year (yyyy) month (mm) and date (dd). I have these files on server A. The task... (8 Replies)
Discussion started by: BrownBob
8 Replies
6. Red Hat
Guys,
Need your help coz my server runs in local time GMT +8, but when client use ftp and login, the resulting timestamp seen in each file is in UTC format. We need to set that the time should be the same as GMT +8 when in ftp session.
I am using RHEL 5.3.
root@]# ll
total 1740... (2 Replies)
Discussion started by: shtobias
2 Replies
7. UNIX for Dummies Questions & Answers
yo! i've decided to run a jabber server and i'm having some install errors. Actually one major error that is pushing me closer and closer to taking a hammer to my machine.
Here is some info:
=====================================================
OS: FreeBSD 5.2.1-Stable
Source: Jabber-2.0s6... (2 Replies)
Discussion started by: edua
2 Replies
8. UNIX for Dummies Questions & Answers
Fedora Core2
Jabberd 1.4.2 quickstart
Anyone using a jabber server?
Do you know how to have it startup when booting? I can't seem to figure that part out.
Jeff (1 Reply)
Discussion started by: lawadm1
1 Replies
JABBER-QUERYBOT(1p) User Contributed Perl Documentation JABBER-QUERYBOT(1p)
NAME
jabber-querybot - a modular perl jabber bot
DESCRIPTION
jabber-querybot connects a jabber account and wait for messages. If a message comes in, it forward it to your self programmend modul. The
return string of your module, jabber-querybot send it back to the jabber sender.
It is designed to be re-usable and to make it easy to write small Jabber bots that do one thing and do it well. A simple concept with a lot
of examples and experiences are implemented.
1. Create a jabber account on a jabber-server around
2. Create a bot application:
cd examples
cp Querymodule.pm /etc/jabber-querybot/Mybot.pm
cd /etc/jabber-querybot
ln -s Mybot.pm Querymodule.pm
Modify login parameters to your jabber-bot-account
vim Mybot.pm
our $hostname = "swissjabber.ch";
our $user = "";
our $password = "";
our $ident = "Testbot";
our $bot_admin = "@swissjabber.ch";
our $port = "5222";
our $timeout = "5";
our $service_name = "$user@$hostname";
our $bot_description = "Bot help title
Bot description";
For each jabber message, jabber-querybot will execute sub run_query, that you can write here your application.
You can control how your jabber response will be:
o error = error message stanza
o presence = error as presence stanza
o ignore = ignore message
OPTIONS
jabber-querybot has a lot of variables which you can easy modify for what you need:
querystatus
$querystatus = [ 0 | 1 ]
o 0 = Bot will not proceed any incoming jabber messages.
o 1 = Bot will proceed incoming messages.
penalty_status
If the bot has too much workload, it goes to penalty status and wait some time until his status change back to normal.
$timer_reconnect_default = 21600
Every 21600 seconds (6 hours) the bot will shutdown automatically, wait 10 seconds and starting up again.
$timer_auto_query = 0
If you set in your module this variable to 60, the bot will every 60 seconds call the function run_auto_query() which you may use for
several things.
System load
If your systems load is >=6, this bot will shutdown the jabber connection and check every 10 seconds systems load. If load <=2, bot will
start over.
EXAMPLES
/usr/share/doc/jabber-querybot/examples/Testbot.pm
FILES
/etc/jabber-querybot/Querymodule.pm
/usr/bin/jabber-querybot
RESOURCES
http://github.com/micressor/jabber-querybot/
METHODS
InMessage()
An incoming jabber message to the bot will hook this function.
o Read parameters of incoming stanza
o Decode utf8 string
o increment timer overload and do not process message if bot is overloaded.
o Ignore message if it is from myself
o Be sure, that it is not a message from another transport
o Check any systemcommands for the bot
o If the bot has sleeping status, change it to work
o We process only normal text or chat type jabber messages
o And now we give the real text string which was incoming to the bot via run_query().
o If run_query() say us 'ignore` we do a log entry and do not answer via jabber to the user.
o If run_query() says 'error` we send a jabber error stanza wiht the status message from run_query() back to the user.
o If there was no error, we update the statistic vars and send the answer from run_query() back to the jabber user.
connect_server()
This function connects to the jabber server with the given credentials from Querymodule.pm.
Set the call back functions. This functions will be executed if a message of the types <message/> <iq/> or <presence/> are incoming.
Stop()
Shutdown jabber connection and exit main program
disconnect_server()
Only disconnect from the jabber-server.
reconnect_server()
Reconnect and create a log entry.
InIQ()
We do not proceed any iq (information query), this is only for statisic.
InPresence()
o Increment timer overload
o Do not process message if we are overloaded penalty_handler().
We have a problem in Net::Jabber. An incoming message with a ` in resource blocks the bot. We will hotfix that for the moment.
A subscription type `subscribe` is incoming. Send `subscribed` tho the user and say hello ;)
o Send presence to user
o Remove subscription if a user remove this bot from his roster
sendPresence()
Send presence information to user
systemcommands()
o If user type '!help` send a help instruction to the user
o Send statistic information to the user if he types '!status`
o Is it a bot command?
o Is the bot command from the bot admin? If not, send "not allowed"
o '!shutdown` will shutdown your bot via jabber invoke.
o '!query off` turn off queries
o '!query on` turn on queries
get_barejid()
Remove resource id from a jabber id.
calcualte_stats()
Calculate message statistics
jabber_set_presence()
Set new presence if we have another presence status or we have set the force flag (for transport presence).
jabber_send_message()
This function send all jabber messages which are outgoing from the jabber-querybot.
set_wakeup_mode()
Set jabber presence via jabber_set_presence()
penalty_handler()
This function checks if the bot is overloaded with incoming mesages and reject if it is. Two times that's ok so 2:1 because while in main.
Bot admin got everytime an answer.
jabber_add_footer()
Add footer to the processed message.
calcualte_elapsed_time()
Calculate elapsed worktime for a query
sendError()
sendError($message, $from, $to, 404, "text");
system_load_check()
o Calculate system load
o If load is too high shutdown bot.
o If load is ok, starting up bot
connect_bot()
Connect bot and initialize all timers.
check_before_start()
Check configuration variables in Querybotmodule.pm and give answer if anything does not match or is missing.
COPYRIGHT AND LICENSE
Copyright (C) 2009-2012 Marco Balmer <marco@balmer.name>
The Debian packaging is licensed under the GPL, see `/usr/share/common-licenses/GPL-3'.
perl v5.14.2 2012-02-03 JABBER-QUERYBOT(1p)