]> git.sesse.net Git - skvidarsync/commitdiff
Use an ephemeral message for nagging about the spreadsheet; hopefully more visible...
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 1 Nov 2023 22:30:47 +0000 (23:30 +0100)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 1 Nov 2023 22:30:47 +0000 (23:30 +0100)
bin/sync.pl

index 38453da753c341bdcee6acf385d8657ca736fecf..cec919953933224f87aa4e2c4f50bfc93eb5c737 100644 (file)
@@ -12,9 +12,6 @@ binmode STDOUT, ':utf8';
 binmode STDERR, ':utf8';
 use utf8;
 
-# TODO:
-# - make the sheet message more in-your-face (ephemeral message)
-
 require '../include/config.pm';
 
 my $dbh;
@@ -402,27 +399,21 @@ sub possibly_nag_user {
                return;
        }
 
+       my $msg = "Hei! Du meldte deg akkurat på trening, men vi klarer ikke å finne deg i en gruppe i regnearket. For at det skal være enklere for trenerne, ønsker vi gjerne at du går inn på https://regneark.skvidar.run/ og skriver deg inn der med samme navn som du bruker på Slack. Om du er usikker på hvilken gruppe som passer for deg, ta gjerne kontakt med en trener. Velkommen på trening og til klubben!";
+
        skv_log("Sender melding til $userid for å spørre om gruppe.");
+       my $content = {
+               channel => $config::invitation_channel,
+               user => $userid,
+               text => $msg
+       };
        my $response = $ua->post(
-               'https://slack.com/api/conversations.open',
-               Content => JSON::XS::encode_json({ users => [ $userid ] }),
+               'https://slack.com/api/chat.postEphemeral',
+               Content => JSON::XS::encode_json($content),
                Content_type => 'application/json;charset=UTF-8',
                Authorization => 'Bearer ' . $config::slack_oauth_token
        );
        die $response->status_line if !$response->is_success;
-
-       my $im_json = JSON::XS::decode_json($response->decoded_content);
-       die "Something went wrong: " . $response->decoded_content if (!defined($im_json) || !$im_json->{'ok'});
-       my $channel_id = $im_json->{'channel'}{'id'};
-
-       my $msg = "Hei! Du meldte deg akkurat på trening, men vi klarer ikke å finne deg i en gruppe i regnearket. For at det skal være enklere for trenerne, ønsker vi gjerne at du går inn på https://regneark.skvidar.run/ og skriver deg inn der med samme navn som du bruker på Slack. Om du er usikker på hvilken gruppe som passer for deg, ta gjerne kontakt med en trener. Velkommen på trening og til klubben!";
-
-       $response = $ua->post(
-               'https://slack.com/api/chat.postMessage',
-               Content => JSON::XS::encode_json({ channel => $channel_id, text => $msg }),
-               Content_type => 'application/json;charset=UTF-8',
-               Authorization => 'Bearer ' . $config::slack_oauth_token
-       );
        my $msg_json = JSON::XS::decode_json($response->decoded_content);
        die "Something went wrong: " . $response->decoded_content if (!defined($msg_json) || !$msg_json->{'ok'});