summaryrefslogtreecommitdiff
path: root/social
diff options
context:
space:
mode:
Diffstat (limited to 'social')
-rwxr-xr-xsocial33
1 files changed, 33 insertions, 0 deletions
diff --git a/social b/social
new file mode 100755
index 0000000..2a57153
--- /dev/null
+++ b/social
@@ -0,0 +1,33 @@
+#!/usr/bin/env ruby
+require 'net/http'
+require 'uri'
+
+USER = "pdp8"
+WWW_DOMAIN = "pdp8.info"
+SOCIAL_DOMAIN = "social.#{WWW_DOMAIN}"
+SOCIAL_URL = "https://#{SOCIAL_DOMAIN}"
+
+def post path, body
+ uri = URI.parse(File.join SOCIAL_URL, path)
+ http = Net::HTTP.new(uri.host, uri.port)
+ http.use_ssl = true
+ header = { 'Content-Type' => 'text/plain' }
+ request = Net::HTTP::Post.new(uri.request_uri, header)
+ usr = File.read(".usr").chomp
+ pwd = File.read(".pwd").chomp
+ request.basic_auth(usr, pwd)
+ request.body = body
+ response = http.request(request)
+ # TODO return error if response.code > 400
+ puts(response.body, response.code)
+end
+
+# cmd = ARGV.shift
+case ARGV.shift
+when "post"
+ post "outbox", File.read(ARGV[0])
+when "follow"
+ post "follow", ARGV.join(" ")
+when "unfollow"
+ post "unfollow", ARGV.join(" ")
+end