Commit Graph

884 Commits

Author SHA1 Message Date
FusionPBX 522b53ae72 Update call_forward.lua
https://github.com/fusionpbx/fusionpbx/pull/1884 add sip: as suggested in the 1884 pull request.
2016-09-01 22:29:07 -06:00
FusionPBX 516f808949 Update eavesdrop.lua
Make sure that domain_uuid is set for eavesdrop.lua and update the indentation, comments and use session:ready to prevent errors.
2016-09-01 16:01:57 -06:00
FusionPBX aff5198bd5 Update index.lua 2016-09-01 14:38:56 -06:00
FusionPBX 18865d1bda Update forward_add_intro.lua 2016-09-01 14:37:30 -06:00
FusionPBX 58ef0ac93d Update mwi.lua 2016-09-01 14:25:51 -06:00
FusionPBX d1ee2d6b94 Update forward_to_extension.lua 2016-09-01 13:33:41 -06:00
FusionPBX 2d5021ebd9 Update forward_add_intro.lua 2016-09-01 13:31:55 -06:00
Alexey Melnichuk 66f26cf2e6 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 6425664e24 Update dialplan.lua
Add  inline="true" to domain_uuid and domain_name.
2016-08-25 09:09:52 -06:00
nostikj 3c9d6dff09 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
FusionPBX b1163e508b Update call_forward.lua 2016-08-21 14:30:35 -06:00
markjcrane a1fb673b6a 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 eea8dc195e Update bind digit action and set call_direction to inline=true 2016-08-20 22:07:35 -06:00
FusionPBX 383ff8430d Update index.lua 2016-08-20 20:31:04 -06:00
FusionPBX dfbb321b5b Update record_message.lua 2016-08-20 18:54:02 -06:00
FusionPBX e6a0478003 Update index.lua 2016-08-17 09:55:08 -06:00
FusionPBX df8b71735e Update directory.lua 2016-08-15 21:50:44 -06:00
de-jens 71bac37219 add Diversion Header to dail string (#1816)
* added Diversion Header to dail string

* added Diversion Header to dail string
2016-08-15 09:20:02 -06:00
FusionPBX 161666297a 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 1e5870802e 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 3be7aa13cb 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
Mafoo 4b0f3c38a0 BugFix-Support spaces in streamfile.lua (#1811)
use table.concat as a workaround to spaces in filesames
alternative is adjust all destiantions to quote filenames, but would
require app_defaults catch to fix all exisiting written destinations.
2016-08-13 08:59:37 -06:00
Alexey Melnichuk 065a04ccb2 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 390cfd09e2 Create forward_add_intro.lua 2016-08-10 16:10:22 -06:00
FusionPBX 2afdd589b1 Update directory.lua 2016-08-08 09:45:16 -06:00
FusionPBX 8b535a3d70 Update index.lua 2016-08-05 08:42:51 -06:00
DigiDaz 98a184c835 Fixed scripts to get multiserver memcache working (#1795) 2016-08-04 11:40:36 -06:00
FusionPBX 7693844dde Update index.lua
Set regex_match = false; before the loop.
2016-08-03 00:23:58 -06:00
Alexey Melnichuk f214625ead 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 294acd84ff 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 795113c2b1 Update macro.lua
Add forward_add_intro to macro.lua.
2016-07-29 09:46:56 -06:00
Alexey Melnichuk e7c813a559 Simplify `is_uuid` function. (#1781)
* Simplify `is_uuid` function.

Also because it returns now value itself it possible write
```Lua
my_uuid = is_uuid(value1) or is_uuid(value2)
```

* Change. Ensure `is_uuid` returns only boolean value
2016-07-28 16:49:36 -06:00
Alexey Melnichuk 58ec22a759 Add. Support service stop command for odbc_pool. (#1782) 2016-07-28 08:16:54 -06:00
Mafoo 951bef85d4 BugFix-add missing default ringback to lua (#1682)
add processing of when ringback is set to default_ringback and correctly
set it to the current value of the globalvar for ringback
2016-07-27 20:06:41 -06:00
FusionPBX eef8fdbc12 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 00b2449168 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 a73b8680cb 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 da6f71323c Update languages.lua
Don't cache the not found.
2016-07-24 00:22:18 -06:00
FusionPBX 92f9f45e6c 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
FusionPBX b236a737bf Create is_uuid.lua
Add a new lua function to determine if a string is a uuid.
2016-07-23 13:40:57 -06:00
FusionPBX 90bd147d43 Update directory.lua
Add a timeout_destination option for directory.lua.
2016-07-22 11:48:29 -06:00
Mafoo 613b9c9bea 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
Alexey Melnichuk 207cf08e88 Fix. Properly stop (e.g. remove pid file) event consumer loop in case of error. (#1766) 2016-07-21 07:47:54 -06:00
pixel2920 c26fc36bd1 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 fda0e722b4 Update conference.conf.lua
Add conference controls to the xml handler.
2016-07-17 15:42:14 -06:00
FusionPBX 338936c906 Update conference.conf.lua
Conference profile parameters are now working from the database.
2016-07-17 01:15:35 -06:00
FusionPBX 2373b38630 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 10f460cfd2 Fix. Lua can not generate non CUSTOM event with subclass. (#1756)
There 2 way.
First one generate `MEMCACHE` event without subclass
Second generate `CUSTOM` event with subclass e.g. `fusion::memcache`
2016-07-14 11:33:54 -06:00
Alexey Melnichuk 1834be5042 Add. Support `onInterval` method to EventConsumer class (#1747)
* Add. Support `onInterval` method to EventConsumer class

Usage
```Lua
-- execute action each 30 sec
events:onInterval(30*1000, function() end)

-- execute action once after 5 min
events:onIntervalOnce(5*60*1000, function() end)
```

* Fix. Remove timers

* Fix. Reset timer before callback

It allows stop timer inside callback.
Also it produce more accurate interval invocation
if callback take quite a long time.
E.g. Interval = 10 sec and callback took 5 sec then
if we reset timer after this callback then gap between
invocation will be 15 sec.

* Add. Timers now have TimeEvent class type.

Add. `reset` method to IntervalTimer class.

```Lua
events:onIntervalOnce(1000, function(self, timer)
  -- timer has type TimeEvent

  -- restart timer so it will be invoke again
  timer:restart()

  -- or reset new interval
  -- timer:reset(5000)
end)
```

* Fix. Typo in variable name
2016-07-13 09:43:51 -06:00
Alexey Melnichuk 9da40dc7b1 Fix. Fusion set rate=48000 to all streams. (#1746) 2016-07-12 08:09:54 -06:00