estorm-message-processor 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +28 -2
  3. data/lib/estorm-message-processor/client.rb +28 -0
  4. data/test/coverage/assets/0.7.1/application.css +1110 -0
  5. data/test/coverage/assets/0.7.1/application.js +626 -0
  6. data/test/coverage/assets/0.7.1/fancybox/blank.gif +0 -0
  7. data/test/coverage/assets/0.7.1/fancybox/fancy_close.png +0 -0
  8. data/test/coverage/assets/0.7.1/fancybox/fancy_loading.png +0 -0
  9. data/test/coverage/assets/0.7.1/fancybox/fancy_nav_left.png +0 -0
  10. data/test/coverage/assets/0.7.1/fancybox/fancy_nav_right.png +0 -0
  11. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_e.png +0 -0
  12. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_n.png +0 -0
  13. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_ne.png +0 -0
  14. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_nw.png +0 -0
  15. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_s.png +0 -0
  16. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_se.png +0 -0
  17. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_sw.png +0 -0
  18. data/test/coverage/assets/0.7.1/fancybox/fancy_shadow_w.png +0 -0
  19. data/test/coverage/assets/0.7.1/fancybox/fancy_title_left.png +0 -0
  20. data/test/coverage/assets/0.7.1/fancybox/fancy_title_main.png +0 -0
  21. data/test/coverage/assets/0.7.1/fancybox/fancy_title_over.png +0 -0
  22. data/test/coverage/assets/0.7.1/fancybox/fancy_title_right.png +0 -0
  23. data/test/coverage/assets/0.7.1/fancybox/fancybox-x.png +0 -0
  24. data/test/coverage/assets/0.7.1/fancybox/fancybox-y.png +0 -0
  25. data/test/coverage/assets/0.7.1/fancybox/fancybox.png +0 -0
  26. data/test/coverage/assets/0.7.1/favicon_green.png +0 -0
  27. data/test/coverage/assets/0.7.1/favicon_red.png +0 -0
  28. data/test/coverage/assets/0.7.1/favicon_yellow.png +0 -0
  29. data/test/coverage/assets/0.7.1/loading.gif +0 -0
  30. data/test/coverage/assets/0.7.1/magnify.png +0 -0
  31. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  32. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  33. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  34. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  35. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  36. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  37. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  38. data/test/coverage/assets/0.7.1/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  39. data/test/coverage/assets/0.7.1/smoothness/images/ui-icons_222222_256x240.png +0 -0
  40. data/test/coverage/assets/0.7.1/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  41. data/test/coverage/assets/0.7.1/smoothness/images/ui-icons_454545_256x240.png +0 -0
  42. data/test/coverage/assets/0.7.1/smoothness/images/ui-icons_888888_256x240.png +0 -0
  43. data/test/coverage/assets/0.7.1/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  44. data/test/coverage/index.html +72 -0
  45. data/test/test_estorm.rb +6 -13
  46. metadata +44 -2
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- Y2JjZmEzMTNjNTY5MTk1YmEzOTZlMWFkNjE0OGNiODdiMThiODMwOQ==
4
+ YzYxYTU0YWFjNDRmNWJjOWZjZWMzYWViZjI0ZmMxZjQ5ZmYwMWQyOQ==
5
5
  data.tar.gz: !binary |-
6
- NzdkOTI1MTk0NzlmOWQzYTg5NDA3NjFhOTcwNmU5MTkyMDVlMTM5OA==
6
+ MTQzOWRhMTAxNDRiYzkzMDdmMzU1MmRjMDFjNWM2NzQzODBjZGNkMg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- ZmU5MGFkODE2NzFhMWUyMTgyZTdkMmMyMjIzMDAzNWMyMzMyOTQyNWI3NWY2
10
- NjI1MjE5NjVlYmIxZDAxMWE3YjZiN2M1NDEzNjQ3MzllOWZhY2ZjMWNjZWEz
11
- ODJlYWRmNDRkMjA2YzQ1ZGYzNWEzY2JjMjdjM2MxMGJkYzM3YmU=
9
+ Nzg3YzQwNjM3OTQ2YzE1YTY4YmZjMDRhZTI1YTI3Y2M3MzliYjNkOTA0ODky
10
+ NGJjNDIwYTRiNWEyY2Y3ZTQ3ZjBlZjE3MDRjMjAyZDI5YmRkMzliYmExMzc3
11
+ ZDkwYWJhMGE1MTc5MDM4MWU3ZDk0MmYwNTQ1MzZjMjM5MDRlNDY=
12
12
  data.tar.gz: !binary |-
