Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

`sendspin server` doesn't work offline

Aberta
#260 3 comentários 1 reação 2 responsáveis Ver no GitHub

@balloob já está trabalhando nisso.

Desde 5/6/2026.

  • #261 de @copilot-swe-agent — fechado sem integrar

Avaliação

Esta issue ainda não foi avaliada.

Descrição

When trying to run sendspin serve while not connencted to a network, I get the following exception:

INFO:aiosendspin.server.server:Starting Sendspin server on port 8927
INFO:aiosendspin.server.server:Sendspin server started successfully on 0.0.0.0:8927
ERROR:aiosendspin.server.server:Failed to start server on 0.0.0.0:8927: [Errno 19] No such device
Server error: [Errno 19] No such device
Traceback (most recent call last):
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/sendspin/cli.py", line 738, in main
    return asyncio.run(_run_serve_mode(args))
           ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.14/asyncio/runners.py", line 204, in run
    return runner.run(main)
           ~~~~~~~~~~^^^^^^
  File "/usr/lib64/python3.14/asyncio/runners.py", line 127, in run
    return self._loop.run_until_complete(task)
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/usr/lib64/python3.14/asyncio/base_events.py", line 719, in run_until_complete
    return future.result()
           ~~~~~~~~~~~~~^^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/sendspin/cli.py", line 693, in _run_serve_mode
    return await run_server(serve_config)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/sendspin/serve/__init__.py", line 195, in run_server
    await server.start_server(port=port, discover_clients=False)
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/aiosendspin/server/server.py", line 692, in start_server
    self._zc = AsyncZeroconf(
               ~~~~~~~~~~~~~^
        ip_version=IPVersion.V4Only,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
        interfaces=[host] if host != "0.0.0.0" else InterfaceChoice.Default,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/zeroconf/asyncio.py", line 170, in __init__
    self.zeroconf = zc or Zeroconf(
                          ~~~~~~~~^
        interfaces=interfaces,
        ^^^^^^^^^^^^^^^^^^^^^^
    ...<2 lines>...
        apple_p2p=apple_p2p,
        ^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/zeroconf/_core.py", line 202, in __init__
    listen_socket, respond_sockets = create_sockets(interfaces, unicast, ip_version, apple_p2p=apple_p2p)
                                     ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/zeroconf/_utils/net.py", line 459, in create_sockets
    add_multicast_member(cast(socket.socket, listen_socket), interface)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/perso/.local/share/uv/tools/sendspin/lib64/python3.14/site-packages/zeroconf/_utils/net.py", line 350, in add_multicast_member
    listen_socket.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, _value)
    ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
OSError: [Errno 19] No such device
ERROR:asyncio:Unclosed client session
client_session: <aiohttp.client.ClientSession object at 0x7fdfab3dde80>

Some more context about my usecase: I'm trying to troubleshoot an esphome sendspin speaker, and I wanted to try a simple setup where the speaker connects directly to my laptop running an access point, and use sendspin-cli to stream a (local) audio file to it.

Linguagem predominante
Python
Estrelas
190
Forks
36
Merge médio
11d 19h
PRs com merge (30d)
2

Preparar o ambiente

Ainda não verificamos os arquivos de configuração deste projeto. Comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de Sendspin/sendspin-python-cli

Todas as issues de Sendspin/sendspin-python-cli

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.