hyperion-project / hyperion.ng

The successor to Hyperion aka Hyperion Next Generation
https://hyperion-project.org/
MIT License
3.05k stars 377 forks source link

Manual set of flatbuffer forwarding target is unavailable #1713

Open bvasiliev opened 7 months ago

bvasiliev commented 7 months ago

Bug report

It is no longer possible to manually set IP of an flatbuffer forwarding destination without mDNS or SSDP.

Steps to reproduce

Run hyperion 2.0.15 or above without ENABLE_MDNS option.

Try to enter IP address in flatbuffer forwarding target in web interface path Network Services > Forwarder > Activate

What is expected?

Available manualy set up hosts and ports for an json and flatbuffer targets, as it works before 2.0.13 release.

What is actually happening?

Error message "Discovery of service type [flatbuffer] via ssdp not supported" occurs. The hosts and ports parameters fields are still not editable manually.

Forwarding option is unusable without ENABLE_MDNS.

System

Hyperion Server:
- Build:             (HEAD detached at 24a00e3b) (GitHub-70e1043e/24a00e3b-1676809483)
- Build time:        Feb 21 2023 22:31:27
- Git Remote:        https://github.com/hyperion-project/hyperion.ng.git
- Version:           2.0.15
- UI Lang:           en (BrowserLang: ru)
- UI Access:         expert
- Avail Screen Cap.: framebuffer,amlogic
- Avail Video  Cap.: v4l2
- Avail Audio  Cap.: 
- Avail Services:    boblight,effectengine,forwarder,flatbuffer,protobuffer,SSDP,borderdetection
- Config path:       /home/osmc/.hyperion
- Database:          read/write

Hyperion Server OS:
- Distribution:      Open Source Media Center
- Architecture:      arm64
- CPU Hardware:      OSMC Vero 4K / Vero 4K +
- Kernel:            linux (4.9.269-44-osmc (WS: 32))
- Root/Admin:        false
- Qt Version:        5.15.2
- Python Version:    3.9.2
Lord-Grey commented 6 months ago

As a workaround you can export the configuration, update the forwarder target server with its IP address and then import the config again. The forwarder process will then use the IP to connect to the remote system. I am currently at my mobile, but can share the json section to change when being at my PC.

bvasiliev commented 6 months ago

Workaround with export-edit-import works, thanks!

Modified config section:

    "forwarder": {
        "enable": true,
        "flatbuffer": [
            {
                "host": "192.168.0.2",
                "name": "HyperBian",
                "port": 19400
            }
        ],
        "flatbufferselect": [
            "192.168.0.2"
        ],
        "jsonapi": [
            {
                "host": "192.168.0.2",
                "name": "HyperBian",
                "port": 19444
            }
        ],
        "jsonapiselect": [
            "192.168.0.2"
        ]
Lord-Grey commented 6 months ago

Good to hear it is working. Just for completeness, you can also use an DNS-Hostname or an ipv6 address instead of the ipv4 one.