Commit Graph

669 Commits

Author SHA1 Message Date
Alexey Melnichuk 0dc4ba137e Add. Use parameters in group_call.lua (#2093) 2016-11-18 10:22:33 -07:00
Alexey Melnichuk dc838c91c0 Add. Use parameters in reverse-auth-lookup.lua (#2094) 2016-11-18 10:21:53 -07:00
Alexey Melnichuk dd8e226c34 Add. Use parameters for acl.lua (#2095) 2016-11-18 10:21:00 -07:00
FusionPBX 0e9d56c9ed Update index.lua 2016-11-18 10:20:21 -07:00
Alexey Melnichuk 6c3dce77d9 Add. Use parameters in cidlookup.lua and call_block app (#2096) 2016-11-18 10:16:22 -07:00
FusionPBX 46cbac7b37 Update directory.lua 2016-11-18 09:58:53 -07:00
Alexey Melnichuk 232ed2857f Xml handler directory sql escape (#2088)
* Add. Extend database API to support parameters.

* Change. Use new Database API in `xml_handler::directory.lua`
2016-11-17 11:42:42 -07:00
Alexey Melnichuk 63ebb355fa Add. Support number_alias field as presence id in follow me/call forward (#2075) 2016-11-17 11:40:22 -07:00
FusionPBX e6e68b1681 Update ivr.conf.lua
Use ${default_language}/${default_dialect}/${default_voice} instead as it will work better when the IVR Menu is cached.
2016-11-14 12:08:48 -07:00
FusionPBX 340342a7bc Update ivr.conf.lua
Fix multi-lingual support for IVR Menu direct dial your call is being transferred and invalid entry.
2016-11-14 11:45:50 -07:00
SJS87 018588fa8d Update index.lua for E-164 Caller ID (#2047)
When saving Caller ID numbers which are in E-164 format these may include a '/' prefix used to escape '+'. This causes the '/' to be saved with the number which prevents the call from being returned.

The above fixes the issue by removing '/' prefix from the start of the Caller ID number before saving the voicemail message.
2016-11-11 10:48:21 -06:00
FusionPBX 88aab774b3 Update index.lua
Improve security for voicemail_authorized = true;
2016-11-06 01:01:55 -06:00
FusionPBX 64623eaf40 Update index.lua 2016-11-05 23:36:26 -06:00
Chris Black 25b0479c68 Changes to API per issue 2036 (#2038)
https://github.com/fusionpbx/fusionpbx/issues/2036
2016-11-04 11:18:02 -06:00
Chris Black e7fae7587e add built in ability for microsoft bing speech to text (#1960)
* add built in ability for microsoft bing speech to text

* move json.lua to lower case and more error checking in record_message

* Replaced Creative Commons json.lua with lunajson.lua which is MIT license

https://github.com/grafi-tt/lunajson/blob/master/LICENSE
2016-11-03 16:11:21 -06:00
FusionPBX 75eecb9dd9 Update message_waiting.lua 2016-10-30 12:15:25 -06:00
FusionPBX 3fe09e6267 Update ivr.conf.lua
Move direct dial after the options.
2016-10-25 10:04:29 -06:00
FusionPBX bc6d6383e2 Update directory.lua
Re-add force_ping to directory.lua.
2016-10-23 12:55:39 -06:00
FusionPBX 18fb11aad3 Update directory.lua
moteus changes to directory.lua in pull request 1129.
2016-10-23 12:46:35 -06:00
FusionPBX f7bbf1508d Update index.lua 2016-10-17 17:58:06 -06:00
FusionPBX f3e3a80957 Update ivr.conf.lua
Fix IVR Menu greet short.
2016-10-16 01:07:17 -06:00
FusionPBX cd6481ed1a Update macro.lua 2016-10-08 09:52:21 -06:00
FusionPBX f8fb2f87f5 Update dialplan.lua
Use the new pre-generated xml for the xml handler.
2016-09-29 18:00:46 -06:00
Luis Daniel Lucio Quiroz 089d33384a Look further for domain_name (#1955)
Same rationale as 4.0
2016-09-28 17:56:53 -06:00
Chris Black 2a26a3b590 one more spot to add playandgetdigits (#1942) 2016-09-25 01:43:20 -06:00
FusionPBX 72beb086cb Update macro.lua 2016-09-20 10:56:34 -06:00
FusionPBX 1a61142007 Update macro.lua 2016-09-20 10:27:47 -06:00
FusionPBX cc8ef0cc2f Update index.lua 2016-09-20 10:22:05 -06:00
jebsolutions 513e22a766 Update macro.lua to fix reading voicemail extension number (#1929)
Expected result: The person at extension XXX is unavailable ...
Actual result: The person at is unavailable... 
i.e. it doesn't say the extension number.

bug: trying to access local variable voicemail_greet_id outside it's scope...so it doesn't exist and you get this in the logs:

2016-09-18 12:32:54.615249 [ERR] switch_cpp.cpp:977 Error! invalid args. 

Fix moves local variable creation outside the inner "if" so it's available for the later table.insert
2016-09-18 14:02:25 -06:00
FusionPBX db38b8dba3 Update macro.lua 2016-09-17 18:20:58 -06:00
Chris Black 1a9f7737e9 fix the voicemail IVR with custom greeting (#1917) 2016-09-14 15:28:04 -06:00
DigiDaz 829f3d44a0 Moved the display update to the end (#1913)
Moved the UPDATE sip request to the end as it was sending the UPDATE request sometimes before the ACK had been received to the 200OK. This was sometimes causing it to fail.

Also removed a couple of commented out lines.
2016-09-13 20:06:26 -06:00
FusionPBX 0315855377 Update memcache.lua 2016-09-08 18:00:23 -06:00
FusionPBX 61e4853108 Update memcache.lua
Add server method, consumer CUSTOM event instead of MEMCACHE.
2016-09-08 17:23:01 -06:00
FusionPBX 0afd070f3b Create memcache.lua 2016-09-08 16:10:40 -06:00
Alexey Melnichuk 28d3ebb51f Allow use odbc to store files (record/voicemail) in database. (#1535)
* Change. Allow use odbc to store files (record/voicemail) in database.

* Fix. Generate correct default config.
2016-09-04 13:05:47 -06:00
SJS87 7fae6c9d4e Update call_block index.lua script (#1580)
We've had instances where special characters (other than +) are used in the caller_id_number field which prevents these calls from being detected using the call_block feature. We've resolved this by updating fusionpbx/resources/install/scripts/app/call_block/index.lua line 49 to match only numbers rather than using a gsub replace.
2016-09-04 13:03:03 -06:00
FusionPBX b90ea47471 Update forward_add_intro.lua 2016-09-03 21:15:07 -06:00
FusionPBX 56b34a1c97 Update delete_recording.lua 2016-09-03 15:40:27 -06:00
FusionPBX b8b39a880e Update delete_recording.lua
Remove the into_<uuid> voicemail file.
2016-09-03 15:40:11 -06:00
FusionPBX 29e3cc1b86 Update listen_to_recording.lua
Play the voicemail introduction if it exists.
2016-09-03 15:39:13 -06:00
FusionPBX 919783d4da Update forward_add_intro.lua 2016-09-03 15:27:41 -06:00
FusionPBX 75395be626 Update forward_add_intro.lua
Use phrase:voicemail_forward_prepend and record the intro. Use the following naming convention for the intro_<uuid>.wav.
2016-09-03 15:18:53 -06:00
FusionPBX 8928570b55 Update index.lua 2016-09-01 14:38:56 -06:00
FusionPBX 260e056e6c Update forward_add_intro.lua 2016-09-01 14:37:30 -06:00
FusionPBX cfdee5aa81 Update mwi.lua 2016-09-01 14:25:51 -06:00
FusionPBX 6c8bae55f2 Update forward_to_extension.lua 2016-09-01 13:33:41 -06:00
FusionPBX ed5a422083 Update forward_add_intro.lua 2016-09-01 13:31:55 -06:00
Alexey Melnichuk 4176144da4 Add. attr_xfer analog based on conference. (#1629)
* Add. attr_xfer analog based on conference.

Control DTMF sequence
 `*0` transfer `self` to `enter number` state and `peer` leg to conference room
 `##` transfer `self` to `enter number` state and hangup `peer` leg
 `*#` transfer `self` to conference room and hangup `peer` leg

* Remove spaces.

* Add. Commented action to ring group.
2016-08-30 01:10:08 -06:00
FusionPBX 3db9077326 Update dialplan.lua
Add  inline="true" to domain_uuid and domain_name.
2016-08-25 09:09:52 -06:00
nostikj 72f2dbab31 Corrects some cases where dialplan conditions were not fully handled (#1850)
* Remove unsed variable

* Fix cases where time condition are lost

When processing a new condition statement and condition_tag_status == "open",
then there has been a previous condition statement that is in one of three
possible states:
  (1) a previous condition of type default has been saved into the
      'condition' string and will need to be output as XML with either '>' or '/>'
  (2) one or more time conditions have been saved into the
      'condition_attribute' string.  More time conditions may be added.
      After the last time condition it will need to be output as XML with either '>' or '/>'
  (3) a previous <condition ....> start tag has already been output as XML
      and needs to be closed with a </condition> statement.

The change here checks for all three above situations at the places where
pending condition statements need to be finalized.

Note that when processing condition new statements and we are finalizing
a previous time condition, the XML statement uses the 'condition_break'
value from the previous loop, therefore setting condition_break for the
new condition must be after previous conditions are finalized.

At the start of each new extension, initialize 'condition' and
'condition_attribute'.

* Remove unused variables

* Indent one block to match surrounding code at same level

* Prevent two dialplans uuids being merged into single extension

If a dialplan manager entry ended with an action statement NOT inside
a condition, the generated XML would combine this dialplan uuid with the next
uuid by not closing and reopening a new extension.  This change ensures
each dialplan uuid is enclosed in it own <extension></extension>.
2016-08-25 08:50:54 -06:00
markjcrane b72f36f1c3 Update bind_target for ring groups default to peer if sip_authorized = true then set to both. 2016-08-20 23:59:10 -06:00
markjcrane 22c20dc6ec Update bind digit action and set call_direction to inline=true 2016-08-20 22:07:35 -06:00
FusionPBX 3e4abb8121 Update index.lua 2016-08-20 20:31:04 -06:00
FusionPBX 034b325b38 Update record_message.lua 2016-08-20 18:54:02 -06:00
FusionPBX a052465b0d Update index.lua 2016-08-17 09:55:08 -06:00
FusionPBX d3dc83067a Update directory.lua 2016-08-15 21:50:44 -06:00
FusionPBX 467b89e061 Update ivr.conf.lua
Add direct dial message to the IVR Menu so that it states  'your call is being transferred' or 'that was an invalid entry'.
2016-08-14 10:26:32 -06:00
FusionPBX 02ecec3cc1 Update ivr.conf.lua
Since we are checking the direct dial for user_exists we can allow more up to 11 digits by default.
2016-08-13 20:04:23 -06:00
FusionPBX 6ab6f710f3 Update ivr.conf.lua
Check to see if the number dialed matches an extension if it does then transfer to the extension if it doesn't then transfer the call back to the IVR Menu.
2016-08-13 19:57:15 -06:00
Alexey Melnichuk 252f4db916 Add. `force_ping` option for extension (#1809)
* Add. `force_ping` option for extension

This option force FS send SIP OPTIONS message to
detect if this reged device still available.

* Update language file.
2016-08-11 09:46:54 -06:00
FusionPBX 29050e29f3 Create forward_add_intro.lua 2016-08-10 16:10:22 -06:00
FusionPBX 0a4a5d573c Update directory.lua 2016-08-08 09:45:16 -06:00
FusionPBX 975bf3084e Update index.lua 2016-08-05 08:42:51 -06:00
FusionPBX 983680491b Update index.lua
Set regex_match = false; before the loop.
2016-08-03 00:23:58 -06:00
Alexey Melnichuk 868c7dd153 Change. Use `service::control` event to control services (#1790)
* Change. Use `service::control` event to control services

This is more FS way. E.g. sofia sends `sofia::register` event
and add all information to headers. So now `service` script
emit `fusion::service::control` event and each service responsible
for test its own name. This also allows add in future evnets to
e.g. monitor service status like `fusion::service::satus` so it
will be possible write service which will be restart services.

* Change. rename service name from `flow` to `call_flow`
2016-08-02 14:00:49 -06:00
FusionPBX 2ab876d5c4 Update ivr.conf.lua
IVR Menu direct dial move it before the options defined by the users so that users can override it.
2016-08-02 10:17:02 -06:00
FusionPBX c87e0f6f05 Update macro.lua
Add forward_add_intro to macro.lua.
2016-07-29 09:46:56 -06:00
FusionPBX 5a66d97dc2 Update index.lua
Improve on the call center agent status use agent_authorized true instead of auto_authorized.
2016-07-27 19:17:10 -06:00
DigiDaz f08094dea1 Allow * 22 login/logout of queue without password by adding variable auto_authorized to dialplan (#1776) 2016-07-27 19:13:50 -06:00
Alexey Melnichuk d47151ba8d Add `service` script and make timout optional for EventConsumer ctor (#1775)
* Change. Pass pid file first. Because there really no need pass timeout.
Add. `fsc` script to be able shutdown MWI and Call Flow subscribe services.

* Change. rename `fsc` to `service`.

* Change. Use `stop` command instead of `shutdown`
2016-07-26 11:58:37 -06:00
FusionPBX e8ab1e4a89 Update languages.lua
Don't cache the not found.
2016-07-24 00:22:18 -06:00
FusionPBX 32f803a1b3 Update languages.lua
When handling phrases get the specific phrase instead of all of them. Remove the code that tried to build the XML from the file system. Replace it with a 'not found' response so that FreeSWITCH will check the filesystem for the XML of the phrase that was not found.
2016-07-24 00:09:48 -06:00
Mafoo 4ed30bfe53 Enhance Voicemail Emails (#1738)
* Renamed template variable account to voicemail_id and adjusted all
templates
* Added ${voicemail_description}
* Added ${voicemail_name_formatted} (will render the voicemail identifier in accordance with Default/Domain Settings > Voicemail > display_domain_name)
* Updated templates to be consistent spacing
* Updated templates to include use of ${voicemail_name_formatted}
* Changed ${account} to be voicemail_name_formatted instead of id
2016-07-22 09:23:03 -06:00
pixel2920 e1feb2364d Add silence_stream to default voicemail message (#1761)
This corrects the issue in #1760, where the default voicemail message was not being played and instead skipped directly to recording (start recording tone).
2016-07-18 22:55:41 -06:00
FusionPBX 77712fcbf9 Update conference.conf.lua
Add conference controls to the xml handler.
2016-07-17 15:42:14 -06:00
FusionPBX da8349207a Update conference.conf.lua
Conference profile parameters are now working from the database.
2016-07-17 01:15:35 -06:00
FusionPBX 3bf7b917d4 Update play_greeting.lua
Voicemail greeting will not play after being transferred from IVR #1749. Replace session:streamFile( with session:execute("playback", fixes this problem.
2016-07-15 08:43:53 -06:00
Alexey Melnichuk 44196ae739 Fix. Fusion set rate=48000 to all streams. (#1746) 2016-07-12 08:09:54 -06:00
Mafoo 904a52434a BugFix-Add PROJECT_PATH for lua (#1740)
added project_path for lua to use where it needs to build urls
2016-07-08 13:12:37 -06:00
Alexey Melnichuk cae644c8a1 Add. EventConsumer class. (#1741)
Rewrite MWI and CallFlow subscribe handlers based on EventConsumer class.
Also on my test VirtualBox/Debian system Lua function `os.clock` produce
very strange result(delta ~0.015 for 1 second) so I switch to `os.time`.
Now to to stop this background Lua scripts it possible send CUSTOM event
with subclass `fusion::XXX::shutdown`. Where XXX is `mwi` or `flow`.

Usage of EventConsumer class
```Lua
-- create new object with timeout one minute
local events = EventConsumer.new(60000)

-- bind to some FS event
events:bind("SHUTDOW", function(self, name, event) ... end)

-- bind to another FS event with subclass
events:bind("CUSTOM::fusion::mwi::shutdown", function(self, name, event) ... end)

-- handle timeout event
events:on("TIMEOUT", function(self, name) ... end)

--run event loop
events:run()
```
2016-07-08 13:10:43 -06:00
FusionPBX 39bc0cad29 Update local_stream.conf.lua
Set a default rate for chime list if one is not provided.
2016-07-06 16:27:22 -06:00
Alexey Melnichuk 3d1f5b6866 Add. Support multiple events. (#1736)
Now subscriber stops and remove pid files when FS shutdown.
So if you use Status->Services you will see correct status.
2016-07-06 12:37:16 -06:00
Alexey Melnichuk b7506b5b18 Fix. Send message count in each MWI notify. (#1728)
* move send event code to separate function
* move get message count to separate function
2016-07-01 10:08:55 -06:00
FusionPBX 069ad5d580 Update local_stream.conf.lua
Add a more generic query to make this code compatible with MySQL/Mariadb.
2016-06-30 10:03:32 -06:00
Alexey Melnichuk 8a72e2afd8 Add. Event handler to support MWI. (#1720)
* Add. Event handler to support MWI.

* Fix. store cache only when get data from memcache

* Change. Use UUID as PID.
2016-06-30 09:55:37 -06:00
FusionPBX 2f9c1a7c9f Update local_stream.conf.lua
Changes to the conditions that build the name to make sure it builds it correctly.
2016-06-30 01:40:48 -06:00
FusionPBX b0c69d6703 Update local_stream.conf.lua
Use the name/rate for global music on hold or domain_name/name/rate for local. If configuring as a default leave the /rate off the end of the string.
2016-06-30 01:18:17 -06:00
FusionPBX bc670abb32 Update local_stream.conf.lua
Remove the default stream will handle it another way.
2016-06-29 17:19:21 -06:00
FusionPBX eb8b64dcd3 Update local_stream.conf.lua
Use UUID for the name of the stream. Add a default to handle systems using default.
2016-06-29 16:25:17 -06:00
FusionPBX bc46191440 Update local_stream.conf.lua
Check if row.music_on_hold_timer_name is empty.
2016-06-28 12:24:31 -06:00
Alexey Melnichuk 2d49b1b211 Change. remove CC configuration dependencies from mod_commands. (#1711) 2016-06-27 07:52:29 -06:00
Alexey Melnichuk a4dfa0c04d Fix. Set default values for max length settings (#1706) 2016-06-26 11:42:33 -06:00
Alexey Melnichuk 7a9a4bc3da Fix. Load required libraries in voicemail. (#1705) 2016-06-26 09:03:21 -06:00
FusionPBX 8f26972c20 Update ivr.conf.lua
If the IVR Menu recordings are base64 don't update the path.
2016-06-24 18:40:14 -06:00
markjcrane 3e2dea7b70 Get the settings.recordings.storage_type for the ivr menu using xml handler. 2016-06-24 14:55:16 -06:00
Mafoo 628c825201 Enhance-make voicemail length configurable (#1702)
allow the voicemail max_lengths to be configured from domain/default
settings
2016-06-24 10:28:47 -06:00
FusionPBX 653a5e007d Update local_stream.conf.lua
Music on hold set the default timer name to 'soft'.
2016-06-23 16:42:12 -06:00
markjcrane 6af584afd5 Uncomment two lines to restore the debug check. 2016-06-23 15:46:59 -06:00
markjcrane 8c7be13133 Add full path to the music on hold chime list. 2016-06-23 15:29:14 -06:00