Valorant store offer discord-bot

Overview

Valorant store checker - Discord Bot

Discord bot that shows your daily store offer without open the VALORANT by using the Ingame API. written using Python and the Pycord library

Tutorial : Youtube

Screenshot

image image

Usage

Command Action
store Shows my daily store

Prerequisites

Installations

  • Install requirements
pip install -r requirements.txt
  • Store discord bot token in .env and server id for slash command
TOKEN=<BOT_TOKEN>
SERVER_ID=<SERVER_ID>
REGION=<YOUR_REGION>
CHANNEL_LOOP=<CHANNEL_ID notification loop>
  • Run the bot
python bot.py

Special thanks

Valorant Client API by RumbleMike

for providing a great API about Valorant!

Valorant-API.com

for every skin names and images!

Comments
  • Missing Access HOW TO FIX?

    Missing Access HOW TO FIX?

    Ignoring exception in on_message Traceback (most recent call last): File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\client.py", line 382, in _run_event await coro(*args, **kwargs) File "C:\Users\USER-PC\Downloads\ValorantStoreChecker-discord-bot-master\ValorantStoreChecker-discord-bot-master\bot.py", line 59, in on_message await bot.register_commands(commands=command, guild_id=message.guild.id, force=True) File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\bot.py", line 471, in register_commands registered = await register("bulk", data) File "C:\Users\USER-PC\AppData\Local\Programs\Python\Python310\lib\site-packages\discord\http.py", line 351, in request raise Forbidden(response, data) discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access

    everything seems correct but for some reason when i put -setup global or -setup guild it happens

    opened by codsec 37
  • Login Command: decode JSON failed

    Login Command: decode JSON failed

    Using the login command results in an error. image changing the code in https://github.com/staciax/Valorant-DiscordBot/blob/c76f330f2d3d1dc691330e542dab056fc3122dd2/utils/valorant/auth.py#L97 to disable the content_type check to r.json(content_type=None) reveals that the response of the riot games api to https://auth.riotgames.com/api/v1/authorization is returning a 403. I don't know what your source is but the same issue is mentioned here but the suggest fix doesn't work for me. I also found this which might be helpful.

    bug 
    opened by doluk 17
  • ImportError 'TextStyle' from 'discord'

    ImportError 'TextStyle' from 'discord'

    Getting this ImportError while trying to set up bot.

    /Downloads/Valorant-DiscordBot-master/utils/valorant/view.py", line 5, in <module> from discord import Interaction, TextStyle, ui ImportError: cannot import name 'TextStyle' from 'discord' (/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/discord/__init__.py)

    opened by jennck 10
  • account hacked.

    account hacked.

    a friend told me his account's name and pass got changed I asked him if he had 2fa enabled and he said he did but he also used /2fa command I'm not sure if it's related to the bot or not but his acc was Immortal 3 and had lots of skins

    opened by Chan0n 10
  • valorantstore bot no setting up

    valorantstore bot no setting up

    image the bot couldn't setup, its stuck on "setting up..." waited for 30 minutes and still no sign of "setup in guild!" P.S. am a beginner

    opened by ryanfrrl 9
  • got error when using -setup guild

    got error when using -setup guild

    I got a problem when i try to use -setup guild. it says discord.errors.Forbidden: 403 Forbidden (error code: 50001): Missing Access what should i do? image

    opened by Malvian62 8
  • How can I get player_mission and battle_pass?

    How can I get player_mission and battle_pass?

    I found this api -> StoryContract, but it doesn't work! requests return this

    {'httpStatus': 404, 'errorCode': 'RESOURCE_NOT_FOUND', 'message': 'resource not found'}
    

    then I tired url from your repo endpoints

    https://github.com/staciax/Valorant-DiscordBot/blob/cc1e9d8bb2902a71ad674e4840b9fcef7b823763/utils/valorant/endpoint.py#L116

    it return 👇

    {'httpStatus': 400, 'errorCode': 'INVALID_HEADERS', 'message': 'Bad headers used for request'}
    

    so maybe my headers is wrong? what's the correct one?

    async def fetch_contract(u):
        #url="https://pd.ap.a.pvp.net/contract-definitions/v2/definitions/story"
        url=f"https://pd.ap.a.pvp.net/contracts/v1/contracts/"+u['auth_user_id']
        headers = {
            "Content-Type": "application/json",
            "X-Riot-Entitlements-JWT": u['entitlements_token'],
            "Authorization": "Bearer " + u['access_token']
        }
        async with aiohttp.ClientSession() as session:
            async with session.get(url, headers=headers) as response:
                res = json.loads(await response.text())
    
        return res
    
    opened by Aewait 7
  • Cannot connect to host auth.riotgames.com:443

    Cannot connect to host auth.riotgames.com:443

    Capture Cannot connect to host auth.riotgames.com:443 ssl:True [SSLCertVerificationError: (1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997)')]

    opened by SploeCyber 7
  • /login issue

    /login issue

    Ive changed the host of the bot and since im facing the issue that the bot is not responding to the /login command - afaik all other command semm to work but I can not test properly since login isnt working for me.

    Console responds with this when using /login:

    Task exception was never retrieved future: <Task finished name='CommandTree-invoker' coro=<CommandTree._from_interaction..wrapper() done, defined at /home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py:1087> exception=ValueError('Both or neither of value and tb must be given')> Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 850, in _do_call return await self._callback(self.binding, interaction, **params) # type: ignore File "/home/container/cogs/valorant.py", line 93, in login authenticate = await auth.authenticate(username, password) File "/home/container/utils/valorant/auth.py", line 120, in authenticate data = await r.json() File "/home/container/.local/lib/python3.10/site-packages/aiohttp/client_reqrep.py", line 1103, in json raise ContentTypeError( aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1240, in _call await command._invoke_with_namespace(interaction, namespace) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 876, in _invoke_with_namespace return await self._do_call(interaction, transformed_values) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/commands.py", line 869, in _do_call raise CommandInvokeError(self, e) from e discord.app_commands.errors.CommandInvokeError: Command 'login' raised an exception: ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1089, in wrapper await self._call(interaction) File "/home/container/.local/lib/python3.10/site-packages/discord/app_commands/tree.py", line 1244, in _call await self.on_error(interaction, e) File "/home/container/cogs/errors.py", line 65, in on_app_command_error traceback.print_exception(type(error), error) File "/usr/local/lib/python3.10/traceback.py", line 116, in print_exception value, tb = _parse_value_tb(exc, value, tb) File "/usr/local/lib/python3.10/traceback.py", line 95, in _parse_value_tb raise ValueError("Both or neither of value and tb must be given") ValueError: Both or neither of value and tb must be given Unclosed client session client_session: <utils.valorant.auth.ClientSession object at 0x7f6af47e6f80> Unclosed connector connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x7f6af51b29e0>, 58355373.88184868)]'] connector: <aiohttp.connector.TCPConnector object at 0x7f6af47e6d40>

    Any recommendations what I could try to fix this?

    opened by nagisa404 6
  • How can I get price of the skin & its rank?

    How can I get price of the skin & its rank?

    HELLO!

    I'm new in Python,while using valorant-api, I found that the price of the skin and the rank of the skin (not the weapons/skinlevels includes in api,but like epic skin). How can I get the price of the skin and this rank?

    image

    url = f"https://valorant-api.com/v1/weapons/skinlevels/{skinuuid}"
    headers = {'Connection': 'close'}
    res = requests.get(url=url,headers=headers)
    res1 = json.loads(res.text)
    

    the res of this code is👇

    {'status': 200, 'data': {'uuid': 'fc4c3dcb-4f6d-5e8e-3dc3-1695f55d24c2', 'displayName': '王牌戰隊 幻象', 'levelItem': None, 'displayIcon': 'https://media.valorant-api.com/weaponskinlevels/fc4c3dcb-4f6d-5e8e-3dc3-1695f55d24c2/displayicon.png', 'streamedVideo': None, 'assetPath': 'ShooterGame/Content/Equippables/Guns/Rifles/Carbine/Flush/Levels/Carbine_Flush_Lv1_PrimaryAsset'}}
    

    PS: I use ValorantClientAPI to fetch my daily shop

    opened by Aewait 5
  • Can't load emoji

    Can't load emoji

    Bot didn;t load emoji บอทไม่โหลด emoji ครับ

    ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง ไม่สามารถสร้างอีโมจิได้ กรุณาลองอีกครรั้ง Response Status: 200 image_2022-04-30_182949427

    opened by BEERZXD 5
  • /login issue

    /login issue

    BOT IS READY ! Version: 3.3.5 Task exception was never retrieved future: <Task finished name='CommandTree-invoker' coro=<CommandTree._from_interaction..wrapper() done, defined at C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py:1087> exception=TypeError('Subscripted generics cannot be used with class and instance checks')> Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 850, in _do_call return await self._callback(self.binding, interaction, **params) # type: ignore File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\cogs\valorant.py", line 93, in login authenticate = await auth.authenticate(username, password) File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\utils\valorant\auth.py", line 122, in authenticate data = await r.json() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\aiohttp\client_reqrep.py", line 1103, in json raise ContentTypeError( aiohttp.client_exceptions.ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1240, in _call await command._invoke_with_namespace(interaction, namespace) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 876, in _invoke_with_namespace return await self._do_call(interaction, transformed_values) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\commands.py", line 869, in _do_call raise CommandInvokeError(self, e) from e discord.app_commands.errors.CommandInvokeError: Command 'login' raised an exception: ContentTypeError: 0, message='Attempt to decode JSON with unexpected mimetype: text/html; charset=utf-8', url=URL('https://auth.riotgames.com/api/v1/authorization')

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1089, in wrapper await self._call(interaction) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\discord\app_commands\tree.py", line 1244, in _call await self.on_error(interaction, e) File "E:\Downloads\Compressed\Valorant-DiscordBot-3.4.0\Valorant-DiscordBot-3.4.0\cogs\errors.py", line 61, in on_app_command_error elif isinstance(error, Union[AppCommandNotFound, MissingPermissions, BotMissingPermissions]): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\typing.py", line 697, in instancecheck return self.subclasscheck(type(obj)) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\typing.py", line 700, in subclasscheck raise TypeError("Subscripted generics cannot be used with" TypeError: Subscripted generics cannot be used with class and instance checks Unclosed client session client_session: <utils.valorant.auth.ClientSession object at 0x000002A7EDAB6C40> Unclosed connector connections: ['[(<aiohttp.client_proto.ResponseHandler object at 0x000002A7ED9F6E80>, 30102.031), (<aiohttp.client_proto.ResponseHandler object at 0x000002A7ED71F0A0>, 30102.078)]'] connector: <aiohttp.connector.TCPConnector object at 0x000002A7ED2099A0>

    opened by nungsorb 0
Releases(v3.4.0)
  • v3.4.0(Oct 17, 2022)

    What's Changed

    • Add Docker CI by @marchingon12 in https://github.com/staciax/Valorant-DiscordBot/pull/71
    • Update en-US localization by @overestimate in https://github.com/staciax/Valorant-DiscordBot/pull/75
    • Renamed .json of Traditional Chinese(zh-TW) to fix the issue of localisation by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/77
    • Allow users to add notify with multilingual names by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/78
    • Support direct deployment to Replit by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/79
    • Added 'Run on Repl.it' badge by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/80
    • Update pyproject.toml by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/81
    • Update README.md by @scarrrr316 in https://github.com/staciax/Valorant-DiscordBot/pull/82
    • Bugfix: update Riot Client User Agent version by @mzfan in https://github.com/staciax/Valorant-DiscordBot/pull/87
    • Riot user agent version update by @mzfan in https://github.com/staciax/Valorant-DiscordBot/pull/88
    • Fix tier emojis in /nightmarket command. by @R3nzTheCodeGOD in https://github.com/staciax/Valorant-DiscordBot/pull/89
    • Turkish language support by @mustafa383 in https://github.com/staciax/Valorant-DiscordBot/pull/91

    New Contributors

    • @overestimate made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/75
    • @scarrrr316 made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/77
    • @mzfan made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/87
    • @R3nzTheCodeGOD made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/89
    • @mustafa383 made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/91

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.3.5...v3.4.0

    Source code(tar.gz)
    Source code(zip)
  • v3.3.5(Jul 4, 2022)

    What's Changed

    • German by @Hackante in https://github.com/staciax/Valorant-DiscordBot/pull/69

    New Contributors

    • @Hackante made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/69

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.2.6...v3.3.5

    Source code(tar.gz)
    Source code(zip)
  • v3.2.1(Jun 18, 2022)

  • v3.1.3-fix(Jun 14, 2022)

    • Cleaned imports

    • Better error handler

    Catching specific errors that might be raised. added a super call to close optimized imports

    • cloudflare fix

    What's Changed

    • Code clean up by @RyugaXhypeR in https://github.com/staciax/Valorant-DiscordBot/pull/58

    New Contributors

    • @RyugaXhypeR made their first contribution in https://github.com/staciax/Valorant-DiscordBot/pull/58

    Full Changelog: https://github.com/staciax/Valorant-DiscordBot/compare/v3.1.1...v3.1.2

    Source code(tar.gz)
    Source code(zip)
  • v3.1.1(Jun 11, 2022)

    Command

    • /bundles support multiple bundle

    Locale

    • Fixed bug not translating some texts
    • Fixed cookies can't refresh

    Bug fixes

    • cloudflare -.-
    • back to aiohttp
    Source code(tar.gz)
    Source code(zip)
  • v3.0.8(May 25, 2022)

  • v3.0.7-v2(May 22, 2022)

  • v3.0.6-v3(May 20, 2022)

  • v3.0.5(May 19, 2022)

  • v3.0.4-v2(May 14, 2022)

    Add commands

    /notify channel - change notify channel ['DM', 'CHANNEL']

    support quick check (without login)

    • /point, /mission, /battlepass, /nightmarket

    language

    • add dm_message error
    • language for /notify channel

    Add config commands

    • -unsync guild, -unsync global

    Bug fixes in v2

    • /nightmarket is not working
    Source code(tar.gz)
    Source code(zip)
  • v3.0.3(May 2, 2022)

    Utility funtion to class

    • GetItems, GetEmoji, Generate_Embed, JSON

    update commands

    /store - add button share when use store without login

    pull request

    • add Dockerfile by kiznick

    bug fixes

    type object 'JSON' has no attribute 'json_read'

    Source code(tar.gz)
    Source code(zip)
  • v3.0.2(Apr 29, 2022)

    New feature

    • Add Vietnamese language translation by TMADZ2007
    • update france, thai language
    • update default season_id
    • setup_emoji can force update
    • update mission embed format
    • debug command owner only can use it
    • little bug fixed
    Source code(tar.gz)
    Source code(zip)
  • v3.0.1(Apr 27, 2022)

    New feature

    • Add commands support Interaction Locale** (translate)

    • /notify add, /notify list, /notify mode ,/notify test, /bundle, /bundles, /debug

    Supported new languages

    • fr - France

    Bug Fixes

    • commands error when using languages ​​other than en-US, th
    • some bundles could not be searched.
    Source code(tar.gz)
    Source code(zip)
  • v3.0.0(Apr 25, 2022)

    New Commands

    • /bundle - inspect a specific bundle
    • /bundles - Show the current featured bundles
    • /debug - Command debug for the bot

    Breaking Changes

    • change library pycord to discord.py

    • rewrite all code and clearly specify the type of attribute

    • /notify to commands group /notify add - Set a notification when a specific skin is available on your store /notify list - View skins you have set a for notification. /notify mode - Change notification mode /notify test - Testing notification

    • /store without /login everyone can see message

    New Feature

    • interaction.locale - automatic change language response
    • currently th-TH, en-US | you can add new languages in folder languages
    • change -setup guild to -sync guild , -sync global

    Bug Fixes

    • wait for testing

    Road Map

    • /contract
    • /party
    • /career

    Moved to discord.py library

    Source code(tar.gz)
    Source code(zip)
  • 2.2.6(Apr 10, 2022)

  • 2.2.5(Mar 25, 2022)

  • v2.2.0(Mar 22, 2022)

  • 2.1.0(Mar 14, 2022)

  • v2.0.0(Feb 14, 2022)

Owner
STACIA
my name is stacia.
STACIA
Sends notifications when Pokemon Center products are in stock

Sends notifications when Pokemon Center products are in stock! If you use this for scalping, I will break your kneecaps

2 Jan 20, 2022
simple discord token grabber with webhook hiding feature.

Token Grabber A simple Discord token grabber with base64 webhook encoding, it uses pastebin as a database to get webhook, so next time u dont get your

0 Dec 01, 2021
Terraform wrapper to manage state across multiple cloud providers(AWS, GCP, and Azure)

Terraform Remote State Manager(tfremote) tf is a python package for managing terraform remote state for: Google(Gcloud), AWS, and Azure. It sets a def

tomarv2 1 Dec 08, 2021
A Python wrapper for the QQ Channel API

A Python wrapper for the QQ Channel API

Fox_white 55 Dec 07, 2022
Seth Userbot with python

SETH-USERBOT DEPLOY TO HEROKU Group Support: String Session : Stay Support 🚀 ❁ LonamiWebs and Telethon © Credits ⚡ THANK YOU VERY MUCH FOR zeinzo Zei

seth 4 Jan 10, 2022
Fetch torrent links from nyaa, according to releases by smoke index.

Nyaa - Smoke's index torrent fetcher Description This script parses the local (or online) anime release index (csv format) made by Big Smoke. And uses

Dinank 21 Jun 08, 2022
TORNADO CASH Proxy Pancakeswap Sniper BOT 2022-V1 (MAC WINDOWS ANDROID LINUX)

TORNADO CASH Pancakeswap Sniper BOT 2022-V1 (MAC WINDOWS ANDROID LINUX) ⭐️ A ful

Crypto Trader 1 Jan 06, 2022
A simple and easy to use musicbot in python and it uses lavalink.

Lavalink-MusicBot A simple and easy to use musicbot in python and it uses lavalink. ✨ Features plays music in your discord server well thats it i gues

Afnan 1 Nov 29, 2021
ARKHAM X GOD MULTISPAM BOT

ARKHAM-X-GOD-MULTISPAM-BOT 𝗗𝗘𝗣𝗟𝗢𝗬 𝗨𝗣𝗧𝗢 30 𝗕𝗢𝗧𝗦 𝗜𝗡 𝗔 𝗦𝗜𝗡𝗚𝗟?

ArkhamXGod 2 Jan 08, 2022
Music bot for playing music on telegram voice chat group.

Somali X Music 🎵 Music bot for playing music on telegram voice chat group. Requirements FFmpeg NodeJS nodesource.com Python 3.8+ or Higher PyTgCalls

Abdisamad Omar Mohamed 4 Dec 01, 2021
This is a Innexia Group Manager Bot with many features

⚡ Innexia ⚡ A Powerful, Smart And Simple Group Manager ... Written with AioGram , Pyrogram and Telethon... Available on Telegram as @Innexia ❤️ Suppor

TeamDeeCode 84 Jun 04, 2022
🤖 Chegg answers requested and sent by the Discord BOT to the targeted user.

Chegg BOT Description "I believe that open-source resources are a must for everyone around. Especially in the field of education. As Chegg c

Vusal Ismayilov 33 Aug 20, 2021
Companion "receiver" to matrix-appservice-webhooks for [matrix].

Matrix Webhook Receiver Companion "receiver" to matrix-appservice-webhooks for [matrix]. The purpose of this app is to listen for generic webhook mess

Kim Brose 13 Sep 29, 2022
hydrotoolbox is a Python script for hydrologic calculations and analysis or by function calls within Python.

hydrotoolbox is a Python script for hydrologic calculations and analysis or by function calls within Python.

Tim Cera 4 Aug 20, 2022
Bearer API client for Python

Bearer Python Bearer Python client Installation pip install bearer Usage Get your Bearer Secret Key and integration id from the Dashboard and use the

Bearer 9 Oct 31, 2022
Pythonic event-processing library based on decorators

Process Events In Style This library aims to simplify the common pattern of event processing. It simplifies the process of filtering, dispatching and

Nicolas Marier 3 Sep 01, 2022
A bot to display per user data from the Twitch Leak

twitch-leak-bot-discord A bot to display per user data from the Twitch Leak by username Where's the data? I can't and don't want to supply the .csv's

SSSEAL-C 0 Nov 08, 2022
An Advanced Telegram Bot to Play Radio & Music in Voice Chat. This is Also The Source Code of The Bot Which is Being Used For Playing Radio in @AsmSafone Channel ❤️

Telegram Radio Player V3 An Advanced Telegram Bot to Play Nonstop Radio/Music/YouTube Live in Channel or Group Voice Chats. This is also the source co

SAF ONE 421 Jan 05, 2023
The Discord bot framework for Python

Pycordia ⚠️ Note! As of now, this package is under early development so functionalities are bound to change drastically. We don't recommend you curren

Ángel Carias 24 Jan 01, 2023
A stock information collector and parser for Taiwan and US market. Automatically send LINE message if the pre-defined rules are triggered.

agastock 開發動機 就在海運飆漲的2021年7月,差點跪在地上喜迎財富自由的當下,EPS超高好消息不斷的長榮竟然套在202元一去不回,有圖有真相(哭) 忽然體會到追高殺低不是辦法,魯蛇我得靠邏輯分析也能出頭天,經過三個月無數個不出門的周末,產出簡單的爬蟲和分析工具。 上過金融研訓院的量化交易

Gavin Lee 12 Nov 16, 2022