From 7e5e84638121b0f4f09b4224e96cdd0637df0f75 Mon Sep 17 00:00:00 2001 From: Ziedelth Date: Fri, 24 May 2024 20:15:53 +0200 Subject: [PATCH] Add twitter second message --- .../entities/enums/ConfigPropertyKey.kt | 3 +- .../socialnetworks/TwitterSocialNetwork.kt | 19 +++++++--- .../db/changelog/2024/05/04-changelog.xml | 37 +++++++++++++++++++ .../db/changelog/db.changelog-master.xml | 1 + 4 files changed, 53 insertions(+), 7 deletions(-) create mode 100644 src/main/resources/db/changelog/2024/05/04-changelog.xml diff --git a/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt b/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt index 5bbe7745..9ffd6d03 100644 --- a/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt +++ b/src/main/kotlin/fr/shikkanime/entities/enums/ConfigPropertyKey.kt @@ -13,7 +13,8 @@ enum class ConfigPropertyKey(val key: String) { CHECK_CRUNCHYROLL_SIMULCASTS("check_crunchyroll_simulcasts"), BSKY_IDENTIFIER("bsky_identifier"), BSKY_PASSWORD("bsky_password"), - TWITTER_MESSAGE("twitter_message"), + TWITTER_FIRST_MESSAGE("twitter_first_message"), + TWITTER_SECOND_MESSAGE("twitter_second_message"), THREADS_USERNAME("threads_username"), THREADS_PASSWORD("threads_password"), THREADS_MESSAGE("threads_message"), diff --git a/src/main/kotlin/fr/shikkanime/socialnetworks/TwitterSocialNetwork.kt b/src/main/kotlin/fr/shikkanime/socialnetworks/TwitterSocialNetwork.kt index 4d233519..84fa8c6a 100644 --- a/src/main/kotlin/fr/shikkanime/socialnetworks/TwitterSocialNetwork.kt +++ b/src/main/kotlin/fr/shikkanime/socialnetworks/TwitterSocialNetwork.kt @@ -77,15 +77,22 @@ class TwitterSocialNetwork : AbstractSocialNetwork() { login() if (!isInitialized) return if (twitter == null) return - val message = - getEpisodeMessage(episodeDto, configCacheService.getValueAsString(ConfigPropertyKey.TWITTER_MESSAGE) ?: "") - val uploadMedia = twitter!!.tweets().uploadMedia( - UUID.randomUUID().toString(), - ByteArrayInputStream(mediaImage) + val uploadMedia = twitter!!.tweets().uploadMedia(UUID.randomUUID().toString(), ByteArrayInputStream(mediaImage)) + val firstMessage = getEpisodeMessage( + episodeDto, + configCacheService.getValueAsString(ConfigPropertyKey.TWITTER_FIRST_MESSAGE) ?: "" ) + val firstTweet = twitter!!.v2.createTweet(mediaIds = arrayOf(uploadMedia.mediaId), text = firstMessage) - twitter!!.v2.createTweet(mediaIds = arrayOf(uploadMedia.mediaId), text = message) + val secondMessage = configCacheService.getValueAsString(ConfigPropertyKey.TWITTER_SECOND_MESSAGE) + + if (!secondMessage.isNullOrBlank()) { + twitter!!.v2.createTweet( + inReplyToTweetId = firstTweet.id, + text = getEpisodeMessage(episodeDto, secondMessage) + ) + } } override fun sendCalendar(message: String, calendarImage: ByteArray) { diff --git a/src/main/resources/db/changelog/2024/05/04-changelog.xml b/src/main/resources/db/changelog/2024/05/04-changelog.xml new file mode 100644 index 00000000..bb805759 --- /dev/null +++ b/src/main/resources/db/changelog/2024/05/04-changelog.xml @@ -0,0 +1,37 @@ + + + + + + + + SELECT COUNT(*) + FROM config + WHERE property_key = 'twitter_first_message' + + + + + property_key = 'twitter_message' + + + + + + SELECT COUNT(*) + FROM config + WHERE property_key = 'twitter_second_message' + + + + + + + + + \ No newline at end of file diff --git a/src/main/resources/db/changelog/db.changelog-master.xml b/src/main/resources/db/changelog/db.changelog-master.xml index 9d68c67a..77e941a2 100644 --- a/src/main/resources/db/changelog/db.changelog-master.xml +++ b/src/main/resources/db/changelog/db.changelog-master.xml @@ -51,4 +51,5 @@ + \ No newline at end of file