voicerss2017 0.1.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ae9d71bcae49b7923deb757a00765aa12bfb468f
4
+ data.tar.gz: c88b203eb9961b13bcbc4d5915d4808d103ff056
5
+ SHA512:
6
+ metadata.gz: 8e5bd454409310b8347679c820b5038bf935c5eda7c4ffd5f76359ea198a2c4a44f84b48252fa3f750027325bd5980bcb184c05954b14a61a014642d3d5f383e
7
+ data.tar.gz: 886511a90874715d9e7d525f47a63ce975d02a6b8fcb9cc391bc327a55386529ad3a5875aec637a0c6823448e99992c2958590a6cf0b4e3056bb71c459615b68
Binary file
Binary file
@@ -0,0 +1,69 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: voicerss2017.rb
4
+
5
+ # description: Unofficial gem using Ruby code copied from voicerss.org
6
+ # see http://www.voicerss.org/sdk/ruby.aspx
7
+
8
+ module VoiceRSS
9
+ require 'net/http'
10
+
11
+ public
12
+ module_function
13
+
14
+ def self.speech(settings)
15
+ _validate(settings)
16
+ return _request(settings)
17
+ end
18
+
19
+ private
20
+
21
+ def self._validate(settings)
22
+ raise 'The settings are undefined' if settings.nil? || settings.empty?
23
+ raise 'The API key is undefined' if settings['key'].nil? || settings['key'].empty?
24
+ raise 'The text is undefined' if settings['src'].nil? || settings['src'].empty?
25
+ raise 'The language is undefined' if settings['hl'].nil? || settings['hl'].empty?
26
+ end
27
+
28
+ def self._request(settings)
29
+ response = {
30
+ 'error' => nil,
31
+ 'response' => nil
32
+ }
33
+
34
+ uri = URI((settings['ssl'] ? 'https' : 'http') + '://api.voicerss.org/')
35
+ req = Net::HTTP::Post.new(uri)
36
+ req.set_form_data(_buildRequest(settings))
37
+
38
+ res = Net::HTTP.start(uri.hostname, uri.port,
39
+ :use_ssl => uri.scheme == 'https') do |http|
40
+ http.request(req)
41
+ end
42
+
43
+ case res
44
+ when Net::HTTPSuccess
45
+ if res.body.index('ERROR') == 0
46
+ response['error'] = res.body
47
+ else
48
+ response['response'] = res.body
49
+ end
50
+ else
51
+ response['error'] = res.message
52
+ end
53
+
54
+ response
55
+ end
56
+
57
+ def self._buildRequest(settings)
58
+ return {
59
+ 'key' => settings['key'],
60
+ 'src' => settings['src'],
61
+ 'hl' => settings['hl'],
62
+ 'r' => settings['r'],
63
+ 'c' => settings['c'],
64
+ 'f' => settings['f'],
65
+ 'ssml' => settings['ssml'],
66
+ 'b64' => settings['b64']
67
+ }
68
+ end
69
+ end
metadata ADDED
@@ -0,0 +1,67 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: voicerss2017
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE3MDQwODE3MzIxMVoXDTE4MDQwODE3MzIxMVowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBALC7i9rKaf8Ovx5WAD6jSkkJdDN8iORQwrecCOI/IGze84w0abXTFbLibyMb
19
+ 1WgJeTX/iCRixsoFuN5M9/prRoRJxC6uCl5oDDi8xAXiJqkW0pT44wQ6TbKj45kF
20
+ OKTpEC6S1StA8KZ75VARa+vxyoIqQiNabjLRUURIMuVMLv6rDs8JPG5OlpooEY+w
21
+ sgb+2D5sStDC6W7HqzBCVWOv3AfoVCujCNC2kLHZiDVSz4sMFQ6hadoij+dQYjN2
22
+ mnpvNhwFkP8Oi+Kg1Zlh7DkQYAonffav+XudUSBbDz66kqntMfwxiFQdNrJbydYA
23
+ wWPIttq0QovKMo2tdTGa4xMxDBcCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQU/qh/tN15zqYMbyqFvpsNuHxh9gYwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAFN0+DXDK
27
+ tSDFtxiEcFVgez/8Ui7lbDEV598/j+ooBVP/YvjXJ6eVmGjuzQK2Mg5+qyGl4tac
28
+ UJBZh/4kn4PI4CvLapNsvH9OAqrJFpDqyw92Y4VGssBybLuEkx7jbjwHjJD2kuCH
29
+ sQWY9DWQ9DruADrlUEXZZrEhoufOiNm/zmtMWbvMaA2st9/Jt8HyP89udRK4W5yQ
30
+ tEEfKItibLW5SRxOYcYdXDb+VJXJfdhbaUZEd7Xn2anbewS18e3i91n0q++71lsy
31
+ KTNMvGHE2NqTvh+STDxUouWkLw8T8K+QlIzvT79tCmTmAiZonuFr9uEol6Kha2J6
32
+ tisa1rmzrUuJIQ==
33
+ -----END CERTIFICATE-----
34
+ date: 2017-04-08 00:00:00.000000000 Z
35
+ dependencies: []
36
+ description:
37
+ email: james@jamesrobertson.eu
38
+ executables: []
39
+ extensions: []
40
+ extra_rdoc_files: []
41
+ files:
42
+ - lib/voicerss2017.rb
43
+ homepage: https://github.com/jrobertson/voicerss2017
44
+ licenses:
45
+ - MIT
46
+ metadata: {}
47
+ post_install_message:
48
+ rdoc_options: []
49
+ require_paths:
50
+ - lib
51
+ required_ruby_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ required_rubygems_version: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ requirements: []
62
+ rubyforge_project:
63
+ rubygems_version: 2.6.8
64
+ signing_key:
65
+ specification_version: 4
66
+ summary: 'Unofficial gem using Ruby code copied from voicerss.org #TTS see http://www.voicerss.org/sdk/ruby.aspx'
67
+ test_files: []
@@ -0,0 +1 @@
1
+ 4ͺգu^�M��q�t@��0�ӭ�mN�p�eR���(?�莯sX6\ݬ��>��Ύܢ�WI�7�J���_=茾���"S�r����p~c`u����F��v �^s�}��s�2ǨE*���U�_Ü���A�1F��{VA9F�G�lQ~��,l��S�-/�ꃒ�����Z��)�f��A5����G�R�]���."�֬lR�|��f���!�����K�ua�)b86Cw`�RY�Xo������-,