Member
Last active 9 years ago
Thanks for your help. I will PM you the outputs.
It basically lists every conference, extension, ring group and trunk on the system together with the type, extension, label, context, queuechannel, customastb, etc, etc for each.
#!/bin/bash if [ -e /etc/amportal.conf ]; then DBNAME=`cat /etc/amportal.conf | sed 's/ //g' | grep ^AMPDBNAME | cut -d= -f2 | tail -n1` DBUSER=`cat /etc/amportal.conf | sed 's/ //g' | grep ^AMPDBUSER | cut -d= -f2 | tail -n1` DBPASSLINE=`cat /etc/amportal.conf | grep ^AMPDBPASS | tail -n1` DBSTRIP=`echo $DBPASSLINE | cut -d= -f1` DBPASS=`echo $DBPASSLINE | sed "s/$DBSTRIP=//g"` DBHOST=`cat /etc/amportal.conf | sed 's/ //g' | grep ^AMPDBHOST | cut -d= -f2 | tail -n1` elif [ -e /etc/freepbx.conf ]; then DBNAME=`cat /etc/freepbx.conf | sed 's/ //g' | grep ^AMPDBNAME | cut -d= -f2 | tail -n1` DBUSER=`cat /etc/freepbx.conf | sed 's/ //g' | grep ^AMPDBUSER | cut -d= -f2 | tail -n1` DBPASSLINE=`cat /etc/freepbx.conf | grep ^AMPDBPASS | tail -n1` DBSTRIP=`echo $DBPASSLINE | cut -d= -f1` DBPASS=`echo $DBPASSLINE | sed "s/$DBSTRIP=//g"` DBHOST=`cat /etc/freepbx.conf | sed 's/ //g' | grep ^AMPDBHOST | cut -d= -f2 | tail -n1` elif [ -e /var/thirdlane_load/pbxportal-ast.sysconfig ]; then DBNAME='pbxconf' DBHOST='localhost' DBUSER=`cat /var/thirdlane_load/pbxportal-ast.sysconfig | sed 's/ //g' | grep ^DBUSER | cut -d= -f2 | tail -n1` DBPASSLINE=`cat /var/thirdlane_load/pbxportal-ast.sysconfig | grep ^DBPASS | tail -n1` DBSTRIP=`echo $DBPASSLINE | cut -d= -f1` DBPASS=`echo $DBPASSLINE | sed "s/$DBSTRIP=//g"` elif [ -e /var/www/html/fop2/admin/config.php ]; then DBNAME=`cat /var/www/html/fop2/admin/config.php | sed 's/ //g' | grep ^\\$DBNAME | cut -d= -f2 | tail -n1` DBUSER=`cat /var/www/html/fop2/admin/config.php | sed 's/ //g' | grep ^\\$DBUSER | cut -d= -f2 | tail -n1` DBPASSLINE=`cat /var/www/html/fop2/admin/config.php | grep ^\\$DBPASS | tail -n1` DBSTRIP=`echo $DBPASSLINE | cut -d= -f1` DBPASS=`echo $DBPASSLINE | sed "s/$DBSTRIP=//g"` DBHOST=`cat /var/www/html/fop2/admin/config.php | sed 's/ //g' | grep ^\\$DBHOST | cut -d= -f2 | tail -n1` DBNAME=${DBNAME:1} DBNAME=${DBNAME%??} DBUSER=${DBUSER:1} DBUSER=${DBUSER%??} DBPASS=${DBPASS:1} DBPASS=${DBPASS%??} DBHOST=${DBHOST:1} DBHOST=${DBHOST%??} else DBHOST='none' fi if [ "x$DBPASS" != "x" ]; then DBPASS="-p${DBPASS}" fi hash_insert () { local name=$1 key=$2 val=$3 eval __hash_${name}_${key}=$val } hash_get () { local name=$1 key=$2 eval "v=__hash_${name}_${key}" eval "$3=\$$v" } FOP2ADMIN=0 # Only check for table presence if mysql connection is ok mysql -u $DBUSER $DBPASS -h $DBHOST $DBNAME -e "SELECT now()" &>/dev/null if [ $? == 0 ]; then # Verify if the fop2admin table exists for fop2manager/fop2admin while read line; do let FOP2ADMIN=FOP2ADMIN+1 done < <( mysql -NB -u $DBUSER $DBPASS -h $DBHOST $DBNAME -e "SHOW tables FROM \`$DBNAME\` LIKE 'fop2users'"; ) else echo "# Problem connecting to mysql" echo fi if [ "$FOP2ADMIN" -gt 0 ]; then # Fields we want to query WANTED_FIELDS="queuechannel originatechannel customastdb spyoptions external tags extenvoicemail queuecontext"; eval `mysql -E -u $DBUSER $DBPASS -h $DBHOST $DBNAME -e "DESC fop2buttons" | grep Field | sed 's/Field: //g' | while read LINEA; do echo "hash_insert existentFields $LINEA '1';"; done;` EXISTING_FIELDS="" for A in $WANTED_FIELDS do hash_get existentFields $A tiene if [ "$tiene" = "1" ]; then EXISTING_FIELDS="${EXISTING_FIELDS}$A," fi done FINAL_FIELDS=${EXISTING_FIELDS%?}; hash_get existentFields sortorder tiene if [ "$tiene" = "1" ]; then ORDER="type,sortorder,(exten+0)" else ORDER="type,(exten+0)" fi mysql -EB -u $DBUSER $DBPASS -h $DBHOST $DBNAME -e \ "SET NAMES utf8; SELECT device AS channel,type,if(type<>'trunk',exten,'') AS extension,\ label, mailbox, context, privacy,\`group\`,IF(type='trunk',IF(email<>'',concat('splitme-',email),''),email) as email, \ channel as extrachannel, $FINAL_FIELDS FROM fop2buttons \ WHERE exclude=0 \ ORDER BY $ORDER" | sed '/\*\*/d' | sed 's/: /=/g' | sed '/.*=$/d' | while read LINEA do echo $LINEA | sed '/NULL/d' | sed 's/^channel=\(.*\)/\n[\1]/g' | sed 's/^extrachannel/channel/g' echo $LINEA | grep -qi "^email=splitme" if [ $? = 0 ]; then RANGE=`echo $LINEA | sed 's/^email=splitme-//g' | sed 's/-/ /g'` for ZAPNUM in `seq $RANGE` do echo "channel=DAHDI/$ZAPNUM" echo "channel=DAHDI/i$ZAPNUM" echo "channel=ZAP/$ZAPNUM" done fi done echo if [ -f /usr/local/fop2/buttons_custom.cfg ]; then cat /usr/local/fop2/buttons_custom.cfg fi else echo "! Cannot connect to Fo2 Manager database" fi
Tried that.
No dialog box prompting for station ID/profiles, but screen still *completely* blank after login?
The only thing displayed is the banner at the very bottom of the screen:
FOP2 - Version 2.28 - Licensed to etc, etc
All else is is a nice crisp blank white....
Hi following an upgrade from 2.26 to 2.28, I have a bank screen following log in. I'm logging in with the same credentials as per the earlier version of FOP2. I'm presented with a dialog to choose a drop down station ID (which is unrelated to the login ID) and then a profiles drop down. After that, blank....
Not too worry I just uploaded v1.2.13 of FOP2 Admin back in to FreePBX 2.11, enabled it and it works fine! :D
Following an upgrade from FreePBX 2.10 to 2.11 I experienced similar errors to the OP.
Are there any compatibility issues with FPBX 2.11 or should I just download and re-install the latest FOP2 admin module?
I'm running FOP2 v2.26
Many thanks
Yes apologies. Was on COMPLETELY the wrong track there. Have done a manual refresh as you suggested and all is well.
Thank you again.
Sorry to hijack your thread, but I have noticed the same behaviour on my system also running 2.26.
I have changed a Conference Name in FPBX (v2.10.0.7) but this has not been reflected in FOP2 which is still showing the old conference name, even following a restart.
In the autoconfig-buttons-freepbx.sh script I changed the line after "# Verify if the fop2 plugin table exists" to be "FOP2PLUGIN=1" rather than "FOP2PLUGIN=0", however this has not made any diference and the conference button name has not been updated, even following a full restart.
Hi Nicolas
Yes I ran the generate_override_contexts.pl script when I first did the installation, and extensions_override_fop2.conf is working very nicely.
My simple question is; does FOP2 actually set hints - and I think the answer is 'no' (but just wanted to double check)? I've got BLF buttons subscribed to hints which show a particular extension as "not in use" which has in fact been set to DND using FOP2.
However executing a *76 (with the FOP2 mods included) does actually set the BLF hint (and also update the asterisk DB) as expected.
Does that make sense?