diff options
author | Roger Braun <roger@rogerbraun.net> | 2017-03-29 02:05:51 +0200 |
---|---|---|
committer | Roger Braun <roger@rogerbraun.net> | 2017-03-29 02:07:56 +0200 |
commit | e7dc39e40cde5599f2e1e0dd1715670fd1e76720 (patch) | |
tree | 35bf6459fc195924edd5882d40544bfe483bd997 /lib/pleroma/web/twitter_api/twitter_api.ex | |
parent | 08fdbd6f3ab15ac8312073d832324516b723b81a (diff) | |
download | pleroma-e7dc39e40cde5599f2e1e0dd1715670fd1e76720.tar.gz |
Basic file uploading via TwAPI.
Diffstat (limited to 'lib/pleroma/web/twitter_api/twitter_api.ex')
-rw-r--r-- | lib/pleroma/web/twitter_api/twitter_api.ex | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index e240dc2ea..b6e7d5cc6 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -96,6 +96,23 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do end end + def upload(%Plug.Upload{} = file) do + {:ok, object} = ActivityPub.upload(file) + + # Fake this as good as possible... + """ + <?xml version="1.0" encoding="UTF-8"?> + <rsp stat="ok" xmlns:atom="http://www.w3.org/2005/Atom"> + <mediaid>#{object.id}</mediaid> + <media_id>#{object.id}</media_id> + <media_id_string>#{object.id}</media_id_string> + <media_url>#{object.data["href"]}</media_url> + <mediaurl>#{object.data["href"]}</mediaurl> + <atom:link rel="enclosure" href="#{object.data["href"]}" type="image"></atom:link> + </rsp> + """ + end + defp add_conversation_id(activity) do if is_integer(activity.data["statusnetConversationId"]) do {:ok, activity} |