bskyrb 0.5 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bskyrb/codegen.rb +1 -0
- data/lib/bskyrb/error.rb +10 -0
- data/lib/bskyrb/firehose.rb +19 -21
- data/lib/bskyrb/generated_classes.rb +711 -4
- data/lib/bskyrb/records.rb +50 -91
- data/lib/bskyrb/session.rb +40 -30
- data/lib/bskyrb/version.rb +2 -1
- data/lib/bskyrb.rb +3 -0
- metadata +3 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ae64c99f896f5ec3366f9c4e028d61c9006563351c34be989881ccb4fac52d9
|
4
|
+
data.tar.gz: 57903df97da314a87e257fad02d8536ad783ea88511c2f5b7efbf774ad36b4b4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 447074d457ecb73774ce6e355f3cd18820b13e508c58f144361105b8bb1bf6fe7547ac994d62c5a2fbdec49b3d56b96fd8fdcadfeb6d967cc521e983c7a84f26
|
7
|
+
data.tar.gz: f3440ccc3800260c21481da110ea68aa40e4d48ca70ab1e6292d80435820f389f0f59f3f02c31029812d2d9335d42cbddcefc3f40c1e667d0a21e139642e5d7c
|
data/lib/bskyrb/codegen.rb
CHANGED
data/lib/bskyrb/error.rb
ADDED
data/lib/bskyrb/firehose.rb
CHANGED
@@ -1,39 +1,37 @@
|
|
1
|
-
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require
|
1
|
+
# typed: false
|
2
|
+
require "faye/websocket"
|
3
|
+
require "eventmachine"
|
4
|
+
require "cbor"
|
5
|
+
require "json"
|
5
6
|
|
6
7
|
EM.run {
|
7
|
-
ws = Faye::WebSocket::Client.new(
|
8
|
+
ws = Faye::WebSocket::Client.new("wss://bsky.social/xrpc/com.atproto.sync.subscribeRepos")
|
8
9
|
|
9
10
|
ws.on :open do |event|
|
10
11
|
p [:open]
|
11
|
-
ws.send(
|
12
|
+
ws.send("Hello, world!")
|
12
13
|
end
|
13
14
|
|
14
15
|
ws.on :message do |event|
|
15
16
|
msg_bytes = event.data
|
16
|
-
unpacker = CBOR::Unpacker.new(StringIO.new(msg_bytes.pack(
|
17
|
-
header, payload = unpacker.each.to_a
|
18
|
-
|
17
|
+
unpacker = CBOR::Unpacker.new(StringIO.new(msg_bytes.pack("C*")))
|
18
|
+
header, payload = unpacker.each.to_a
|
19
|
+
|
19
20
|
# decoder = CBOR::Decoding.new(StringIO.new(msg_bytes.pack('C*')))
|
20
21
|
# while item = decoder.read
|
21
22
|
# puts item
|
22
23
|
# end
|
23
24
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
decoded = CBOR.decode(payload)
|
25
|
+
if payload["ops"].first["path"].include? "app.bsky.feed.post"
|
26
|
+
# payload#["blocks"].length
|
27
|
+
decoded = CBOR.decode(payload)
|
28
28
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
# Print the JSON object
|
33
|
-
puts json
|
34
|
-
end
|
35
|
-
end
|
29
|
+
# Convert the decoded object to JSON
|
30
|
+
json = decoded.to_json
|
36
31
|
|
32
|
+
# Print the JSON object
|
33
|
+
puts json
|
34
|
+
end
|
37
35
|
end
|
38
|
-
}
|
36
|
+
}
|
39
37
|
# end
|