New system use the journal (some still use syslog). the "log" action default level is DEBUG.
This change moves the 404 error code to WARNING, the mod_syslog will report to the journal (or syslog).
This SMS bugfix works out two issues:
* SMS permissions were not properly included. This causes SMS functionality to be inaccessible if the system implementor works out a Lua SMS implementation
* If voicemail transcription doesn't exist for the voicemail the send_sms.lua script crashes. Added a nil check to prevent this.
Setting ignore_early_media=true has a better chance of success for T38 fax transmissions.
Setting this as a fax variable in default settings is enough for most cases where a successful transmission occurs on the first attempt. However if fax retries are needed this variable was ignored until now.
This change ensures that IF the user sets ignore_early_media=true as a default fax setting it will also be used for fax retry scenarios when T38 is enabled. If ignore_early_media is not set to true then the changes here are ignored thus minimizing risk.
IBM Watson supports MP3 transcription and my testing shows it is very similar to WAV in terms of overall quality.
The benefit, of course is it greatly reduces the voicemail file size.
If MP3 is not set for the system then it will use WAV.
If other users prefer having the option of MP3 for the system but WAV for Watson transcription we could add a new variable for Watson transcription and add this new variable as a qualifier.
When we have MP3 enabled we want ALL voicemails to be MP3 EXCEPT the ones that need to be transcribed, which will be WAV.
When transcribe_enabled is set to true, ALL voicemails currently become WAV even when MP3 is set.
This change ensures that ALL voicemails remain MP3 except the extensions that have voicemail_transcription_enabled set to true.
Note: The reason this was not working is because setting transcribe_enabled to true also sets voicemail_transcription_enabled to false for ALL extensions BUT it is not written into the database. Therefore a SAVE is required for ALL voicemails to ensure this field is written to the database. Changing to ~=true gets around this problem.
* Fix table name, variables and syntax Follow me Lua
Correct the wrong table name on line 123. Correct the param on line 126 and correct the syntax on line 347.
* Update index.lua
Missing AND in where clause.
* Change order of preference Caller ID
Changed order of preference for Caller ID. If user exists should take preference over Follow Me override select caller ID.
This is my preference and my opinion only. May not be the desired effect of others. Perhaps a select option to choose a preference like the following options: Set caller ID override all, Local user else Caller ID
* Calculate timeout for Follow-me
Need to calculate the timeout for Enterprise RG members that have extensions with follow-me.
The RG timeout should always take precedence over a follow-me timeout value. What we do is take the delay of the follow-me destination and subtract that from the ring group timeout to give us the total timeout of the destination.
Example:
RG 1: x1000 (Delay=0, Timeout=10)
RG 2: x2000 (Delay=10, Timeout=10)
x2000 has follow-me enabled
FM 1: x2000 (Delay=0, Timeout=15)
FM 2: x3000 (Delay=5, Timeout=20)
In this example we would want x2000 ring for 10 seconds and x3000 to ring for 5 seconds.
What if we changed this... FM 2: x3000 (Delay 15, Timeout=20)
In this example we wouldn't want x3000 to ring at all because it would start to ring after the RG timeout has expired. Our calculated value would be a negative value, -5. These negative values don't work as leg_timeouts in the dialstring, so we need to test for them.
* Update index.lua
* Update index.lua
This is related to 9dcaddd814 (diff-b1f5588538149bd825603176ff81d714).
For internal calls the delay needs to be "Delay In Seconds * 500".
For external calls the delay needs to be "Delay In Seconds * 10000".
For external calls I'm am just doubling the value set prior in the script.
We need to make sure that the delay for the leg takes into account the delay from the RG and from Follow-me.
Also, let's use the timeout from the RG instead of the follow-me member