Download

If you want to install from the command line, you can use this one liner:

wget -O - http://download.fop2.com/install_fop2.sh | bash

If you want to upgrade and existing install, use this one liner:

wget -O - http://download.fop2.com/upgrade_fop2.sh | bash

You can also download the package manually and run "make" to do the installation, in that case, please notice that there are several packages available for download as tarball files. Please be sure to download the correct package for your Linux version.


FOP Version 2.31.47

Release Date: April 18, 2025

Changelog


Date: Wed Apr 9 11:15:48 2025 -0300
Summary: Disable wuzapi group support as it is broken

Date: Wed Apr 9 11:15:30 2025 -0300
Summary: More debug

Date: Wed Apr 9 11:15:17 2025 -0300
Summary: Add stun_server ini parameter to webphone pro

Date: Wed Apr 9 11:13:38 2025 -0300
Summary: Add stun_server ini parameter to webphone pro

Date: Wed Apr 9 11:09:31 2025 -0300
Summary: Hide chat tab in contact if webphone pro is not installed

Date: Wed Apr 9 11:06:34 2025 -0300
Summary: Hide chat tab in contact if webphone pro is not installed

Date: Wed Apr 9 10:59:52 2025 -0300
Summary: Remove deprecated cropit from contacts

Date: Wed Apr 9 10:55:14 2025 -0300
Summary: Rename settings for cdrtodatabase plugin to avoid errors

Date: Wed Apr 9 10:22:36 2025 -0300
Summary: Suppress some unwanted output in Makefile

Date: Wed Apr 9 10:20:46 2025 -0300
Summary: Suppress some unwanted output in Makefile

Date: Fri Mar 28 19:27:13 2025 -0300
Summary: Fix auth logic, allow header token without session

Date: Thu Mar 27 16:52:34 2025 -0300
Summary: Bump phone to version 1.0.3

Date: Thu Mar 27 16:52:01 2025 -0300
Summary: Fix profile image in webphone on outbound calls, make it compatible with latest FOP2 vphonebook changes

Date: Thu Mar 27 15:00:03 2025 -0300
Summary: Update changelog

Date: Thu Mar 27 14:08:44 2025 -0300
Summary: Bump queuelogin to 1.1.1

Date: Thu Mar 27 14:07:37 2025 -0300
Summary: Remove fop2sate on queuelogin plugin logout action for PJSIP also

Date: Thu Mar 27 14:07:06 2025 -0300
Summary: Push scripter version to 1.0.3

Date: Thu Mar 27 14:06:25 2025 -0300
Summary: Fix scripter not saving data in MariaDB or MySQL in strict mode

Date: Thu Mar 27 14:06:13 2025 -0300
Summary: Fix scripter not saving data in MariaDB or MySQL in strict mode

Date: Thu Mar 27 14:04:54 2025 -0300
Summary: Add originate variables when adding fop2 buttons in FOP2 manager

Date: Thu Mar 27 14:02:55 2025 -0300
Summary: Fix php markup to be compatible with older versions on return

Date: Thu Mar 27 14:02:25 2025 -0300
Summary: Fix context menu for removing from queue not showing as it was not matching queue member names correctly, either for utf8 or off by 1 in substring comparison

Date: Wed Mar 5 08:29:54 2025 -0300
Summary: Add configurable form support to webwidget via template, with field types text, number and select

Date: Tue Feb 25 12:37:34 2025 -0300
Summary: Only set ringing and popup urls if they are not empty, so other plugins that might set the url like zendesk or clientify will still work when using profiles and queuelogin. If a popup url is set in a profile, it will take precedence over others

Date: Tue Feb 18 15:06:34 2025 -0300
Summary: Add inactivity logout plugin

Date: Mon Feb 17 11:06:43 2025 -0300
Summary: Fix typo, now really reads sip_reregistration_interval

Date: Sat Feb 15 20:26:24 2025 -0300
Summary: Fix register reregistration/expires

Date: Wed Feb 5 13:21:32 2025 -0300
Summary: callwaiting override and reregistration interval support

