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
FusionPBX
2c0452d591
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
12b79ad24f
Update directory.lua
...
Add a timeout_destination option for directory.lua.
2016-07-22 11:48:29 -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
Alexey Melnichuk
149064f5e1
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
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
d2ce44736a
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
9076df2302
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
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
FusionPBX
0d73573770
Update page.lua
...
Update page.lua add support for rtp_secure_media=true.
2016-07-06 14:48:00 -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
68d65bf835
Fix. `call_flow_monitor` use new field call_flow_alternate_label instead old `call_flow_anti_label` ( #1730 )
2016-07-04 09:32:22 -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
849f8fd050
Update page.lua
...
Add leading zero support to page.lua.
2016-06-30 15:08:14 -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
Alexey Melnichuk
65d9424078
Fix. `event_socket_mkdir` for Windows system. ( #1724 )
2016-06-30 08:11:52 -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
f8c2904aaf
Add. option to store setting in memcache. ( #1707 )
2016-06-26 11:43:32 -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
Alexey Melnichuk
61d6f0be6c
Add. Handler for SUBSCRIBE method for call flow application. ( #1701 )
...
* Add. Handler for SUBSCRIBE method for call flow application.
Usage:
1. Run form fs_cli `luarun call_flow_subscribe`
2. Create new call flow extension and set feature code to `flow+<EXTENSION>`(e.g. `flow+401`).
3. Set on the phone BLF key to `flow+401`
This code based on `mod_valet_parking`.
* Add. prevent running 2 copy of script.
Remove some unused vars and simplify implementation.
* Fix. Use correct protocol for send event.
* Fix. Do escape SQL arguments
* Fix. escape `+` sign in call flow extension.
2016-06-24 10:32:19 -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
markjcrane
022247c280
Update music_on_hold_timer to timer_name.
2016-06-23 13:35:53 -06:00
markjcrane
9e175c3d3b
Add sip_h_X- prefix to the accountcode in pin_number.lua.
2016-06-22 15:05:33 -06:00
markjcrane
6847889d76
Add domain_uuid check to pin_number.lua.
2016-06-22 13:52:43 -06:00
markjcrane
2fbcf0dddb
Remove some trailing spaces and update the copyright year in pin_number.lua.
2016-06-21 19:37:25 -06:00
markjcrane
54354361c0
Add database support to pin_number.lua.
2016-06-21 19:34:17 -06:00
markjcrane
6d6a3a3574
Increase the voicemail greeting length that is allowed to 90 seconds.
2016-06-21 18:35:05 -06:00
markjcrane
7e801f0b76
Correct the variable name.
2016-06-13 19:06:59 -06:00
markjcrane
0ae7d5e2e4
Replace the variable with the path to the sounds directory.
2016-06-13 19:04:23 -06:00
markjcrane
bd6b2fb18f
Rename local_stream.lua to local_stream.conf.lua.
2016-06-13 18:50:41 -06:00
markjcrane
e026c3e5e6
Add local_stream.lua to xml_handler.
2016-06-13 18:30:32 -06:00
FusionPBX
52b5652319
Update call_flow.lua
...
Call flow feature code update to play the right audio file.
2016-06-12 14:14:52 -06:00
FusionPBX
6ee20145fe
Update call_flow.lua
...
Inside call_flow.lua rename anti to alternate.
2016-06-12 14:02:57 -06:00
FusionPBX
612098e1bc
Update call_flow.lua
...
Rename the variables in call_flow.lua to match. New variables call_flow_sound and call_flow_alternate_sound.
2016-06-11 10:02:31 -06:00
Alexey Melnichuk
03e62d9e91
Add. Support sound prompts on call flow. ( #1645 )
...
This file uses new way to load recordings from DB.
2016-06-11 07:33:16 -06:00
Chris Black
cfc20ca9bf
Add ability for directory to use mod_flite or mod_cepstral ( #1644 )
2016-06-10 16:07:11 -06:00
Alexey Melnichuk
add8222cff
Add. Support `bridge` mode to call forward from Lua. ( #1631 )
2016-06-08 07:33:55 -06:00
Chris Black
43543f8b0c
remove SMS ( #1612 )
2016-05-24 12:57:46 -06:00
Chris Black
a78d09cfd5
Add support for twilio ( #1610 )
...
added support for twilio and made it a bit easier to add support for
other carriers as well.
2016-05-24 02:02:36 -06:00
Chris Black
93fe11851b
Flowroute SMS ( #1603 )
...
* Fix Yealink provisioning for contacts/groups
Fix the Yealink provision templates to allow for directory_extensions,
groups and users.
* Fix group_uuid and user_uuid messup
* Yealink directory and provisioning changes
Includes the changes from PR 1582 with some fixes to the SQL.
Also merged all the directory_* options into ONE directory.xml
Will need to call the it with any of these:
http://mydomain/app/provision/?file=directory.xml&contacts=groups
http://mydomain/app/provision/?file=directory.xml&contacts=users
http://mydomain/app/provision/?file=directory.xml&contacts=extensions
http://mydomain/app/provision/?file=directory.xml&contacts=all
* Flow route SMS
2016-05-19 12:09:49 -06:00
Alexey Melnichuk
619912324c
Fix. Use correct database for Call Center while FS load. ( #1597 )
...
Problem that `mod_commands` may load after than `mod_callcenter` and there no function `global_getvar`
So current code just create database with name `INVALID COMMAND!.db`.
2016-05-13 08:03:48 -06:00
FusionPBX
38c43217ce
Update intercept.lua
...
Account for core.db in intercept.lua
2016-05-12 23:06:45 -06:00
markjcrane
295e63c704
Commented out the new database handle --local dbh = Database.new('switch') as it has a bug when freeswitch is using the DSN with the PostgreSQL driver. This change works around this problem by using the original database handler.
2016-05-12 20:43:57 -06:00
FusionPBX
cdba087744
Merge pull request #1553 from moteus/intercept_direction
...
Add. optional intercept only inbound/outbound calls.
2016-04-18 22:54:03 -06:00
FusionPBX
5b779b5882
Merge pull request #1450 from daniel-lucio/patch-3
...
Wrong variable in freeswitch.email
2016-04-18 21:20:44 -06:00
Alexey Melnichuk
07b2858852
Add. optional intercept only inbound/outbound calls.
...
Note.
* `inbound` is call to some extension
* `outbound` is call from some extension to external number.
Currently there no way to find call from extension to extension as `outbound`
2016-04-18 16:06:27 +03:00
markjcrane
c630449636
Remove contact_email from v_contacts table as this was replaced by the v_contact_emails table.
2016-04-14 10:40:25 -06:00
Alexey Melnichuk
d824e80f06
Fix. send fax file as PDF in response message
2016-04-05 13:48:50 +03:00
markjcrane
7f082bdef3
Add a missing permission on backup.
2016-04-04 19:51:22 -06:00
markjcrane
3ad26f1965
Change expire["sofia_conf"] to expire["sofia"] and expire["acl_conf"] to expire["acl"]. Then add a default value to prevent nil errors when the conf.lua script has not been updated.
2016-04-02 08:32:43 -06:00
markjcrane
38858b3f6b
Remove the the condition on the direct dial.
2016-03-29 20:57:47 -06:00
markjcrane
ec4f523caf
Rollback changes to is_local.lua determined that switching to regex would lower perfomance adding an 'or' with a search for prefix would perform better.
2016-03-27 20:44:14 -06:00
markjcrane
2cd979b30c
A global domain is optional. Using public context instead.
2016-03-27 04:46:01 -06:00
FusionPBX
71cdf97e5a
Merge pull request #1512 from schraegervogel/master
...
initialize call_context
2016-03-27 04:25:22 -06:00
FusionPBX
0831a99dd0
Merge pull request #1510 from moteus/databas_role
...
Add. `role` to be able select database backend in constructor.
2016-03-25 15:52:47 -06:00
schraegervogel
919b383c6e
initialize call_context
...
If you use xml_locate dialplan from fs_cli, you get an error, to prevent this I intialized call_context with the "domain"-var
2016-03-25 17:28:10 +01:00
Alexey Melnichuk
93e50ff1df
Add. `role` to be able select database backend in constructor.
...
To configure use `database.backend` option
It can be a string value like `database.backend = 'native'`.
So it will always use same backend.
Or it can be a table value like
```Lua
database.backend = {
main = 'native';
base64 = '';
}
```
Role `database.backend.main` is predefined and it equal to `native` if not set.
If there no role when Database class creates or role unknown role `main` is used
```Lua
dbh = Database.new('system') -- uses role `main`
dbh = Database.new('system', 'main') -- same as previews
dbh = Database.new('system', 'base64') -- uses role `base64`
dbh = Database.new('system', 'test') -- uses role `main`
```
2016-03-25 10:04:48 +03:00
FusionPBX
4ce2bb5c8f
Update acl.conf.lua
...
Change expire acl.conf to acl_conf
2016-03-25 01:00:43 -06:00
markjcrane
4a31b2343e
Change to the new context require renaming two variables to be consistent and to prevent a problem.
2016-03-24 23:08:23 -06:00
markjcrane
0047f48f45
Use regex with is_local.
2016-03-24 18:43:51 -06:00
markjcrane
08ea915070
In the IVR Menu make sure direct dial checks if the destination is an extension before sending the call to it.
2016-03-23 12:49:32 -06:00
markjcrane
33aed1c15d
Update the disa.lua to prevent errors when caller hangs up before the destination is called.
2016-03-23 11:42:20 -06:00
markjcrane
fafe273c18
Fix a spelling mistake in xml handler ivr.conf.lua.
2016-03-20 00:49:21 -06:00
markjcrane
2a280afea9
Fix direct dial for IVR using the xml handler.
2016-03-19 18:13:49 -06:00
markjcrane
61987425af
Merge branch 'master' of https://github.com/fusionpbx/fusionpbx
2016-03-11 14:21:28 -07:00
markjcrane
c11459fae8
Get the domain_name from the array.
2016-03-11 14:21:08 -07:00
FusionPBX
ee0df44e0d
Merge pull request #1461 from mafoo/BugFix-ring_groups
...
corrected function definition
2016-03-11 13:25:20 -07:00
FusionPBX
260bf24100
Merge pull request #1479 from mafoo/WhitespaceClean-resources/install/scripts
...
WhitespaceClean-resources/install/scripts
2016-03-11 13:20:17 -07:00
markjcrane
f5c2222f97
Prevent custom sip port from breaking provision.lua and add prevent nil concatenation errors.
2016-03-11 10:31:11 -07:00
mafoo
0eb7d5ddac
WhitespaceClean-resources/install/scripts
...
whitespace pass over files
for reference regex that was used s/[ \t]+(\r?\n)/\1/
2016-03-11 13:21:52 +00:00
markjcrane
66ba2802bd
The last two changes to xml handler dialplan.lua did not work well with global dialplans. Removed some of the changes to fix the regression.
2016-03-11 00:58:52 -07:00
markjcrane
7b5d8f08c5
Add missing call_direction for ring group destinations.
2016-03-10 18:10:49 -07:00
markjcrane
833860e067
Use a more efficient way to get the domain name for xml handler - dialplan.
2016-03-10 08:18:46 -07:00
markjcrane
d14d4aeb8a
Increase efficiency xml handler section dialplan.
2016-03-09 13:09:25 -07:00
mafoo
8ceec465ac
corrected function definition
...
fixed bug introduced on 2/1/2016 in destination.lua
fixed bug introduced on 2/1/2016 in ring_member.lua
2016-03-09 17:54:44 +00:00
markjcrane
6804772e06
Fix the phrases_dir if statement. If the phrases_dir is not null then need to include xml from the file system.
2016-03-07 10:30:29 -07:00
markjcrane
90a9e55b77
Handle the phrases_dir nil in a more flexible way.
2016-03-04 15:51:10 -07:00
markjcrane
9ffcf3d872
Ensure the phrases_dir is not nil.
2016-03-04 15:08:58 -07:00
markjcrane
ac0f620302
Prevent a nil error for xml handler languages.
2016-03-04 12:35:37 -07:00
markjcrane
cb8aaac1f7
Add ring_member.lua to app/ring_groups/resources/scripts/ring_member.lua.
2016-02-29 18:52:04 -07:00