Pywam est une bibliothèque Asyncio Python rapide et légère sans dépendances externes pour communiquer avec les haut-parleurs Samsung Wireless Audio (R) (WAM). Il a été développé pour être utilisé pour intégrer les conférenciers de l'assistant à domicile.
pip install pywamDéfinissez le volume de haut-parleur à 50% avec Python Context Manager:
from pywam . speaker import Speaker
async with Speaker ( '192.168.1.100' ) as speaker :
speaker . set_volume ( 50 )Exemple de contrôle de la lecture des médias:
# Play
await speaker . cmd_play ()
# Pause
await speaker . cmd_pause ()
# Shuffle mode
await speaker . set_shuffle ( True )Obtenez des notifications sur l'état des conférenciers:
from pywam . speaker import Speaker
def state_receiver ( event ):
print ( event )
speaker = Speaker ( '192.168.1.150' )
speaker . events . register_subscriber ( state_receiver , 2 )
speaker . connect ()
speaker . update ()PEP8 et Google Styled Pep257. Mais aucun d'eux n'est strictement appliqué.
Le projet est autorisé sous la licence du MIT.
J'ai testé toutes les fonctions de cette bibliothèque sur tous mes haut-parleurs Samsung Multiroom, et le pire qui s'est produit, c'est que les haut-parleurs se sont figés lors de la réception d'appels défectueux et avaient besoin d'une réinitialisation dure. Mais je ne peux pas garantir que votre haut-parleur est compatible avec cette bibliothèque, et vous ne pouvez pas me tenir responsable si vous briquez votre haut-parleur lorsque vous utilisez cette bibliothèque.
Ce projet utilise le versioning sémantique. Le format Changelog est basé sur Keep A Changelog
Ce projet n'aurait pas été possible sans, mais sans s'y limiter, les projets suivants: