diff --git a/cmd/mstdn/cmd_instance_activity.go b/cmd/mstdn/cmd_instance_activity.go new file mode 100644 index 0000000..53a71ff --- /dev/null +++ b/cmd/mstdn/cmd_instance_activity.go @@ -0,0 +1,24 @@ +package main + +import ( + "context" + "fmt" + + "github.com/mattn/go-mastodon" + "github.com/urfave/cli" +) + +func cmdInstanceActivity(c *cli.Context) error { + client := c.App.Metadata["client"].(*mastodon.Client) + activities, err := client.GetInstanceActivity(context.Background()) + if err != nil { + return err + } + for _, activity := range activities { + fmt.Fprintf(c.App.Writer, "Logins : %v\n", activity.Logins) + fmt.Fprintf(c.App.Writer, "Registrations : %v\n", activity.Registrations) + fmt.Fprintf(c.App.Writer, "Statuses : %v\n", activity.Statuses) + fmt.Fprintf(c.App.Writer, "EMail : %v\n", activity.Week) + } + return nil +} diff --git a/cmd/mstdn/cmd_instance_peers.go b/cmd/mstdn/cmd_instance_peers.go new file mode 100644 index 0000000..7a73d1d --- /dev/null +++ b/cmd/mstdn/cmd_instance_peers.go @@ -0,0 +1,21 @@ +package main + +import ( + "context" + "fmt" + + "github.com/mattn/go-mastodon" + "github.com/urfave/cli" +) + +func cmdInstancePeers(c *cli.Context) error { + client := c.App.Metadata["client"].(*mastodon.Client) + peers, err := client.GetInstancePeers(context.Background()) + if err != nil { + return err + } + for _, peer := range peers { + fmt.Fprintln(c.App.Writer, peer) + } + return nil +} diff --git a/cmd/mstdn/main.go b/cmd/mstdn/main.go index 7c67584..f17e27a 100644 --- a/cmd/mstdn/main.go +++ b/cmd/mstdn/main.go @@ -245,6 +245,16 @@ func makeApp() *cli.App { Usage: "show instance information", Action: cmdInstance, }, + { + Name: "instance_activity", + Usage: "show instance activity information", + Action: cmdInstanceActivity, + }, + { + Name: "instance_peers", + Usage: "show instance peers information", + Action: cmdInstancePeers, + }, { Name: "account", Usage: "show account information",