FOP2 Modifications for FreePBX with BRIA module
There is a commercial module for FreePBX to be used with BRIA softphones that does strange things to the FreePBX configuration tables/databases, and then breaks the FOP2 manager auto configuration as it generates TWO devices for a user, without being in user^device mode.
There is a way to make the FOP2 Manager and FOP2 autoconfiguration scripts works, but requires some tweaks:
1) Create a mysql trigger
2) Use a customized autoconfig-buttons.sh script
For the MySQL trigger, create a file named trigger.sql with this content:
You have to create it in MySQL with this command (you must know the MySQL root password):
[fixed]
mysql -u root -p asterisk < trigger.sql
[/fixed]
The trigger will populate the channel field in the fop2buttons table with the extra device that Bria uses.
Then you must alter autoconfig-buttons.sh, look for this query:
and replace it with this one instead:
Finally log into the FOP2 Manager and select the Buttons tab, and then restart the FOP2 service.
There is a way to make the FOP2 Manager and FOP2 autoconfiguration scripts works, but requires some tweaks:
1) Create a mysql trigger
2) Use a customized autoconfig-buttons.sh script
For the MySQL trigger, create a file named trigger.sql with this content:
DROP TRIGGER IF EXISTS AddNines;
DELIMITER $$
CREATE TRIGGER AddNines
BEFORE INSERT ON fop2buttons
FOR EACH ROW
BEGIN
IF(new.Device like '%/%' AND new.Device not like '%/999%' AND new.type='extension')
then
set new.`Channel` = REPLACE( new.Device, '/', '/999');
END IF;
END;
$$
DELIMITER ;
You have to create it in MySQL with this command (you must know the MySQL root password):
[fixed]
mysql -u root -p asterisk < trigger.sql
[/fixed]
The trigger will populate the channel field in the fop2buttons table with the extra device that Bria uses.
Then you must alter autoconfig-buttons.sh, look for this query:
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
and replace it with this one instead:
mysql -EB -u $DBUSER $DBPASS -h $DBHOST $DBNAME -e \
"SET NAMES utf8; SELECT IF(type='extension' AND channel<>'',channel,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, \
IF(type='extension' AND channel<>'',device,channel) as extrachannel, $FINAL_FIELDS FROM fop2buttons \
WHERE exclude=0 \
ORDER BY $ORDER" | sed '/\*\*/d' | sed 's/: /=/g' | sed '/.*=$/d' | while read LINEA
Finally log into the FOP2 Manager and select the Buttons tab, and then restart the FOP2 service.