social_stream 0.15.4 → 0.15.5
Sign up to get free protection for your applications and to get access to all the features.
- data/base/app/models/actor.rb +9 -5
- data/base/app/models/contact.rb +9 -2
- data/base/app/models/relation.rb +29 -12
- data/base/app/models/tie.rb +8 -15
- data/base/app/views/groups/_new.html.erb +18 -0
- data/base/app/views/layouts/application.html.erb +1 -0
- data/base/app/views/profiles/edit.html.erb +10 -0
- data/base/lib/social_stream/base/version.rb +1 -1
- data/base/lib/social_stream/models/subject.rb +3 -7
- data/lib/social_stream/version.rb +1 -1
- data/linkser/app/assets/stylesheets/linkser.css.scss +8 -0
- data/linkser/app/controllers/linkser_controller.rb +12 -7
- data/linkser/app/models/link.rb +6 -3
- data/linkser/app/views/links/_error.html.erb +4 -0
- data/linkser/lib/social_stream/linkser/version.rb +1 -1
- data/linkser/social_stream-linkser.gemspec +1 -1
- data/presence/.gitignore +1 -0
- data/presence/app/controllers/xmpp_controller.rb +41 -52
- data/presence/ejabberd/conf/ssconfig_example.cfg +2 -1
- data/presence/ejabberd/ejabberd_files.zip +0 -0
- data/presence/ejabberd/ejabberd_scripts/reset_connection_script +255 -13
- data/presence/ejabberd/ejabberd_scripts/rest_api_client_script +301 -0
- data/presence/ejabberd/ejabberd_scripts/synchronize_presence_script +256 -18
- data/presence/ejabberd/mod_sspresence/mod_sspresence.beam +0 -0
- data/presence/ejabberd/mod_sspresence/mod_sspresence.erl +10 -10
- data/presence/lib/generators/social_stream/presence/templates/initializer.rb +6 -4
- data/presence/lib/social_stream-presence.rb +2 -0
- data/presence/lib/social_stream/presence/version.rb +1 -1
- data/presence/lib/social_stream/presence/xmpp_server_order.rb +190 -12
- data/presence/lib/tasks/presence/installer.rake +38 -4
- data/social_stream.gemspec +2 -2
- data/spec/support/optimizations.rb +4 -0
- metadata +13 -14
- data/presence/ejabberd/ejabberd_scripts/set_connection_script +0 -48
- data/presence/ejabberd/ejabberd_scripts/set_presence_script +0 -48
- data/presence/ejabberd/ejabberd_scripts/unset_connection_script +0 -48
- data/presence/ejabberd/ejabberd_scripts/unset_presence_script +0 -48
@@ -1,6 +1,6 @@
|
|
1
1
|
namespace :presence do
|
2
2
|
desc 'Copy ejabberd files to the xmpp server and write configuration files'
|
3
|
-
task :install => [ 'presence:install:copy_xmpp_server_files', 'presence:install_xmpp_server' , 'presence:autoconfigure_xmpp_server' ]
|
3
|
+
task :install => [ 'presence:install:copy_xmpp_server_files', 'presence:install_xmpp_server' , 'presence:autoconfigure_xmpp_server' , 'presence:generate_RSA_keys' ]
|
4
4
|
|
5
5
|
namespace :install do
|
6
6
|
|
@@ -15,7 +15,7 @@ namespace :presence do
|
|
15
15
|
#Cleaning dpath
|
16
16
|
SocialStream::Presence::XmppServerOrder::executeCommands(["rm -r " + dpath,"mkdir -p " + dpath])
|
17
17
|
#Copy folders
|
18
|
-
SocialStream::Presence::XmppServerOrder::
|
18
|
+
SocialStream::Presence::XmppServerOrder::copyFolderToXmppServer(opath,dpath)
|
19
19
|
|
20
20
|
puts "Social Stream Ejabberd files copied to " + dpath + " in Xmpp Server"
|
21
21
|
puts "Copy_xmpp_server_files: Task complete"
|
@@ -63,9 +63,12 @@ namespace :presence do
|
|
63
63
|
commands << "echo " + password + " | sudo -S " + SocialStream::Presence.scripts_path + "/sstream_ejabberd_files/installer.sh \"ejabberd_module_path=" + SocialStream::Presence.ejabberd_module_path + "\" \"scripts_path=" + SocialStream::Presence.scripts_path + "\" \"" + options + "\""
|
64
64
|
|
65
65
|
#Execution order
|
66
|
-
output = SocialStream::Presence::XmppServerOrder::executeCommands(commands)
|
67
|
-
|
66
|
+
output = SocialStream::Presence::XmppServerOrder::executeCommands(commands)
|
68
67
|
puts output
|
68
|
+
|
69
|
+
#Generate RSA Keys
|
70
|
+
Rake::Task["presence:install:generate_RSA_keys"].execute
|
71
|
+
|
69
72
|
puts "Installation complete"
|
70
73
|
end
|
71
74
|
|
@@ -96,5 +99,36 @@ namespace :presence do
|
|
96
99
|
puts "Autoconfigure complete"
|
97
100
|
end
|
98
101
|
|
102
|
+
|
103
|
+
desc "Generate and distribute RSA Keys"
|
104
|
+
task :generate_RSA_keys => :environment do
|
105
|
+
puts "Starting presence:generate_RSA_keys"
|
106
|
+
|
107
|
+
presence_root = File.expand_path("../../../../", __FILE__)
|
108
|
+
webKeysPath = presence_root + "/rsa_keys";
|
109
|
+
xmppKeysPath = SocialStream::Presence.scripts_path + "/rsa_keys";
|
110
|
+
|
111
|
+
puts "Cleaning previous keys"
|
112
|
+
#Cleaning Keys path
|
113
|
+
SocialStream::Presence::XmppServerOrder::executeLocalCommand("rm -r " + webKeysPath)
|
114
|
+
SocialStream::Presence::XmppServerOrder::executeLocalCommand("mkdir -p " + webKeysPath)
|
115
|
+
SocialStream::Presence::XmppServerOrder::executeCommands(["rm -r " + xmppKeysPath,"mkdir -p " + xmppKeysPath])
|
116
|
+
|
117
|
+
puts "Generating new keys"
|
118
|
+
#Generating RSA Keys
|
119
|
+
SocialStream::Presence::XmppServerOrder::generateRSAKeys(webKeysPath)
|
120
|
+
|
121
|
+
puts "Copy keys to the Xmpp Server"
|
122
|
+
#Copy Xmpp Keys to the Xmpp Server
|
123
|
+
SocialStream::Presence::XmppServerOrder::copyFolderToXmppServer(webKeysPath,xmppKeysPath)
|
124
|
+
|
125
|
+
#Remove not own private keys
|
126
|
+
puts "Removing not own private keys"
|
127
|
+
SocialStream::Presence::XmppServerOrder::executeLocalCommand("rm -r " + webKeysPath + "/xmpp_rsa_key_private.pem")
|
128
|
+
SocialStream::Presence::XmppServerOrder::executeCommands(["rm -r " + xmppKeysPath + "/web_rsa_key_private.pem"])
|
129
|
+
|
130
|
+
puts "Generate_RSA_keys: Task complete"
|
131
|
+
end
|
132
|
+
|
99
133
|
end
|
100
134
|
end
|
data/social_stream.gemspec
CHANGED
@@ -11,10 +11,10 @@ Gem::Specification.new do |s|
|
|
11
11
|
s.files = `git ls-files`.split("\n")
|
12
12
|
|
13
13
|
# Gem dependencies
|
14
|
-
s.add_runtime_dependency('social_stream-base', '~> 0.10.
|
14
|
+
s.add_runtime_dependency('social_stream-base', '~> 0.10.8')
|
15
15
|
s.add_runtime_dependency('social_stream-documents', '~> 0.5.2')
|
16
16
|
s.add_runtime_dependency('social_stream-events', '~> 0.2.0')
|
17
|
-
s.add_runtime_dependency('social_stream-linkser', '~> 0.0.
|
17
|
+
s.add_runtime_dependency('social_stream-linkser', '~> 0.0.5')
|
18
18
|
|
19
19
|
# Development Gem dependencies
|
20
20
|
#
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: social_stream
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 41
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 15
|
9
|
-
-
|
10
|
-
version: 0.15.
|
9
|
+
- 5
|
10
|
+
version: 0.15.5
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- GING - DIT - UPM
|
@@ -16,7 +16,7 @@ autorequire:
|
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
18
|
|
19
|
-
date: 2011-12-
|
19
|
+
date: 2011-12-13 00:00:00 +01:00
|
20
20
|
default_executable:
|
21
21
|
dependencies:
|
22
22
|
- !ruby/object:Gem::Dependency
|
@@ -27,12 +27,12 @@ dependencies:
|
|
27
27
|
requirements:
|
28
28
|
- - ~>
|
29
29
|
- !ruby/object:Gem::Version
|
30
|
-
hash:
|
30
|
+
hash: 39
|
31
31
|
segments:
|
32
32
|
- 0
|
33
33
|
- 10
|
34
|
-
-
|
35
|
-
version: 0.10.
|
34
|
+
- 8
|
35
|
+
version: 0.10.8
|
36
36
|
type: :runtime
|
37
37
|
version_requirements: *id001
|
38
38
|
- !ruby/object:Gem::Dependency
|
@@ -75,12 +75,12 @@ dependencies:
|
|
75
75
|
requirements:
|
76
76
|
- - ~>
|
77
77
|
- !ruby/object:Gem::Version
|
78
|
-
hash:
|
78
|
+
hash: 21
|
79
79
|
segments:
|
80
80
|
- 0
|
81
81
|
- 0
|
82
|
-
-
|
83
|
-
version: 0.0.
|
82
|
+
- 5
|
83
|
+
version: 0.0.5
|
84
84
|
type: :runtime
|
85
85
|
version_requirements: *id004
|
86
86
|
- !ruby/object:Gem::Dependency
|
@@ -1062,6 +1062,7 @@ files:
|
|
1062
1062
|
- linkser/app/controllers/links_controller.rb
|
1063
1063
|
- linkser/app/controllers/linkser_controller.rb
|
1064
1064
|
- linkser/app/models/link.rb
|
1065
|
+
- linkser/app/views/links/_error.html.erb
|
1065
1066
|
- linkser/app/views/links/_link.html.erb
|
1066
1067
|
- linkser/app/views/links/_link_preview.html.erb
|
1067
1068
|
- linkser/app/views/links/create.js.erb
|
@@ -1223,12 +1224,9 @@ files:
|
|
1223
1224
|
- presence/ejabberd/ejabberd_scripts/development_scripts/stop_ejabberd.sh
|
1224
1225
|
- presence/ejabberd/ejabberd_scripts/emanagement
|
1225
1226
|
- presence/ejabberd/ejabberd_scripts/reset_connection_script
|
1226
|
-
- presence/ejabberd/ejabberd_scripts/
|
1227
|
-
- presence/ejabberd/ejabberd_scripts/set_presence_script
|
1227
|
+
- presence/ejabberd/ejabberd_scripts/rest_api_client_script
|
1228
1228
|
- presence/ejabberd/ejabberd_scripts/set_script_header.sh
|
1229
1229
|
- presence/ejabberd/ejabberd_scripts/synchronize_presence_script
|
1230
|
-
- presence/ejabberd/ejabberd_scripts/unset_connection_script
|
1231
|
-
- presence/ejabberd/ejabberd_scripts/unset_presence_script
|
1232
1230
|
- presence/ejabberd/installer.sh
|
1233
1231
|
- presence/ejabberd/mod_admin_extra/mod_admin_extra.beam
|
1234
1232
|
- presence/ejabberd/mod_admin_extra/mod_admin_extra.erl
|
@@ -1357,6 +1355,7 @@ files:
|
|
1357
1355
|
- spec/spec_helper.rb
|
1358
1356
|
- spec/support/components.rb
|
1359
1357
|
- spec/support/db.rb
|
1358
|
+
- spec/support/optimizations.rb
|
1360
1359
|
has_rdoc: true
|
1361
1360
|
homepage: http://social-stream.dit.upm.es/
|
1362
1361
|
licenses: []
|
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#Set Connection Script
|
3
|
-
#@author Aldo
|
4
|
-
|
5
|
-
require 'logger'
|
6
|
-
require 'rest_client'
|
7
|
-
|
8
|
-
path = "/var/log/ejabberd/scripts.log"
|
9
|
-
file = File.open(path, File::WRONLY | File::APPEND | File::CREAT)
|
10
|
-
file.sync = true
|
11
|
-
$logger = Logger.new(file)
|
12
|
-
$logger.level = Logger::DEBUG
|
13
|
-
|
14
|
-
def getOption(option)
|
15
|
-
File.open('/etc/ejabberd/ssconfig.cfg', 'r') do |f1|
|
16
|
-
while line = f1.gets
|
17
|
-
line = line.gsub(/\n/,'')
|
18
|
-
if line.match(/^#/)
|
19
|
-
#Comments
|
20
|
-
elsif line.match(/^#{option}/)
|
21
|
-
return line.gsub(/#{option}/,'')
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
return "Undefined"
|
26
|
-
end
|
27
|
-
|
28
|
-
$url = "http://" + getOption("web_domain=") + "/xmpp/setConnection"
|
29
|
-
$pass = getOption("ejabberd_password=")
|
30
|
-
|
31
|
-
|
32
|
-
def log(text)
|
33
|
-
$logger.info "Set Connection Script: " + text
|
34
|
-
end
|
35
|
-
|
36
|
-
def setConnection(username)
|
37
|
-
log("setConnection(#{username})")
|
38
|
-
RestClient.post($url, :name => username, :password => $pass)
|
39
|
-
return true
|
40
|
-
|
41
|
-
rescue RestClient::Exception
|
42
|
-
log("RestClient::Exception with setConnection(#{username})")
|
43
|
-
end
|
44
|
-
|
45
|
-
|
46
|
-
setConnection(ARGV[0])
|
47
|
-
|
48
|
-
|
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#Set Presence Script
|
3
|
-
#@author Aldo
|
4
|
-
|
5
|
-
require 'logger'
|
6
|
-
require 'rest_client'
|
7
|
-
|
8
|
-
path = "/var/log/ejabberd/scripts.log"
|
9
|
-
file = File.open(path, File::WRONLY | File::APPEND | File::CREAT)
|
10
|
-
file.sync = true
|
11
|
-
$logger = Logger.new(file)
|
12
|
-
$logger.level = Logger::DEBUG
|
13
|
-
|
14
|
-
def getOption(option)
|
15
|
-
File.open('/etc/ejabberd/ssconfig.cfg', 'r') do |f1|
|
16
|
-
while line = f1.gets
|
17
|
-
line = line.gsub(/\n/,'')
|
18
|
-
if line.match(/^#/)
|
19
|
-
#Comments
|
20
|
-
elsif line.match(/^#{option}/)
|
21
|
-
return line.gsub(/#{option}/,'')
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
return "Undefined"
|
26
|
-
end
|
27
|
-
|
28
|
-
$url = "http://" + getOption("web_domain=") + "/xmpp/setPresence"
|
29
|
-
$pass = getOption("ejabberd_password=")
|
30
|
-
|
31
|
-
|
32
|
-
def log(text)
|
33
|
-
$logger.info "Set Presence Script: " + text
|
34
|
-
end
|
35
|
-
|
36
|
-
def setPresence(username,status)
|
37
|
-
log("setPresence(#{username},#{status})")
|
38
|
-
RestClient.post($url, :name => username, :status => status, :password => $pass)
|
39
|
-
return true
|
40
|
-
|
41
|
-
rescue RestClient::Exception
|
42
|
-
log("RestClient::Exception with setPresence(#{username})")
|
43
|
-
end
|
44
|
-
|
45
|
-
|
46
|
-
setPresence(ARGV[0],ARGV[1])
|
47
|
-
|
48
|
-
|
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#Unset Connection Script
|
3
|
-
#@author Aldo
|
4
|
-
|
5
|
-
require 'logger'
|
6
|
-
require 'rest_client'
|
7
|
-
|
8
|
-
path = "/var/log/ejabberd/scripts.log"
|
9
|
-
file = File.open(path, File::WRONLY | File::APPEND | File::CREAT)
|
10
|
-
file.sync = true
|
11
|
-
$logger = Logger.new(file)
|
12
|
-
$logger.level = Logger::DEBUG
|
13
|
-
|
14
|
-
def getOption(option)
|
15
|
-
File.open('/etc/ejabberd/ssconfig.cfg', 'r') do |f1|
|
16
|
-
while line = f1.gets
|
17
|
-
line = line.gsub(/\n/,'')
|
18
|
-
if line.match(/^#/)
|
19
|
-
#Comments
|
20
|
-
elsif line.match(/^#{option}/)
|
21
|
-
return line.gsub(/#{option}/,'')
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
return "Undefined"
|
26
|
-
end
|
27
|
-
|
28
|
-
$url = "http://" + getOption("web_domain=") + "/xmpp/unsetConnection"
|
29
|
-
$pass = getOption("ejabberd_password=")
|
30
|
-
|
31
|
-
|
32
|
-
def log(text)
|
33
|
-
$logger.info "Unset Connection: " + text
|
34
|
-
end
|
35
|
-
|
36
|
-
def unsetConnection(username)
|
37
|
-
log("unsetConnection(#{username})")
|
38
|
-
RestClient.post($url, :name => username, :password => $pass)
|
39
|
-
return true
|
40
|
-
|
41
|
-
rescue RestClient::Exception
|
42
|
-
log("RestClient::Exception with unsetConnection(#{username})")
|
43
|
-
end
|
44
|
-
|
45
|
-
|
46
|
-
unsetConnection(ARGV[0])
|
47
|
-
|
48
|
-
|
@@ -1,48 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#Unset Presence Script
|
3
|
-
#@author Aldo
|
4
|
-
|
5
|
-
require 'logger'
|
6
|
-
require 'rest_client'
|
7
|
-
|
8
|
-
path = "/var/log/ejabberd/scripts.log"
|
9
|
-
file = File.open(path, File::WRONLY | File::APPEND | File::CREAT)
|
10
|
-
file.sync = true
|
11
|
-
$logger = Logger.new(file)
|
12
|
-
$logger.level = Logger::DEBUG
|
13
|
-
|
14
|
-
def getOption(option)
|
15
|
-
File.open('/etc/ejabberd/ssconfig.cfg', 'r') do |f1|
|
16
|
-
while line = f1.gets
|
17
|
-
line = line.gsub(/\n/,'')
|
18
|
-
if line.match(/^#/)
|
19
|
-
#Comments
|
20
|
-
elsif line.match(/^#{option}/)
|
21
|
-
return line.gsub(/#{option}/,'')
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
return "Undefined"
|
26
|
-
end
|
27
|
-
|
28
|
-
$url = "http://" + getOption("web_domain=") + "/xmpp/unsetPresence"
|
29
|
-
$pass = getOption("ejabberd_password=")
|
30
|
-
|
31
|
-
|
32
|
-
def log(text)
|
33
|
-
$logger.info "Unset Presence Script: " + text
|
34
|
-
end
|
35
|
-
|
36
|
-
def unsetPresence(username)
|
37
|
-
log("unsetPresence(#{username})")
|
38
|
-
RestClient.post($url, :name => username, :password => $pass)
|
39
|
-
return true
|
40
|
-
|
41
|
-
rescue RestClient::Exception
|
42
|
-
log("RestClient::Exception with unsetPresence(#{username})")
|
43
|
-
end
|
44
|
-
|
45
|
-
|
46
|
-
unsetPresence(ARGV[0])
|
47
|
-
|
48
|
-
|