by Vedisoft

Any Telephony Connector is a computer telephony integration between SuiteCRM and all modern PBXs provided by VoIP softphone provider, Softphone.Pro.

Free 30 day trial
Try it Now

#6005 - Subject: Any Telephony Connector – SuiteCRM 8.10.2 + PHP 8.2/8.4 – module not fully registering, saveCall returns success but no DB row, UI “error retrieving data”

Open Bug? created by iainclark Verified Purchase one week ago

Environment

SuiteCRM version: 8.10.2 PHP: 8.4.24 (also tested 8.2) Database: MariaDB 11.8 Web server: Apache (Docker php:8.2-apache / php:8.4-apache) Installation method: Module Loader (fresh package from SuiteCRM Store) OS: Ubuntu (WSL2)

Problem summary The Any Telephony Connector installs via Module Loader and the Softphone.Pro integration endpoints respond, but the module is only partially functional on SuiteCRM 8.10.2. Symptoms

saveCall / saveAudio entryPoints return HTTP 200 with a JSON body such as:JSON{"result":true,"response":{"phonecallId":"96574c7f-3a63-1e0e-e69f-89c20d928632"}}However no row is ever inserted into the phonecalls table. The phonecalls table is missing after a normal Module Loader install. It had to be created manually. Even after creation the table remains empty. BeanFactory cannot load the module cleanly: BeanFactory::newBean("PhoneCalls") / getBean("PhoneCalls", $id) frequently returns “Bad data passed in” or false. This causes the Contact / Lead detail view Phone Calls sub-panel to show “error retrieving data”.

Original fatal errors before work-arounds:textClass "\Vedisoft\Application\Command\SaveCall" not found Class "\Vedisoft\Application\Command\SaveAudio" not found(The loader in src/Vedisoft/Command.php falls back to the non-existent Application\Command... path when the Module path class is not found via class_exists.) Additional runtime errors in the logs:textPhoneCall::getPhoneFields(): Argument #1 ($bean) must be of type SugarBean, false given Class "\Vedisoft\Application\Command\GetRelatedPhoneCallsQuery" not found

What we have already verified

Module files are present under public/legacy/modules/PhoneCalls/ and public/legacy/src/Vedisoft/. modules.ext.php correctly registers:PHP$beanList['PhoneCalls'] = 'PhoneCall'; $beanFiles['PhoneCall'] = 'modules/PhoneCalls/PhoneCall.php'; $moduleList[] = 'PhoneCalls'; Softphone.Pro is configured with the documented URLs and is successfully calling the entryPoints. Contact phone number is stored as +447971195363 (matching the format sent by Softphone). Quick Repair & Rebuild from the UI and cache clears have been run multiple times. A defensive patch to Command.php was required just to stop the 500 errors; even then the database insert never occurs.

Request Could you please check compatibility of the current Any Telephony Connector package with SuiteCRM 8.10.2 (and PHP 8.2 / 8.4)? In particular:

Why the phonecalls table is not created by Module Loader / Repair on 8.10.2 Why BeanFactory fails to instantiate PhoneCalls cleanly Why SaveCall reports success but performs no persistent write

Happy to provide full logs, the exact package version/hash, or a database dump of the relevant tables if needed. Thank you.

This case is public. Please leave out any sensitive information such as URLs, passwords, etc.
Saving Comment Saving Comment...