* Fix MWI for Extensions that with 0
MWI was not turning off after messages were deleted for extensions that start with 0. This requires that real voicemail_id to be pulled from the database and not just taken from the destination number. To get around this we try to send mwi to the original vociemail_id (destination number) and voicemail_id_copy (from database). Index.lua is already doing something similar.
* Update listen_to_recording.lua
* Update menu_messages.lua
when debug["xml_string"] is on, it will overwrite /tmp/ivr.conf.xml file each hit an ivr goes. this makes very hard to trouble shoot in a living system. this patch allows to put one ivr menu per file.
* Add sendevent when using file caching
* Create clear_cache.lua
FS receives a command via curl to call this script which deletes the single cache entry or flushes the entire cache.
* Create file_cache.lua
This scripts monitors for custom events. When an event is processed it will send out a command via curl to other FS servers telling them to clear their cache.
This must be called from conf/autoload_configs/lua.conf.xml
<param name="startup-script" value="app/server/resources/memcache.lua"/>
Search all profiles for the sofia_contact. For some reason on server it would automatically search all profiles, but on the other servers I had to add "*/".
Break the ring group query into two parts. One for getting the ring group info. Another for getting the ring group user.
If a user was not assigned to a ring group, then the query will fail to return a result. This will cause forward, prefix, distinctive ring, etc to not work properly.
* Update index.lua
Store password complexity settings as variables.
* Update macro.lua
Add macros for "password is below minimum length" and "password is not secure"
* Update change_password.lua
Adds the ability to check for password complexity and minimum length.
Also, fixes a bug where the password was changed if the caller hung up in the middle of changing their password.
* Fix. Cache class.
* `send_event` raise error so `Cache.del` did not remove key or send any event
* use `memcache` method by default even if `cache` table does not defined in config
* `Cache.get` did not return any data when use `memcache` method
* `Cache.get` did not close file. (Its should not be a big problem because GC should do it by self).
* `Cache.get` can returns some undefined global value. (if method is `file` and file not exists then method returns global `result` value)
* `Cache.get` does not need check for file existence
* Value escaping does not needed for `file` method
* Needed different key escaping for `memcache` and `file` methods
* Update self test
* Change. Use random names for temp files.
* Add. BLF indication for call forward.
To display general status of CallForward use blf like `forward+<extension>`
To display status for specific phone number use blf like `forward+<extension>/<number>`
* Fix. Escape variable in regex expression.
* Fix. Sync DND and CF blf.
* Add. `blf_subscribe` service which can handle all custom subscriptions.
To run for specific protocol it possible run as `luarun blf_subscribe.lua <PROTO>`
This commit allows create call flow extension with some feature code (e.g. `*401`)
Then on the phone you can configure BLF like `flow+*401` and use `call_flow_subscribe` to
track current status of this call flow. BLF like `*401` will also works but only if
use `call_flow_monitor` script.
Also it is possible dial `flow+*401` as well as `*401` to toggle call flow state.
On my system mod_memcached returns `-ERR SOME ERRORS WERE REPORTED` when
memcached service not available. And sofia.conf.lua does not handle this case
and interpret this response as valid one.
Using `cache` class allows handle such errors. Also this class handle all
escaping operation which makes code more clear.
Had an issue with malformed email confirmation where the number_dialed was showing up with a bunch of random repeating strings after it. This resolved it for me. Also fixed a grammar error.
* Merge (#4)
* Added variables to disable call waiting and t.38 faxing
* HT702 config file variables: grandstream_disable_call_waiting, grandstream_disable_fax_t38
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update app_config.php
* Corrected bug with expansion board and call park value. Was 19, should be 16.
* MAC detection for some Grandstream phones (#2486)
Some GS models send the Mac address in the user agent
* Add/Update German and Austrian translations (#2483)
Updates to the following apps:
call_broadcast
call_flows
devices
dialplan_inbound
dialplan_outbound
edit
emails
exec
extensions
fax
fifo
fifo_list
gateways
ivr_menus
* Update destinations.php
* Update xml_cdr_inc.php
* Update status_registrations.php
* Update y000000000028.cfg
* Update y000000000066.cfg
* Update y000000000035.cfg
* Update y000000000065.cfg
* Update y000000000051.cfg
* Update y000000000023.cfg
* Update y000000000025.cfg
* Update y000000000029.cfg
* Update y000000000036.cfg
* Update y000000000038.cfg
* Update y000000000032.cfg
* Update y000000000046.cfg
* Update y000000000000.cfg
* Update y000000000054.cfg
* Update y000000000045.cfg
* Update y000000000069.cfg
* Update y000000000004.cfg
* Update y000000000044.cfg
* Update y000000000044.cfg
* Update y000000000005.cfg
* Update y000000000052.cfg
* Update y000000000007.cfg
* Update y000000000037.cfg
* BugFix for VM Transcription (#2491)
Records as MP3 and skips transcription steps if a user has transcription set to false.
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Yet another ip phone reporting MAC in the UserAgent (#2492)
* Update app_config.php
Begin adding uuid's for key functions.
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Create 560_extension_queue.xml
* Update y000000000037.cfg
* Update y000000000007.cfg
* Update app_config.php
* Update y000000000052.cfg
* Update y000000000028.cfg
* Update y000000000005.cfg
* Update y000000000044.cfg
* Update y000000000044.cfg
* Update y000000000004.cfg
* Update y000000000069.cfg
* Update y000000000045.cfg
* Update y000000000000.cfg
* Update y000000000046.cfg
* Update y000000000032.cfg
* Update y000000000038.cfg
* Update y000000000054.cfg
* Update y000000000036.cfg
* Update y000000000029.cfg
* Update y000000000066.cfg
* Update y000000000035.cfg
* Update y000000000065.cfg
* Update y000000000051.cfg
* Update y000000000023.cfg
* Update y000000000025.cfg
* Update app_config.php
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update app_config.php
* Fix. Add new sip profile setting. (#2500)
* BugFix [master] system information git (#2499)
fix for if the .git folder is present but corrupt
* Fix. Redirect back to correct profile after delete setting. (#2501)
Fix. Add setting (seems need also set sip_profile_uuid)
Change. Order settings by name when output.
* Restore Button + Audiocodes preliminary support (#2502)
* Audiocodes phone support + restore default for vendors
* Restore button
* Restore script
* Update device_vendors.php
* Some FR & ES translation fixes (#2503)
* Update app_config.php
* Update app_config.php
* Create {$mac}.cfg
* Create directory.xml
* Create favorite_setting.xml
* Create y000000000025.cfg
* Fix. Add extension with non numeric extension number. (#2508)
* Update ring_group_edit.php
* Update call_edit.php
* Create 080_default_caller_id
* Update 080_default_caller_id
* Rename 080_default_caller_id to 080_default_caller_id.xml
* Fix. Create needed number of extensions (#2509)
* Update dialplan_edit.php
* Update switch.php
* Update index.php
* Update switch.php
* Update voicemail_edit.php
* Update app_config.php (#2515)
Add the necessary permissions in order to use the database save function (fusion 4.3) when coding for voicemail option adds/deletes/updates.
I realize these voicemail permissions overall will probably get cleaned up even more once the whole app is updated to use the database function, but this is a stop gap measure. I am working on adding voicemail options to the Bulk Account Settings app and I'm stuck without these permissions. The function is kicking a out 403 Forbidden.
* Update app_config.php
* Really use configured transcribe_language for transcription (#2513)
* Fix renaming domains (#2512)
* Make presence for conferences work out of the box (#2514)
Use '@' instead of '-' for separating conference name and domain, which
is what FreeSWITCH mod_conference uses.
* Add. Speed dial respects contacts user. (#2249)
* Add. Speed dial respects contacts user.
One user can not use speed dial numbers from contacts
associated with another user
* Make SQL query more efficient
* Add. Support find contacts by user groups as well
If contact has set any `user` or `group` then only this users can use speed dial numbers
in other case speed dial numbers are global for domain.
* Fixup for renaming domains (#2517)
The previous fix was incomplete, this one should do it.
* Create app_defaults.php
* Update page.lua
* CC Key Support for Call Center (#2518)
* Exit Keys support
* Multilanguage support
* CC Key Support
* Update call_center.php
* Update code to iterate over numbers. (#1727)
* Update code to iterate over numbers.
This code fixes some problems
* range like `009-010` current code produce numbers `009` and `0010`
* range like `200-100` now raise error so it will be easy to debug
* range like `010-20` now generate error.
* `destination` is string so condition `destination == tonumber(sip_from_user)` is always false so change it `destination == sip_from_user`
* Fix. handle ranges like `100-100`
* Update index.lua
* Update start_recording.lua
* Merge (#4)
* Added variables to disable call waiting and t.38 faxing
* HT702 config file variables: grandstream_disable_call_waiting, grandstream_disable_fax_t38
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update {$mac}.cfg
* Update app_config.php
* Corrected bug with expansion board and call park value. Was 19, should be 16.
* MAC detection for some Grandstream phones (#2486)
Some GS models send the Mac address in the user agent
* Add/Update German and Austrian translations (#2483)
Updates to the following apps:
call_broadcast
call_flows
devices
dialplan_inbound
dialplan_outbound
edit
emails
exec
extensions
fax
fifo
fifo_list
gateways
ivr_menus
* Update destinations.php
* Update xml_cdr_inc.php
* Update status_registrations.php
* Update y000000000028.cfg
* Update y000000000066.cfg
* Update y000000000035.cfg
* Update y000000000065.cfg
* Update y000000000051.cfg
* Update y000000000023.cfg
* Update y000000000025.cfg
* Update y000000000029.cfg
* Update y000000000036.cfg
* Update y000000000038.cfg
* Update y000000000032.cfg
* Update y000000000046.cfg
* Update y000000000000.cfg
* Update y000000000054.cfg
* Update y000000000045.cfg
* Update y000000000069.cfg
* Update y000000000004.cfg
* Update y000000000044.cfg
* Update y000000000044.cfg
* Update y000000000005.cfg
* Update y000000000052.cfg
* Update y000000000007.cfg
* Update y000000000037.cfg
* BugFix for VM Transcription (#2491)
Records as MP3 and skips transcription steps if a user has transcription set to false.
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Yet another ip phone reporting MAC in the UserAgent (#2492)
* Update app_config.php
Begin adding uuid's for key functions.
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Update app_config.php
* Create 560_extension_queue.xml
* Update y000000000037.cfg
* Update y000000000007.cfg
* Update app_config.php
* Update y000000000052.cfg
* Update y000000000028.cfg
* Update y000000000005.cfg
* Update y000000000044.cfg
* Update y000000000044.cfg
* Update y000000000004.cfg
* Update y000000000069.cfg
* Update y000000000045.cfg
* Update y000000000000.cfg
* Update y000000000046.cfg
* Update y000000000032.cfg
* Update y000000000038.cfg
* Update y000000000054.cfg
* Update y000000000036.cfg
* Update y000000000029.cfg
* Update y000000000066.cfg
* Update y000000000035.cfg
* Update y000000000065.cfg
* Update y000000000051.cfg
* Update y000000000023.cfg
* Update y000000000025.cfg
* Update app_config.php
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update {$mac}.xml
* Update app_config.php
* Fix. Add new sip profile setting. (#2500)
* BugFix [master] system information git (#2499)
fix for if the .git folder is present but corrupt
* Fix. Redirect back to correct profile after delete setting. (#2501)
Fix. Add setting (seems need also set sip_profile_uuid)
Change. Order settings by name when output.
* Restore Button + Audiocodes preliminary support (#2502)
* Audiocodes phone support + restore default for vendors
* Restore button
* Restore script
* Update device_vendors.php
* Some FR & ES translation fixes (#2503)
* Update app_config.php
* Update app_config.php
* Create {$mac}.cfg
* Create directory.xml
* Create favorite_setting.xml
* Create y000000000025.cfg
* Fix. Add extension with non numeric extension number. (#2508)
* Update ring_group_edit.php
* Update call_edit.php
* Create 080_default_caller_id
* Update 080_default_caller_id
* Rename 080_default_caller_id to 080_default_caller_id.xml
* Fix. Create needed number of extensions (#2509)
* Update dialplan_edit.php
* Update switch.php
* Update index.php
* Update switch.php
* Update voicemail_edit.php
* Update app_config.php (#2515)
Add the necessary permissions in order to use the database save function (fusion 4.3) when coding for voicemail option adds/deletes/updates.
I realize these voicemail permissions overall will probably get cleaned up even more once the whole app is updated to use the database function, but this is a stop gap measure. I am working on adding voicemail options to the Bulk Account Settings app and I'm stuck without these permissions. The function is kicking a out 403 Forbidden.
* Update app_config.php
* Really use configured transcribe_language for transcription (#2513)
* Fix renaming domains (#2512)
* Make presence for conferences work out of the box (#2514)
Use '@' instead of '-' for separating conference name and domain, which
is what FreeSWITCH mod_conference uses.
* Add. Speed dial respects contacts user. (#2249)
* Add. Speed dial respects contacts user.
One user can not use speed dial numbers from contacts
associated with another user
* Make SQL query more efficient
* Add. Support find contacts by user groups as well
If contact has set any `user` or `group` then only this users can use speed dial numbers
in other case speed dial numbers are global for domain.
* Fixup for renaming domains (#2517)
The previous fix was incomplete, this one should do it.
* Create app_defaults.php
* Update page.lua
* CC Key Support for Call Center (#2518)
* Exit Keys support
* Multilanguage support
* CC Key Support
* Update call_center.php
* Update code to iterate over numbers. (#1727)
* Update code to iterate over numbers.
This code fixes some problems
* range like `009-010` current code produce numbers `009` and `0010`
* range like `200-100` now raise error so it will be easy to debug
* range like `010-20` now generate error.
* `destination` is string so condition `destination == tonumber(sip_from_user)` is always false so change it `destination == sip_from_user`
* Fix. handle ranges like `100-100`
* Update app_config.php
* Update app_languages.php
* Update ring_group_edit.php
* Update index.lua
* Update code to iterate over numbers.
This code fixes some problems
* range like `009-010` current code produce numbers `009` and `0010`
* range like `200-100` now raise error so it will be easy to debug
* range like `010-20` now generate error.
* `destination` is string so condition `destination == tonumber(sip_from_user)` is always false so change it `destination == sip_from_user`
* Fix. handle ranges like `100-100`
* Add. Speed dial respects contacts user.
One user can not use speed dial numbers from contacts
associated with another user
* Make SQL query more efficient
* Add. Support find contacts by user groups as well
If contact has set any `user` or `group` then only this users can use speed dial numbers
in other case speed dial numbers are global for domain.
I really don't know if this is an IP phone issue (tested on grandstream) or a new behavior on FreeSWITCH, but in order to add the prefix to the caller id (name or number) correctly, you need to export instead of set.
* Update macro.lua
Add additional macros for the tutorial.
* Create tutorial.lua
* Update index.lua
* Update record_greeting.lua
Add menu variable to route back to appropriate place in the flow.
* Update record_menu.lua
Add menu variable to accommodate the tutorial.
* Update change_password.lua
Add menu variable to accommodate the tutorial.
* Update record_name.lua
Add menu variable to accommodate the tutorial.
* Update voicemail_edit.php
Add option to play tutorial on next login.
* Update app_languages.php
* Update app_config.php
Add voicemail_tutorial to database.
* Update extension_edit.php
Set "voicemail_tutorial" to true for new extensions.
Please do further testing/review and give comments and suggest cleanup, etc.
This bug is only tripped if all of the following are true:
a) fax send fails
b) email notification of fax failure also fails
c) Other?
how to test
- have a 100% working fax to email setup.
- Change Advanced->defaults->email and set the port to be something invalid.
- e.g. smtp port 9999 is invalid
- send a test fax to something without a fax
- e.g. I just faxed my own DID which does NOT have fax answering
- each time the phone rings answer...wait 5 seconds, and then hang up
- note: it will retry sending the fax 5 times so repeat the above.
- on the last try it will give up, and try to send the failure email
- the email will fail (bad port) and then it will insert the failed email into v_emails
- the insert will fail and nothing in v_emails
Error was caused by trying to insert '' into the domain_uuid field.
'' is invalid in a uuid field, but null is okay.
The null is caused by no x-headers being passed. So these two fields end up null:
$headers["X-FusionPBX-Domain-UUID"]
$headers["X-FusionPBX-Email-Type"]
Ignoring unset/uninitialized variables hides bugs.
Fix: feed the X-Header in the calling lua code.
Requires that you have fusionpbx-apps/sms
Doesn’t impact anything if you don’t have it. Must be enabled with
default_setting voicemail_to_sms
Everything is disabled by default and the fields in voicemail_edit.php
are hidden by default.