wesabot 1.0.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 (55) hide show
  1. data/.gitignore +5 -0
  2. data/Gemfile +3 -0
  3. data/LICENSE +20 -0
  4. data/README.md +182 -0
  5. data/Rakefile +13 -0
  6. data/bin/wesabot +111 -0
  7. data/config/wesabot.yml.sample +4 -0
  8. data/lib/campfire/bot.rb +53 -0
  9. data/lib/campfire/configuration.rb +65 -0
  10. data/lib/campfire/message.rb +102 -0
  11. data/lib/campfire/polling_bot/plugin.rb +162 -0
  12. data/lib/campfire/polling_bot/plugins/airbrake/.gitignore +1 -0
  13. data/lib/campfire/polling_bot/plugins/airbrake/airbrake/api.rb +48 -0
  14. data/lib/campfire/polling_bot/plugins/airbrake/airbrake/error.rb +51 -0
  15. data/lib/campfire/polling_bot/plugins/airbrake/airbrake_plugin.rb +63 -0
  16. data/lib/campfire/polling_bot/plugins/airbrake/airbrake_plugin.yml.sample +3 -0
  17. data/lib/campfire/polling_bot/plugins/bookmark/bookmark.rb +15 -0
  18. data/lib/campfire/polling_bot/plugins/bookmark/bookmark_plugin.rb +89 -0
  19. data/lib/campfire/polling_bot/plugins/debug/debug_plugin.rb +23 -0
  20. data/lib/campfire/polling_bot/plugins/deploy/deploy_plugin.rb +155 -0
  21. data/lib/campfire/polling_bot/plugins/deploy/deploy_plugin.yml.sample +9 -0
  22. data/lib/campfire/polling_bot/plugins/deploy/spec/deploy_plugin_spec.rb +153 -0
  23. data/lib/campfire/polling_bot/plugins/greeting/greeting_plugin.rb +146 -0
  24. data/lib/campfire/polling_bot/plugins/greeting/greeting_setting.rb +19 -0
  25. data/lib/campfire/polling_bot/plugins/greeting/spec/greeting_plugin_spec.rb +51 -0
  26. data/lib/campfire/polling_bot/plugins/greeting/spec/greeting_setting_spec.rb +61 -0
  27. data/lib/campfire/polling_bot/plugins/help/help_plugin.rb +53 -0
  28. data/lib/campfire/polling_bot/plugins/history/history_plugin.rb +34 -0
  29. data/lib/campfire/polling_bot/plugins/image_search/displayed_image.rb +8 -0
  30. data/lib/campfire/polling_bot/plugins/image_search/image_search_plugin.rb +106 -0
  31. data/lib/campfire/polling_bot/plugins/interjector/interjector_plugin.rb +58 -0
  32. data/lib/campfire/polling_bot/plugins/kibitz/kibitz_plugin.rb +90 -0
  33. data/lib/campfire/polling_bot/plugins/kibitz/spec/kibitz_plugin_spec.rb +56 -0
  34. data/lib/campfire/polling_bot/plugins/plugin.db +0 -0
  35. data/lib/campfire/polling_bot/plugins/reload/reload_plugin.rb +24 -0
  36. data/lib/campfire/polling_bot/plugins/remind_me/remind_me_plugin.rb +149 -0
  37. data/lib/campfire/polling_bot/plugins/remind_me/reminder.rb +8 -0
  38. data/lib/campfire/polling_bot/plugins/shared/message.rb +37 -0
  39. data/lib/campfire/polling_bot/plugins/shared/user.rb +32 -0
  40. data/lib/campfire/polling_bot/plugins/sms/sms_plugin.rb +88 -0
  41. data/lib/campfire/polling_bot/plugins/sms/sms_setting.rb +7 -0
  42. data/lib/campfire/polling_bot/plugins/time/time_plugin.rb +17 -0
  43. data/lib/campfire/polling_bot/plugins/tweet/tweet.rb +52 -0
  44. data/lib/campfire/polling_bot/plugins/tweet/tweet_plugin.rb +117 -0
  45. data/lib/campfire/polling_bot/plugins/tweet/tweet_plugin.yml.sample +4 -0
  46. data/lib/campfire/polling_bot/plugins/twitter_search/twitter_search_plugin.rb +58 -0
  47. data/lib/campfire/polling_bot.rb +125 -0
  48. data/lib/campfire/sample_plugin.rb +56 -0
  49. data/lib/campfire/version.rb +3 -0
  50. data/lib/wesabot.rb +3 -0
  51. data/spec/.gitignore +1 -0
  52. data/spec/polling_bot_spec.rb +23 -0
  53. data/spec/spec_helper.rb +190 -0
  54. data/wesabot.gemspec +55 -0
  55. metadata +336 -0
