[9451ba8 | Tue May 19 00:26:26 UTC 2009] TJ Vanderpoel * Version 0.3.1 fixes bug in FS_ROOT not being populated properly [fbaf84c | Mon May 18 23:24:58 UTC 2009] TJ Vanderpoel * Version 0.3.0 [bf6befa | Mon May 18 23:22:36 UTC 2009] TJ Vanderpoel * functionality for receiving variables passed to a block complete. README updated. Convert Rakefile file options to Pathname [7b0bf11 | Mon May 18 20:31:48 UTC 2009] Jayson Vaughn * Added yardoc comments [7b7efa7 | Mon May 18 20:10:30 UTC 2009] Jayson Vaughn * Removed FSR::Log.info debugging line from uuid_getvar and setvar [fda2ff4 | Mon May 18 19:55:19 UTC 2009] TJ Vanderpoel * Added FSR::App::UuidGetVar and UuidSetVar [39338cd | Mon May 18 18:55:17 UTC 2009] Jayson Vaughn * Corrected typo s/header_and_content/header_and_content_hash [cb4d1cc | Mon May 18 18:54:08 UTC 2009] Jayson Vaughn * And also it seems I need to include a parameter for hash_header in [a818d62 | Mon May 18 18:51:25 UTC 2009] Jayson Vaughn * Need to add a second paremeter to check_for_updated_session that [6302892 | Mon May 18 18:49:17 UTC 2009] Jayson Vaughn * Changed session_header_and_content to header_and_content_hash [5b8d9a4 | Mon May 18 18:47:57 UTC 2009] Jayson Vaughn * Corrected some typos in previous refactor of Outbound#receive_reply [12a13eb | Mon May 18 18:41:40 UTC 2009] Jayson Vaughn * Refactored Outbound#receive_request to decouple it a tad. Still could [6a95fa1 | Mon May 18 18:16:43 UTC 2009] Jayson Vaughn * Refactored FSR::App::PlayAndGetDigits to now yeild the read_var in a [5093e71 | Mon May 18 15:08:39 UTC 2009] TJ Vanderpoel * Read will now yield the read variable in a block Updated README [e71a1a5 | Mon May 18 01:55:43 UTC 2009] TJ Vanderpoel * reverted design error, putting SENDMSG_METHOD into Read attaching to Outbound, not App [273bdaf | Mon May 18 01:34:02 UTC 2009] TJ Vanderpoel * removed &block from read method definition after failing spec [ad1bbd1 | Mon May 18 00:37:44 UTC 2009] TJ Vanderpoel * left out another to_sym [19f8581 | Mon May 18 00:32:23 UTC 2009] TJ Vanderpoel * left out a to_sym [f445058 | Mon May 18 00:31:43 UTC 2009] TJ Vanderpoel * typos galore, fixed wrong constant name in Read. created the queue_pop method to handle popping procs, adding the session.headers[@read_var] if it exist to the proc called [93ecad2 | Mon May 18 00:19:16 UTC 2009] TJ Vanderpoel * TEST push to test changes, read/outbound test needed [30a39ad | Sat May 16 20:41:41 UTC 2009] TJ Vanderpoel * Added specs for originate, defaults to Cmd * Added specs for failing cases of Cmd::Originate * Move DEFAULT_OPTIONS to FSR::Cmd::Command so commands inherit this * Move default_options method to FSR::Cmd::Command as well. * Used default_options block in Originate for options population [865d177 | Sat May 16 17:56:45 UTC 2009] TJ Vanderpoel * filling out originate specs, testing options and argument types [19b81ff | Wed May 13 16:03:35 UTC 2009] TJ Vanderpoel * refactored to a new default_options [081112a | Wed May 13 15:32:20 UTC 2009] TJ Vanderpoel * changed handling of :ignore_early_media in target_options of originate to behave properly. Added argument checks for some originate arguments [55ec1c5 | Mon May 11 17:14:34 UTC 2009] Jayson Vaughn * New specs now pass [ab262c9 | Mon May 11 17:13:48 UTC 2009] Jayson Vaughn * Added specs for FSR::App::Answer, FSBreak, and FSSleep [1faf55f | Mon May 11 16:44:51 UTC 2009] Jayson Vaughn * Updated gemspec for 0.1.4 [011a3e6 | Mon May 11 16:43:14 UTC 2009] Jayson Vaughn * Sync changes with Master [f036509 | Mon May 11 16:36:04 UTC 2009] Jayson Vaughn * Version 0.1.4 [a110dc6 | Mon May 11 16:12:17 UTC 2009] Jayson Vaughn * Corrected typos in README [da6d963 | Mon May 11 16:00:35 UTC 2009] Jayson Vaughn * Removed 'puts $LOAD_PATH.inspect' [5fd154d | Mon May 11 15:57:36 UTC 2009] Jayson Vaughn * Updated README [981d6bb | Mon May 11 15:42:27 UTC 2009] Jayson Vaughn * Updating README [2d2fdb5 | Tue May 05 12:32:35 UTC 2009] TJ Vanderpoel * added some yard documentation [0e72f02 | Mon May 04 22:15:48 UTC 2009] TJ Vanderpoel * fixed broken tasks, tested all tasks [8e6f7e8 | Mon May 04 21:38:28 UTC 2009] TJ Vanderpoel * updated package building and added a bunch of convenience tasks [8b94e17 | Mon May 04 20:31:56 UTC 2009] Jayson Vaughn * Changed @state to @queue. [54e2702 | Mon May 04 20:04:25 UTC 2009] TJ Vanderpoel * Changed state machine [0f134f2 | Sun May 03 20:07:27 UTC 2009] Jayson Vaughn * No longer 100% necessary to override receive_reply method so I removed [f70a43c | Sun May 03 19:53:06 UTC 2009] Jayson Vaughn * Added a different way to keep state. playback 'blah' cmd do bridge 'blah' end end [a4b9832 | Sat May 02 22:00:37 UTC 2009] TJ Vanderpoel * upped version and built new gemspec [202d05b | Sat May 02 22:00:05 UTC 2009] TJ Vanderpoel * moved limit to FSR::App where it belonged [17fa4e6 | Sat May 02 21:46:50 UTC 2009] TJ Vanderpoel * upped version and built new gem [93220f3 | Sat May 02 21:46:16 UTC 2009] TJ Vanderpoel * added limit command [4b918cd | Sat May 02 21:12:18 UTC 2009] TJ Vanderpoel * upped version and built new gemspec [159f978 | Sat May 02 21:11:40 UTC 2009] TJ Vanderpoel * added #next_step to manually increment state machine [738e6da | Sat May 02 21:02:46 UTC 2009] TJ Vanderpoel * upped version and made new gemspec [faf4c5a | Sat May 02 21:00:53 UTC 2009] TJ Vanderpoel * added Cmd::Calls and a Model::Call to describe call data [8ef6196 | Thu Apr 30 20:48:12 UTC 2009] TJ Vanderpoel * Added FSR::App::PlayAndGetDigits 1.9.1 Updated specs for FSR::App::PlayAndGetDigits [426ea94 | Thu Apr 16 15:12:54 UTC 2009] Jayson Vaughn * Version bump 0.0.13 [1b81841 | Thu Apr 16 15:11:37 UTC 2009] Jayson Vaughn * Updated README to reflect refactor in FSR::Listener::Outbound Version bump 0.0.13 [8bc8cdc | Thu Apr 16 15:08:31 UTC 2009] foo * Added Hash#strip_new_newlines helper [5da2747 | Thu Apr 16 14:48:26 UTC 2009] Jayson Vaughn * Updated examples/dtmf_test.rb and oes_demo.rb * This reflects the new changes to FSR::Listener::Outbound [8465069 | Thu Apr 16 14:43:50 UTC 2009] foo * Refactored FSR::Listener::Outbound session object #update_session now fully updates @session [0fa32ea | Thu Apr 16 13:14:08 UTC 2009] Jayson Vaughn * Updated README Updated examples/dtm_read.rb Bumped version to 0.0.12 [24ff9bd | Thu Apr 16 13:00:54 UTC 2009] Jayson Vaughn * Moved bin to examples Updated README to show how to use 'step' [5394612 | Thu Apr 16 12:51:32 UTC 2009] foo * Added the ability for receive_reply to keep state. Please look at bin/dtmf_test.rb for example [4cb5002 | Wed Apr 15 14:51:13 UTC 2009] Jayson Vaughn * Removed #wait_for_reply [c63fce9 | Wed Apr 15 14:37:21 UTC 2009] Jayson Vaughn * Added Fsr::Listener::Outbound#wait_for_reply [b09939b | Wed Apr 15 14:15:29 UTC 2009] Jayson Vaughn * Made sure to use #to_s on session.headers[:event_calling_function] incase it is nil [8b75ddc | Wed Apr 15 14:12:51 UTC 2009] Jayson Vaughn * Added FSR::Listener::Outbound#update_session to update session variables [ea36a2f | Wed Apr 15 13:45:02 UTC 2009] Jayson Vaughn * Corrected typo in FSR::App::UuidDump#initialize [85086b6 | Wed Apr 15 13:41:46 UTC 2009] Jayson Vaughn * Added FSR::App::UuidSetVar [7ab8727 | Wed Apr 15 13:29:34 UTC 2009] Jayson Vaughn * Corrected typo in FSR::App::UuidGetVar [e732be4 | Wed Apr 15 13:09:10 UTC 2009] Jayson Vaughn * Added FSR::App::UuidGetVar * use uuid_getvar("uuid", "varaible") to retreive a channel variable [8b3b3a4 | Tue Apr 14 21:47:05 UTC 2009] Jayson Vaughn * FSR::App::Read#sendmsg now joins arguments using " " not "|" :) [01d9867 | Tue Apr 14 20:47:35 UTC 2009] Jayson Vaughn * Added event-lock to FSR::App::Read by default to #sendmsg [654f036 | Tue Apr 14 20:39:49 UTC 2009] Jayson Vaughn * Added FSR::App::Read to read DTMF input [fd827b6 | Tue Apr 14 19:23:43 UTC 2009] Mikael Bjerkeland * We should inherit the dialplan and context we had before [c093ad3 | Tue Apr 14 15:08:11 UTC 2009] Mikael Bjerkeland * Small clean-ups [ad46f8a | Sat Apr 11 21:39:04 UTC 2009] TJ Vanderpoel * added spec for FSA::Set [123bdaf | Sat Apr 11 21:25:37 UTC 2009] Jayson Vaughn * Version Bump to 0.0.10 [4e6abe7 | Sat Apr 11 21:22:12 UTC 2009] Jayson Vaughn * Updated README to reflect new api of #set [de358d9 | Thu Apr 09 15:45:54 UTC 2009] Jayson Vaughn * Changed gem name to all lowercase. Camel case can be annoying [f0c6fa4 | Wed Apr 08 20:50:08 UTC 2009] TJ Vanderpoel * upped the version to generate a new gem [e413b96 | Wed Apr 08 20:46:15 UTC 2009] TJ Vanderpoel * added EM dependency to gemspec, updated news [0abbdd6 | Wed Apr 08 20:37:23 UTC 2009] Jayson Vaughn * Changed VERSION [b6a8137 | Wed Apr 08 20:36:59 UTC 2009] Jayson Vaughn * Up'd version [736a88d | Tue Apr 07 13:22:11 UTC 2009] jayson vaughn * Changed FSR::App::Log#initiailize to make sure both parameters have a default setting. Can not have an optional parameter as your first one in Ruby it seems. Updated spec/fsr/loading.rb to include FSR::App::Log [e253698 | Tue Apr 07 18:26:35 UTC 2009] Mikael Bjerkeland * Set now takes two arguments (like #set in Adhearsion) [38181ce | Tue Apr 07 18:18:43 UTC 2009] Mikael Bjerkeland * Added Log functionality to (OES) Small documentation change in Set (OES) oes_demo.rb now also demonstrates Log [ab2ca12 | Tue Apr 07 14:39:02 UTC 2009] Mikael Bjerkeland * A few more examples [c3b2df3 | Mon Apr 06 20:25:22 UTC 2009] Jayson Vaughn * Updated specs [9e761f9 | Mon Apr 06 20:47:11 UTC 2009] Mikael Bjerkeland * Added a few more commands. If anything looks stupid please correct it :- [7ec04a5 | Fri Apr 03 19:31:35 UTC 2009] Jayson Vaughn * Refactored FSR::Listener::Outbound to be a subclass of No need for SocketResponse, Session, and CommandResponse objects anymore Updated bin/oes_demo.rb Updated README *** NOTE session.headers's keys are now symbols! *** [00f0919 | Fri Apr 03 18:27:42 UTC 2009] Jayson Vaughn * Updated bin/ies_demo.rb and README to show [c1108d7 | Fri Apr 03 18:14:10 UTC 2009] Jayson Vaughn * Playing catchup - Made sure FSR::Listener::Inbound is now a subclass of Made sure inspired's hook system still works [4ac5698 | Fri Apr 03 17:57:00 UTC 2009] Jayson Vaughn * Fixing conflict inspired added hooks in lib/fsr/listener/inbound.rb bougyman added NEWS inspiried added bin/ies_demo_with_hook.rb [86db618 | Fri Apr 03 13:37:38 UTC 2009] Jayson Vaughn * Changed FSR::Listner::Inbound to be a subclass of Added HeaderAndContentResponse class to represent a response Updated bin/ies_demo.rb to reflecth how to use Updated README [803bfbc | Tue Mar 31 15:49:30 UTC 2009] Jayson Vaughn * Added some comments to the code [d36c2e0 | Tue Mar 31 15:21:44 UTC 2009] Jayson Vaughn * Made sure Reply checks for "Control" vs :control [08e49f7 | Tue Mar 31 15:12:38 UTC 2009] Jayson Vaughn * Reverted back to using strings as hash keys. This ensures that custom [a698d18 | Tue Mar 31 14:51:24 UTC 2009] Jayson Vaughn * Corrected issue, now headers and body hash work with symbols [b8cbcb0 | Tue Mar 31 14:45:42 UTC 2009] Jayson Vaughn * Trying .to_sym once more in Inbound::Event [1a48504 | Tue Mar 31 14:44:12 UTC 2009] Jayson Vaughn * Changed back to original [7c1d26c | Tue Mar 31 14:42:36 UTC 2009] Jayson Vaughn * typo [792311e | Tue Mar 31 14:36:57 UTC 2009] Jayson Vaughn * s/.to.s_gsub/.to_s.gsub/ [90a757c | Tue Mar 31 14:31:28 UTC 2009] Jayson Vaughn * Changed FSR::Listener::Inbound::Event to use symbols for hash keys [239dba6 | Tue Mar 31 14:28:29 UTC 2009] Jayson Vaughn * Updated README and sample bin/oes_demo.rb to reflect changes in headers [7b75019 | Tue Mar 31 14:24:49 UTC 2009] Jayson Vaughn * Needed to check against @headers[:control] instead of [bdb5444 | Tue Mar 31 14:22:06 UTC 2009] Jayson Vaughn * Added #to_s to correct bug with value [845623a | Tue Mar 31 14:17:45 UTC 2009] Jayson Vaughn * Changed SocketResponse#headers to now use a symbol as the hash key [431cd2c | Mon Mar 30 22:05:03 UTC 2009] TJ Vanderpoel * Added FSBreak to send a 'break' command during an Outbound Event [cf77986 | Wed Mar 25 21:58:02 UTC 2009] Jayson Vaughn * Updated bin/oes_demo.rb and README to correctly describe how to use [0464d4e | Thu Mar 19 19:17:41 UTC 2009] Jayson Vaughn * Updated specs to include new apps [045ffe8 | Thu Mar 12 01:38:02 UTC 2009] Michael Fellinger * Update style for auth forms [41e87ef | Thu Mar 12 01:33:28 UTC 2009] Michael Fellinger * Put the label/input from join/start into a table for nicer listing [8815d88 | Thu Mar 12 01:32:49 UTC 2009] Michael Fellinger * Add auth related links to layout [abd4506 | Thu Mar 12 01:32:21 UTC 2009] Michael Fellinger * Fix two minor issues [c15f39d | Thu Mar 12 01:31:59 UTC 2009] Michael Fellinger * Refactor MainController a bit and suggest alternate random conference id generation [d2d42f6 | Thu Mar 12 01:31:22 UTC 2009] Michael Fellinger * Finish up auth, still needs some testing for openid and a profile page [04bff23 | Sat Mar 07 15:07:35 UTC 2009] TJ Vanderpoel * removed contrib from the gemspec, unneeded. JV added a bunch of applications [1cf0e5a | Wed Mar 04 22:29:20 UTC 2009] Jayson Vaughn * Abstracted how to start listeners. * FSR.start_ies! for Inbound event socket listener * FSR.start_oes! for Outbound event socket listener * check out bin/ies_demo.rb and bin/oes_demo.rb for examples * changed default log level to Logger::INFO * Updated README [c525445 | Wed Mar 04 21:30:24 UTC 2009] Jayson Vaughn * added some String#strip magic [b8d70b7 | Wed Feb 25 22:49:51 UTC 2009] Michael Fellinger * Fix some stuff around auth, needs more [e9ef028 | Wed Feb 25 22:41:53 UTC 2009] Michael Fellinger * Remove the model/account [88f58f8 | Wed Feb 25 22:39:36 UTC 2009] Michael Fellinger * Default engine is Haml [f41c42b | Wed Feb 25 04:27:45 UTC 2009] bougyman * fixed FreeSWITCHeR link [bfd7482 | Wed Feb 25 04:16:12 UTC 2009] bougyman * changed spec to match new 30 second default timeout [033cb6b | Wed Feb 25 04:12:44 UTC 2009] bougyman * wrapped user-supplied vars in h(), moved conference logic into model/conference.rb [f55194b | Wed Feb 25 18:31:33 UTC 2009] Michael Fellinger * A little cleanup [d1c5fc0 | Wed Feb 25 18:30:01 UTC 2009] Michael Fellinger * Rough cut of auth system [fe4e9e8 | Wed Feb 25 03:27:42 UTC 2009] bougyman * Use 8k (default) conferences instead of 32kHz. Make link show up in joined_conference view (style.css change) [74bb49a | Wed Feb 25 02:49:31 UTC 2009] TJ Vanderpoel * make sure ignore_early_media has a default (true) [d18c622 | Wed Feb 25 02:42:49 UTC 2009] bougyman * corrected the legend [b243a82 | Wed Feb 25 02:31:51 UTC 2009] bougyman * added call control legend to conference_joined view [55dfdae | Tue Feb 24 21:11:46 UTC 2009] bougyman * removed unneeded index file [1127bbb | Tue Feb 24 21:11:27 UTC 2009] bougyman * added a gitignore for ride in the sample app [c053826 | Tue Feb 24 21:09:12 UTC 2009] bougyman * got sample app deployed and fixed a couple bugs [e2a64eb | Tue Feb 24 18:49:34 UTC 2009] bougyman * added a little sample app, will be confme.com [f971037 | Tue Feb 24 18:11:05 UTC 2009] Jayson Vaughn * Moved FSR::Event to FSR::Listener::Inbound::Event namespace * Added temp on_event hook for testing/development * Added specs for FSR::Listener::Inbound * Updated bin/ies_demo.rb with on_event hook [05a7acc | Tue Feb 24 17:59:39 UTC 2009] Jayson Vaughn * change ies_demo.rb to default to localhost [f1987ab | Tue Feb 24 17:57:16 UTC 2009] Jayson Vaughn * Started work on FSR::Listener::Inbound * Refaced FSR::Listener::Inbound to a module ala * FSR::Listener::Outbound * Moved lib/fsr/event.rb to lib/fsr/listener/inbound and created the * namesspace FSR::Listener::Inbound::Event * Created bin/ies_demo.rb to demo how to use the refactor [bd15285 | Tue Feb 24 14:52:17 UTC 2009] U-Paul-PC\Paul * Make specs work in Win32. No pretty green colors, though. :( [d9ee68e | Mon Feb 23 02:21:56 UTC 2009] Kevin Berry * Version 0.0.4: * functionality can still be used. [52a9570 | Mon Feb 23 01:12:51 UTC 2009] bougyman * updated version to get a new GH gem [21e0ea5 | Sun Feb 22 19:03:09 UTC 2009] Jayson Vaughn * Modified bin/oes_demo.rb to use session_initiated method instead of Removed on_call alias from FSR::Listener::Outbound [0257bcc | Mon Feb 23 00:51:20 UTC 2009] bougyman * fixed spec [8df4a28 | Sun Feb 22 18:45:01 UTC 2009] Jayson Vaughn * Added a test to ensure on_call is always called after a session is [1300fbe | Mon Feb 23 00:39:00 UTC 2009] bougyman * Made all FSR::App classes have an #arguments array * Moved a generic #sendmsg and #raw up into FSA::Application, Fifo and Conference use the defaults, bridge uses its own #raw because of the extra opts * Removed the #caller test in Application#to_s, now defaults to #sendmsg [5f152a3 | Sun Feb 22 19:12:05 UTC 2009] bougyman * fixed the else side of data handling to be the same as the if side [0827e9f | Sun Feb 22 19:05:36 UTC 2009] bougyman * Fixed receive_data to be able to handle incomlete responses/lines * Session will now check to make sure the data ends with \n before parsing any data received * Added specs for testing this case [fb5ec1e | Sun Feb 22 18:39:06 UTC 2009] Jayson Vaughn * Added spec to make sure "on_call" hook is called after a session is [0fc1d6d | Sun Feb 22 17:42:11 UTC 2009] bougyman * added a check of the @data array on a Command Reply to the outbound spec [f5c5931 | Sun Feb 22 17:37:58 UTC 2009] bougyman * Made Session more specific, changed @data to an array. * Fixed bug where new session headers were not being added to @headers * Modified specs to use more of the bacon dsl and fewer == test [7461cbc | Sun Feb 22 16:32:30 UTC 2009] bougyman * Made CommandReply instances an array instance variable on Session * Outbound#receive_data only cares about a Session * All replies to a Session are stored in Session#replies ([]) * on_call/receieved_response or session_initiated/reply_received only fire on #initiated? Sessions or a Session getting a #complete? reply * TODO #complete? needs logic to decide whether or not it's complete [c516f24 | Sun Feb 22 16:04:22 UTC 2009] bougyman * Modified outbound to know less about Session, made Session more * Removed instance variables from Outbound which managed Session state * Added instance variables and the #initiated? method to Session for state management, as well as a << method to add to a session, in the case it's split across receive_data calls * Rewrote Outbond spec to check for a valid Session [2fd2d22 | Sun Feb 22 01:06:23 UTC 2009] Jayson Vaughn * Added more comments explaining outbound.rb [7bf1a6f | Sun Feb 22 00:53:24 UTC 2009] Jayson Vaughn * Heavy Refactor of FSR::Listener::Outbound * Changed method that users/developers must use in their Outbound * subclass to "on_call" * Ensure that "on_call" is called only ONCE per session. This enables * us to chain commands freely * No longer rely on EM collecting all session data in one stream TODO: Now that we can chain multipule commands, need to work in responses to commands so we can peform condition logic [b6c51f5 | Sat Feb 21 17:53:13 UTC 2009] bougyman * a little magic to get the proper string, based on sendmsg being in the caller stack [767cfb2 | Fri Feb 20 23:27:59 UTC 2009] bougyman * ignore the .gemspec.erb file in spec_files for gem building [412e65a | Fri Feb 20 23:14:54 UTC 2009] bougyman * Removed the gemspec.erb from the spec.files list [6c8d46a | Fri Feb 20 23:11:23 UTC 2009] bougyman * Added rake tasks for package building * Old .gemspec didn't meet GH's SAFE level requirement * Added freeswitcher.gemspec.erb and a rake task pkg:build_gemspec to built a compliant gemspec * Added FSR::VERSION constant to keep track of current version [0fcc86f | Fri Feb 20 22:21:07 UTC 2009] bougyman * bumped version number to try and force a GH gem build [9b7dc90 | Fri Feb 20 22:14:58 UTC 2009] bougyman * renamed gemspec so GH builds the gem [444ed09 | Fri Feb 20 22:14:26 UTC 2009] bougyman * did not need gem in tree, GH builds on-the-fly from .gemspec [b2565a7 | Fri Feb 20 22:10:32 UTC 2009] bougyman * Renamed demo listener [1ef570b | Fri Feb 20 22:08:37 UTC 2009] bougyman * First gem release, added minor docs to README * Official Project Name Change -> FreeSWITCHeR * Added .gemspec for building a gem * Added docs to README * Include current version gem in pkg/ for GH [38c8615 | Fri Feb 20 21:12:10 UTC 2009] bougyman * Added specs for FSR::Listener::Outbound, removed unused methods from FSR::Listener * Removed #call, #hangup, and #dispatch from FSR::Listener * Added specs for testing of FSR::Listener::Outbound::Session and FSR::Listener::Outbound::CommandReply * Added new Top-Level constant FSL which references FSR::Listener. [575455a | Fri Feb 20 17:27:32 UTC 2009] bougyman * Refactored FSR::Listener::Outbound, now a module instead of a class * Removed '.' from LOAD_PATH in FSR::App * Added specs for FSR::App:Bridge * Added FSR::Listener::Outbound::Session and ::CommandReply to differentiate the data that is received on a socket * Modules which include FSR::Listener::Outbound now need to handle session_initiated(FSR::Listener::Outbound::Session.new) and command_reply(FSR::Listener::Outbound::CommandReply.new) [a1a7a5a | Fri Feb 20 15:58:24 UTC 2009] bougyman * fixed error when no freeswitch install is available [99f328d | Thu Feb 19 23:09:22 UTC 2009] bougyman * this commit breaks everything done thus far. have fun [22023cc | Wed Feb 18 23:28:32 UTC 2009] Jayson Vaughn * Changed Listener base class to a subclass of EventMachine::Connection * Added post_init to FSR::Listener::Outbound to send connect\n\n on every new connection * Created simple bin/oes_listener.rb to test new class [1cb04d1 | Wed Feb 18 19:50:34 UTC 2009] bougyman * added FSC and FSA top-level constants, pointing to FSR::App and FSR::Cmd [7c68537 | Thu Feb 19 08:09:44 UTC 2009] Michael Fellinger * Add FSR::Listener [45984f9 | Wed Feb 18 01:38:34 UTC 2009] TJ Vanderpoel * added homepage ref in README [5796a3a | Wed Feb 18 01:37:13 UTC 2009] TJ Vanderpoel * fixed specs to not care about the order of the array, but still only allow commands if they are in the expected command/application set [af4cda9 | Tue Feb 17 19:45:53 UTC 2009] Kevin Berry * Add MIT License. [36a1227 | Tue Feb 17 19:19:54 UTC 2009] TJ Vanderpoel * removed necessity of local freeswitch install, now gives warning when not running on a machine with a local freeswitch running [f5b17ca | Tue Feb 17 18:01:27 UTC 2009] bougyman * Moved FSR::Cmd::Sofia::Profile specs to it's own file Updated specs to reflect new options hash [d87d69d | Tue Feb 17 17:44:26 UTC 2009] bougyman * Added class level commands to profile and more argument type handling * Profile.start(profile_name) will start a profile. stop, rescan, and stop also act in this manner * Sofia.new.profile(arguments) still works with a string, but now also accepts an options hash {:action => :start, :name => "foo"} [ace59a6 | Tue Feb 17 16:46:47 UTC 2009] Jayson Vaughn * Refactored profile so that start, stop, etc just create [b057b46 | Tue Feb 17 00:40:36 UTC 2009] Jayson Vaughn * Refactored FSR::Cmd::Sofia::Profile and updated specs * sofia = FSR::Cmd::Sofia.new sofia.profile("internal stop").raw => "sofia profile internal stop" sofia.profile.stop("internal").raw => "sofia profile internal stop" [4308560 | Mon Feb 16 23:16:00 UTC 2009] Jayson Vaughn * Added FSR::Cmd::Sofia::Profile sofia = FSR::Cmd::Sofia.new sofia.profile.run sofia.profile(:profile => 'internal', :exec => 'stop').run sofia.profile('internal stop').run Updated spec/cmd/sofia.rb to test Sofia::Profile [1e03eba | Mon Feb 16 22:14:30 UTC 2009] bougyman * Added App::Fifo and specs for it * Fifo.new(fifo_name [String], direction ["in"|"out"], options [Hash]) yields a fifo application object (run #raw for FS output) * Fifo << "myqueue" shortcut for Fifo.new("myqueue", "in") * Fifo >> "myqueue" shortcut for Fifo.new("myqueue", "out", :wait => false) [a8fe3d7 | Mon Feb 16 19:01:22 UTC 2009] Jayson Vaughn * Added specs for FSR::Cmd::Sofia [0c2a106 | Mon Feb 16 18:52:24 UTC 2009] Jayson Vaughn * Added spec for cmd/orignate.rb Changed Originate#raw to sort the keys on target options before adding them to command. This ensures we can test on raw [55bf869 | Mon Feb 16 18:29:16 UTC 2009] Kevin Berry * Get better error messages for FS root path issues. [b368c5b | Mon Feb 16 18:08:34 UTC 2009] Jayson Vaughn * Refactored sofia command to use composition for it's features One can now: sock.sofia.run sock.sofia.status.run sock.sofia.status(:status => 'profile', :name => 'internal') TODO: Need to add cmd/sofia/profile.rb [33e3bc7 | Mon Feb 16 16:54:31 UTC 2009] bougyman * better handling of caller_id [b0e4442 | Tue Feb 17 07:41:56 UTC 2009] Michael Fellinger * FSR::FakeSocket - to be adapted as we need it [0405b64 | Mon Feb 16 14:59:22 UTC 2009] bougyman * Removed fs_socket requirement from commands, refactored Cmd::Originate * FSR::Cmd::Command classes should not require the first argument (fs_socket). Allowing it to be nil enables testing without a fs server * Merged @originator and @application into @endpoint in Cmd::Originate, a typecheck determines whether endpoint is an App and runs #raw, or a string and just sends the string [32ba63e | Mon Feb 16 17:06:47 UTC 2009] Michael Fellinger * A little bit nicer specs [3373217 | Sun Feb 15 22:04:14 UTC 2009] Jayson Vaughn * Added a check for args[:status] parameter to ensure it is either [d72c6c0 | Sun Feb 15 21:50:57 UTC 2009] Jayson Vaughn * Created FSR::Cmd::Sofia currently get run sofia status on profile and gateway: * status = sock.sofia(:status => 'profile', :name =>'internal') Updated spec/fsr/loading.rb to include :sofia command TODO: Need to add "sofia profile" command Need to add "sofia status" stand alone [43fccce | Sun Feb 15 15:51:35 UTC 2009] bougyman * * Added specs for a simple application - FSR::App::Conference * Added convenience method FSR::App::Conference[conf_spec] [f703128 | Sun Feb 15 15:14:27 UTC 2009] bougyman * a decent view of the tree from ride-console, use with [818d52b | Sun Feb 15 15:14:27 UTC 2009] bougyman * a decent view of the tree from ride-console [00cfbd6 | Sun Feb 15 15:08:56 UTC 2009] bougyman * fixed some straggling old-namespace files that were missed in the namespace refactor [4ccf214 | Sun Feb 15 14:58:06 UTC 2009] bougyman * * Added rakefile (from rasta) which includes everything in tasks/ ramaze/rake_tasks/spec.rake) and modified a bit for bacon * Added some info output to spec/helper when they don't have bacon (TODO: add link for bacon source) [0a6dc32 | Sun Feb 15 14:33:07 UTC 2009] bougyman * * Refactored to shorten/clean namespaces * FreeSwitcher::Applications -> FSR::App * FreeSwitcher::Commands -> FSR::Cmd * Note the spec/fsr/loading.rb, it must be maintained as new apps or commands are added [907d642 | Mon Feb 16 04:54:27 UTC 2009] Michael Fellinger * Require spec/helper and use subdir [1efbd6d | Sun Feb 15 13:53:27 UTC 2009] bougyman * un-did the lazy rubygems require [2c4e101 | Sun Feb 15 13:49:57 UTC 2009] bougyman * added rubygems requirement [1f5fd24 | Sun Feb 15 13:46:16 UTC 2009] bougyman * added spec for a couple fsR module methods [6351bab | Mon Feb 16 04:33:09 UTC 2009] Michael Fellinger * Require freeswitcher in spec/helper [66510ae | Mon Feb 16 04:31:55 UTC 2009] Michael Fellinger * Add spec/helper.rb [a3f373d | Mon Feb 16 04:30:49 UTC 2009] Michael Fellinger * support absolute paths and load all applications [fb2d4ab | Sun Feb 15 13:01:58 UTC 2009] bougyman * added conference application, fixed originate when you send an extension instead of application (target_opts) [0ec0026 | Mon Feb 16 02:36:06 UTC 2009] Michael Fellinger * Some more refactoring [fc399cb | Sun Feb 15 22:14:41 UTC 2009] Michael Fellinger * Start using Pathname [70b57a3 | Sun Feb 15 21:03:08 UTC 2009] Michael Fellinger * Remove (null).rb [34421cd | Sun Feb 15 20:57:01 UTC 2009] Michael Fellinger * Easier load methods [89a7ba5 | Sun Feb 15 05:38:59 UTC 2009] bougyman * * Added Applications module, mimicks Commands module, for * Refactored Originate to use an Application class [a02c9a3 | Sat Feb 14 22:29:45 UTC 2009] bougyman * renamed #command_text to #raw, shorter and sweeter (thedonvaughn suggestion) [63762c9 | Sat Feb 14 22:27:36 UTC 2009] bougyman * woops, messed up the conf and db paths, fixed [49c8bf5 | Sat Feb 14 22:21:17 UTC 2009] bougyman * added a search for the freeswitch install in FS_INTSALL_PATHS to figure out where freeswitch is installed [d953804 | Sat Feb 14 22:12:32 UTC 2009] bougyman * changed FS_ROOT to standard /usr/local/freeswitch location [9804dfb | Sat Feb 14 21:13:04 UTC 2009] bougyman * * Refactored originate to more closely model FS originate, * Set defaults for caller_id_name, number, and timeout in Originate.new * Made command_text its own method, so run only sends the command_text return string to the fs event socket [8ae592b | Sat Feb 14 17:41:39 UTC 2009] bougyman * added defaults to FreeSwitcher callerid and such [8797be8 | Sat Feb 14 17:22:31 UTC 2009] bougyman * pulled duplicated code for setting table name [d0994c7 | Sat Feb 14 17:16:27 UTC 2009] bougyman * * Began mapping of Free Switch database * Mapped Call Limit Tables to Sequel Models * Added files for all of the dbs i have in my freeswitch/db directory, to be mapped once we figure out what they do and which are global, which are custom == IRB Usage irb(main):001:0> require "freeswitcher/database/core" => true irb(main):002:0> FreeSwitcher::Database::Core::Complete.first => #"", :a4=>"", :a2=>"help", :a10=>"", :a5=>"", :a6=>"", :a7=>"", :sticky=>0, :a8=>"", :a3=>"", :a1=>"sofia"}> irb(main):003:0> FreeSwitcher::Database::Core::Complete.all.size => 51 [9644f6f | Sat Feb 14 16:05:35 UTC 2009] bougyman * * db/init is meant to initialize the db, had to sort out permissions on * Added global config variables (as frozen string constants) to the FreeSwitcher module. * Removed all of the requires from lib/freeswitcher, there are times when we want to use that module without any of the event sockets (like for FreeSwitcher::Database and FreeSwitcher::Configuration work) * Added FreeSwitcher.load_all_commands to require everything needed for commands to work (CommandSocket, Commands, and all commands in Commands::LOAD_PATH) * New FreeSwitcher constants: + ROOT = File.expand_path(File.dirname(__FILE__)).freeze # FreeSwitcher library base path + FS_ROOT = "/opt/freeswitch".freeze # Location of the freeswitch $${base_dir} + FS_CONFIG_PATH = "/opt/freeswitch/conf".freeze # freeswitch conf dir + FS_DB_PATH = "/opt/freeswitch/db".freeze # freeswitch db dir == IRB usage irb(main):001:0> FreeSwitcher.load_all_commands => [:originate] irb(main):002:0> m = FreeSwitcher::CommandSocket.new => #, @port="8021"> irb(main):003:0> orig = m.originate(:target => "sofia/gateway/carlos/6666", :application => "bridge", :application_arguments => "user/bougyman") => #, @port="8021">> irb(main):004:0> call = orig.run D, [2009-02-14T10:11:38.093333 #4123] DEBUG -- : saying bgapi originate {ignore_early_media=true,origination_timeout=15}sofia/gateway/carlos/6666 &bridge(user/bougyman) => {"Job-UUID"=>"b2677f8a-9ba7-42f6-9422-65f09b9c3762", "body"=>"", "Content-Type"=>"command/reply", "Reply-Text"=>"+OK Job-UUID: b2677f8a-9ba7-42f6-9422-65f09b9c3762"} [e120547 | Sat Feb 14 02:47:46 UTC 2009] bougyman * New Command structure [b5cc476 | Sat Feb 14 02:21:07 UTC 2009] bougyman * Adding FreeSwitcher::Log [e93e462 | Sat Feb 14 02:20:14 UTC 2009] bougyman * Move InboundEventSocket to CommandSocket [bc83ac5 | Fri Feb 13 18:20:22 UTC 2009] bougyman * * Changed order of default requires to put commands last * Completed Originate#run and variables needed to originate a call on Originate * Renamed the 'send' method to 'say' in EventSocket for clarity [154e909 | Thu Feb 12 22:36:25 UTC 2009] bougyman * refactored includes so they load properly. rewrote FreeSwitcher::Commands.register and .list [1c8a642 | Thu Feb 12 17:28:01 UTC 2009] Michael Fellinger * Clean up lib/ a bit [2416d4b | Thu Feb 12 01:15:22 UTC 2009] bougyman * renamed method to include all of its functionality [290dcc6 | Thu Feb 12 01:11:56 UTC 2009] bougyman * finished parsing in EventSocket without sending to Event.from [068f7f3 | Thu Feb 12 00:23:09 UTC 2009] Jayson Vaughn * Return the body, not just the header in event_socket.rb [66ccf4f | Wed Feb 11 22:21:05 UTC 2009] TJ Vanderpoel * removed web branch [3223431 | Wed Feb 11 21:44:54 UTC 2009] bougyman * removed irb history file, added full path spec to library includes [b889e58 | Wed Feb 11 21:44:18 UTC 2009] bougyman * removed irb history file, added full path spec to library includes [c3798a1 | Wed Feb 11 21:28:49 UTC 2009] bougyman * added fully qualified path to the require of event [ef29cea | Wed Feb 11 21:16:06 UTC 2009] bougyman * removed the rest of ride [6102073 | Wed Feb 11 21:15:18 UTC 2009] bougyman * removed ride from tree [8cdd8f1 | Wed Feb 11 21:13:51 UTC 2009] bougyman * unneded ride files [b01400e | Wed Feb 11 21:11:44 UTC 2009] bougyman * should not have been in the tree [b712888 | Wed Feb 11 21:11:07 UTC 2009] bougyman * Added ramaze tree to hold configurator and sequel models [cfe4d14 | Wed Feb 11 01:10:27 UTC 2009] Jayson Vaughn * s/return_result/response [9304554 | Wed Feb 11 01:00:07 UTC 2009] Jayson Vaughn * Moved FreeSwitcher::Event into lib Created FreeSwitcher::EventSocket base class Created FreeSwitcher::InboundEventSocket [2f31803 | Mon Feb 09 18:11:01 UTC 2009] Michael Fellinger * More EM, no Threads [8f20e9c | Mon Feb 09 00:57:08 UTC 2009] Jayson Vaughn * Added a controller on port 9000. Anything you send to port 9000 will be [303a136 | Mon Feb 09 06:42:24 UTC 2009] Michael Fellinger * s/Response/Event/ [71fc503 | Mon Feb 09 06:35:33 UTC 2009] Michael Fellinger * Initial bin/freeswitcher [966b75f | Sat Feb 07 14:36:57 UTC 2009] TJ Vanderpoel * initial tree