This commit is contained in:
2024-10-14 00:08:40 +02:00
parent dbfba56f66
commit 1462d52e13
4572 changed files with 2658864 additions and 0 deletions

101
Mastodon/toot.pl Normal file
View File

@@ -0,0 +1,101 @@
#!/bin/perl
#Client-Schlüssel 8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o
#Client-Secret v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo
#Dein Zugangs-Token KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks
use Mastodon::Client;
my $s1='
Alle #Ghostbike|s in einer Karte - #openstreetmap bietet sich da an
Viele von euch kennen diese Mahnmale, aber einige fehlen in #osm.
Sorgt bitte dafür, dass sie eingetragen sind bzw. werden.
Macht ein Foto und schreibt mich an (Chat oder Mail, Delta-Chat im Profil).
Tragt ihr selbst ein, kann das Preset unten die Daten einheitlich und vollständig gestalten.
@fedibikes@a.gup.pe
JOSM-Preset https://josm.openstreetmap.de/josmfile?page=Presets/Ghost%20Bike&zip
';
my $s2='
Fedinauten und Garmin User. Bock auf eine Garmin Gruppe? Ihr seid herzlich eingeladen.
https://connect.garmin.com/modern/group/3901008
@fedibikes@a.gup.pe
Ja, ich weiß, man könnte auch strava, weil mehr User oder so. Ich aber nicht :elephant:
';
my $post;
if ($ARGV[0] eq "osm") {
$post = $s1;
} elsif ($ARGV[0] eq "garmin") {
$post = $s2;
} else {
$post = $ARGV[0];
}
if ($post) {
my $client = Mastodon::Client->new(
instance => 'hessen.social',
name => 'perltoot',
client_id => '8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o',
client_secret => 'v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo',
access_token => 'KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks',
coerce_entities => 1,
);
$client->post_status($post);
} else {
print "\$ ./toot.pl <osm|garmin|TXT>\n";
}
0;
__END__
#$client->post_status('So, werde euch jetzt #Toot|s per #Perl reinballern! @rdfhrn') if $ARGV[0];
#$client->post_status('And now in secret...',
# { visibility => 'unlisted' }
#)
# Streaming interface might change!
#my $listener = $client->stream( 'public' );
#$listener->on( update => sub {
# my ($listener, $status) = @_;
# printf "%s said: %s\n",
# $status->account->display_name,
# $status->content;
#});
#$listener->start;
./toot.pl "
Alle #Ghostbike|s in einer Karte - #openstreetmap bietet sich da an
Viele von euch kennen diese Mahnmale, aber einige fehlen in #osm.
Sorgt bitte dafür, dass sie eingetragen sind bzw. werden.
Macht ein Foto und schreibt mich an (Chat oder Mail, Delta-Chat im Profil).
Tragt ihr selbst ein, kann das Preset unten die Daten einheitlich und vollständig gestalten.
@fedibikes@a.gup.pe
JOSM-Preset https://josm.openstreetmap.de/josmfile?page=Presets/Ghost%20Bike&zip
"
./toot.pl "
Fedinauten und Garmin User. Bock auf eine Garmin Gruppe? Ihr seid herzlich eingeladen.
https://connect.garmin.com/modern/group/3901008
@fedibikes@a.gup.pe
Ja, ich weiß, man könnte auch strava, weil mehr User oder so. Ich aber nicht :elephant:
"

59
Mastodon/toot2.pl Normal file
View File

@@ -0,0 +1,59 @@
#!/bin/perl
#Client-Schlüssel 8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o
#Client-Secret v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo
#Dein Zugangs-Token KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks
use Mastodon::Client;
my $post;
my $listing;
sub help() {
print "\$ ./toot.pl <public|direct|private|unlistes> 'toot'\n";
exit 1;
}
if ($ARGV[0] ne "public" and
$ARGV[0] ne "direct" and
$ARGV[0] ne "private" and
$ARGV[0] ne "unlisted" ){
help ();
}
$listing = $ARGV[0];
$post = $ARGV[1];
if ($post) {
my $client = Mastodon::Client->new(
instance => 'hessen.social',
name => 'perltoot',
client_id => '8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o',
client_secret => 'v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo',
access_token => 'KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks',
coerce_entities => 1,
);
$client->post_status($post, { visibility => $listing });
} else {
help ();
}
0;
__END__
#$client->post_status('So, werde euch jetzt #Toot|s per #Perl reinballern! @rdfhrn') if $ARGV[0];
#$client->post_status('And now in secret...',
# { visibility => 'unlisted' }
#)
# Streaming interface might change!
#my $listener = $client->stream( 'public' );
#$listener->on( update => sub {
# my ($listener, $status) = @_;
# printf "%s said: %s\n",
# $status->account->display_name,
# $status->content;
#});
#$listener->start;

30
Mastodon/toot3.pl Normal file
View File

@@ -0,0 +1,30 @@
#!/bin/perl
#Client-Schlüssel 8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o
#Client-Secret v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo
#Dein Zugangs-Token KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks
use Mastodon::Client;
my $client = Mastodon::Client->new(
instance => 'hessen.social',
name => 'perltoot',
client_id => '8aJzHkVjpomU2UUl_W8G_90Syb3P9Eg5xK61Nwti85o',
client_secret => 'v6zxkyQ1oNVr4RbB50w9dIancWDKhpXRgxG_4dej0eo',
access_token => 'KkfiWIzBCAAiVOff9OHK0ka8fCsA-RAP-1TS9a_1Fks',
coerce_entities => 1,
api_version => 2,
);
my $listener = $client->stream( "#natenom" );
# Streaming interface might change!
$listener->on( update => sub {
my ($listener, $status) = @_;
printf "%s said: %s\n",
$status->account->display_name,
$status->content;
});
$listener->start;