metadata ADDED
@@ -0,0 +1,336 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: wesabot
3
+ version: !ruby/object:Gem::Version
4
+ hash: 21
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 0
9
+ - 1
10
+ version: 1.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Brad Greenlee
14
+ - "Andr\xC3\xA9 Arko"
15
+ - Brian Donovan
16
+ autorequire:
17
+ bindir: bin
18
+ cert_chain: []
19
+
20
+ date: 2011-09-13 00:00:00 Z
21
+ dependencies:
22
+ - !ruby/object:Gem::Dependency
23
+ name: tinder
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ hash: 11
31
+ segments:
32
+ - 1
33
+ - 7
34
+ - 0
35
+ version: 1.7.0
36
+ type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: data_mapper
40
+ prerelease: false
41
+ requirement: &id002 !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ~>
45
+ - !ruby/object:Gem::Version
46
+ hash: 13
47
+ segments:
48
+ - 1
49
+ - 1
50
+ version: "1.1"
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: dm-sqlite-adapter
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ hash: 13
62
+ segments:
63
+ - 1
64
+ - 1
65
+ version: "1.1"
66
+ type: :runtime
67
+ version_requirements: *id003
68
+ - !ruby/object:Gem::Dependency
69
+ name: daemons
70
+ prerelease: false
71
+ requirement: &id004 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ hash: 3
77
+ segments:
78
+ - 0
79
+ version: "0"
80
+ type: :runtime
81
+ version_requirements: *id004
82
+ - !ruby/object:Gem::Dependency
83
+ name: i18n
84
+ prerelease: false
85
+ requirement: &id005 !ruby/object:Gem::Requirement
86
+ none: false
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ hash: 3
91
+ segments:
92
+ - 0
93
+ version: "0"
94
+ type: :runtime
95
+ version_requirements: *id005
96
+ - !ruby/object:Gem::Dependency
97
+ name: firering
98
+ prerelease: false
99
+ requirement: &id006 !ruby/object:Gem::Requirement
100
+ none: false
101
+ requirements:
102
+ - - ~>
103
+ - !ruby/object:Gem::Version
104
+ hash: 31
105
+ segments:
106
+ - 1
107
+ - 2
108
+ - 0
109
+ version: 1.2.0
110
+ type: :runtime
111
+ version_requirements: *id006
112
+ - !ruby/object:Gem::Dependency
113
+ name: nokogiri
114
+ prerelease: false
115
+ requirement: &id007 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ hash: 3
121
+ segments:
122
+ - 0
123
+ version: "0"
124
+ type: :runtime
125
+ version_requirements: *id007
126
+ - !ruby/object:Gem::Dependency
127
+ name: rest-client
128
+ prerelease: false
129
+ requirement: &id008 !ruby/object:Gem::Requirement
130
+ none: false
131
+ requirements:
132
+ - - ">="
133
+ - !ruby/object:Gem::Version
134
+ hash: 3
135
+ segments:
136
+ - 0
137
+ version: "0"
138
+ type: :runtime
139
+ version_requirements: *id008
140
+ - !ruby/object:Gem::Dependency
141
+ name: httparty
142
+ prerelease: false
143
+ requirement: &id009 !ruby/object:Gem::Requirement
144
+ none: false
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ hash: 3
149
+ segments:
150
+ - 0
151
+ version: "0"
152
+ type: :runtime
153
+ version_requirements: *id009
154
+ - !ruby/object:Gem::Dependency
155
+ name: google-search
156
+ prerelease: false
157
+ requirement: &id010 !ruby/object:Gem::Requirement
158
+ none: false
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ hash: 3
163
+ segments:
164
+ - 0
165
+ version: "0"
166
+ type: :runtime
167
+ version_requirements: *id010
168
+ - !ruby/object:Gem::Dependency
169
+ name: chronic
170
+ prerelease: false
171
+ requirement: &id011 !ruby/object:Gem::Requirement
172
+ none: false
173
+ requirements:
174
+ - - ">="
175
+ - !ruby/object:Gem::Version
176
+ hash: 3
177
+ segments:
178
+ - 0
179
+ version: "0"
180
+ type: :runtime
181
+ version_requirements: *id011
182
+ - !ruby/object:Gem::Dependency
183
+ name: rspec
184
+ prerelease: false
185
+ requirement: &id012 !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ~>
189
+ - !ruby/object:Gem::Version
190
+ hash: 23
191
+ segments:
192
+ - 2
193
+ - 6
194
+ - 0
195
+ version: 2.6.0
196
+ type: :development
197
+ version_requirements: *id012
198
+ - !ruby/object:Gem::Dependency
199
+ name: rake
200
+ prerelease: false
201
+ requirement: &id013 !ruby/object:Gem::Requirement
202
+ none: false
203
+ requirements:
204
+ - - ">="
205
+ - !ruby/object:Gem::Version
206
+ hash: 3
207
+ segments:
208
+ - 0
209
+ version: "0"
210
+ type: :development
211
+ version_requirements: *id013
212
+ - !ruby/object:Gem::Dependency
213
+ name: ruby-debug
214
+ prerelease: false
215
+ requirement: &id014 !ruby/object:Gem::Requirement
216
+ none: false
217
+ requirements:
218
+ - - ">="
219
+ - !ruby/object:Gem::Version
220
+ hash: 3
221
+ segments:
222
+ - 0
223
+ version: "0"
224
+ type: :development
225
+ version_requirements: *id014
226
+ description: |-
227
+ Wesabot is a Campfire bot framework we've been using and
228
+ developing at Wesabe since not long after our inception. It started as a
229
+ way to avoid parking tickets near our office ("Wes, remind me in 2 hours
230
+ to move my car"), and has evolved into an essential work aid. When you
231
+ enter the room, Wes greets you with a link to the point in the transcript
232
+ where you last left. You can also ask him to bookmark points in the
233
+ transcript, send an sms message (well, an email) to someone, or even post
234
+ a tweet, among other things. His functionality is easily extendable via
235
+ plugins.
236
+ email:
237
+ - brad@footle.org
238
+ - andre@arko.net
239
+ - me@brian-donovan.com
240
+ executables:
241
+ - wesabot
242
+ extensions: []
243
+
244
+ extra_rdoc_files: []
245
+
246
+ files:
247
+ - .gitignore
248
+ - Gemfile
249
+ - LICENSE
250
+ - README.md
251
+ - Rakefile
252
+ - bin/wesabot
253
+ - config/wesabot.yml.sample
254
+ - lib/campfire/bot.rb
255
+ - lib/campfire/configuration.rb
256
+ - lib/campfire/message.rb
257
+ - lib/campfire/polling_bot.rb
258
+ - lib/campfire/polling_bot/plugin.rb
259
+ - lib/campfire/polling_bot/plugins/airbrake/.gitignore
260
+ - lib/campfire/polling_bot/plugins/airbrake/airbrake/api.rb
261
+ - lib/campfire/polling_bot/plugins/airbrake/airbrake/error.rb
262
+ - lib/campfire/polling_bot/plugins/airbrake/airbrake_plugin.rb
263
+ - lib/campfire/polling_bot/plugins/airbrake/airbrake_plugin.yml.sample
264
+ - lib/campfire/polling_bot/plugins/bookmark/bookmark.rb
265
+ - lib/campfire/polling_bot/plugins/bookmark/bookmark_plugin.rb
266
+ - lib/campfire/polling_bot/plugins/debug/debug_plugin.rb
267
+ - lib/campfire/polling_bot/plugins/deploy/deploy_plugin.rb
268
+ - lib/campfire/polling_bot/plugins/deploy/deploy_plugin.yml.sample
269
+ - lib/campfire/polling_bot/plugins/deploy/spec/deploy_plugin_spec.rb
270
+ - lib/campfire/polling_bot/plugins/greeting/greeting_plugin.rb
271
+ - lib/campfire/polling_bot/plugins/greeting/greeting_setting.rb
272
+ - lib/campfire/polling_bot/plugins/greeting/spec/greeting_plugin_spec.rb
273
+ - lib/campfire/polling_bot/plugins/greeting/spec/greeting_setting_spec.rb
274
+ - lib/campfire/polling_bot/plugins/help/help_plugin.rb
275
+ - lib/campfire/polling_bot/plugins/history/history_plugin.rb
276
+ - lib/campfire/polling_bot/plugins/image_search/displayed_image.rb
277
+ - lib/campfire/polling_bot/plugins/image_search/image_search_plugin.rb
278
+ - lib/campfire/polling_bot/plugins/interjector/interjector_plugin.rb
279
+ - lib/campfire/polling_bot/plugins/kibitz/kibitz_plugin.rb
280
+ - lib/campfire/polling_bot/plugins/kibitz/spec/kibitz_plugin_spec.rb
281
+ - lib/campfire/polling_bot/plugins/plugin.db
282
+ - lib/campfire/polling_bot/plugins/reload/reload_plugin.rb
283
+ - lib/campfire/polling_bot/plugins/remind_me/remind_me_plugin.rb
284
+ - lib/campfire/polling_bot/plugins/remind_me/reminder.rb
285
+ - lib/campfire/polling_bot/plugins/shared/message.rb
286
+ - lib/campfire/polling_bot/plugins/shared/user.rb
287
+ - lib/campfire/polling_bot/plugins/sms/sms_plugin.rb
288
+ - lib/campfire/polling_bot/plugins/sms/sms_setting.rb
289
+ - lib/campfire/polling_bot/plugins/time/time_plugin.rb
290
+ - lib/campfire/polling_bot/plugins/tweet/tweet.rb
291
+ - lib/campfire/polling_bot/plugins/tweet/tweet_plugin.rb
292
+ - lib/campfire/polling_bot/plugins/tweet/tweet_plugin.yml.sample
293
+ - lib/campfire/polling_bot/plugins/twitter_search/twitter_search_plugin.rb
294
+ - lib/campfire/sample_plugin.rb
295
+ - lib/campfire/version.rb
296
+ - lib/wesabot.rb
297
+ - spec/.gitignore
298
+ - spec/polling_bot_spec.rb
299
+ - spec/spec_helper.rb
300
+ - wesabot.gemspec
301
+ homepage: https://github.com/hackarts/wesabot
302
+ licenses: []
303
+
304
+ post_install_message:
305
+ rdoc_options: []
306
+
307
+ require_paths:
308
+ - lib
309
+ required_ruby_version: !ruby/object:Gem::Requirement
310
+ none: false
311
+ requirements:
312
+ - - ">="
313
+ - !ruby/object:Gem::Version
314
+ hash: 3
315
+ segments:
316
+ - 0
317
+ version: "0"
318
+ required_rubygems_version: !ruby/object:Gem::Requirement
319
+ none: false
320
+ requirements:
321
+ - - ">="
322
+ - !ruby/object:Gem::Version
323
+ hash: 3
324
+ segments:
325
+ - 0
326
+ version: "0"
327
+ requirements: []
328
+
329
+ rubyforge_project: wesabot
330
+ rubygems_version: 1.8.10
331
+ signing_key:
332
+ specification_version: 3
333
+ summary: Wesabe's Campfire bot framework
334
+ test_files:
335
+ - spec/polling_bot_spec.rb
336
+ - spec/spec_helper.rb