import datetime
import logging
-import twython
+import mastodon
from .misc import Object
return res
def _tweet(self, tweet):
- logging.debug("Tweeting: %s" % tweet.message)
+ logging.debug("Posting: %s" % tweet.message)
# Update database status
self.db.execute("UPDATE tweets \
SET last_tweeted_at = CURRENT_TIMESTAMP, total_tweets = total_tweets + 1 \
WHERE id = %s", tweet.id)
- # Connect to twitter
- twitter = twython.Twython(
- self.settings.get("twitter_consumer_key"),
- self.settings.get("twitter_consumer_secret"),
- self.settings.get("twitter_%s_access_token" % tweet.account),
- self.settings.get("twitter_%s_access_token_secret" % tweet.account),
+ # Connect to Mastodon
+ conn = mastodon.Mastodon(
+ client_id=self.settings.get("mastodon-client-key"),
+ client_secret=self.settings.get("mastodon-client-secret"),
+ access_token=self.settings.get("mastodon-access-token"),
+ api_base_url="https://social.ipfire.org",
)
- # Update status
- twitter.update_status(status=tweet.message)
+ # Toot!
+ conn.toot(tweet.message)