cherry-shared2 0.1.26__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,529 @@
1
+ from cherry_shared.constants import Constants
2
+ from cherry_shared.emojis import Emojis
3
+
4
+
5
+ class BotStrings:
6
+ """Input strings class for Bot."""
7
+
8
+ contact_us = f"{Emojis.solana} <a href='{Constants.website_link}'>Web / Dashboard</a> | {Emojis.telegram} <a href='{Constants.bot_link}'>Cherry BOT</a> | {Emojis.twitter} <a href='{Constants.twitter_link}'>Twitter / X</a>"
9
+
10
+ admin_only_command = "**âš ī¸ Only chat admins can use this command.**"
11
+ bounty_amount_too_low = (
12
+ "The bounty amount is too low, please set it to at least {min_amount} {symbol}."
13
+ )
14
+ cancel = "Cancel"
15
+ cant_do_this = (
16
+ "I can't do this. 😐 Please check if I have all the required permissions."
17
+ )
18
+ cant_do_this_to_admin = "I can't perform this action on admins."
19
+ cant_do_this_to_me = "I can't do this to myself!"
20
+ could_not_check_balance = "Couldn't verify your balance. Please try again."
21
+ filter_already_exists = "This filter already exists. 😑"
22
+ filter_not_found = "Mentioned Filter not found in this chat! 😐"
23
+ invalid_user = "Invalid user id or username."
24
+ make_me_admin = "**I need admin privileges to do this!**"
25
+ max_gas_fee_exceeded = "ERR100: The Buy&Burn transaction didn't go through since the maximum gas you set in /settings is {max_gas} GWEI, the current gas is {current_gas} GWEI. "
26
+ need_admin_privileges = "**âš ī¸ I need admin privileges to execute this operation.**"
27
+ no_filter_found = "No filters found in this chat 😐"
28
+ not_admin = "You can't do this as you're not an admin."
29
+ operation_canceled = "Operation Canceled"
30
+ raid_canceled = "Raid canceled"
31
+ some_error_occurred = "Something went wrong. Please try again later. If the problem persists, contact Admin."
32
+ some_error_occurred_no_balance = "â„šī¸ An error happened during the buy&burn event, because of insufficient balance, please contact @EthDevMax to check and fix it."
33
+ some_error_occurred_buyAndBurn = "â„šī¸ An error happened during the buy&burn event, no ETH was used, please contact @EthDevMax to check and fix it."
34
+ some_error_occurred_unknown = "â„šī¸ An error happened during the buy&burn event, please contact @EthDevMax to check and fix it."
35
+ contact_support = f"<i>Contact <a href={Constants.support_group_link}>Support</a> if you have any issues</i>"
36
+ # Commands Help
37
+ add_filter_command = (
38
+ "**Add a filter to the chat.**\n\n"
39
+ + "If you want to attach media to the filter you can use this command by mentioning the word and replying to a already sent message you want to set as response.\n\n"
40
+ + "**Usage:** Reply to message with `/filter <trigger>`\n\n"
41
+ + "**Example:**\n/filter /social\n\n"
42
+ + "**OR**\n\n"
43
+ + "You can also use this command by mentioning the word and sending the response message.\n\n"
44
+ + "**Usage:** `/filter <trigger> <response>`\n\n"
45
+ + "**Example:**\n/filter /social This is a social message.\n\n"
46
+ + "__**Note:**__ The word will be case insensitive."
47
+ )
48
+
49
+ remove_filter_command = (
50
+ "**Remove a filter from the chat.**\n\n"
51
+ + "You can use this command by mentioning the word.\n\n"
52
+ + "**Usage:** `/rmfilter <word>`\n\n"
53
+ + "**Example:**\n/rmfilter /social"
54
+ )
55
+
56
+ ban_command = (
57
+ "**Ban a user from the chat.**\n\n"
58
+ + "Reply to a message sent by the user with this command to ban the user from the chat.\n\n"
59
+ + "You can also use this command by mentioning the user."
60
+ )
61
+
62
+ unban_command = (
63
+ "**Unban a already banned user from the chat.**\n\n"
64
+ + "Reply to a message sent by the user with this command to unban the user from the chat.\n\n"
65
+ + "You can also use this command by mentioning the user."
66
+ )
67
+
68
+ mute_command = (
69
+ "**Mute a user in the chat.**\n\n"
70
+ + "Reply to a message sent by the user with this command to mute the user in the chat.\n\n"
71
+ + "You can also use this command by mentioning the user."
72
+ )
73
+
74
+ unmute_command = (
75
+ "**Unmute a muted user in the chat.**\n\n"
76
+ + "Reply to a message sent by the user with this command to unmute the user in the chat.\n\n"
77
+ + "You can also use this command by mentioning the user."
78
+ )
79
+
80
+ quick_setup_guide_message = f"""{Emojis.fire} <b>Quick Setup Guide:</b>
81
+ /add - Connect token
82
+ /buybot - Configuration
83
+ /settings - Add socials to bot!
84
+ /raid - Start X raids
85
+ /Commands - List of all commands
86
+
87
+ {Emojis.dollar} Paid Features:
88
+ {Emojis.cup} BuyBot Trending: /Trend
89
+ {Emojis.hourglass} RaidBot Trending: /boost
90
+ {Emojis.chart} VolumeBot: /volume
91
+ {Emojis.money} HoldersBot: /holder
92
+ {Emojis.bookmark} Button ads: /advertise"""
93
+
94
+ bot_start_message = f"""{Emojis.cup} <b>Cherry Telegram Bot</b>
95
+
96
+ {Emojis.check} Track buys in real-time, coordinate community raids, and boost your token's visibility with our premium features.
97
+
98
+ {quick_setup_guide_message}
99
+
100
+ {Emojis.solana} <a href='{Constants.website_link}'>Website / Dashboard</a>
101
+ {Emojis.twitter} <a href='{Constants.twitter_link}'>Twitter / X</a>
102
+ {Emojis.trending} <a href='{Constants.trending_channel_link}'>Trending hub</a>
103
+ """
104
+ # Long strings
105
+ bot_welcome_message = f"""{Emojis.spark} <b>Cherry Bot added Successfully!</b>
106
+
107
+ {quick_setup_guide_message}
108
+
109
+ â˜ī¸ Make me admin to use commands!"""
110
+
111
+ group_welcome_message = """Welcome {mention} to the group!"""
112
+
113
+ private_start_message = f"""<b>The Ultimate Telegram Bot for Web3 Projects</b>
114
+
115
+ Enhance your group management and engage your community with Cherry Bot's powerful tools.
116
+
117
+ /add - Integrate a new project with Cherry Bot.
118
+ /trend - Boost your project's visibility in trending.
119
+ /raid - Start a raid to increase engagement and activity.
120
+ /boost - Purchase Raid Points for <a href='{Constants.raid_leaderboard}'>Raid Leaderboard</a>.
121
+ /portal - Create a portal
122
+ """
123
+ tutorial_message = """**Cherry Bot Tutorials**
124
+
125
+ **Quick Setup Guide: How to Order Cherry Trending**
126
+
127
+ 👉 Access Cherry Bot on Telegram. [Link here](https://t.me/cherrys).
128
+ 👉 In the Cherry Bot DMs, write "/trend" and click on "Start".
129
+ 👉 Send the token's Contract Address, Pair Address.
130
+ 👉 Select the correct token type and confirm it.
131
+ 👉 Send the token's group or portal link for tracking.
132
+ 👉 Select your preferred trending slot.
133
+ 👉 Send the payment to the shown address and click on "Verify Payment"
134
+
135
+ **Buy Bot** — gives you an overview of how to setup a launched token & presale token buy bot, using custom emoji/media/buy size/circulating supply.
136
+
137
+ https://www.youtube.com/watch?v=M7NNqKZhSJ8&t=4s
138
+
139
+ **Portal** — gives you an overview of how to setup a working portal for your Telegram group using custom text & media.
140
+
141
+ https://www.youtube.com/watch?v=YFDWGgABTvI
142
+
143
+ **Welcome** — gives you an overview of how to setup an appealing welcome message with customized text/media/buttons to greet your new Telegram members.
144
+
145
+ https://www.youtube.com/watch?v=dcmKhLK-qF8&t=15s
146
+
147
+ **Raid** — gives you an overview of normal/quick/bounty raid functions to increase your community engagement effort within your Telegram group.
148
+
149
+ https://www.youtube.com/watch?v=zHSQIIeyGA4&t=8s"""
150
+ filling_format = """You can use the following fillings to customize the message. For example, you could mention a user in the welcome message.
151
+
152
+ Supported fillings:
153
+ - {first}: The user's first name.
154
+ - {last}: The user's last name.
155
+ - {fullname}: The user's full name.
156
+ - {username}: The user's username. If they don't have one, mentions the user instead.
157
+ - {mention}: Mentions the user with their firstname.
158
+ - {id}: The user's ID.
159
+ - {chatname}: The chat's name.
160
+ - {botname}: The bot's name.
161
+ - {botusername}: The bot's username.
162
+
163
+ Welcome {mention} to {chatname}!"""
164
+
165
+ private_help_message = """**- What does Cherry bot do?**
166
+ -- allows you to send us money for nothing /trend
167
+ — allows for the creation of raids /raid
168
+ --buybot to track/display buys of your token in your group. specify your token blockchain and contract in /settings.
169
+ --portal to reduce spam and bots. use /setup
170
+ --It can function as an alternative for rose (/config,/mute,/ban,/filter,etc...)
171
+
172
+ **- How to start a raid? And how to cancel an on-going on?**
173
+ — Just send /raid to start a raid, it will ask you for the necessary data. If you want to cancel an on-going raid, send /stop.
174
+
175
+ **- Is there any costs to use the bot?**
176
+ — All the bot features are totally free.
177
+ - premium services(trending, raid boosts) cost money."""
178
+
179
+ group_user_help_message = """Here are the available group commands:
180
+
181
+ /filters: Show all chat filters - Displays all chat filters set in the group.
182
+ /admins: Show all chat admins - Lists all admins of the group.
183
+ /report: Report a user to admins - Reports a user to the group admins.
184
+ """
185
+ group_admin_help_message = """Here are the available commands:
186
+
187
+ /raid: Setup new Raid - Initiates a Raid event.
188
+ /stop: Stop Raid - Stops the ongoing Raid.
189
+ /restore: Allow users to send messages - Restores the ability for users to send messages.
190
+ /portal: Setup verification portal for the group - Sets up a verification portal for the group.
191
+ /settings: Configure group settings - Adjusts various group settings.
192
+ /config: Manage bot settings in the group - Manages bot settings within the group.
193
+ /ban: Ban a user from the group - Bans a user from the group.
194
+ /unban: Unban a user from the group - Removes a user ban from the group.
195
+ /mute: Mute a user in the group - Mutes a user in the group.
196
+ /unmute: Unmute a user in the group - Unmutes a previously muted user in the group.
197
+ /filter: Add or modify a chat filter - Adds or modifies a chat filter for the group.
198
+ /rmfilter: Remove a chat filter - Removes a chat filter from the group.
199
+ /add: Set the token address for the group - Sets the token address for the group.
200
+ /buybot: Buy Bot Settings - Purchases bot settings for the group.
201
+ /delete: Delete the group token - Deletes the group token.
202
+ /block: set or get blocked words in the chat.
203
+ /unblock: remove a blocked word in the chat.
204
+ """
205
+ private_owner_help_message = """Here are the available owner commands:
206
+
207
+ /commands: List of all Admin Commands - Displays a list of all admin commands.
208
+ /admin: List of all Admins - Lists all admins of the bot.
209
+ /broadcast: Send a message to all users - Sends a message to all users of the bot.
210
+ /message_to: Send a message to a specific user - Sends a message to a specific user.
211
+ /stats: View bot live stats - Displays live statistics of the bot.
212
+ /groups: View bot groups list - Shows a list of groups the bot is in.
213
+ """
214
+ custom_button_message = f"""**Buttons**
215
+
216
+ One of Telegram's most useful features is the ability to add buttons to your welcome messages. Buttons can be used to link to useful resources.
217
+
218
+ **How to add buttons?**
219
+ - The following syntax will create a button with the text "Telegram" which will open [telegram.org](https://telegram.org) when clicked.
220
+ -> `Telegram:https://telegram.org`
221
+
222
+ - You can add multiple buttons by making a new line for each button.
223
+
224
+ **Example**
225
+ ```
226
+ Telegram:https://telegram.org
227
+ Website:https://telegram.org
228
+ ```
229
+ """
230
+
231
+ ban_mute_success = "{from_mention} has {operation} {to_mention} successfully."
232
+ unban_mute_success = "{from_mention} {operation} {to_mention}."
233
+
234
+ portal_setup_message = "To setup the portal forward this message into a channel which I have admin in\n\nportal-{portal_id}"
235
+
236
+ portal_verification_message = (
237
+ """{group_name} is being protected by @{bot_username}."""
238
+ )
239
+
240
+ portal_verification_success = """Verified, you can join the **{group_name}** group using this temporary link:
241
+
242
+ {invite_link}
243
+
244
+ This link will expire in 5 minutes."""
245
+
246
+ insufficient_balance_html = """<b>Insufficient Balance</b>
247
+ You do not have enough funds to perform this operation.
248
+
249
+ <b>Current Balance</b>: {balance} {token}
250
+
251
+ Please add more funds to the following wallet and try again:
252
+
253
+ 🆔 Address: <code>{wallet_address}</code>"""
254
+
255
+ insufficient_balance = """Insufficient Balance
256
+ You do not have enough funds to perform this operation.
257
+
258
+ Current Balance: {balance} {token}
259
+
260
+ Please add more funds to the following wallet and try again:
261
+
262
+ 🆔 Address: {wallet_address}"""
263
+
264
+ raid_command_message = f"""{Emojis.spark} <b>{{setup_by}} Started a New Raid</b> {Emojis.spark}
265
+
266
+ <b>Now configure the raid by clicking the buttons below.</b>
267
+ """
268
+
269
+ lock_message = (
270
+ """🔒 <b>The group is now locked until this post reaches all the targets</b> """
271
+ )
272
+ raid_start_message = "<b>Raid in Progress</b>"
273
+
274
+ raid_message = f"""{Emojis.rocket} {{header}} | {{points}} pts
275
+
276
+ {{progress_bar}}
277
+
278
+ {Emojis.like} Likes: {{likes_stats}}
279
+ {Emojis.comment} Comments: {{comments_stats}}
280
+ {{non_youtube_metrics}}
281
+ â†ŗ <b>{{post_link}}</b>
282
+
283
+ {{leaderboard_msg}}"""
284
+ non_youtube_raid_metrics = f"""{Emojis.retweet} {{share_type}}s: {{shares_stats}}
285
+ {Emojis.bookmark} Bookmarks: {{bookmarks_stats}}
286
+ """
287
+
288
+ raid_timeout = f"""{Emojis.timer} <b>Time is Up, Try Again!</b> | {{points}} pts
289
+
290
+ {Emojis.like} Likes: <b>{{final_likes}}</b>
291
+ {Emojis.comment} Comments: <b>{{final_comments}}</b>
292
+ {Emojis.retweet} {{share_type}}s: <b>{{final_shares}}</b>
293
+ {Emojis.bookmark} Bookmarks: <b>{{final_bookmarks}}</b>
294
+
295
+ â†ŗ {{post_link}}
296
+
297
+ {{leaderboard_msg}}"""
298
+
299
+ raid_success_msg = (
300
+ f"{Emojis.spark} Raid Completed | <b>{{earned}}</b> Earned\n\n"
301
+ f"{Emojis.timer} Duration : {{time_elapsed}}\n"
302
+ f"â†ŗ {{post_link}}\n\n"
303
+ f"{Emojis.like} Likes: <b>{{likes}} {Emojis.check}</b>\n"
304
+ f"{Emojis.comment} Comments: <b>{{comments}} {Emojis.check}</b>\n"
305
+ f"{Emojis.retweet} {{share_type}}s: <b>{{shares}} {Emojis.check}</b>\n"
306
+ f"{Emojis.bookmark} Bookmarks: <b>{{bookmarks}} {Emojis.check}</b>\n\n"
307
+ f"{{leaderboard_msg}}\n\n"
308
+ f"{{gp_link_hint}}"
309
+ )
310
+ boost_hint = f"<emoji id=5467519850576354798>❕</emoji> Next time use /Boost to start a {Emojis.rocket} <b>Boosted Raid</b> {Emojis.rocket} To reach maximum interaction: <a {Constants.cherry_docs}/setup-guides/setup-a-twitter-raid'>Learn more</a>"
311
+ not_token_burnt_message = "ℹ No tokens were burnt as the bounty amount was not set."
312
+ burn_tx_will_be_sent = f"{Emojis.fire} Buy and burn transactions will be sent in a few minutes. {Emojis.fire}"
313
+ boosted_raid_success = (
314
+ f"{Emojis.cup} You can claim your prize in the @cherrygame_io_bot. {Emojis.cup}"
315
+ )
316
+ raid_error_info_message = """âš ī¸ Raid Error Information â„šī¸
317
+
318
+ {error_message}
319
+
320
+ Tx Hash: {tx_hash}
321
+ User: {user_id}
322
+ User Wallet: {user_wallet}
323
+ Group: {group_id}
324
+ Contract: {contract_address}
325
+ Chain: {chain}
326
+ """
327
+ token_event = f"""{Emojis.spark} <b>New @cherrys Install</b>
328
+
329
+ <b><a href='{{group_link}}'>{{group_name}}</a> Just Installed @cherrys - time to blast off</b><emoji id=5445284980978621387>🚀</emoji>
330
+
331
+ {{chart}}{Emojis.up} <a href='{{trending_channel}}'>Trending</a>"""
332
+
333
+ trend_command_message = f"""{Emojis.check} Trending on <a href='{Constants.trending_channel_link}'>Cherry Trending</a>
334
+ {Emojis.check} Trending on <a href='{Constants.website_link}'>Cherry Website</a>
335
+ {Emojis.check} Entered into trending alerts
336
+ {Emojis.check} All time high alerts
337
+ {Emojis.check} Buy alerts
338
+ {Emojis.bookmark} MASS DM TO 300k+ Real Users
339
+ {Emojis.bookmark} Button Advertisement
340
+ """
341
+
342
+ raid_channel_message = f"""{Emojis.cup} <b><a href="{{chat_link}}">{{group_title}}</a></b> Started New Raid!\n
343
+ {Emojis.like} Likes: <b>{{target_likes}}</b>
344
+ {Emojis.comment} Comments: <b>{{target_comments}}</b>
345
+ {{non_youtube_info}}
346
+ {Emojis.twitter} <b>{{post_link}}</b>\n
347
+ {Emojis.cup} <a href='{Constants.raid_leaderboard}'>Raid Leaderboard #{{rank}}</a> | {{score}}\n
348
+ {contact_us}"""
349
+
350
+ raid_channel_non_youtube = f"""{Emojis.retweet} {{share_type}}s: <b>{{target_shares}}</b>
351
+ {Emojis.bookmark} Bookmarks: <b>{{target_bookmarks}}</b>"""
352
+ trend_message = (
353
+ f"{Emojis.spark} <b>{{symbol}} Trending Boost</b> {Emojis.spark}\n\n"
354
+ f"<b>Top {{position}} Trending</b> | <b>{{hours}} Hours {{promo}}</b>\n"
355
+ f"Token: <b><a href='{{chart_link}}'>{{name}}</a></b> \n"
356
+ f"Telegram: <b>{{portal_link}}</b>\n\n"
357
+ f"{Emojis.money} Activate the boost by sending {{old_price}}<b>{{price}} {{chain_symbol}}</b> to: "
358
+ f"<b><code>{{address}}</code></b>\n\n"
359
+ f"Step 1: Send <b>{{price}} {{chain_symbol}}</b>\n"
360
+ f"Step 2: Click <b>Verify Payment</b> to verify the transaction \n"
361
+ f"Step 3: Watch <b>{{symbol}}</b> soar to the <b>Top {{position}}</b> trending shortly! \n\n"
362
+ f"{contact_support}"
363
+ )
364
+
365
+ trend_select_period_message = f"""<a href='{{portal_link}}'>${{token_name}}</a> Trending Boost
366
+
367
+ <b>Top 3 Benefits</b> {Emojis.fire}
368
+
369
+ {Emojis.check} Trending on <a href='{Constants.trending_channel_link}'>Cherry Trending Channel</a>
370
+ {Emojis.check} Trending on <a href='{Constants.website_link}'>Cherry Website</a>
371
+ {Emojis.check} Entered into trending alerts
372
+ {Emojis.check} All time high alerts
373
+ {Emojis.check} Buy alerts
374
+ {Emojis.bookmark} MASS DM TO 300k+ Real Users
375
+ {Emojis.bookmark} Button Advertisement
376
+
377
+ <b>TOP 10 Benefits</b>
378
+
379
+ {Emojis.check} Trending on <a href='{Constants.trending_channel_link}'>Cherry Trending Channel</a>
380
+ {Emojis.check} Trending on <a href='{Constants.website_link}'>Cherry Website</a>
381
+ {Emojis.check} Entered into trending alerts
382
+ {Emojis.check} All time high alerts
383
+ {Emojis.check} Buy alerts
384
+ {Emojis.bookmark} Button Advertisement
385
+
386
+ <b>Select the Period:</b>"""
387
+ raid_bounty_channel_msg = f"""{Emojis.cherry} New @cherrys Bounty Raid in <a href="{{group_link}}">{{group_name}}</a> {Emojis.cherry}
388
+
389
+ {Emojis.money} {{bounty_amount}} Buyback Bounty! {Emojis.money}
390
+
391
+ Raid for a buyback now: {{post_link}}
392
+
393
+ {Emojis.like} Likes: <b>{{current_likes}} (+{{target_likes}})</b>
394
+ {Emojis.comment} Comments: <b>{{current_comments}} (+{{target_comments}})</b>
395
+ {Emojis.retweet} {{share_type}}s: <b>{{current_shares}} (+{{target_shares}})</b>
396
+ {Emojis.bookmark} Bookmarks: <b>{{current_bookmarks}} (+{{target_bookmarks}})</b>
397
+
398
+ {{chart}}{Emojis.up} <a href="{{trending_channel}}">Trending</a>
399
+ """
400
+
401
+ promo_command = """
402
+ âšĄī¸ <b>Set Up Your Wallets to Receive Referral Commissions!</b> âšĄī¸
403
+
404
+ Before you start earning, make sure your wallet addresses are configured so you receive referral commissions directly to your account.
405
+
406
+ 🔗 <b>Required Wallets: {wallets}</b>
407
+
408
+ """
409
+ volume_command = f"""<b>Grow Your Token Volume With Ease!</b>
410
+
411
+ Works only for {Emojis.solana} Solana projects!
412
+ Dexes: <b>Raydium & <b>Pumpswap</b>
413
+
414
+ <b>How It Works:</b>
415
+ {Emojis.positions[1]} Choose your desired package
416
+ {Emojis.positions[2]} Complete your payment
417
+ {Emojis.positions[3]} Watch your Volume increase!
418
+
419
+ <b>Why Boost Your Volume?</b>
420
+ {Emojis.check} Show real-time traction
421
+ {Emojis.check} Rank higher on tracking sites
422
+ {Emojis.check} Attract investor attention
423
+ {Emojis.check} Get noticed by screening tools
424
+ {Emojis.check} Cost based on volume chosen.
425
+
426
+ {Emojis.timer} <i>Volume will begin within 1–5 minutes of purchase. If not, please contact <a href={Constants.support_group_link}>Support</a>.</i>"""
427
+
428
+ volume_pay = (
429
+ f"{Emojis.spark} <b><a href='{{token_link}}'>{{token_name}}</a> Volume Boost</b> {Emojis.spark}\n\n"
430
+ f"{Emojis.money} Increase + ${{volume}} Volume to <b>{{token_name}}</b> by sending <b>{{price}} {{chain_symbol}}</b> to: "
431
+ f"<b><code>{{address}}</code></b>\n\n"
432
+ f"Step 1: Send <b>{{price}} {{chain_symbol}}</b>\n"
433
+ f"Step 2: Click <b>Verify Payment</b> to verify the transaction \n"
434
+ f"{Emojis.rocket} <b>Get ready for a Boost in the Tokens Volume!</b> {Emojis.rocket} \n\n"
435
+ f"{{multi_wallet}}"
436
+ f"{contact_support}"
437
+ )
438
+
439
+ entered_leaderboard = (
440
+ f"{Emojis.cup} <b><a href='{{group_link}}'>{{group_name}}</a> Just Entered <a href='{Constants.raid_leaderboard}'>Raid Leaderboard</a></b>\n\n"
441
+ f"{Emojis.up} Position: <b>#{{position}}</b>\n"
442
+ f"{Emojis.bookmark} Raid Points: <b>{{points}}</b> {Emojis.spark}\n"
443
+ f"{Emojis.chart} Points to Next Position: <b>{{points_to_next}}</b>\n\n"
444
+ f"{{leaderboard_message}}\n\n"
445
+ f"{contact_us}"
446
+ )
447
+
448
+ holder_command = f"""<b>Works only for {Emojis.solana} Solana projects!</b>
449
+
450
+ How It Works:
451
+ {Emojis.positions[1]} Choose your desired package
452
+ {Emojis.positions[2]} Complete your payment
453
+ {Emojis.positions[3]} Watch your holders increase — up to 20 per minute!
454
+
455
+ Why Boost Your Holders?
456
+ {Emojis.check} Show real-time growth
457
+ {Emojis.check} Attract investor attention
458
+ {Emojis.check} Get noticed by screening tools
459
+ {Emojis.check} No hidden fees — pay only for the service!
460
+
461
+ {Emojis.timer} Holders will stay for 1–2 weeks, depending on your package."""
462
+
463
+ holder_pay = (
464
+ f"{Emojis.spark} <b><a href='{{token_link}}'>{{token_name}}</a> Holder Boost</b> {Emojis.spark}\n\n"
465
+ f"{Emojis.money} Add {{count}} Holders to <b>{{token_name}}</b> by sending <b>{{price}} {{chain_symbol}}</b> to: "
466
+ f"<b><code>{{address}}</code></b>\n\n"
467
+ f"Step 1: Send <b>{{price}} {{chain_symbol}}</b>\n"
468
+ f"Step 2: Click <b>Verify Payment</b> to verify the transaction \n"
469
+ f"{Emojis.rocket} <b>Get ready for a Boost in the Token Holders!</b> {Emojis.rocket} \n\n"
470
+ f"{contact_support}"
471
+ )
472
+
473
+ commands_msg = f"""{Emojis.like} <b>User Commands</b>
474
+ /filters - View chat filters
475
+ /report - Report a user
476
+ /invite - Get invitation link
477
+ /leaderboard - View invite leaderboard
478
+
479
+ {Emojis.bookmark} <b>Admin Commands</b>
480
+ /sync - Sync admins
481
+ /portal - Setup verification portal
482
+ /block - Block specific words
483
+ /unblock - Unblock words
484
+ /settings - Group settings
485
+ /config - Bot settings
486
+ /ban - Ban user
487
+ /unban - Unban user
488
+ /mute - Mute user
489
+ /unmute - Unmute user
490
+ /filter - Add/modify filter
491
+ /rmfilter - Remove filter
492
+ /restore - Enable messaging
493
+
494
+ {Emojis.dollar} <b>Buy-bot Commands<b>
495
+ /add - Set token address
496
+ /delete - Remove group token
497
+ /buybot - Bot settings
498
+ /trend - Buy trending
499
+
500
+ {Emojis.cup} <b>Raid-bot Commands</b>
501
+ /raid - Start Raid
502
+ /stop - Stop Raid
503
+ /raidscore - View Raid Score
504
+ /boost - Buy Raid Points"""
505
+
506
+ first_raid_message = (
507
+ f"<b><a href='{{group_link}}'>{{group_name}}</a> Just Started a Raid with @cherrys - Hit that like</b><emoji id=5445284980978621387>🚀</emoji>\n\n"
508
+ f"{Emojis.spark} <a href='{{boost_link}}'>Boost Points</a> "
509
+ f"{Emojis.cup} <a href='{Constants.raid_leaderboard}'>Leaderboard</a> "
510
+ f"{Emojis.trending} <a href='{Constants.trending_channel_link}'>Trending</a>"
511
+ )
512
+
513
+ boost_command = (
514
+ f"{Emojis.up} <b><a href='{Constants.raid_leaderboard}'>Raid Leaderboard</a> Boost</b>\n\n"
515
+ f"{Emojis.bookmark} Top 3 appear on all raiding groups\n"
516
+ f"{Emojis.check} Higher rank on <a href='{Constants.raid_leaderboard}'>Raid Leaderboard</a>\n"
517
+ f"{Emojis.check} Entered into raid leaderboard alert\n"
518
+ f"{Emojis.check} Raid start alerts"
519
+ )
520
+
521
+ boost_pay = (
522
+ f"{Emojis.spark} <b>{{group_name}} Raid Points Boost</b> {Emojis.spark}\n\n"
523
+ f"{Emojis.money} Add <b>+{{points}} Points</b> to <b>{{group_name}}</b> in leaderboard by sending <b>{{price}} {{chain_symbol}}</b> to: "
524
+ f"<b><code>{{address}}</code></b>\n\n"
525
+ f"Step 1: Send <b>{{price}} {{chain_symbol}}</b>\n"
526
+ f"Step 2: Click <b>Verify Payment</b> to verify the transaction\n\n"
527
+ f"{Emojis.rocket} <b>Get ready for a Boost in the leaderboard!</b> {Emojis.rocket} \n\n"
528
+ f"{contact_support}"
529
+ )
@@ -0,0 +1,36 @@
1
+ class Constants:
2
+ """Internal Constants class for Bot, only edit this if you know what you're doing."""
3
+
4
+ bot_username = "cherrys"
5
+ bot_firstname = "Cherry Bot"
6
+
7
+ trending_channel_id = -1001929856388
8
+ test_trending_channel = -1002187493063
9
+ trending_channel_link = "https://t.me/cherrytrending"
10
+ luxury_trending_link = "https://t.me/cherrytrend"
11
+ bot_link = "https://t.me/cherrys"
12
+ website_link = "https://cherrys.io"
13
+ twitter_link = "https://x.com/CherryBotX"
14
+ announcements_channel = "https://t.me/Cherrybotannouncements"
15
+ raid_channel_link = "https://t.me/cherryraid"
16
+ cherry_channels_folder = "https://t.me/addlist/rmaImOUui5U2OTdk"
17
+ raid_leaderboard = "https://t.me/cherryraid/6"
18
+ support_group_link = "https://t.me/cherrysupportadmin"
19
+ cherry_docs = "https://docs.cherrybot.co"
20
+ cherry_ads = "https://t.me/CherryBotads"
21
+ raid_channel_id = -1002205397643
22
+ raid_debug_channel_id = -1002242607566
23
+ ongoing_raids_channel = -1002210794648
24
+ boosted_raids_channel = -1002205397643
25
+ cherry_group_id = -1002013828335
26
+ luxury_group_id = -1003425821137
27
+ luxury_leaderboard_msg_id = 20872
28
+ luxury_raid_channel_thread_id = 14
29
+ timeout = 120 # in seconds (for pyromod listener)
30
+ data_dir = r"data/"
31
+ MAX_RETRIES = 20
32
+
33
+ trend_points_expiry = 12 # Hours
34
+ service_message_delete_delay = 10
35
+ greeting_message_delete_delay = 90
36
+
@@ -0,0 +1,63 @@
1
+ custom_emoji = lambda emoji, id: f"<emoji id={id}>{emoji}</emoji>"
2
+
3
+ def state_emoji(state: bool):
4
+ return "✅" if state else "❌"
5
+
6
+ class Emojis:
7
+ """Emoji class for Bot, only edit this if you know what you're doing."""
8
+
9
+ cherry = custom_emoji("✨", 5895729833744275779)
10
+
11
+ like = custom_emoji("✨", 5893517852572392074)
12
+ comment = custom_emoji("✨", 5893156134721693351)
13
+ retweet = custom_emoji("✨", 5893471234997361693)
14
+ bookmark = custom_emoji("✨", 5893042846369323539)
15
+
16
+ money = custom_emoji("✨", 5895660860864470421)
17
+ check = custom_emoji("👍", 5893133745057175853)
18
+ dollar = custom_emoji("✨", 5893362129943141788)
19
+ wallet = custom_emoji("✨", 5893323290553883709)
20
+
21
+ chart = custom_emoji("👤", 5893471969436769954)
22
+ up = custom_emoji("✨", 5893148871931993814)
23
+
24
+ cup = custom_emoji("✨", 5893031576375139865)
25
+ hourglass = custom_emoji("✨", 5895516919330512408)
26
+ hashtag = custom_emoji("✨", 5893145968534100750)
27
+ timer = custom_emoji("✨", 5893267082316881718)
28
+ loading = custom_emoji("🟧", 5255814461515647475)
29
+
30
+ spark = custom_emoji("✨", 5895440726610680712)
31
+ rocket = custom_emoji("✨", 6179494264246901366)
32
+ beating_heart = custom_emoji("✨", 5895729833744275779)
33
+ fire = custom_emoji("✨", 5895276701809646261)
34
+ trending = custom_emoji("✨", 5893214030880840476)
35
+ link = custom_emoji("🔗", 5271604874419647061)
36
+
37
+ twitter = custom_emoji("✨", 5895602629697871568)
38
+
39
+ solana = custom_emoji("✨", 5895319771741690759)
40
+ raydium = custom_emoji("💰", 5328025123893029024)
41
+ pumpswap = custom_emoji("✨", 5895399202866863159)
42
+ telegram = custom_emoji("✨", 5895584668144638872)
43
+
44
+ positions = {
45
+ 1: "<emoji id=5893205921982585828>1ī¸âƒŖ</emoji>",
46
+ 2: "<emoji id=5893223965140197576>2ī¸âƒŖ</emoji>",
47
+ 3: "<emoji id=5893373975462944128>3ī¸âƒŖ</emoji>",
48
+ 4: "<emoji id=5895289127150034662>4ī¸âƒŖ</emoji>",
49
+ 5: "<emoji id=5893224721054440432>5ī¸âƒŖ</emoji>",
50
+ 6: "<emoji id=5893059734180732242>6ī¸âƒŖ</emoji>",
51
+ 7: "<emoji id=5893121873767570573>7ī¸âƒŖ</emoji>",
52
+ 8: "<emoji id=5893225468378750376>8ī¸âƒŖ</emoji>",
53
+ 9: "<emoji id=5895366990612142834>9ī¸âƒŖ</emoji>",
54
+ 10: "<emoji id=5893014783053011644>🔟</emoji>",
55
+ }
56
+
57
+ class progress_bar:
58
+ start_empty = custom_emoji("✨", 5895723910984374701)
59
+ mid_empty = custom_emoji("✨", 5895276319557557365)
60
+ end_empty = custom_emoji("✨", 5893246878790721920)
61
+ start_full = custom_emoji("🤞", 5893477965211113979)
62
+ mid_full = custom_emoji("✨", 5893102138392844424)
63
+ end_full = custom_emoji("✨", 5893073297687452787)