ReleaseNotes9:Linux Reporting
These release notes describe the V1 (that is, Reference9:Concept_Reporting based) Reporting based on the linux application platform.
Please see the disclaimer before using the information presented here!
Reporting V1
V1 Hotfix 1 (10181)
1421 - Linux: LDAP query if no name available in CDR
Ticket #63134. If the CDR contains no name on it, make a LDAP query to the PBX before writing the CDR into the database.
Try with OPENLDAP library.
1458 - reporting callback request from mypbx may crash with uninitialized reporting config
Ticket #63709. If one has never configured replication or ldap for Reporting, a reporting callback request from mypbx won't work (the process crashes).
This is fixed now by checking a config parameter.
1482 - reporting: added delete tag in application xml file
Ticket #63936. delete tag defines which files/directories must be deleted during uninstall
1624 - reporting: allow two or more LDAP configurations to have same PBX name
Ticket #65253. it is needed if you have more than one trunk.
1479 - Reporting: better visibility of replication status
Ticket #63920. The connection status to the configured replication server is now shown.
The last run is now also shown, even if there was no successful database connection.
1614 - reporting: conn, call and billing time calculation
Ticket #65146. billing calls are those having "from", "ct" or "cf" as dir attribute in cdrs. So far we have only considered calls with a setup-from as first event but "ct" and "cf" calls can present a setup-to event and they must be charged too.
all times must be ended with the first disc event.
conn time must not be counted after a transfer-from or cf-from event.
1641 - reporting: diagnostics page available with logs/rpcap
Ticket #65365. The diagnostics page with reporting related log files and rpcap functionality is now also available on the reporting web site.
1583 - reporting: download xml report if it has an invalid format
Ticket #64882. we offer now a link to download the xml report if it has an invalid format and therefore cannot be displayed by the browser.
1523 - reporting: if conn to/from event present, conn-duration must be at least one
Ticket #64267. Sometimes conn event and disc/rel event present the same time. Maybe, this should be changed in PBX but we check it anyway.
Connected time must be at least 1. This is also applicable for billing.
1615 - reporting: improvements on xml/pdf representation
Ticket #65151. we usually use information on the alarm event but conn event normally contains more data. Check which one is better.
pdf looks strange if LDAP returns large strings
1586 - reporting: LDAP: add Name and Number attributes
Ticket #64919. we have added two new fields for Name and Number Attributes in the LDAP configuration.
So far we had just used "displayName" as Name attribute and "mobile,telephoneNumber and HomePhone" as Number attributes.
1605 - reporting: mypbx missed calls wrong for multiple registrations
Ticket #65103. If one user has multiple registrations, missed calls were recognized, although the calls has been answered.
Calls from other registrations are disregarded now.
1471 - reporting: process.fcgi crashes with filters containing a remote number condition
Ticket #63878. forgot to open parenthesis
conn_length was also forgotten to change to conn_duration
1481 - reporting: replication not running ssl
Ticket #63933. configure postgresql to run ssl during replication. We will use the web server certificate.
1581 - Reporting: separate authentication for reporting web access
Ticket #64875. It is now possible to configure a separate authentication to the innovaphone reporting web site.
1608 - reporting: show call duration time instead of conn duration time in report
Ticket #65132. As the whole call flow is shown in the report, showing the call duration makes more sense.
1685 - reporting: show only one CDR for transfer/forward calls per user
Ticket #65820. Currently both generated CDRs for a user of a transfer or forward call are shown. Diversions are now divided in two CDRs, one showing the whole call flow and another containing billing information, which will not be shown in call lists.
1626 - reporting: suppress last digits of called/calling party for external calls
Ticket #65259. allow to suppress last digits of called/calling party for external calls. It can be configured how many digits must be replaced with a '*'.
1654 - Reporting: transfers on a slave PBX will now generate a new event: transfer-remote
Ticket #65475. when a transfer event happens on a slave PBX, it cannot be known the status of the call afterwards. This new event indicates this situation and a connected status will be shown in the report.
1469 - reporting: wrong remote party in some transfer and forward events
Ticket #63819. We assumed that the remote party does not change after transfer/forward event and that the next event after those contains more information over the remote party but this is wrong since the remote party may change.
V1 Hotfix 2 (10197)
1785 - Cumulative hotfix installation script didn't apply second hotfix
Ticket #66917. As the version of the previously installed hotfix hasn't been set properly.
1781 - Reporting: check if database is being restored before writing a CDR
Ticket #66757. avoid writing a CDR to the DB if it is being restored since this could corrupt the DB.
This CDR will be sent by the PBX again since Linux is responding with 500 HTTP Error Code.
1806 - Reporting: current password was not checked before setting a new password
Ticket #67386. we used localhost and given password to make a connection to the db but localhost needs no password.
1743 - reporting: postgresql-8.4 debian package update
Ticket #66271. debian update for postgresql 8.4.
V1 Hotfix 3 (10201)
1880 - Duplicated report lines on certain filter options
Ticket #68123. Certain filter options caused duplicated lines in a report.
This has been fixed by changing the query.
1926 - Reporting: ldap results were not escaped
Ticket #68654. any string must be 'postgresql' escaped before inserting it into the DB.
V1 Hotfix 4 (10237)
2122 - added trace level option
Ticket #71857. There is now the possibility to enable further tracing levels.
2088 - Call list sorting by call duration now numerical, not alphanumerical
Ticket #71450. The call list sorting by call duration was alphanumerical, not numerical.
This has been fixed.
2130 - dynamic list row add/remove doesn't trigger page to top any more
Ticket #71957. Adding or removing a line of a dynamic list doesn't trigger the jump to the page top any more.
2123 - Increased maximum height of filter list
Ticket #71865. Currently only four filter options can be viewed at a time.
With the fix, the lists height increases from 2 until 16 items until the scrollbar of the list is enabled.
2075 - invalid log file entries for mypbx requests if reporting database is not running
Ticket #71277. Invalid log file entries have been written for mypbx requests, if the reporting database was down.
2121 - linux: added non-blocking option on flock() call for log files
Ticket #71838. The flock() call was eventually blocking if the lock could not be acquired. If we do not get the lock after ten attempts, the log trace will be lost.
2112 - possibility to clear log files
Ticket #71714. Log files can be cleared now.
Just system specific log files can't be cleared.
2069 - Possibility to clear the call list in mypbx
Ticket #71202. A new button is now available in mypbx to clear the call list.
2113 - Viewing log files with invalid chars now possible
Ticket #71716. Viewing log files with invalid chars is now possible over the diagnostics page.
V1 Hotfix 5 (10276)
2236 - exclude outgoing calls without number/h323 from mypbx call list
Ticket #73561. Calls are not shown anymore, if someone just offhooks and onhooks without dialing.
2198 - filter option for report times
Ticket #73006. A filter can now define report times, e.g. all records between 08:00 and 16:00.
2226 - LDAP filters are now stored in the DB instead of XML
Ticket #73439. LDAP filters have been moved to the DB.
This makes it easier to replicate them to a standby installation.
Ticket #73542. It is now possible to add a logo and footer in pdf reports
2151 - reporting: send reports per email
Ticket #72391. Reports can be now sent per email.
V1 Hotfix 6 (10282)
2357 - check if reporting application already exists on reporting application install
Ticket #75828. This check hasn't been done yet and caused application issues, if someone installs an already existing reporting application again.
2349 - LDAP servers now support object filters
Ticket #75697. This is needed, if an innovaphone PBX is used as phone book.
2344 - mypbx call list query optimized for speed
Ticket #75646. The query execution lasted quite long, if a user had cleared the call list and less than 20 calls in this list.
2411 - possible trap after failed DB insert of a CDR
Ticket #76625. A possible trap after a failed DB insert of a CDR has been fixed.
2253 - Possiblity to delete CDRs from database since time X and/or pbx object Y
Ticket #73944. You can now define a time period and/or a pbx object for which CDRs are deleted in the database.
2413 - prevent failing CDR insert with replication
Ticket #76633. A missing LOCK statement could have caused a failed CDR insert in replication scenarios.
2347 - report mails with non latin1 chars in mail name
Ticket #75667. The mail name has to be correctly encoded to be correctly parsed by cron.
2351 - reporting: call duration and alert duration in filter settings
Ticket #75764. How long a call was connected or how long a "not connected" call was ringing.
2317 - reporting: mails were not sent in vm installations
Ticket #75359. The vm installation was creating a local-host-names file with wrong data and this was making DNS problems.
2387 - Reporting: pdf reports showing connected duration instead of call duration
Ticket #76303. both times are normally equal, that's why we did not see the bug.
2343 - reporting: possible buffer overrun reading system processes
Ticket #75645. when restoring db from a backup, we do not accept cdrs. We look the running processes searching from "db-restore" in files whose size is null. I allocated a 1024 bytes thinking that was enough, apparently not.
2365 - reporting: send mails via external server (smtp relay)
Ticket #75903. it is now possible to configure the mail client on Linux to send mails via Exchange.
2346 - reporting: summary of pdf reports was not displayed correctly
Ticket #75655. The summary was not always displayed correctly
2350 - reporting: test email functionality
Ticket #75760. under diagnostics kann man ein email senden. So überprüft man ob emails verschickt werden.
V1 Hotfix 7 (10285)
2455 - check for postgresql installation before editing postgresql conf file
Ticket #77334. only remove certain lines from default pg_hba.conf file if postgresql hasn't been installed yet.
Ticket #77381. Some shared code has been moved for future innovaphone applications for the linux application platform.
2481 - myPBX: Clearing call list does not work in IE8
Ticket #77915. IE8 caches the HTTP requests to reporting. Therefore after clearing the call list the old (uncleared) callist is displayed again.
An expires header is now sent within the response.
2422 - Reporting: Localised date and time format in myPBX call list
Ticket #76779. Call list shall contain localised date and time. Also today's and yesterday's date should be replaced by words.
2430 - reporting: make LDAP queries for Trunk Line Objects
Ticket #76906. we now see in reports in the "Left" column "external number Amt" for the Amt object but this external number may appear in LDAP. If this number is found in LDAP, we replace previous value with the LDAP result.
V1 Hotfix 8 (10288)
2524 - filter call direction options transfer/call forward did not work
Ticket #78618. Both options did not work and have been fixed.
2532 - option to show filter info in xml/pdf for call report not only in an email report
Ticket #78762. Currently only the PDF of an email report contains the filter information.
Now, also the xml can contain it and manual reports can also contain the information now.
2543 - Parse language code from mypbx
Ticket #78879. For localization of the call list.
2599 - Show pickup party after transfer/cf/alert in call report
Ticket #79495. Currently the connect information is wrong for calls which have been pickuped.
Now, a new line will be shown for the pickup party.
2513 - some preperations for web interface translations
Ticket #78428. Changed some small things for future web interface translations.
V1 Hotfix 9 (10294)
2702 - Enter key submits filter changes now
Ticket #80763. The enter key now submits filter changes when used in a filter editing field.
2704 - Reporting: avoid empty page at end of PDF reports
Ticket #80787. sometimes an empty page appeared at the end of pdf reports.
2684 - Reporting: Mails not sent due to special characters
Ticket #80459. wrong handling of special characters.
V1 Hotfix 10 (10303)
2859 - do not send an alarm for deadlocks on CDR insert
Ticket #83267. as this CDR insert will be retried afterwards again.
2726 - Enter key submits mail changes now
Ticket #81184. Instead of canceling changes.
2848 - German translation for the web interface and reports
Ticket #83047. Added the german translation.
2833 - multi-client capability for reporting
Ticket #82835. It is now possible to configure different user logins. The admin can assign so called base filters to these users and the users can just use the assigned base filters to create reports or report mails.
They can also create own filters based on one of the assigned base filters.
V1 Hotfix 11 (10317)
2939 - Alarms are now cleared if condition is cleared
Ticket #85085. Alarms of the Linux Application Platform or by applications like Reporting are now cleared, if the alarm condition doesn't exist anymore.
2914 - Language for Report Mail configurable
Ticket #84692. The language for a report mail is now configurable.
2892 - Localise time of callbacks in reports and mypbx calllist
Ticket #84256. The callback time was language independet and now it is localised in the report xml, which is used for reports and the mypbx calllist.
2894 - PDF report creation didn't work with group by and sort by options
Ticket #84346. e.g. in Report Mails, but also from web ui.
2908 - retry sending of Report Mail on failure and write error to log file
Ticket #84591. The sending of a report mail is now retried two times, if the sending fails and the error is written to the innovaphone-reporting log file, if the last try also fails.
2873 - Suggest possible PBX object names on creation of a report
Ticket #83834. On entering a PBX object (long name) to create a report for this object, possible values are now selectable from a displayed list.
To keep the response time low, only values from CDRs of the last week are shown.
V1 Hotfix 12 (10323)
2952 - Column with "Alerting time" for reports
Ticket #85478. Show the alerting time as column in report.
3024 - Do not uninstall already installed packages after failed hotfix installation
Ticket #86597. Due to a bug, already installed packages have been uninstalled after a failed hotfix installation.
2974 - Don't treat CFU calls with connect as "No response" calls
Ticket #85863. With a filter with the "No response" check, forwarded calls with a connect after the forward shouldn't be shown.
3018 - Enable PosgreSQL Autovauum feature correctly
Ticket #86504. There was a configuration option missing for this feature to work properly.
2963 - Occasional corrupt report attachments
Ticket #85556. Sometimes sent report archives were corrupt, because the sending mail program didn't recognize the mime type of the file and changed the binary file before sending it.
This is fixed now.
2964 - Option to compress/not compress the report in a report mail
Ticket #85580. Added the possibility to define whether a report in a mail will be compressed or not.
2950 - Remove duplicate connected CFNR calls from report
Ticket #85476. Users with multiple registrations had multiple calls in their report, if the call had a CFNR and was connected afterwards.
2970 - Reporting: reports in CSV format
Ticket #85823. Reports in CSV format without call history
3023 - Restrict myPBX call list to calls of the last month
Ticket #86573. This prevents high response times if a user does not have 20 calls in the last month.
2954 - Sent mail reports are not stored in sent file anymore
Ticket #85485. Sent mail reports had been stored in a file. This isn't done anymore now.
2979 - Summary for each group in a grouped report
Ticket #85972. Each group gets now a new summary line after the last record of the group, which contains the following information:
Number of incoming calls
Number of outgoing calls
Total connected duration
Total alert duration
V1 Hotfix 13 (10329)
3047 - Alert/conn duration filter didn't always work
Ticket #86970. The filter settings for alert and conn duration didn't work under certain other filter options.
3153 - Anonymize internal names/numbers in a report
Ticket #88425. New option added to anonymize internal names/numbers.
3147 - Check of running db restore/backup etc. available for other applications now
Ticket #88339. The check of a running db restore/backup etc. is now available for other applications.
This offers the possibility to prevent database access during certain operations.
3172 - Check of running processes didn't work sometimes
Ticket #88553. Due to the output width of the ps command.
3082 - CSV export didn't work with certain group by and sort by settings
Ticket #87492. If group by was set to date and sort by to any value, the CSV export failed.
3130 - LDAP server configuration now requires LDAP port and suggests default 389
Ticket #87983. The LDAP port is now required and the default port 389 is suggested.
3035 - Optimized myPBX call list query
Ticket #86824. The query has been optimized for a faster response time.
2967 - Possibility to configure displayed duration in report
Ticket #85768. You have now the possibility to select the displayed duration:
Call Duration (Total)
Call Duration (User)
Billing Duration
3087 - Report on the web didn't show correct group summary if sorted differently
Ticket #87532. A grouped report didn't correctly show the group summary, if one of the sort columns has been used.
3136 - Reporting: LDAP Einrichtung mit Wildcard für PBX Name
Ticket #88129. Jetzt wird '%' als Wildcard akzeptiert.
3107 - Reporting: Remote Party Information is empty
Ticket #87742. Calls having only Setup and Rel events contain the information of the remote party inside the release event. (we were using setup)
V1 Hotfix 14 (10336)
3184 - Anonym flag now available as base filter option
Ticket #88907. If this flag is set, all reports created with this base filter will be anonym.
3189 - Avoid using exec and system in PHP
Ticket #89234. these functions are consuming very much time. We will now implement locks through files and PHP will only call file_exist function.
These change will also be applied to cdr.c
3185 - Show summarized alert duration in summary
Ticket #89033. The alert duration of incoming/outgoing calls is now shown in the summary.
3190 - Some optimizations for a better web ui performance
Ticket #89238. Added some session vars to avoid running slow code multiple times.
Background processes run with a lower priority now.
V1 Hotfix 15 (10353)
3262 - Internal database connection was slow due to SSL mode
Ticket #90519. The connection string was slightly wrong, so SSL mode wasn't disabled as intended.
Therefor the connection was slower than expected.
3325 - LDAP: National/Trunk prefix may not exist
Ticket #91798. Some countries like Norway or Spain do not present a Trunk Prefix like Germany does.
3297 - LDAP: use next configured server if the actual one returns no name or error.
Ticket #91228. if actual LDAP server does not return a name maybe another configured server does. Therefore test all configured LDAP servers.
Right now we only use the first valid one.
3283 - Reporting: optimization of the CDR receiving process
Ticket #90894. postgresql takes too long to open a connection to the db. Now we have an opened DB connection and we queue the incoming CDRs.
3300 - Stop database if application is uninstalled
Ticket #91293. The database is now stopped, if it gets uninstalled on an application uninstall.
Otherwise it doesn't start again on the correct port after a new install...
V1 Hotfix 16 (10358)
3360 - Filter with too many conditions failed
Ticket #92762. A filter with too many conditions caused a buffer overrun.
V1 Hotfix 17 (10369)
3410 - Added Italian translation
Ticket #95366. Italian translation is now available for the Linux Application Platform and its applications.
3383 - Deletion of a large amount of CDRs didn't work
Ticket #94803. If one tried to delete a large amount of CDRs (e.g. > 100000), the process failed without an error message.
This is fixed now, although the process lasts longer now.
3388 - Direct report download on web interface
Ticket #94935. For huge reports it might be usefull to directly download the report instead of viewing it in the browser first before downloading it.
3415 - External calls mistakenly recognised as pickup calls
Ticket #95663. If an external connected number differs from the called number, the call has been recognized as a pickup call.
3375 - Fixed user login page alignment
Ticket #93309. The page was wrongly aligned.
3382 - Increased performance of database restore
Ticket #94771. With a change of the restore process, the restore time could be reduced.
3416 - LDAP: add number resolution without percentage character
Ticket #95749. a customer has problems with LDAP resolution and we guess the problem resides on the % character. Now the filter contains both cases, number with and without percentages.
3393 - Limit web reports to prevent browser crashes
Ticket #95003. If the shown web report is too large, some browsers are crashing.
This is now prevented by a limit to the shown calls. The report itself can still be directly downloaded without this limit.
3392 - PDF report creation might have failed with selected grouping
Ticket #94972. The page count has been wrongly calculated, if the report has been grouped.
V1 Hotfix 18 (10371)
3425 - Mails: allow SMTP Relay without Authentication
Ticket #96062. Mail tool was wrongly configured if user was given without password.
3426 - myPBX call list authentication works with Reporting access credentials now
Ticket #96094. The myPBX call list authentication only worked with the Linux Web Server credentials, although it is possible to configure separate Reporting access credentials.
Now both credentials will work.
V1 Hotfix 19 (10372)
3482 - Report number filtering only checks first number now
Ticket #97703. Instead of checking all numbers, just the first relevant number is checked now.
3474 - Save Reporting user login in browser
Ticket #97621. The "Stay logged in" checkmark didn't work.
3483 - User defined filter can be deleted now
Ticket #97721. The check if the filter can be deleted has been fixed and a user defined filter can be deleted now.
V1 Hotfix 20 (10375)
3574 - Force PostgreSQL to free disk space after deletion of CDRs
Ticket #99967. PostgreSQL does not free disk space after deletion of table data to keep the space for further usage.
Now this space is really freed after deleting CDRs.
3544 - IE10 compatibility for web reports
Ticket #99330. Creation of web reports in IE10 wasn't working.
V1 Hotfix 21 (10376)
3605 - Support of UTF-8 only languages like Russian
Ticket #100942. Currently only latin1 languages were possible within the web interface. Now also UTF8 only languages are possible.
V1 Hotfix 22 (10377)
3621 - LDAP: traces for unset parameters
Ticket #101846.
3631 - Retry CDR insert after broken postgresql connection
Ticket #102304. Instead of directly returning an error, the insert is now retried one time.
3623 - Wrong http error strings returned on failing CDR
Ticket #101969. There was a mismatch of error code and error string.
V1 Hotfix 23 (10380)
V1 Hotfix 24 (10383)
3815 - Correctly escape long name and pbx/system name
Ticket #107723. Otherwise the report generation failed.
3826 - Fix wrongly released version number in cumulative hotfix
Ticket #107872. The cumulative hotfix 23 contained a hotfix 22 with a wrong build number 10378.
The cumulative hotfix 24 will now replace this number with 10377 and further hotfixes will be installed correctly.
3805 - Increased max length of report mails field
Ticket #107134. From 60 to 1024 chars.
V1 Hotfix 25 (10386)
3863 - Correctly show connected number in report if no alert is present and setup is empty
Ticket #108667. The connected number was shown as "N/A". Now the correct connected number is shown.
3862 - LDAP: rebind needed to follow referrals
Ticket #108647. If we try to follow the referrals we need to re-authenticate. If not done the LDAP library attempts with anonymous and the server responds with an error.
3895 - Report compatibility with IE 11
Ticket #109496. Microsoft changed their navigator.appName to "Netscape" (obviously) so we needed another check to test for Internet Explorer...
V1 Hotfix 26 (10387)
3941 - LDAP: name resolution for an internal number in special case
Ticket #111136. setup-from before an unconditional diversion contains no name information.
3920 - LDAP: search filter was not correct
Ticket #110893. LDAP filter was not built correctly, add exact number dialed
V1 Hotfix 27 (10389)
3985 - Fixed wrong reporting data for certain call forwards
Ticket #112365. Certain call forward scenarios produced wrong caller information reports.
Old CDRs will be still wrongly shown. Just new CDRs are fixed.
3982 - LDAP: Name resolution did not work for local numbers
Ticket #112320. The customer did not entry the phone number im LDAP Server including area code for local numbers.
V1 Hotfix 28 (10391)
4080 - Reporting-LDAP: case insensitive comparison for name- and numberattributes
Ticket #114996. Name attributes were not found.
4090 - Reporting-LDAP: search only for configured name- and number attributes
Ticket #115349. Client was asking for all existing attributes. We save now some bandwidth.
V1 Hotfix 29 (10396)
4038 - Reporting cleanup might have failed
Ticket #113885. e.g. if the database connection broke down during cleanup, the database was in a bad state afterwards.
V1 Hotfix 30 (10397)
4216 - XML escape callback information in reports
Ticket #118658. Otherwise the report can't be displayed.
V1 Hotfix 31 (10400)
4455 - LDAP: no external line defined, direct dialing case.
Ticket #127830. Reporting was not resolving names in this special situation where no Trunk Object was defined.
4467 - Optimized sorting for CDRs with the same timestamps
Ticket #128195. CDRs with the same timestamp are now additionally sorted by their database ID.
V1 Hotfix 32 (10401)
4491 - Fixed potential failure of reporting replication due to duplicated CDR guids
Ticket #129490. If there have been duplicated CDR guids the replication might have failed.
This is fixed now.
V1 Hotfix 33 (10404)
V1 Hotfix 34 (10405)
4628 - LDAP: no name resolution if external line prefix was longer than one digit
Ticket #138518. external line can be longer.