summaryrefslogtreecommitdiff
path: root/post.rb
diff options
context:
space:
mode:
Diffstat (limited to 'post.rb')
-rwxr-xr-xpost.rb45
1 files changed, 0 insertions, 45 deletions
diff --git a/post.rb b/post.rb
deleted file mode 100755
index c5e7cd7..0000000
--- a/post.rb
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env ruby
-require 'json'
-require 'time'
-require 'openssl'
-require 'base64'
-require 'net/http'
-require 'uri'
-
-# document = { "a" => 2 } # .to_json
-document = {
- "@context": "https://www.w3.org/ns/activitystreams",
- "type": "Like",
- "actor": "https://example.net/~mallory",
- "to": ["https://hatchat.example/sarah/",
- "https://example.com/peeps/john/"],
- "object": {
- "@context": { "@language": "en" },
- "id": "https://example.org/~alice/note/23",
- "type": "Note",
- "attributedTo": "https://example.org/~alice",
- "content": "I'm a goat"
- }
-}
-date = Time.now.utc.httpdate
-keypair = OpenSSL::PKey::RSA.new(File.read('private.pem'))
-signed_string = "(request-target): post /inbox\nhost: social.pdp8.info\ndate: #{date}"
-signed_string = keypair.sign(OpenSSL::Digest::SHA256.new, signed_string)
-signature = Base64.urlsafe_encode64(signed_string).encode("UTF-8")
-signed_header = 'keyId="https://social.pdp8.info/pdp8",headers="(request-target) host date",signature="' + signature + '"'
-
-uri = URI.parse("https://social.pdp8.info/inbox")
-http = Net::HTTP.new(uri.host, uri.port)
-http.use_ssl = true
-http.verify_mode = OpenSSL::SSL::VERIFY_NONE
-header = {
- 'Accept' => 'application/ld+json; profile="https://www.w3.org/ns/activitystreams"',
- 'Host' => 'social.pdp8.info',
- 'Date' => date,
- 'Signature' => signed_header,
-}
-request = Net::HTTP::Post.new(uri.request_uri, header)
-request.body = document.to_json
-
-response = http.request(request)
-puts(response.body, response.code)