ruby_rabbitmq_janus 1.1.8 → 1.1.9

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 (70) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +14 -0
  3. data/config/default.yml +5 -3
  4. data/config/requests/channel/README.md +29 -0
  5. data/config/requests/channel/answer.json +13 -0
  6. data/config/requests/channel/create.json +9 -0
  7. data/config/requests/channel/describe.json +10 -0
  8. data/config/requests/channel/destroy.json +10 -0
  9. data/config/requests/channel/exists.json +10 -0
  10. data/config/requests/channel/join.json +11 -0
  11. data/config/requests/channel/leave.json +11 -0
  12. data/config/requests/channel/list.json +9 -0
  13. data/config/requests/channel/offer.json +14 -0
  14. data/config/requests/channel/select.json +11 -0
  15. data/config/requests/channel/trickle.json +10 -0
  16. data/config/requests/peer/trickle.json +7 -0
  17. data/config/requests/videocast/join.json +12 -0
  18. data/config/requests/videocast/leave.json +11 -0
  19. data/config/ruby-rabbitmq-janus.yml +27 -0
  20. data/lib/generators/ruby_rabbitmq_janus/initializer_generator.rb +15 -24
  21. data/lib/generators/ruby_rabbitmq_janus/install_generator.rb +49 -0
  22. data/lib/rrj/info.rb +1 -1
  23. data/lib/rrj/init.rb +0 -2
  24. data/lib/rrj/rabbit/publish/listener.rb +38 -12
  25. data/lib/rrj/tools/config.rb +10 -6
  26. data/lib/rrj/tools/log.rb +5 -5
  27. data/spec/request/admin/request_handle_info_spec.rb +13 -0
  28. data/spec/request/admin/request_sessions_spec.rb +12 -0
  29. data/spec/request/base/request_attach_spec.rb +25 -0
  30. data/spec/request/base/request_create_spec.rb +17 -0
  31. data/spec/request/base/request_destroy_spec.rb +17 -0
  32. data/spec/request/base/request_detach_spec.rb +23 -0
  33. data/spec/request/base/request_info_spec.rb +17 -0
  34. data/spec/request/base/request_keepalive_spec.rb +17 -0
  35. data/spec/request/peer/request_trickle_spec.rb +42 -0
  36. data/spec/rrj/rrj_config_spec.rb +10 -0
  37. data/spec/rrj/rrj_log_spec.rb +21 -0
  38. data/spec/rrj/rrj_rabbitmq_spec.rb +18 -0
  39. data/spec/rrj/rrj_spec.rb +25 -0
  40. data/spec/spec_helper.rb +53 -0
  41. data/spec/support/aruba.rb +3 -0
  42. data/spec/support/examples.rb +83 -0
  43. data/spec/support/examples_peer.rb +18 -0
  44. data/spec/support/schemas/config/config.json +101 -0
  45. data/spec/support/schemas/config/rabbit.json +13 -0
  46. data/spec/support/schemas/request/admin/handle_info.json +17 -0
  47. data/spec/support/schemas/request/admin/sessions.json +13 -0
  48. data/spec/support/schemas/request/base/attach.json +19 -0
  49. data/spec/support/schemas/request/base/create.json +17 -0
  50. data/spec/support/schemas/request/base/destroy.json +13 -0
  51. data/spec/support/schemas/request/base/detach.json +13 -0
  52. data/spec/support/schemas/request/base/info.json +25 -0
  53. data/spec/support/schemas/request/base/keepalive.json +13 -0
  54. data/spec/support/schemas/request/channel/create.json +39 -0
  55. data/spec/support/schemas/request/channel/destroy.json +39 -0
  56. data/spec/support/schemas/request/channel/exist.json +41 -0
  57. data/spec/support/schemas/request/channel/list.json +37 -0
  58. data/spec/support/schemas/request/peer/trickle.json +21 -0
  59. metadata +57 -32
  60. data/.gitignore +0 -77
  61. data/.overcommit.yml +0 -12
  62. data/.reek +0 -7
  63. data/.rspec +0 -2
  64. data/.rubocop.yml +0 -12
  65. data/.travis.yml +0 -5
  66. data/.yardopts +0 -5
  67. data/CHANGELOG.md +0 -27
  68. data/CODE_OF_CONDUCT.md +0 -49
  69. data/README.md +0 -177
  70. data/rrj.gemspec +0 -41
