sps_chat 0.1.1 → 0.2.3
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.
- checksums.yaml +5 -5
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/sps_chat.rb +24 -30
- metadata +34 -51
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 9d875ddad8dbef6d679a230f5654343ee990291b88e57fffad9fd03c2ce8d3d3
|
4
|
+
data.tar.gz: 2459157877bb945e3d134c6b4dd9dcf06252276e0014d0c1b44f5a2c29c34db1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7f7a0a8a5ae55e1e2b7430425b3e5f72ab87817a25315ddfa5264f0df7b0e856e30b5489939691158715c8d035b7381c204361b3ba8d42c40a59dfe7291223fc
|
7
|
+
data.tar.gz: ce8b0668f37344de260ef56f6c7775ad3fe84080861d0941ed1e59f7d2b839fe218d85fe6cd3b1a186adc289969a29a65f3a6c2fd6ec6acaa81f199df7fabb8c
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/sps_chat.rb
CHANGED
@@ -2,50 +2,44 @@
|
|
2
2
|
|
3
3
|
# file: sps_chat.rb
|
4
4
|
|
5
|
-
require '
|
6
|
-
require 'sps-sub'
|
5
|
+
require 'sps_duplex'
|
7
6
|
|
8
7
|
|
9
|
-
class SPSChat
|
8
|
+
class SPSChat < SPSDuplex
|
10
9
|
|
11
10
|
def initialize(host: 'localhost', port: '8080', \
|
12
|
-
userid: 'user' + (0..1000).to_a.sample.to_s, room: ''
|
11
|
+
userid: 'user' + (0..1000).to_a.sample.to_s, room: '', \
|
12
|
+
interactive: true)
|
13
13
|
|
14
|
-
@userid = userid
|
15
|
-
|
16
|
-
|
17
|
-
puts 'connecting ...'
|
18
|
-
sleep 1 # give it a second to connect
|
19
|
-
|
20
|
-
topic = ['chat']
|
21
|
-
topic << room if room.length > 0
|
22
|
-
|
23
|
-
Thread.new { sps.subscribe topic: (topic + ['#']).join('/') }
|
24
|
-
|
25
|
-
@pub = SPSPub.new address: host, port: port
|
26
|
-
|
27
|
-
topic << userid
|
28
|
-
@topic = topic.join('/')
|
14
|
+
@userid = userid
|
15
|
+
super(host: host, port: port, topic: 'chat',
|
16
|
+
sub_topic: '#', pub_topic: userid, interactive: interactive)
|
29
17
|
|
30
18
|
end
|
31
|
-
|
32
|
-
def
|
33
|
-
|
34
|
-
@pub.notice ("%s: %s" % [@topic,
|
35
|
-
|
19
|
+
|
20
|
+
def typing(c)
|
21
|
+
|
22
|
+
@pub.notice ("%s/typing: %s" % [@topic, c])
|
23
|
+
|
36
24
|
end
|
37
|
-
|
25
|
+
|
38
26
|
# used by the callback routine
|
39
27
|
#
|
40
28
|
def ontopic(topic, msg)
|
29
|
+
|
30
|
+
typing = false
|
41
31
|
|
42
|
-
|
32
|
+
a = topic.split('/')
|
33
|
+
sender = a.pop
|
34
|
+
(sender = a.pop; typing = true) if sender == 'typing'
|
35
|
+
|
43
36
|
return if sender == @userid
|
44
|
-
|
37
|
+
|
38
|
+
typing ? onincoming(sender, msg, true) : onincoming(sender, msg)
|
45
39
|
|
46
40
|
end
|
47
|
-
|
48
|
-
def onincoming(sender, msg)
|
41
|
+
|
42
|
+
def onincoming(sender, msg, typing=false)
|
49
43
|
|
50
44
|
puts "%s: %s" % [sender, msg]
|
51
45
|
|
@@ -58,4 +52,4 @@ if __FILE__ == $0 then
|
|
58
52
|
chat = SPSChat.new port: 8080
|
59
53
|
chat.send 'hello'
|
60
54
|
|
61
|
-
end
|
55
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sps_chat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -10,71 +10,55 @@ bindir: bin
|
|
10
10
|
cert_chain:
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
13
|
+
MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
|
14
|
+
YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjAwNjI4MjIyMDEzWhcN
|
15
|
+
MjEwNjI4MjIyMDEzWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
|
16
|
+
cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCsFDoo
|
17
|
+
duN8T8Ei+qS0B6ytzJVd+31Mla0DrwZvtyGI/FSMCh/TbHpHn9LsMDPFtLOQDYu6
|
18
|
+
RBZJkB7/xdMh7DUNu0Smz2kkd/9AmaJsYz6bnhuNxNkAJyL2zekXLlXFSbK5vCQ/
|
19
|
+
/aDQry7pMIIngVM7+YX6gYeI/13GCBF2+i4ZecsR9GXWGb9c/g/mcItqQX/Fhb1C
|
20
|
+
LZxfT+SA9Lxt8SlU2T8/LAosCtNEen9UQ1Itg4HeEVDT8Q4o1TW+nHdtZy4UYye0
|
21
|
+
jCXS02Gu4LfxaNdz54zbj0EhLSh3nHnY/PQq+dADyjhdJYgpeN8yqG+2xuzqP2+f
|
22
|
+
ZT8vMf1xhnR0o41OSR4YvWa9Mi3kYwboVfU9bajFUruGpXoTt3lSJajecuvgG+LV
|
23
|
+
9U8Sf76XIhgpVgPQ20G1qE5UTpkHsLriDTU4yiPhxpdLFaBlrYHvm+buxBX510Rc
|
24
|
+
n9Hd0P4yTjmaZURxwx3KM9R23DWnmKO+i+eJj6PqQ1WO7/riJ85rMZG7VR0CAwEA
|
25
|
+
AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUgSdp3VgA
|
26
|
+
PWIcfxqUT1w21gSG8UswJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
|
27
|
+
c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
|
28
|
+
BgkqhkiG9w0BAQsFAAOCAYEAb7gvSxCAo1rJXdlQEkogpNCGXEZHSyXbw2v4kRZ+
|
29
|
+
uwMM2bVJpVHpmgRX5VvBtj3bA5YUdSsrhwM+690PLNX5k8WEjMLlGc0jfgc06xJA
|
30
|
+
ZHzqzCqoBGwldjvVvXMCX340G5Y09t12engvmifB6vUaff/wY1at2e3iJmKGMigA
|
31
|
+
Dk+UiKnDckxD9L0HW4BN/xaH301P/9FUj4sKJfubbSc+9iVg+tCbDMzsb6G6BpK0
|
32
|
+
DW8ReE+imzE0dxi+cynnwylqigu4RNYIukPhB/iVeRJ81taLpVvLruxzNw5wxiL9
|
33
|
+
kM4dPlF2TPVfto54AcLJfMybEQZn7fvh9SNh2eJIa3g0N0mMMWzQaTkupOOaOAIj
|
34
|
+
BcxQPKbnK2CnQz6BvHnbGIcDEukpvoGN8YA/sbdHgwvFnTJIO/qBRpJJSvBFr2tY
|
35
|
+
7XwodBPa6KLOWIuL16JC50paqd7XoeoDaTPuC2KI8RsYZAv6Vd8hPBgDfXq0mtDH
|
36
|
+
7Ko49NKbIUGUaAxKGRJEPOq9
|
33
37
|
-----END CERTIFICATE-----
|
34
|
-
date:
|
38
|
+
date: 2020-06-28 00:00:00.000000000 Z
|
35
39
|
dependencies:
|
36
40
|
- !ruby/object:Gem::Dependency
|
37
|
-
name:
|
41
|
+
name: sps_duplex
|
38
42
|
requirement: !ruby/object:Gem::Requirement
|
39
43
|
requirements:
|
40
44
|
- - "~>"
|
41
45
|
- !ruby/object:Gem::Version
|
42
|
-
version: '0.
|
46
|
+
version: '0.1'
|
43
47
|
- - ">="
|
44
48
|
- !ruby/object:Gem::Version
|
45
|
-
version: 0.
|
49
|
+
version: 0.1.1
|
46
50
|
type: :runtime
|
47
51
|
prerelease: false
|
48
52
|
version_requirements: !ruby/object:Gem::Requirement
|
49
53
|
requirements:
|
50
54
|
- - "~>"
|
51
55
|
- !ruby/object:Gem::Version
|
52
|
-
version: '0.
|
56
|
+
version: '0.1'
|
53
57
|
- - ">="
|
54
58
|
- !ruby/object:Gem::Version
|
55
|
-
version: 0.
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: sps-pub
|
58
|
-
requirement: !ruby/object:Gem::Requirement
|
59
|
-
requirements:
|
60
|
-
- - "~>"
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: '0.4'
|
63
|
-
- - ">="
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
version: 0.4.0
|
66
|
-
type: :runtime
|
67
|
-
prerelease: false
|
68
|
-
version_requirements: !ruby/object:Gem::Requirement
|
69
|
-
requirements:
|
70
|
-
- - "~>"
|
71
|
-
- !ruby/object:Gem::Version
|
72
|
-
version: '0.4'
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.4.0
|
59
|
+
version: 0.1.1
|
76
60
|
description:
|
77
|
-
email: james@
|
61
|
+
email: james@jamesrobertson.eu
|
78
62
|
executables: []
|
79
63
|
extensions: []
|
80
64
|
extra_rdoc_files: []
|
@@ -99,10 +83,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
99
83
|
- !ruby/object:Gem::Version
|
100
84
|
version: '0'
|
101
85
|
requirements: []
|
102
|
-
|
103
|
-
rubygems_version: 2.4.8
|
86
|
+
rubygems_version: 3.0.3
|
104
87
|
signing_key:
|
105
88
|
specification_version: 4
|
106
89
|
summary: A simple chat client which sends and receives messages through the SimplePubSub
|
107
|
-
broker
|
90
|
+
broker.
|
108
91
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|