60 lines
2.2 KiB
Python
60 lines
2.2 KiB
Python
import asyncio
|
|
import os
|
|
import subprocess
|
|
import aiohttp
|
|
|
|
# Remplacez ces valeurs par vos informations d'identification d'application Twitch
|
|
client_id = 'hmx7mk0q673evvga2y5l919e4mq6nl'
|
|
client_secret = '5cngbki8ifr0elkcgx0wbbixbql4xf'
|
|
stream_key = 'live_37250428_jeHrwf8xz3MR29xLYJQarW5nH5dyOK'
|
|
|
|
async def get_user_info(username):
|
|
async with aiohttp.ClientSession() as session:
|
|
# Obtenez le token d'accès
|
|
resp = await session.post('https://id.twitch.tv/oauth2/token', params={
|
|
'client_id': client_id,
|
|
'client_secret': client_secret,
|
|
'grant_type': 'client_credentials'
|
|
})
|
|
data = await resp.json()
|
|
access_token = data['access_token']
|
|
|
|
# Utilisez le token d'accès pour obtenir les informations de l'utilisateur
|
|
headers = {
|
|
'Client-ID': client_id,
|
|
'Authorization': f'Bearer {access_token}'
|
|
}
|
|
resp = await session.get(f'https://api.twitch.tv/helix/users?login={username}', headers=headers)
|
|
user_data = await resp.json()
|
|
return user_data
|
|
|
|
|
|
# Configurez les paramètres OBS (vous devez avoir OBS installé et configuré)
|
|
obs_settings = {
|
|
'path_to_obs': r'C:\\Program Files\\obs-studio\\bin\\64bit\\obs64.exe', # Mettez à jour ce chemin
|
|
'profile': 'Sans nom', # Mettez à jour ceci avec le nom de votre profil OBS
|
|
'scene': 'Valo', # Mettez à jour ceci avec le nom de votre scène OBS
|
|
'stream_key': stream_key,
|
|
}
|
|
|
|
# Lancez OBS avec les paramètres spécifiés et commencez à diffuser
|
|
def start_streaming(obs_settings):
|
|
obs_dir = os.path.dirname(obs_settings['path_to_obs'])
|
|
subprocess.Popen([
|
|
obs_settings['path_to_obs'],
|
|
'--startstreaming',
|
|
'--profile', obs_settings['profile'],
|
|
'--scene', obs_settings['scene']
|
|
], cwd=obs_dir)
|
|
print("Streaming started.")
|
|
|
|
# Démarrez le stream
|
|
async def main():
|
|
username = 'blakkcow' # Remplacez par le nom d'utilisateur Twitch souhaité
|
|
user_info = await get_user_info(username)
|
|
print(user_info) # Affiche les informations de l'utilisateur
|
|
start_streaming(obs_settings)
|
|
|
|
# Exécutez la fonction principale dans la boucle d'événements asyncio
|
|
if __name__ == "__main__":
|
|
asyncio.run(main()) |