@@ -0,0 +1,21 @@
1
+ {
2
+ "type": "object",
3
+ "properties": {
4
+ "janus": { "type": "string", "pattern": "trickle" },
5
+ "transaction": { "type": "string" },
6
+ "candidate": {
7
+ "type": "hash",
8
+ "properties": {
9
+ "completed": { "type": "boolean" }
10
+ },
11
+ "required": [
12
+ "completed"
13
+ ]
14
+ }
15
+ },
16
+ "required": [
17
+ "janus",
18
+ "transaction",
19
+ "candidate"
20
+ ]
21
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_rabbitmq_janus
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.8
4
+ version: 1.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - VAILLANT Jeremy
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-29 00:00:00.000000000 Z
11
+ date: 2016-12-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -217,25 +217,25 @@ dependencies:
217
217
  - !ruby/object:Gem::Version
218
218
  version: 4.2.7.1
219
219
  - !ruby/object:Gem::Dependency
220
- name: concurrent-ruby
220
+ name: travis
221
221
  requirement: !ruby/object:Gem::Requirement
222
222
  requirements:
223
223
  - - "~>"
224
224
  - !ruby/object:Gem::Version
225
- version: '1.0'
225
+ version: '1.8'
226
226
  - - ">="
227
227
  - !ruby/object:Gem::Version
228
- version: 1.0.2
228
+ version: 1.8.4
229
229
  type: :development
230
230
  prerelease: false
231
231
  version_requirements: !ruby/object:Gem::Requirement
232
232
  requirements:
233
233
  - - "~>"
234
234
  - !ruby/object:Gem::Version
235
- version: '1.0'
235
+ version: '1.8'
236
236
  - - ">="
237
237
  - !ruby/object:Gem::Version
238
- version: 1.0.2
238
+ version: 1.8.4
239
239
  - !ruby/object:Gem::Dependency
240
240
  name: bunny
241
241
  requirement: !ruby/object:Gem::Requirement
@@ -278,20 +278,6 @@ dependencies:
278
278
  - - "~>"
279
279
  - !ruby/object:Gem::Version
280
280
  version: 0.2.2
281
- - !ruby/object:Gem::Dependency
282
- name: colorize
283
- requirement: !ruby/object:Gem::Requirement
284
- requirements:
285
- - - "~>"
286
- - !ruby/object:Gem::Version
287
- version: 0.8.1
288
- type: :runtime
289
- prerelease: false
290
- version_requirements: !ruby/object:Gem::Requirement
291
- requirements:
292
- - - "~>"
293
- - !ruby/object:Gem::Version
294
- version: 0.8.1
295
281
  description: |
296
282
  This gem is used to communicate to a server Janus through RabbitMQ software
297
283
  (Message-oriented middleware). It waiting a messages to Rails API who send to
@@ -304,18 +290,9 @@ executables: []
304
290
  extensions: []
305
291
  extra_rdoc_files: []
306
292
  files:
307
- - ".gitignore"
308
- - ".overcommit.yml"
309
- - ".reek"
310
- - ".rspec"
311
- - ".rubocop.yml"
312
- - ".travis.yml"
313
- - ".yardopts"
314
- - CHANGELOG.md
315
- - CODE_OF_CONDUCT.md
316
293
  - Gemfile
317
294
  - LICENSE
318
- - README.md
295
+ - Rakefile
319
296
  - config/default.md
320
297
  - config/default.yml
321
298
  - config/requests/admin/handle_info.json
@@ -328,10 +305,27 @@ files:
328
305
  - config/requests/base/detach.json
329
306
  - config/requests/base/info.json
330
307
  - config/requests/base/keepalive.json
308
+ - config/requests/channel/README.md
309
+ - config/requests/channel/answer.json
310
+ - config/requests/channel/create.json
311
+ - config/requests/channel/describe.json
312
+ - config/requests/channel/destroy.json
313
+ - config/requests/channel/exists.json
314
+ - config/requests/channel/join.json
315
+ - config/requests/channel/leave.json
316
+ - config/requests/channel/list.json
317
+ - config/requests/channel/offer.json
318
+ - config/requests/channel/select.json
319
+ - config/requests/channel/trickle.json
320
+ - config/requests/peer/trickle.json
321
+ - config/requests/videocast/join.json
322
+ - config/requests/videocast/leave.json
323
+ - config/ruby-rabbitmq-janus.yml
331
324
  - lib/generators/ruby_rabbitmq_janus/configuration_generator.rb
332
325
  - lib/generators/ruby_rabbitmq_janus/create_request_generator.rb
333
326
  - lib/generators/ruby_rabbitmq_janus/default_request_generator.rb
334
327
  - lib/generators/ruby_rabbitmq_janus/initializer_generator.rb
328
+ - lib/generators/ruby_rabbitmq_janus/install_generator.rb
335
329
  - lib/rrj/errors/config.rb
336
330
  - lib/rrj/errors/error.rb
337
331
  - lib/rrj/errors/janus.rb
@@ -374,7 +368,38 @@ files:
374
368
  - lib/rrj/tools/requests.rb
375
369
  - lib/rrj/tools/tools.rb
376
370
  - lib/ruby_rabbitmq_janus.rb
377
- - rrj.gemspec
371
+ - spec/request/admin/request_handle_info_spec.rb
372
+ - spec/request/admin/request_sessions_spec.rb
373
+ - spec/request/base/request_attach_spec.rb
374
+ - spec/request/base/request_create_spec.rb
375
+ - spec/request/base/request_destroy_spec.rb
376
+ - spec/request/base/request_detach_spec.rb
377
+ - spec/request/base/request_info_spec.rb
378
+ - spec/request/base/request_keepalive_spec.rb
379
+ - spec/request/peer/request_trickle_spec.rb
380
+ - spec/rrj/rrj_config_spec.rb
381
+ - spec/rrj/rrj_log_spec.rb
382
+ - spec/rrj/rrj_rabbitmq_spec.rb
383
+ - spec/rrj/rrj_spec.rb
384
+ - spec/spec_helper.rb
385
+ - spec/support/aruba.rb
386
+ - spec/support/examples.rb
387
+ - spec/support/examples_peer.rb
388
+ - spec/support/schemas/config/config.json
389
+ - spec/support/schemas/config/rabbit.json
390
+ - spec/support/schemas/request/admin/handle_info.json
391
+ - spec/support/schemas/request/admin/sessions.json
392
+ - spec/support/schemas/request/base/attach.json
393
+ - spec/support/schemas/request/base/create.json
394
+ - spec/support/schemas/request/base/destroy.json
395
+ - spec/support/schemas/request/base/detach.json
396
+ - spec/support/schemas/request/base/info.json
397
+ - spec/support/schemas/request/base/keepalive.json
398
+ - spec/support/schemas/request/channel/create.json
399
+ - spec/support/schemas/request/channel/destroy.json
400
+ - spec/support/schemas/request/channel/exist.json
401
+ - spec/support/schemas/request/channel/list.json
402
+ - spec/support/schemas/request/peer/trickle.json
378
403
  homepage: https://github.com/dazzl-tv/ruby-rabbitmq-janus
379
404
  licenses:
380
405
  - MIT
data/.gitignore DELETED
@@ -1,77 +0,0 @@
1
- # Created by https://www.gitignore.io/api/ruby
2
-
3
- ### Ruby ###
4
- *.gem
5
- *.rbc
6
- /.config
7
- /coverage/
8
- /InstalledFiles
9
- /pkg/
10
- /spec/reports/
11
- /spec/examples.txt
12
- /test/tmp/
13
- /test/version_tmp/
14
- /tmp/
15
- /log/
16
-
17
- # Used by dotenv library to load environment variables.
18
- # .env
19
-
20
- ## Specific to RubyMotion:
21
- .dat*
22
- .repl_history
23
- build/
24
- *.bridgesupport
25
- build-iPhoneOS/
26
- build-iPhoneSimulator/
27
-
28
- ## Specific to RubyMotion (use of CocoaPods):
29
- #
30
- # We recommend against adding the Pods directory to your .gitignore. However
31
- # you should judge for yourself, the pros and cons are mentioned at:
32
- # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
33
- #
34
- # vendor/Pods/
35
-
36
- ## Documentation cache and generated files:
37
- /.yardoc/
38
- /_yardoc/
39
- /doc/
40
- /rdoc/
41
-
42
- ## Environment normalization:
43
- /.bundle/
44
- /vendor/bundle
45
- /lib/bundler/man/
46
-
47
- # for a library or gem, you might want to ignore these files since the code is
48
- # intended to run in multiple environments; otherwise, check them in:
49
- Gemfile.lock
50
- # .ruby-version
51
- # .ruby-gemset
52
-
53
- # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
54
- .rvmrc
55
-
56
- ### ruby-rabbitmq-janus ###
57
-
58
- ## Configuration customize
59
- config/ruby-rabbitmq-janus.yml
60
-
61
- ## Request customize
62
- config/requests/channel
63
- config/requests/videocast
64
- config/requests/peer
65
-
66
- ## Schema JSON response
67
- spec/support/schemas/request/channel
68
- spec/support/schemas/request/videocast
69
- spec/support/schemas/request/peer
70
-
71
- ## Support RSpec
72
- spec/support/examples_peer.rb
73
-
74
- ## Unitaire test for request customize
75
- spec/request/channel
76
- spec/request/videocast
77
- spec/request/peer
data/.overcommit.yml DELETED
@@ -1,12 +0,0 @@
1
- PreCommit:
2
- RuboCop:
3
- enabled: true
4
- Reek:
5
- enabled: true
6
- YamlSyntax:
7
- enabled: true
8
- JsonSyntax:
9
- enabled: true
10
- PrePush:
11
- RSpec:
12
- enabled: true
data/.reek DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- UtilityFunction:
3
- public_methods_only: true
4
-
5
- DuplicateMethodCall:
6
- allow_calls:
7
- - 'Tools::Log.instance'
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color
data/.rubocop.yml DELETED
@@ -1,12 +0,0 @@
1
- AllCops:
2
- Exclude:
3
- - Gemfile
4
- - rrj.gemspec
5
- - bin/**/*
6
- TargetRubyVersion: 2.3
7
-
8
- Style/Encoding:
9
- Enabled: true
10
-
11
- Metrics/LineLength:
12
- Max: 80
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.3.1
5
- before_install: gem install bundler -v 1.12.5
data/.yardopts DELETED
@@ -1,5 +0,0 @@
1
- --markup markdown
2
- --private
3
- --protected
4
- -
5
- config/default.md
data/CHANGELOG.md DELETED
@@ -1,27 +0,0 @@
1
- # Change Log
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](http://keepachangelog.com/)
6
- and this project adheres to [Semantic Versioning](http://semver.org/).
7
-
8
-
9
- ## [1.1.8] - 2016-11-29
10
- ### Changed
11
- - Return handle created with start_handle method
12
- - Complete info in README.md
13
- - Change metrics length
14
- ### Deleted
15
- - Delete a test script `listen.rb`
16
-
17
- ## [1.1.7] - 2016-11-28
18
- ### Changed
19
- - Use handle if is given in arguments for handle_message_simple
20
- - Update default initializer with comments and fix rake execution
21
-
22
- ## [1.1.6] - 2016-11-24
23
- ### Added
24
- - Add this changelog file
25
-
26
- ### Changed
27
- - Update in config file log level field reading upcase or downcase is acceptable
data/CODE_OF_CONDUCT.md DELETED
@@ -1,49 +0,0 @@
1
- # Contributor Code of Conduct
2
-
3
- As contributors and maintainers of this project, and in the interest of
4
- fostering an open and welcoming community, we pledge to respect all people who
5
- contribute through reporting issues, posting feature requests, updating
6
- documentation, submitting pull requests or patches, and other activities.
7
-
8
- We are committed to making participation in this project a harassment-free
9
- experience for everyone, regardless of level of experience, gender, gender
10
- identity and expression, sexual orientation, disability, personal appearance,
11
- body size, race, ethnicity, age, religion, or nationality.
12
-
13
- Examples of unacceptable behavior by participants include:
14
-
15
- * The use of sexualized language or imagery
16
- * Personal attacks
17
- * Trolling or insulting/derogatory comments
18
- * Public or private harassment
19
- * Publishing other's private information, such as physical or electronic
20
- addresses, without explicit permission
21
- * Other unethical or unprofessional conduct
22
-
23
- Project maintainers have the right and responsibility to remove, edit, or
24
- reject comments, commits, code, wiki edits, issues, and other contributions
25
- that are not aligned to this Code of Conduct, or to ban temporarily or
26
- permanently any contributor for other behaviors that they deem inappropriate,
27
- threatening, offensive, or harmful.
28
-
29
- By adopting this Code of Conduct, project maintainers commit themselves to
30
- fairly and consistently applying these principles to every aspect of managing
31
- this project. Project maintainers who do not follow or enforce the Code of
32
- Conduct may be permanently removed from the project team.
33
-
34
- This code of conduct applies both within project spaces and in public spaces
35
- when an individual is representing the project or its community.
36
-
37
- Instances of abusive, harassing, or otherwise unacceptable behavior may be
38
- reported by contacting a project maintainer at TODO: Write your email address. All
39
- complaints will be reviewed and investigated and will result in a response that
40
- is deemed necessary and appropriate to the circumstances. Maintainers are
41
- obligated to maintain confidentiality with regard to the reporter of an
42
- incident.
43
-
44
- This Code of Conduct is adapted from the [Contributor Covenant][homepage],
45
- version 1.3.0, available at
46
- [http://contributor-covenant.org/version/1/3/0/][version]
47
-
48
- [homepage]: http://contributor-covenant.org
49
- [version]: http://contributor-covenant.org/version/1/3/0/
data/README.md DELETED
@@ -1,177 +0,0 @@
1
- # ruby-rabbitmq-janus -- RRJ
2
- Ruby Gem for Janus WebRTC Gateway integration using RabbitMQ message queue
3
-
4
- This gem is used to communicate to a server Janus through RabbitMQ software (
5
- Message-oriented middleware). It waiting a messages to Rails API who send to RabbitMQ
6
- server in a queue for janus server. janus processes a message and send to RabbitMQ server
7
- in a queue for gem. Once the received message is decoded and returned through the Rails API.
8
-
9
-
10
- This gem is product by [Dazzl.tv](http://dazzl.tv)
11
-
12
- ## Menu
13
- * [How to use](#how-to-use)
14
- * [Installation](#installation)
15
- * [Configuration](#configuration)
16
- * [Usage](#usage)
17
- * [Usage Synchrounous](#usage-with-synchronous-request)
18
- * [Usage Asynchrounous](#usage-with-asynchronous-request)
19
- * [Aliases](#aliases)
20
- * [Upgrade](#upgrade)
21
- * [Development](#development)
22
- * [RSpec](#rspec-test)
23
- * [Documentation](#documentation)
24
- * [Read documentation](#read-documentation)
25
- * [Generate developer documentation](#generate-developer-documentation)
26
-
27
- ## How to use
28
-
29
- ### Installation
30
-
31
- Use rubygem for installing gem in your application. Add in your Gemfile
32
- ```ruby
33
- gem 'ruby_rabbitmq_janus'
34
- ```
35
-
36
- ### Configuration
37
-
38
- If you want used a customize configuration see [ruby-rabbitmq-janus.yml](config/default.md)
39
-
40
- Use generator for complete installation :
41
- ```ruby
42
- rails g -h
43
- RubyRabbitmqJanus:
44
- ruby_rabbitmq_janus:configuration
45
- # Generate a custom configuration file.
46
-
47
- ruby_rabbitmq_janus:default_request
48
- # Copy base request file sending to janus in application. It's necessary if you want add your request.
49
-
50
- ruby_rabbitmq_janus:initializer
51
- # Generate a initializer to this gem for rails application.
52
-
53
- ruby_rabbitmq_janus:create_request
54
- # Create an request to json format for RubyRabbitmqJanus transaction.
55
- ```
56
-
57
- For create an new request is simple. Use a command generator :
58
- ```ruby
59
- rails g ruby_rabbitmq_janus:create_request test info 'transaction:<string>,body:{plugins:false}'
60
- create config/requests/test/info.json
61
- ```
62
-
63
- ### Usage
64
-
65
- #### Usage with synchronous request
66
-
67
- Exemple usage simple :
68
- ```ruby
69
- # Initialize gem
70
- transaction = RubyRabbitmqJanus::RRJ.new
71
-
72
- # Send a message type 'create'
73
- create = transaction.message_template_ask_sync('create')
74
- => {"janus"=>"create",
75
- "transaction"=>"U5MZ8IYNLF",
76
- "correlation"=>"6e77d355-6c3e-450c-89ad-a5daeb8e006a"}
77
- create_response = transaction.message_template_response(create)
78
- => {"janus"=>"success", "transaction"=>"U5MZ8IYNLF", "data"=>{"id"=>7123088323743398}}
79
-
80
- # Destroy session created
81
- destroy = transaction.message_template_ask_sync('destroy')
82
- => {"janus"=>"destroy",
83
- "session_id"=>7123088323743398,
84
- "transaction"=>"PKS63VJD8C",
85
- "correlation"=>"6e34d8d6-814a-4633-bcab-be3e24cc6260"}
86
- destroy_response = transaction_template_response(destroy)
87
- => {"janus"=>"success", "session_id"=>7123088323743398, "transaction"=>"PKS63VJD8C"}
88
- ```
89
-
90
- Example usage with a complex request :
91
- ```ruby
92
- # Initialize gem
93
- transaction = RubyRabbitmqJanus::RRJ.new
94
-
95
- # Send a request type
96
- transaction.transaction_plugin do |session_running|
97
- test = transaction.ask_sync('test', session_running)
98
- session = transaction.response_sync(session_running)
99
- end
100
- ```
101
-
102
- #### Usage with asynchronous request
103
-
104
- Exemple usage simple :
105
-
106
- ```ruby
107
- # Initialize gem
108
- transaction = RubyRabbitmqJanus::RRJ.new
109
-
110
- # Send a message type create
111
- create = transaction.ask_async('create')
112
- => {"janus"=>"success", "session_id"=>1144864650609378, "transaction"=>"0XGUTFDLBK"}
113
-
114
- # Send a message type destroy
115
- transaction.ask_async('destroy', create)
116
- => {"janus"=>"success", "session_id"=>1144864650609378, "transaction"=>"UPODB8YEG1"}
117
- ```
118
-
119
- #### Aliases
120
-
121
- ```ruby
122
- # Aliases to methods synchronous
123
- message_template_ask_sync => ask_sync
124
- message_template_response => response_sync
125
-
126
- # Aliases to methods asynchronous
127
- message_template_ask_async => ask_async
128
- ```
129
-
130
- ## Development
131
-
132
- ### RSpec test
133
-
134
- ```linux
135
- bundle exec rspec
136
- ```
137
-
138
- TIPS: for rspec install janus and rabbitmq server configured by default for user
139
- rabbitmq and use plugin echotest for janus server.
140
-
141
- Use tags for rspec :
142
-
143
- | type | name |
144
- | --------------- | --------------- |
145
- | request | attach |
146
- | | create |
147
- | | detach |
148
- | | info |
149
- | | test |
150
- | level | base |
151
- | | admin |
152
- | config | rabbit |
153
- | | log |
154
- | | config |
155
-
156
- ## Upgrade
157
-
158
- For upgrade your application read [CHANGELOG.md](CHANGELOG.md)
159
-
160
- ### Documentation
161
-
162
- #### Read documentation
163
-
164
- The documentation is accessible in [rubydoc](http://www.rubydoc.info/gems/ruby_rabbitmq_janus/)
165
-
166
- #### Generate developer documentation
167
-
168
- This doc is generated with yard.
169
-
170
- ```
171
- # Genereate doc
172
- yard
173
- # Launch server
174
- yard server
175
- ```
176
-
177
- [See Yard Getting Started](http://www.rubydoc.info/gems/yard/file/docs/GettingStarted.md)