Date: Wed Feb 5 13:21:18 2025 -0300
Summary: callwaiting override and reregistration interval support

Date: Wed Feb 5 13:20:19 2025 -0300
Summary: Honor callwaiting override support to webphone

Date: Wed Feb 5 13:05:52 2025 -0300
Summary: Use sip_reregistration value from plugin configuration instead of hardcoded 30 seconds

Date: Wed Feb 5 12:45:16 2025 -0300
Summary: Increase max file size for uploads in chats to 250mb, left to increase on incomingqueue collection attach field in chatbroker

Date: Wed Feb 5 12:39:59 2025 -0300
Summary: Add enum configuration type for plugins

Date: Mon Feb 3 11:41:15 2025 -0300
Summary: Remove link to deprecated chosen.jquery.min.js

Date: Mon Feb 3 08:17:11 2025 -0300
Summary: Use : instad of . in chown separation as some distros now complain

Date: Thu Jan 30 11:45:35 2025 -0300
Summary: Add proxy_host and proxy_port ini settings to ivrflow

Date: Thu Jan 30 11:45:10 2025 -0300
Summary: Add proxy_host and proxy_port ini settings to ivrflow

Date: Thu Jan 30 11:44:46 2025 -0300
Summary: Add proxy support for registering ivrflow

Date: Wed Jan 29 18:22:43 2025 -0300
Summary: Make super large height messages display inside the bubble and not overflow

Date: Mon Jan 27 18:52:09 2025 -0300
Summary: Fix backspace removing two digits when phonepro dial input had focus

Date: Mon Jan 27 11:54:10 2025 -0300
Summary: Add fop2.service systemd unit file

Date: Mon Jan 27 11:30:17 2025 -0300
Summary: Add some voices to azuretts.agi for Costa Rica and Colombia

Date: Mon Jan 27 11:27:24 2025 -0300
Summary: Use azuretts.agi for azure voices in ivrflow, to use with cmd AGI(azuretts.agi,"[TEXT]","[LANG]","","[eastus]","[azure_key]","raw-8khz-8bit-mono-alaw")

Date: Mon Jan 27 11:25:31 2025 -0300
Summary: Add azuretts.php

Date: Fri Jan 24 20:05:58 2025 -0300
Summary: Initialize cb so it works with or without audio transcription on chatgpt bot

Date: Fri Jan 24 11:47:04 2025 -0300
Summary: Avoid sending empty audio responses in chatgpt bot, and fix commands like transfer and close in transcribe/voice mode

Date: Fri Jan 24 10:58:53 2025 -0300
Summary: Fix get broadcast message so it works with meta whatsapp to find the broadcast/template and continue conversation from it instead of starting a new one. Also if there is a broadcast, clear the bot for the channel if any so it goes directly to self or all agents

Date: Wed Jan 22 14:29:36 2025 -0300
Summary: Bump ivrflow to version 1.0.5

Date: Wed Jan 22 14:28:00 2025 -0300
Summary: If custom destination does not exists on freepbx, insert as new on update (could happen during mysql restore)

Date: Wed Jan 22 14:05:55 2025 -0300
Summary: Make freepbx helper functions on ivrflow work with latest versions of FreePBX/Symfony on Debian

Date: Wed Jan 22 13:36:58 2025 -0300
Summary: Add get_message function in case we needed it

Date: Wed Jan 22 10:49:13 2025 -0300
Summary: Fix typo initializing variable that breaks functionality with php 8

Date: Tue Jan 21 20:05:02 2025 -0300
Summary: Be sure to not do anything if dialer is expired to avoid EV errors that break FOP2

Date: Tue Jan 21 20:04:30 2025 -0300

Pass use_number_from so when originating chat to meta channel we can use the proper chatid channel_PRODUCT_numberid

Date: Tue Jan 21 20:02:41 2025 -0300
Summary: Fix transfer to bot adding extra parameter for check business hours

Date: Tue Jan 21 16:28:03 2025 -0300
Summary: Bump browser plugin to 1.0.6 with https default and preventing window message interaction errors

