all repos — honk @ a2d4fa03c28c8f420472cc5ce9901328f2f8ab43

my fork of honk

i think this will work with mastodon import and boosts
Ted Unangst tedu@tedunangst.com
Mon, 18 Jan 2021 17:25:21 -0500
commit

a2d4fa03c28c8f420472cc5ce9901328f2f8ab43

parent

be1868ff1f4771d57dab646755015149d7428354

1 files changed, 30 insertions(+), 17 deletions(-)

jump to
M import.goimport.go

@@ -39,6 +39,32 @@ log.Fatal("unknown source flavor")

} } +type TootObject struct { + Summary string + Content string + InReplyTo string + Conversation string + Published time.Time + Tag []struct { + Type string + Name string + } + Attachment []struct { + Type string + MediaType string + Url string + Name string + } +} + +type PlainTootObject TootObject + +func (obj *TootObject) UnmarshalJSON(b []byte) error { + p := (*PlainTootObject)(obj) + json.Unmarshal(b, p) + return nil +} + func importMastodon(username, source string) { user, err := butwhatabout(username) if err != nil {

@@ -49,23 +75,7 @@ Id string

Type string To []string Cc []string - Object struct { - Summary string - Content string - InReplyTo string - Conversation string - Published time.Time - Tag []struct { - Type string - Name string - } - Attachment []struct { - Type string - MediaType string - Url string - Name string - } - } + Object TootObject } var outbox struct { OrderedItems []Toot

@@ -94,6 +104,9 @@

re_tootid := regexp.MustCompile("[^/]+$") for _, item := range outbox.OrderedItems { toot := item + if toot.Type != "Create" { + continue + } tootid := re_tootid.FindString(toot.Id) xid := fmt.Sprintf("%s/%s/%s", user.URL, honkSep, tootid) if havetoot(xid) {