mirror of
https://github.com/vibe-existing/pyfragment.git
synced 2026-07-25 06:54:31 +00:00
3156160778
- Removed outdated example scripts for managing anonymous numbers, making raw API calls, fetching wallet info, and various giveaways. - Introduced new scripts for searching gifts, numbers, and usernames in the Fragment marketplace. - Added examples for recharging Telegram Ads accounts and managing user balances with TON. - Updated example scripts to improve clarity and maintainability, ensuring they align with the latest API changes.
48 lines
1.3 KiB
Python
48 lines
1.3 KiB
Python
"""
|
||
Example: run a Telegram Premium giveaway for a channel.
|
||
|
||
winners must be an integer between 1 and 24 000.
|
||
months (Premium duration per winner) must be 3, 6, or 12.
|
||
"""
|
||
|
||
import asyncio
|
||
|
||
from pyfragment import ConfigurationError, FragmentClient, UserNotFoundError
|
||
|
||
SEED = "word1 word2 ... word24"
|
||
API_KEY = "YOUR_TONAPI_KEY"
|
||
COOKIES = {
|
||
"stel_ssid": "YOUR_STEL_SSID",
|
||
"stel_dt": "YOUR_STEL_DT",
|
||
"stel_token": "YOUR_STEL_TOKEN",
|
||
"stel_ton_token": "YOUR_STEL_TON_TOKEN",
|
||
}
|
||
|
||
CHANNEL = "@channel"
|
||
WINNERS = 10 # 1–24 000
|
||
MONTHS = 3 # 3, 6 or 12
|
||
|
||
|
||
async def main() -> None:
|
||
async with FragmentClient(seed=SEED, api_key=API_KEY, cookies=COOKIES) as client:
|
||
try:
|
||
result = await client.giveaway_premium(
|
||
CHANNEL, winners=WINNERS, months=MONTHS
|
||
)
|
||
except UserNotFoundError:
|
||
print(
|
||
f"Channel {CHANNEL} was not found on fragment.com — check the username and try again."
|
||
)
|
||
return
|
||
except ConfigurationError as e:
|
||
print(f"Invalid argument: {e}")
|
||
return
|
||
|
||
print(
|
||
f"Premium giveaway created for {result.channel} — {result.winners} winner(s) × {result.amount} months each | tx: {result.transaction_id}"
|
||
)
|
||
|
||
|
||
if __name__ == "__main__":
|
||
asyncio.run(main())
|