マストドンアーカイブデータからDMデータの削除

説明

マストドンのアーカイブデータoutbox.jsonからDMのデータを削除し、鍵トゥ(フォロワー限定)についてtypeの変更をします。

アーカイブ表示で使うファイルの生成のために作ったプログラムです。

注意

このプログラムはインターネットにデータを送らず、ユーザー側で完結していますが、心配な方は利用しないでください。このプログラムを使用したことに伴う損害などについては一切責任を負いません。
github上にプログラムを公開していますのでそれをダウンロードしてリモートホストで実行するという方法もあります。

使用方法

動作確認

ファイル編集




ダウンロード

まずはアーカイブのJSONを読み込んでください

動作

マストドンのアーカイブファイルoutbox.jsonの中身が(なんとなく)わかっている人向けです

outbox.jsonに入っているトゥートtoot = orderedItems[i]から、
DMについて

鍵トゥについて します。

DM判定部分は

        
          var public = "https://www.w3.org/ns/activitystreams#Public"
          function accessRange(to, cc){
            follower = `https://${account[0]}/users/${account[1]}/followers`;
            if(to.includes(public) && cc.includes(follower)){
              return "all";
            }else if(to.includes(follower) && cc.includes(public)){
              return "notAll";
            }else if(to.includes(follower) && !(cc.includes(public) && cc.includes(follower))){
              return "locked";
            }else{
              return "DM";
            }
          }  
        
      
書き換え部分は
          if(toot.type == "Create"){
            //自分のトゥについて
            if(accessRange(toot.to, toot.cc)=="DM"){
              //DMを消す
              toot.type = "DM";
              toot.object = null;
            }if(accessRange(toot.to, toot.cc)=="locked"){
              //鍵トゥのtype変更
              toot.type = "locked";
              //toot.object = "鍵トゥなので非表示です";
            }if(accessRange(toot.to, toot.cc)=="notAll"){
              //未収載トゥに対する処理 なし
            }
          }
        
詳細はgithubを参照ください