Date: Thu Jan 16 16:37:33 2025 -0300
Summary: Fix php8 warning when editing a fop2 manager user

Date: Thu Jan 16 16:32:47 2025 -0300
Summary: Fix when adding users with queuelogin plugin for PHP 8 that produced a blank page, fatal error

Date: Thu Jan 16 12:11:30 2025 -0300
Summary: Increase bot timeout to 120 seconds, as 10 seconds is short for openai assistants that are quite slow lately

Date: Thu Jan 16 11:13:56 2025 -0300
Summary: Fix pause select showing when lack of permissions but available queues on login

Date: Wed Jan 15 15:37:41 2025 -0300
Summary: Discard/abort messages of type message without actual body text (possible encryption key interchange?)

Date: Mon Jan 13 18:46:04 2025 -0300
Summary: set global to 0 or 1 instead of yes or now to avoid mysql strict errors, on all plugin.xml files

Date: Mon Jan 13 18:45:34 2025 -0300
Summary: update compile_file to actually compile a file

Date: Mon Jan 13 18:34:21 2025 -0300
Summary: Do not give issabel-helper errors on non issabel systems

Date: Mon Jan 13 18:34:00 2025 -0300
Summary: Update encrypt algorithm for modern systems

Date: Mon Jan 13 11:57:46 2025 -0300
Summary: Use a default numeric value when adding data entry fields, so mariadb in strict mode accepts it instead of not allowing to insert data entry fields

