Skip to content

Instantly share code, notes, and snippets.

@ninoseki
Created December 12, 2018 02:37
Show Gist options
  • Save ninoseki/7fecd51793ee32207623df119fee750b to your computer and use it in GitHub Desktop.
Save ninoseki/7fecd51793ee32207623df119fee750b to your computer and use it in GitHub Desktop.
Playing with wss://certstream.calidog.io in Ruby
require 'faye/websocket'
require 'eventmachine'
require "json"
EM.run {
ws = Faye::WebSocket::Client.new("wss://certstream.calidog.io")
ws.on :message do |event|
message = JSON.parse(event.data)
all_domains = message.dig("data", "leaf_cert", "all_domains")
not_before = message.dig("data", "leaf_cert", "not_before")
if all_domains && not_before
puts({ all_domains: all_domains, not_before: Time.at(not_before) }.to_json)
end
end
ws.on :close do |event|
p [:close, event.code, event.reason]
ws = nil
end
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment