added per-override run feature
This commit is contained in:
parent
e55de5023e
commit
40556b610a
@ -47,3 +47,6 @@
|
||||
0.22.9
|
||||
======
|
||||
+ Changed version for compliance with *BSD ports
|
||||
+ Added possibility to run external program for each override and
|
||||
hidden. See bforce.subst.sample for examples and
|
||||
docs/readme.txt for details
|
1
TODO
1
TODO
@ -2,7 +2,6 @@
|
||||
"+" - feature
|
||||
|
||||
|
||||
+ per link dial_prefix option
|
||||
- sed detection in makefile
|
||||
+ [io_modem.c] add random and smart algorythms selecting of tty.
|
||||
smart means (1) write time stat for every line and (2) evenly
|
||||
|
@ -150,4 +150,13 @@ Escape character is '^]'.
|
||||
|
||||
|
||||
éÓËÒÅÎÎÅ ×ÁÛ... Igor Mitichev (2:6001/9.0)
|
||||
3 ΝΑΡ 2005 Η. 15:30
|
||||
3 мая 2005 г. 15:30
|
||||
|
||||
Некоторые дополнения по-поводу новых фич
|
||||
========================================
|
||||
override .. hidden
|
||||
С версии 0.22.9 bforce научился запускать внешнюю программу для
|
||||
каждого линка/его хиддена. Для чего это сделано? Единственно, что
|
||||
мне приходит в голову - необходимость залочить модем/послать в
|
||||
него строку иницализации. Но возможно, вы придумаете совершенно
|
||||
иное применение этой фиче.
|
@ -17,17 +17,18 @@
|
||||
# Override 1:2/3 Phone Unpublished
|
||||
#
|
||||
# Happy
|
||||
override 776:308/1 Ipaddr 192.168.1.1 Flags CM,IFC
|
||||
override 776:308/1.1 Ipaddr 192.168.1.2 Flags CM,BINKP
|
||||
#override 776:308/1 Ipaddr 192.168.1.1 Flags CM,IFC
|
||||
#override 776:308/1.1 Ipaddr 192.168.1.2 Flags CM,BINKP
|
||||
|
||||
# Estar
|
||||
override 2:5020/758 Phone 961-2243
|
||||
#override 2:5020/758 Phone 961-2243
|
||||
|
||||
# Hard Core
|
||||
override 2:5020/1398 Phone 700-0245 Worktime 00:00-07:00
|
||||
#override 2:5020/1398 Phone 700-0245 Worktime 00:00-07:00
|
||||
|
||||
# Stick's
|
||||
override 2:5020/1682 Phone 308-5537 Worktime 23:30-07:00
|
||||
|
||||
override 2:5020/2120 Ipaddr 192.168.1.1 flags BINKP,CM
|
||||
#override 2:5020/1682 Phone 308-5537 Worktime 23:30-07:00
|
||||
#override 2:5020/2120 Ipaddr 192.168.1.1 flags BINKP,CM
|
||||
|
||||
# Example how to run external script.
|
||||
#override 2:4500/1 Phone 123-4567 run /usr/local/bin/sc45001.sh
|
||||
|
@ -1,3 +1,8 @@
|
||||
2005-10-24 Evgeniy Kozhuhovskiy <ugenk@mgts.by>
|
||||
|
||||
* bforce/sess_call.c (call_system): added possibility to run
|
||||
external script for each line in override
|
||||
|
||||
2005-09-03 Andrey Slusar <anray@users.sourceforge.net>
|
||||
|
||||
* bforce/prot_emsi_misc.c (emsi_parsedat): correct time_t arg
|
||||
|
@ -375,6 +375,13 @@ static int proc_override(s_override *dest, char *value)
|
||||
(*p)->sIpaddr = xstrcpy(arg);
|
||||
key = NULL;
|
||||
}
|
||||
else if( strcasecmp(key, "run") == 0)
|
||||
{
|
||||
if( (*p)->run )
|
||||
free((*p)->run);
|
||||
(*p)->run = xstrcpy(arg);
|
||||
key = NULL;
|
||||
}
|
||||
else if( strcasecmp(key, "worktime") == 0 )
|
||||
{
|
||||
if( timevec_parse_list(&((*p)->worktime), arg) == -1 )
|
||||
|
@ -538,7 +538,8 @@ int call_system_tcpip(void)
|
||||
|
||||
int call_system(s_faddr addr, const s_bforce_opts *opts)
|
||||
{
|
||||
int rc = 0;
|
||||
int rc = 0;
|
||||
int runrc = 0;
|
||||
char abuf[BF_MAXADDRSTR+1];
|
||||
char *p_lockdir = NULL;
|
||||
char *errmsg = NULL;
|
||||
@ -668,6 +669,13 @@ do_session:
|
||||
errmsg = "cannot lock address";
|
||||
gotoexit(BFERR_SYSTEM_LOCKED);
|
||||
}
|
||||
if( strlen(state.override.run) > 0 )
|
||||
{
|
||||
if ( (runrc = system(state.override.run) != 0 ))
|
||||
{
|
||||
logerr("run script \"%s\" executed with non-zero return value", state.override.run);
|
||||
}
|
||||
}
|
||||
|
||||
setproctitle("bforce calling %.32s, %.32s",
|
||||
ftn_addrstr(abuf, state.node.addr), state.node.phone);
|
||||
|
@ -141,7 +141,8 @@ typedef struct override {
|
||||
char *sPhone;
|
||||
char *sFlags;
|
||||
s_timevec worktime;
|
||||
s_timevec freqtime;
|
||||
s_timevec freqtime;
|
||||
char *run;
|
||||
struct override *hidden; /* Hidden lines list */
|
||||
} s_override;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user