Date: Wed Dec 18 16:26:21 2024 -0300
Summary: Fix add/remove presence options after Save Changes is clicked (because location.reload resubmits previous entries, readding when deleting

Date: Wed Dec 18 10:56:44 2024 -0300
Summary: Bump callflow plugin to 1.1.0

Date: Tue Dec 17 15:40:31 2024 -0300
Summary: Update callflow plugin to write xml file name_x parameters based on callflow_count. Fix preserve fop2 manager names instead of overwriting with backend names

Date: Mon Dec 16 19:38:28 2024 -0300
Summary: Bump dialer to 1.0.4, aggressive progresive dial, allow dial to individual agents on progressive (non preview) campaigns

Date: Fri Dec 13 14:44:56 2024 -0300
Summary: Bump callflow plugin to version 1.0.9 with configurable number of callflows

Date: Wed Dec 4 16:37:10 2024 -0300
Summary: Avoid error in php 8 when installing plugins

Date: Tue Dec 3 14:52:02 2024 -0300
Summary: Do not use cropit to clear the profile image when adding contact from phonepro, as we removed cropit and use croppie instead

Date: Fri Nov 29 18:53:41 2024 -0300
Summary: Add unread filter in contacts in webphone pro

Date: Fri Nov 29 17:24:46 2024 -0300
Summary: Fix bubble name on outgoing internal chat messages

Date: Fri Nov 29 17:06:27 2024 -0300
Summary: Fix typo in portuguese translation in FOP2 Manager

Date: Thu Nov 28 14:41:35 2024 -0300
Summary: Bump to version 1.1.0 in phone pro

Date: Thu Nov 28 14:41:22 2024 -0300
Summary: Fix telegram not receiving messages

Date: Tue Nov 19 11:42:11 2024 -0300
Summary: Remove notifications permission

Date: Mon Nov 18 20:40:52 2024 -0300
Summary: Fix reactions in wuzapi

Date: Mon Nov 18 20:19:12 2024 -0300
Summary: Add newest_first ini setting to dialer to dial to newer contacts first

Date: Mon Nov 18 20:17:18 2024 -0300
Summary: Avoid conflicts between full wallboard and queuelogin

Date: Fri Nov 15 10:00:43 2024 -0300
Summary: Update manifest, remove unlimitedstorage permission

Date: Thu Nov 14 16:10:16 2024 -0300
Summary: Fix body variable expansion in interactive bot

Date: Wed Nov 13 17:24:04 2024 -0300
Summary: Add public_url to attach array when receiving an attachment, so we can consume it with bots and the like

Date: Wed Nov 13 16:45:29 2024 -0300
Summary: Set body variable also on first interaction in interactive bot

Date: Wed Nov 13 16:44:30 2024 -0300
Summary: Set body variable also on first interaction in interactive bot

Date: Tue Nov 12 17:31:19 2024 -0300
Summary: Fix for timezone on conversation_requeue_after_minutes

Date: Tue Nov 12 16:16:44 2024 -0300
Summary: Add mms support for twilio

Date: Fri Nov 8 17:18:46 2024 -0300
Summary: Replace queue widget query in full wallboard to use a similar one to asternic, so overflow calls to another queue won't count as abandon in original queues

Date: Thu Nov 7 16:55:38 2024 -0300
Summary: Do not use decimans in queue stats plugin. Bump to 1.0.4

Date: Thu Nov 7 12:38:24 2024 -0300
Summary: Do not show transcribe when monitoring chats, add some debug on discarding new chats when no service group matches

Date: Wed Nov 6 17:46:58 2024 -0300
Summary: Fix outbound agent count when using call_flow as it was only counting compleuser and not completeagent in full wallboard

Date: Tue Nov 5 18:08:24 2024 -0300
Summary: Use listen_port instead of port for setvar.php connecting to localhost

Date: Tue Nov 5 18:07:51 2024 -0300
Summary: Set listen_port in variables.txt for proxy setups that won't connect correctly to the proxy port

Date: Tue Nov 5 09:17:11 2024 -0300
Summary: Add proxy_port support so we can have different connection port and listen port

Date: Tue Nov 5 09:16:46 2024 -0300
Summary: Add proxy_port support so we can have different connection port and listen port

Date: Wed Oct 30 16:18:58 2024 -0300
Summary: Use list type (more than 4 options lists) only for whatsapp meta, and not for facebook or instagram in interactive bot menu

Date: Wed Oct 30 16:18:29 2024 -0300
Summary: Use product in chatid for meta, so we can differentiate between whatsapp, facebook and instagram in bots

Date: Fri Oct 25 20:26:04 2024 -0300
Summary: Use group image and Group in metadata table for wuzapi groups

Date: Fri Oct 25 19:52:26 2024 -0300
Summary: Use group icon when creating wuzapi whatsapp group, use monogram for avatars always

Date: Fri Oct 25 18:34:51 2024 -0300
Summary: Improve initials for monogram so it works with whatsapp groups. Add support for whatsapp groups appending messages

Date: Fri Oct 25 18:29:53 2024 -0300
Summary: Implement ApiSend to send messages via API. Add group support in wuzapi. To do: see if we can get group icon image instead of using the whatsapp channel one

Date: Wed Oct 23 18:19:05 2024 -0300
Summary: Add audio transcription and voice replies to chatgpt bot

Date: Wed Oct 23 18:17:33 2024 -0300
Summary: Add another ini option to chatgtp bot for voice replies

Date: Wed Oct 23 18:17:14 2024 -0300
Summary: Add translations

Date: Wed Oct 23 18:07:00 2024 -0300
Summary: Add transcribe audio option to chatgpt bot editor

Date: Wed Oct 23 18:06:31 2024 -0300
Summary: Add translations

Date: Wed Oct 23 16:26:32 2024 -0300
Summary: Add user text/body/answer for expansion as variable {body} in interactive bot

Date: Wed Oct 23 16:09:49 2024 -0300
Summary: send msgid to bots so we can get attachments if needed. get conversation searchs in incomingqueue instead of history so we can get active conversations also. apiSend function prototype, for sending messages using api

Date: Wed Oct 23 16:08:10 2024 -0300
Summary: Remove ; codecs=opus from filename in audio files in wuzapi

Date: Wed Oct 23 10:09:10 2024 -0300
Summary: Attempt license renew using http if https fails. Add debug

Date: Tue Oct 22 10:15:22 2024 -0300
Summary: Add option to enable/disable csat on interactive bot close step

Date: Fri Oct 18 12:16:32 2024 -0300
Summary: Do not restart phone if another session (mobile) connects

Date: Fri Oct 18 11:39:25 2024 -0300
Summary: do not query sip credentials on notionline if already have them

Date: Thu Oct 17 18:34:09 2024 -0300
Summary: Format bold and italic for messages between * and _

Date: Thu Oct 17 17:25:07 2024 -0300
Summary: sanitize messages on chat monitor (adding newlines, etc)

Date: Thu Oct 17 15:31:16 2024 -0300
Summary: Better parsing of received template messages in wuzapi, still incomplete

Date: Mon Oct 14 19:42:59 2024 -0300
Summary: Allow X-Authorization header for dialer api

Date: Thu Oct 10 12:44:27 2024 -0300
Summary: FIx reading fop2-variablesCONTEXT.txt for custom port

Date: Tue Oct 8 17:02:46 2024 -0300
Summary: Declare to make php 8 happy when importing contacts

Date: Fri Oct 4 07:33:44 2024 -0300
Summary: Send push notifications to all on new conversation

Date: Thu Oct 3 20:00:50 2024 -0300
Summary: Add initial pass on push notification support

Date: Wed Oct 2 18:45:48 2024 -0300
Summary: Update default agent table temlate with 14 columns

Date: Wed Oct 2 08:57:21 2024 -0300
Summary: Validate window messages to not error out on navigated pages messages that will produce an error in minibrowser

Date: Tue Oct 1 18:50:12 2024 -0300
Summary: Add global DEBUG to webhook calling

Date: Tue Oct 1 18:49:54 2024 -0300
Summary: use global for chatbroker.log

Date: Tue Oct 1 15:22:18 2024 -0300
Summary: Extract body from replies in interactive bot

Date: Tue Oct 1 15:21:54 2024 -0300
Summary: Remove 008 char from messages when getting context message in reply, proper json escape on reply. Needed for interactive_bot to get the body of interactive list message menu

Date: Mon Sep 30 10:43:18 2024 -0300
Summary: Do not overwrite global context variable when quoting messages/reply

Date: Fri Sep 27 10:44:19 2024 -0300
Summary: fix typo for setting lang in some buttons for twilio groups

Date: Fri Sep 27 10:44:01 2024 -0300
Summary: Add comments

Date: Fri Sep 27 10:37:23 2024 -0300
Summary: Be sure to set activeChats on initial assigned

Date: Thu Sep 26 17:53:56 2024 -0300
Summary: Remove access to vphonebook, replace with access to api.php

Date: Thu Sep 26 15:06:34 2024 -0300
Summary: Work on internal messages so they are displayed correctly in every chat window, respecting also multi device updates

Date: Thu Sep 26 15:05:55 2024 -0300
Summary: Use api instead of vphonebook to get contact information

Date: Thu Sep 26 15:03:21 2024 -0300
Summary: Generate jwt token so clients can use it to perform api calls

Date: Thu Sep 26 09:12:41 2024 -0300
Summary: Fix authorization from external api, add contactInfo to get contact info instead of calling vphonebook. TODO: remove vphonebook calling from standard phonepro and use contactInfo api call instead

Date: Wed Sep 25 15:54:57 2024 -0300
Summary: Work on api to authenticate using JWT generated from phonepro plugin, so out of FOP2 clients can authenticate api calls

Date: Tue Sep 24 18:11:54 2024 -0300
Summary: Handle multi device subscription for accepting chat and outbound messages

Date: Tue Sep 24 17:16:47 2024 -0300
Summary: Actually append outbound messages and discard if already set, so we can have multi device support (isFromMe analog in whatsapp)

Date: Tue Sep 24 13:41:16 2024 -0300
Summary: Populate body on hydrated templates. Try to use number instead of false as anem when isFromMe=1

Date: Fri Sep 20 16:57:16 2024 -0300
Summary: Be sure to hide attach icon when recording audio

Date: Wed Sep 18 19:33:31 2024 -0300
Summary: Accept numeric keypad in phone plugin, Bump to release 1.0.2

Date: Wed Sep 18 15:55:46 2024 -0300
Summary: Fix history and reports not showing because lack of start and end times with time zone offset calculation. Refactor credentials request to make room for the Chrome extension. Fix reports when using tenants

Date: Wed Sep 18 15:54:28 2024 -0300
Summary: Allows list of tags to be 'disabled' to not fire a tag call for queues that have that set, as now letting them empty provides a free form input


Since version 2.28 there is a configuration manager (FOP2 Manager) bundeld with the package. You can access it directly by pointing your browser to http://your.server/fop2/admin . On a new installed system, you must log into the manager before loading the main FOP2 panel to create the user & buttons configuration.

centos

Centos - i386

DownloadFOP 2.31 for Centos or other Redhat Based Distributions, including Trixbox, Elastix, PiaF, AsteriskNow, etc.

Centos - 64bits

DownloadFOP 2.31 for Centos or other Redhat Based Distributions, including Trixbox, Elastix, PiaF, AsteriskNow, etc.


debian

Debian - 32bits

DownloadFOP 2.31 for Debian / Ubuntu Based Distributions, 32 bits.

Debian - 64bits

DownloadFOP 2.31 for Debian / Ubuntu Based Distributions, 64 bits.


raspberry pi

Raspberry PI - ARM

DownloadFOP 2.31 for Raspberry PI/Debian


ARM 64 bits

ARM 64 bits - Aarch64 - Centos

DownloadFOP 2.31 for ARM aarch64 / Centos


FOP Version 2.30.00

Release Date: August 3, 2015

This version has significant improvements on the client side, with a layout that can be arranged at will via drag&drop and some cool new plugins. As the changes are significant and might have bugs, this release is launched as beta first. Internet Explorer 8 support was dropped with this release. There will be periodical updates for this beta, so check the release date here to see the last time it was updated.

DownloadFOP 2.30 32 bits for Centos or other Redhat Based Distributions, including Trixbox, Elastix, PiaF, AsteriskNow, etc.

DownloadFOP 2.30 64 bits for Centos or other Redhat Based Distributions, including Trixbox, Elastix, PiaF, AsteriskNow, etc.

DownloadFOP 2.30 32 bits for Debian / Ubuntu Based Distributions.

DownloadFOP 2.30 64 bits for Debian / Ubuntu Based Distributions.



Microsoft Edge Extension

edge

FOP2 Extension for Microsoft Edge Browser

DownloadView status of extensions directly in Microsoft Edge. Shows desktop notifications and configurable popups on new or connected calls. Converts phone numbers in any web page into click to call links. (It is *not* a standalone application, it requires FOP2 to be installed on the server).


Archives

Here is a set of old versions links for your convenience:


What people say

Nicolás, muchas gracias por tu ayuda. La verdad que el producto fop2 es fantástico.
Pablo Pissinis
Just to let you know: our customer is using FOP2 with +500 (mostly mobile +...)-extensions succesfully at the moment. Thanks to your support we have delivered a succesfull project. Again, thank you very much!

Kind regards / Met vriendelijke groet

Ronald Voermans
As an IT consultant who implements software on a daily basis that is riddled with bugs and defects, yours is a refreshing reminder that software can still be well-written.
Loren Campbell
Great handy piece of software you've made. Have been using it together with * since 2005 in our non-profit organization. Very pleased.
Kari Kandell
We have been working with FOP2, Queue Stats and Call Stats for a number of years. Not only are these products amazing, the backup service Nick offers is second to None. FOP2 is the best operator console you will find for Asterisk!
Alan Scott
Logical Solutions NZ
I had looked at FOP2 some time ago, but did not deploy it for lack of parking management. I deployed 2.11 for the first time last night and wow, what a great product. I will include a copy with every deployment now.
Doug Truitt
FOP2 is the easiest operator panel for our receptionist and the people who fill in for her. While other products may have more bells and whistles, FOP2 is more practical in a busy environment. When I had a suggestion for a feature that was useful in a competive product, my new feature appeared in a working beta within days!
Bob Roswell