13
- YjQyYjMyZjc2YmQwNTE5MzYxZDgzMjUzOTVmNGY3YmQ0NWZhNDExZDhmMDA2
14
- YjdmNmRhYzQxYjI1ZmQ1YTE1ZjUzMDhkMzk2MjE2ZGVmOTViNzczYTRkNGVh
15
- ZWUxOThhMmI5NGE4NDE0N2QzM2QzMDViYzE3NGQ2YTA1Y2VmZDI=
13
+ ZTAyODY5MTFhYmY4NTc5OGQyOGYxOGRkNDhmZjVlOGY3ZmFkZWQ2MDhhY2Mz
14
+ YWFiM2ViY2IyYTBkMjNjZGIzMjM4Y2Q1Nzk0Mjk4N2E0NzRiYjMwNjU0ODQ1
15
+ ZGU0OTU5YjhmMTc3YjQ4YTY0YjhjODAyYmIxYzFlZDgzNTk5Yzc=
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
- [![Build Status](https://travis-ci.org/semdinsp/randprize.png)](https://travis-ci.org/semdinsp/randprize)
2
- [![Code Climate](https://codeclimate.com/repos/524654d9c7f3a31b29038e3a/badges/58ed8386e3e6d266c7ac/gpa.png)](https://codeclimate.com/repos/524654d9c7f3a31b29038e3a/feed)
1
+ [![Build Status](https://travis-ci.org/semdinsp/estorm-message-processor.png)](https://travis-ci.org/semdinsp/estorm-message-processor)
2
+ [![Code Climate](https://codeclimate.com/repos/5258c4167e00a42fef002879/badges/da46d720691ea2bae63a/gpa.png)](https://codeclimate.com/repos/5258c4167e00a42fef002879/feed)
3
3
  [![Gem Version](https://badge.fury.io/rb/estorm-message-processor.png)](http://badge.fury.io/rb/estorm-message-processor)
4
4
 
5
5
  estorm-message-processor gem
@@ -11,3 +11,29 @@ Simple gem to use in rails apps for AMQP inclusiong. Send a hash via AMQP and th
11
11
  Usage
12
12
  =======
13
13
 
14
+ pull in the normal files for ruby. Everytime a message is received with 'command' => "sendtemplates" delegate to that callback So add more delete_routings and you will be able to handle multiple commands
15
+
16
+ ## Setup delegate processor
17
+ This is the callback processor
18
+
19
+ class EstormMessageProcessor::Base
20
+ def delegate_sendtemplates(cmdhash)
21
+ p=Promotion.find(cmdhash['promotion'].to_i)
22
+ data=YAML.load(p.data)
23
+ data.each { |entry|
24
+ cc=CustomerContact.create_and_send_template(entry['email'],entry,p.configuration_setting,p) if entry!=nil and entry['email']!=nil }
25
+ end
26
+ end
27
+
28
+ # Start the Message Processor
29
+ begin
30
+ config={:url => AMQPURL,:connecturlflag=> Rails.env.production? ,:queuename => CONTACT_MESSAGE, :blocking => true}
31
+ #puts "Starting SMS Gateway. Please check the log at #{LOGFILE}"
32
+ EstormMessageProcessor::Base.logger=Logger.new(STDOUT)
33
+ puts "Starting Bunny Contact Processor on #{config.inspect} "
34
+ mp = EstormMessageProcessor::Base.new
35
+ mp.start(config)
36
+ rescue Exception => ex
37
+ puts "Exception in Message Processor: #{ex} at #{ex.backtrace.join("\n")}"
38
+ end
39
+
@@ -0,0 +1,28 @@
1
+ require 'rubygems'
2
+ require 'bunny'
3
+ require 'yaml'
4
+
5
+ module EstormMessageProcessor
6
+ class Client
7
+ def setup_bunny(url,flag)
8
+ #maybe save this as global to speed it up.
9
+ begin
10
+ @conn = Bunny.new(url) if flag
11
+ @conn = Bunny.new if !flag
12
+ @conn.start
13
+ rescue Bunny::PossibleAuthenticationFailureError => e
14
+ puts "Could not authenticate as #{conn.username}"
15
+ end
16
+ channel = @conn.create_channel
17
+ #puts "connected: #{conn.inspect}"
18
+ [@conn,channel]
19
+ end
20
+ def bunny_send(url,flag,queuename,cmdhash)
21
+ @conn,channel=setup_bunny(url,flag)
22
+ queue = channel.queue(queuename)
23
+ #cmdhash={'command'=>'sendtemplates', 'promotion'=>self.id.to_s}
24
+ channel.default_exchange.publish(cmdhash.to_yaml, :routing_key => queue.name)
25
+ @conn.close
26
+ end
27
+ end
28
+ end