With the current implementation, Phrases cannot be used in IVRs as streamfile.lua prevents keypresses from being passed back to the IVR. This fix makes a small change to the way phrases are stored and allows streamfile to be run without blocking IVR keypresses.
When setting call_block_matching, the setting was not being evaluated as true because it was looking for 'call block' group when the actual name is 'call_block'.
Adding the underscore fixes this small syntax issue and the setting works correctly.
Added and optional parameter, argv[2], to take a domain_uuid. This is to fix an issue where if two contact records exist with the same phone number, but in different domains, the CID lookup would always pick the same contact record irrespective of which domain the inbound number belonged to.
This patch adds BING (legacy) some extra fault tolerance support. For those who still use Bing, Bing sometimes fails
It adds another way, which I think it is easier and faster (Azure). Among the outstanding things it has; just configure the zone, and use Memcache to store the access token as per Azure documentation, it saves a query (faster). It also returns the most likely right transcription (digging in the JSON)
Two things:
1. Follow-me should only kick in when using "Enterprise". As it was written, follow-me was looked at for every strategy.
2. Follow-me destinations were writing to 'destinations[x]'. They should write to 'destinations[key]' so they rewrite the current destination that is being analyzed.
When bridge application ends with "originate_disposition: ALLOTTED_TIMEOUT" for example, the "missed call" feature doesn't work for ring group because of hangup hook isn't called. Should we just avoid using this channel variable or add additional processing at the end? Like for timeout action? I choose to call "missed" at the end of script. But may be we should add it to other places too?
* Make storage_path work
if storage_path was set, the script would fail. I have fixed it by removing the references to unset variables. I also made the recordings use the path.
* Update ivr.conf.lua
Add storage_path definition so storage_type of http_cache works correctly
* BLF of agent status "agent+username@domain.com
Add the ability to monitor the availability status of a call center agent with "agent+agentname@domain.com".
* Update index.lua
Send notify to blf with "agent+agentname@domain.com"
* Added a simple selfhosted voicemail transcription API client
* Minor logging cleanup
* Add some string escaping to handle transcription providers
* Add JSON handling (optional) to selfhosted API
If the message is too short then the result is nil.
Error occurs in this case: record_message.lua:97: attempt to index field 'results' (a nil value)
Added check if transcribe_json["results"] is nil.
* Added support for regular expressions in the numbers to be blocked.
Reduced the caching timeout, as the counter is only incremented when a call is blocked and the number is not cached.
* Added default sort order.
* Added option to switch on/off use of regular expression matching for pgsql and mysql.
* Added support for sqlite and updated default number match to "LIKE" as suggested by MafooUK on IRC.
* Selection of behavior (default [=], regex or like matching) is now done via the variable call_block_matching = regex|like|EMPTY - type text - in the Call Block section of Default Settings.
* Updated comment to match new matching.
This change reduces the strain on the system by running the OS command through Freeswitch rather than directly from Lua. When running directly from Lua it causes RTP jitter in a high capacity system.
Changed SIP NOTIFY Event header for Grandstream phones to allow provisioning with out requiring a reboot of the device. Based on communication with a Grandstream support rep. Tested on Grandstream GXP2130 and GXP2160 models.
* Fixed formatting.
* Sendmail to use smtp_from variable
Changed sendmail to use smtp_from as the from address to keep from being blocked by spf check during spam filtering on recieving end.
1. Allow custom sound_pin & sound_extension
2. Allow customization of max_tries, pin_tries & extension_tries
3. Add fallback_destination - fall to it if caller did not entered extension number
4. Allow custom digit_timeout