QuantumEntangledAndy / neolink

An RTSP bridge to Reolink IP cameras
GNU Affero General Public License v3.0
366 stars 49 forks source link

Windows problem? Failed to connect to camera, Timed out while waiting for camera reply #49

Closed Veuchez closed 1 year ago

Veuchez commented 1 year ago

I have Argus 3 Pro. If I use the Ubuntu package I have no problem while if I use Docker, neolink tries to connect via UDP but times out and does not connect. I think it's the same problem this user had.

[2021-11-28T20:11:25Z INFO  neolink::rtsp] Office: Connecting to camera at UID: xxx

[2021-11-28T20:11:25Z INFO  neolink::rtsp] Office: Logging in

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Connecting to camera at UID: xxx

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Logging in

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Connected and logged in

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Connected and logged in

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Starting video stream Sub Stream (Fluent)

[2021-11-28T20:11:26Z INFO  neolink::rtsp] Office: Camera time is already set: 2021-11-28 21:11:25 +1

[2021-11-28T20:11:27Z INFO  neolink::rtsp] Office: Camera reports firmware version 1221_246_237_21

Originally posted by @Banditen01 in https://github.com/QuantumEntangledAndy/neolink/issues/11#issuecomment-981144497

QuantumEntangledAndy commented 1 year ago

What makes you say it's a timeout? There's no log indicating this from what you've shown?

Since there's nothing in the log you showed. Are you saying there's a timeout from the client end? Which client are you trying? Vlc?

It may be helpful if you set the environmental variable GST_DEBUG to 3 and then try to connect it should reveal more information about the process.

The issue you linked was from a year ago the code has moved on a lot since then. Such that the source of that error has been completely reworked to eliminated the cause of timeout he was experiencing.

Veuchez commented 1 year ago

Sorry, you're right... This is the error message I get on the docker log:

2023-03-29 16:51:15 [2023-03-29T14:51:15Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at UID: 95270002NFXXXXF4
2023-03-29 16:52:15 [2023-03-29T14:52:15Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 16:52:15     
2023-03-29 16:52:15     Caused by:
2023-03-29 16:52:15         0: Failed to connect to camera ingresso at UID: 95270002NFXXXXF4 on channel 0
2023-03-29 16:52:15         1: Timed out while waiting for camera reply
Veuchez commented 1 year ago

This is the docker log with variable GST_DEBUG=3

2023-03-29 16:59:58 [2023-03-29T14:59:58Z INFO  neolink] Neolink 4fcaf4d538dc6e05434690bdf7f3a3bc22b077e3 release
2023-03-29 16:59:58 0:00:00.117118800    22 0x55e6d12cc030 WARN                  ladspa gstladspa.c:507:plugin_init:<plugin55> no LADSPA plugins found, check LADSPA_PATH
2023-03-29 16:59:58 0:00:00.217989500    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x120000: 'AVR (Audio Visual Research)' is not mapped
2023-03-29 16:59:58 0:00:00.218091400    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x180000: 'CAF (Apple Core Audio File)' is not mapped
2023-03-29 16:59:58 0:00:00.218098100    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x100000: 'HTK (HMM Tool Kit)' is not mapped
2023-03-29 16:59:58 0:00:00.218103900    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xc0000: 'MAT4 (GNU Octave 2.0 / Matlab 4.2)' is not mapped
2023-03-29 16:59:58 0:00:00.218106700    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xd0000: 'MAT5 (GNU Octave 2.1 / Matlab 5.0)' is not mapped
2023-03-29 16:59:58 0:00:00.218109300    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x210000: 'MPC (Akai MPC 2k)' is not mapped
2023-03-29 16:59:58 0:00:00.218112800    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xe0000: 'PVF (Portable Voice Format)' is not mapped
2023-03-29 16:59:58 0:00:00.218115700    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x160000: 'SD2 (Sound Designer II)' is not mapped
2023-03-29 16:59:58 0:00:00.218121100    22 0x55e6d12cc030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x190000: 'WVE (Psion Series 3)' is not mapped
2023-03-29 16:59:58 [2023-03-29T14:59:58Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `x264 (gst-plugins-ugly)` for `x264enc` element. Required to paused certain cameras
2023-03-29 16:59:58 [2023-03-29T14:59:58Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h264` element. Required to paused certain cameras
2023-03-29 16:59:58 [2023-03-29T14:59:58Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h265` element. Required to paused certain cameras
2023-03-29 16:59:58 [2023-03-29T14:59:58Z INFO  neolink::rtsp] Starting RTSP Server at 0.0.0.0:8554
2023-03-29 16:59:58 [2023-03-29T14:59:58Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at UID: 95270002NFXXXXF4
2023-03-29 17:00:58 [2023-03-29T15:00:58Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 17:00:58     
2023-03-29 17:00:58     Caused by:
2023-03-29 17:00:58         0: Failed to connect to camera ingresso at UID: 95270002NFXXXXF4 on channel 0
2023-03-29 17:00:58         1: Timed out while waiting for camera reply
2023-03-29 17:00:58 [2023-03-29T15:00:58Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at UID: 95270002NFXXXX4
QuantumEntangledAndy commented 1 year ago

Ah this issue is about a failed discovery where it tried to look up the ip address for the UID. Do you know the IP address of the node?

Discovery works like this:

  1. Send broadcast to local networks (requires a switch that supports broadcasts, so docker may block these)
  2. Send a request to reolink servers to learn the ip
  3. Send a request to reolink servers to have the camera contact our ip address
  4. Send a request to reolink servers to relay our connections

If you can't do broadcast and the connection to the reolink servers is blocked for some reason then discovery will fail

If you know the IP address you can specify it in the address field of the toml and it will try and connect direct to that

Veuchez commented 1 year ago

Ah, questo problema riguarda una scoperta fallita in cui ha cercato di cercare l'indirizzo IP per l'UID. Conosci l'indirizzo IP del nodo?

La scoperta funziona così:

  1. Invia trasmissione alle reti locali (richiede uno switch che supporti le trasmissioni, quindi la finestra mobile potrebbe bloccarle)
  2. Invia una richiesta ai server reolink per conoscere l'ip
  3. Invia una richiesta ai server reolink per fare in modo che la telecamera contatti il ​​nostro indirizzo IP
  4. Invia una richiesta per ricollegare i server per inoltrare le nostre connessioni

Se non puoi eseguire la trasmissione e la connessione ai server reolink è bloccata per qualche motivo, il rilevamento fallirà

Se conosci l'indirizzo IP puoi specificarlo nel campo dell'indirizzo del toml e proverà a connettersi direttamente a quello

I know the ip address of all my Reolink... Docker is on 192.168.0.XXX The cameras are on 192.168.2.XXX

The strange thing is that if I install Neolink directly in Ubuntu everything works, in docker it doesn't.

QuantumEntangledAndy commented 1 year ago

If I had to guess it's because of the extra network issues that docket brings in. I'm not sure how good your docker understanding is. But docker networks are created as virtual adapters with NAT forwarding setup in the iptables. Discovery works via udp ports and which port is used is random. As a result we cannot expose all possible random ports in the docker config. Those means that some uid discoveries will fail (most notably broadcasts and the one where the camera tries to contact us). If your outgoing network is also failing then discovery will fail and you get your error messages.

If your not already please try setting the network in docker to host mode. It would help by avoiding some of these issues.

QuantumEntangledAndy commented 1 year ago

So two things to try

[[cameras]]
uid = "SOMEUID"
address = "192.168.2.XXX:2018"
# OtherOptions like usernames and passwords
Veuchez commented 1 year ago

It won't let me enter both

2023-03-29 20:37:57 [2023-03-29T18:37:57Z INFO  neolink] Neolink 4fcaf4d538dc6e05434690bdf7f3a3bc22b077e3 release
2023-03-29 20:37:57 Error: Failed to validate the "/etc/neolink.toml" config file
2023-03-29 20:37:57 
2023-03-29 20:37:57 Caused by:
2023-03-29 20:37:57     ValidationErrors({"cameras": List({0: ValidationErrors({"__all__": Field([ValidationError { code: "Must provide either camera address or uid not both", message: None, params: {} }])})})})
QuantumEntangledAndy commented 1 year ago

Ah right that change is not in master yet. It is in #46 until I can finish all my tests.

QuantumEntangledAndy commented 1 year ago

You can get the test build here

docker pull quantumentangledandy/neolink:feature-UidAddr

Veuchez commented 1 year ago

but the port 2018 do I have to insert it in the address?

2023-03-29 21:03:19 [2023-03-29T19:03:19Z INFO  neolink] Neolink c68ae1d5b8a1631bd1a89b64061d11438c552b23 release
2023-03-29 21:03:19 [2023-03-29T19:03:19Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `x264 (gst-plugins-ugly)` for `x264enc` element. Required to paused certain cameras
2023-03-29 21:03:19 [2023-03-29T19:03:19Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h264` element. Required to paused certain cameras
2023-03-29 21:03:19 [2023-03-29T19:03:19Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h265` element. Required to paused certain cameras
2023-03-29 21:03:19 [2023-03-29T19:03:19Z INFO  neolink::rtsp] Starting RTSP Server at 0.0.0.0:8554
2023-03-29 21:03:19 [2023-03-29T19:03:19Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101:2018, UID: 95270002NFXXXXF4
2023-03-29 21:03:24 [2023-03-29T19:03:24Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 21:03:24     
2023-03-29 21:03:24     Caused by:
2023-03-29 21:03:24         0: Failed to connect to camera ingresso at Address: 192.168.2.101:2018, UID: 95270002NFXXXXF4 on channel 0
2023-03-29 21:03:24         1: Cannot contact camera at given address
2023-03-29 21:03:24 [2023-03-29T19:03:24Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101:2018, UID: 95270002NFXXXXF4
QuantumEntangledAndy commented 1 year ago

This is one of the things I was trying to sort out. The intended behaviour is with OR without the port it should work. But it didn't always do what I expected.

QuantumEntangledAndy commented 1 year ago

Perhaps we should try a more basic test first.

Can you run this

docker run -it --rm quantumentangledandy/neolink:feature-UidAddr /bin/bash

Then once inside the dockers bash try and ping the cameras ip address that will tell us if there are any other possible issues that could be giving up trouble

ping 192.168.2.XXX
Veuchez commented 1 year ago

root@b125a9068786:/# ping 192.168.2.101
PING 192.168.2.101 (192.168.2.101) 56(84) bytes of data.
64 bytes from 192.168.2.101: icmp_seq=1 ttl=36 time=295 ms
64 bytes from 192.168.2.101: icmp_seq=2 ttl=36 time=70.8 ms
64 bytes from 192.168.2.101: icmp_seq=3 ttl=36 time=88.2 ms
64 bytes from 192.168.2.101: icmp_seq=4 ttl=36 time=320 ms
64 bytes from 192.168.2.101: icmp_seq=5 ttl=36 time=36.5 ms
64 bytes from 192.168.2.101: icmp_seq=6 ttl=36 time=160 ms
64 bytes from 192.168.2.101: icmp_seq=7 ttl=36 time=125 ms
64 bytes from 192.168.2.101: icmp_seq=8 ttl=36 time=308 ms
^C
--- 192.168.2.101 ping statistics ---
8 packets transmitted, 8 received, 0% packet loss, time 17ms
rtt min/avg/max/mdev = 36.507/175.563/320.315/108.187 ms
QuantumEntangledAndy commented 1 year ago

Ok that tells us we have a route there. I wonder why the discovery is failing. Can you turn on trace level logging and post that. Set the env variable RUST_LOG to trace and lets see what we get

Veuchez commented 1 year ago
2023-03-29 21:24:19 [2023-03-29T19:24:19Z INFO  neolink] Neolink c68ae1d5b8a1631bd1a89b64061d11438c552b23 release
2023-03-29 21:24:20 0:00:00.110532800    21 0x5643258d7030 WARN                  ladspa gstladspa.c:507:plugin_init:<plugin55> no LADSPA plugins found, check LADSPA_PATH
2023-03-29 21:24:20 0:00:00.170953900    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x120000: 'AVR (Audio Visual Research)' is not mapped
2023-03-29 21:24:20 0:00:00.171064700    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x180000: 'CAF (Apple Core Audio File)' is not mapped
2023-03-29 21:24:20 0:00:00.171070900    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x100000: 'HTK (HMM Tool Kit)' is not mapped
2023-03-29 21:24:20 0:00:00.171076100    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xc0000: 'MAT4 (GNU Octave 2.0 / Matlab 4.2)' is not mapped
2023-03-29 21:24:20 0:00:00.171078800    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xd0000: 'MAT5 (GNU Octave 2.1 / Matlab 5.0)' is not mapped
2023-03-29 21:24:20 0:00:00.171081200    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x210000: 'MPC (Akai MPC 2k)' is not mapped
2023-03-29 21:24:20 0:00:00.171084800    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0xe0000: 'PVF (Portable Voice Format)' is not mapped
2023-03-29 21:24:20 0:00:00.171088100    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x160000: 'SD2 (Sound Designer II)' is not mapped
2023-03-29 21:24:20 0:00:00.171093100    21 0x5643258d7030 WARN                 default gstsf.c:98:gst_sf_create_audio_template_caps: format 0x190000: 'WVE (Psion Series 3)' is not mapped
2023-03-29 21:24:20 [2023-03-29T19:24:20Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `x264 (gst-plugins-ugly)` for `x264enc` element. Required to paused certain cameras
2023-03-29 21:24:20 [2023-03-29T19:24:20Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h264` element. Required to paused certain cameras
2023-03-29 21:24:20 [2023-03-29T19:24:20Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h265` element. Required to paused certain cameras
2023-03-29 21:24:20 [2023-03-29T19:24:20Z INFO  neolink::rtsp] Starting RTSP Server at 0.0.0.0:8554
2023-03-29 21:24:20 [2023-03-29T19:24:20Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101:2018, UID: 95270002NFXXXXF4
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink::utils] Camera Info: BcCameraOpt { name: "ingresso", channel_id: 0, addrs: [192.168.2.101], uid: Some("95270002NFXXXXF4"), port: Some(2018), protocol: TcpUdp, discovery: Relay, aux_printing: None, credentials: {"username": "admin", "password": "******"} }
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(0), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol] ingresso: Starting Local discovery
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol] Starting Relay
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol] Starting Remote discovery
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol] Starting Map
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(1), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(2), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(4), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(3), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol::connection::discovery] client_id: -1092498952
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] registering event source with poller: token=Token(5), interests=READABLE | WRITABLE
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol::connection::discovery] client_id: -1845939082
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bc_protocol::connection::discovery] Broadcasting to: [(255.255.255.255, 2015), (255.255.255.255, 2018), (172.17.255.255, 2015), (172.17.255.255, 2018)]
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol::connection::discovery] Also sending to [192.168.2.101:2015]
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "P2P"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(P2P, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "M2C_Q_R"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(M2C_Q_R, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "reg"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(reg, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(58200)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(reg)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "relay"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(relay, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(58100)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(relay)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "log"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(log, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(57850)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(log)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "t"
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(t, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(9996)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(t)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(timer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(timer)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(retry, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(retry)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(mtu, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(1350)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(mtu)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(debug, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(251658240)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(debug)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(ac, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(-1700607721)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(ac)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched StartElement(rsp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched Characters(0)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(rsp)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z DEBUG yaserde::de] Fetched EndElement(M2C_Q_R)
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE neolink_core::bc_protocol::connection::discovery] lookup: UidLookupResults { reg: 13.36.238.12:58200, relay: 13.36.238.12:58100 }
2023-03-29 21:24:20 [2023-03-29T19:24:20Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:23 [2023-03-29T19:24:23Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:23 [2023-03-29T19:24:23Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:25 [2023-03-29T19:24:25Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:24:25 [2023-03-29T19:24:25Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 21:24:25     
2023-03-29 21:24:25     Caused by:
2023-03-29 21:24:25         0: Failed to connect to camera ingresso at Address: 192.168.2.101:2018, UID: 95270002NFXXXXF4 on channel 0
2023-03-29 21:24:25         1: Cannot contact camera at given address
QuantumEntangledAndy commented 1 year ago

Hmm the optional addresses is missing the right one Also sending to [192.168.2.101:2015] can you try ommiting the port in the address config

Veuchez commented 1 year ago
2023-03-29 21:36:01 [2023-03-29T19:36:01Z INFO  neolink] Neolink c68ae1d5b8a1631bd1a89b64061d11438c552b23 release
2023-03-29 21:36:01 [2023-03-29T19:36:01Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `x264 (gst-plugins-ugly)` for `x264enc` element. Required to paused certain cameras
2023-03-29 21:36:01 [2023-03-29T19:36:01Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h264` element. Required to paused certain cameras
2023-03-29 21:36:01 [2023-03-29T19:36:01Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h265` element. Required to paused certain cameras
2023-03-29 21:36:01 [2023-03-29T19:36:01Z INFO  neolink::rtsp] Starting RTSP Server at 0.0.0.0:8554
2023-03-29 21:36:01 [2023-03-29T19:36:01Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101, UID: 95270002NF6XXXXF4
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink::utils] Camera Info: BcCameraOpt { name: "ingresso", channel_id: 0, addrs: [192.168.2.101], uid: Some("95270002NF6XXXXF4"), port: None, protocol: TcpUdp, discovery: Relay, aux_printing: None, credentials: {"username": "admin", "password": "******"} }
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol] ingresso: Starting Local discovery
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE mio::poll] registering event source with poller: token=Token(0), interests=READABLE | WRITABLE
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol] Starting Remote discovery
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol] Starting Relay
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol] Starting Map
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE mio::poll] registering event source with poller: token=Token(3), interests=READABLE | WRITABLE
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE mio::poll] registering event source with poller: token=Token(1), interests=READABLE | WRITABLE
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol::connection::discovery] client_id: 1763010920
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE mio::poll] registering event source with poller: token=Token(2), interests=READABLE | WRITABLE
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE mio::poll] registering event source with poller: token=Token(4), interests=READABLE | WRITABLE
2023-03-29 21:36:01 [2023-03-29T19:36:01Z DEBUG neolink_core::bc_protocol::connection::discovery] Broadcasting to: [(255.255.255.255, 2015), (255.255.255.255, 2018), (172.17.255.255, 2015), (172.17.255.255, 2018)]
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol::connection::discovery] Also sending to [192.168.2.101:2018, 192.168.2.101:2015]
2023-03-29 21:36:01 [2023-03-29T19:36:01Z TRACE neolink_core::bc_protocol::connection::discovery] client_id: 242661976
2023-03-29 21:36:02 [2023-03-29T19:36:02Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "P2P"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(P2P, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "M2C_Q_R"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(M2C_Q_R, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "reg"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(reg, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(58200)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(reg)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "relay"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(relay, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(58100)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(relay)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "log"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(log, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(57850)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(log)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "t"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(t, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(9996)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(t)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(timer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(timer)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(retry, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(retry)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(mtu, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(1350)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(mtu)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(debug, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(251658240)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(debug)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ac, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(-1700607721)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ac)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(rsp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(0)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(rsp)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(M2C_Q_R)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z TRACE neolink_core::bc_protocol::connection::discovery] lookup: UidLookupResults { reg: 13.36.238.12:58200, relay: 13.36.238.12:58100 }
2023-03-29 21:36:02 [2023-03-29T19:36:02Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "P2P"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(P2P, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "M2C_Q_R"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(M2C_Q_R, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "reg"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(reg, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(58200)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(reg)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "relay"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(relay, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(58100)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(relay)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "log"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(log, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(57850)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(log)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG neolink_core::bcudp::xml] Struct: start to parse "t"
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(t, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ip, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(13.36.238.12)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ip)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(port, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(9996)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(port)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(t)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(timer, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(timer)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(retry, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(retry)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(mtu, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(1350)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(mtu)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(debug, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(251658240)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(debug)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(ac, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(-1700607721)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(ac)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched StartElement(rsp, {"": "", "xml": "http://www.w3.org/XML/1998/namespace", "xmlns": "http://www.w3.org/2000/xmlns/"})
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched Characters(0)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(rsp)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z DEBUG yaserde::de] Fetched EndElement(M2C_Q_R)
2023-03-29 21:36:02 [2023-03-29T19:36:02Z TRACE neolink_core::bc_protocol::connection::discovery] lookup: UidLookupResults { reg: 13.36.238.12:58200, relay: 13.36.238.12:58100 }
2023-03-29 21:36:02 [2023-03-29T19:36:02Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:36:04 [2023-03-29T19:36:04Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:36:06 [2023-03-29T19:36:06Z TRACE mio::poll] deregistering event source from poller
2023-03-29 21:36:06 [2023-03-29T19:36:06Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 21:36:06     
2023-03-29 21:36:06     Caused by:
2023-03-29 21:36:06         0: Failed to connect to camera ingresso at Address: 192.168.2.101, UID: 95270002NF6XXXXF4 on channel 0
2023-03-29 21:36:06         1: Cannot contact camera at given address
QuantumEntangledAndy commented 1 year ago

As far as I can tell the cameras reply is just not being recieved at all. We send out several messages but nothing from the camera comes back. Please try this with host mode networking --net=host

Veuchez commented 1 year ago

It is already in host mode

config

Veuchez commented 1 year ago

I don't know if it helps but docker is installed on windows 11

QuantumEntangledAndy commented 1 year ago

Is that really how you set host mode? With the environment. I ask because the broadcast is 172.17.255.255 which looks like a docker internal ip range

QuantumEntangledAndy commented 1 year ago

Seems hostmode is NOT avalible for docker for windows

QuantumEntangledAndy commented 1 year ago

https://docs.docker.com/network/network-tutorial-host/#prerequisites

The host networking driver only works on Linux hosts, and is not supported on
Docker Desktop for Mac, Docker Desktop for Windows, or Docker EE for Windows Server.
Veuchez commented 1 year ago

That's why it doesn't go then...do you know if there is a way around the problem?

QuantumEntangledAndy commented 1 year ago

Lets limit ourselves to just local discovery for now

[[cameras]]
# uid/adress etc
discovery = "local"

It will not try to connect to reolink just do local. Maybe that will make it easier to spot something in the log

Veuchez commented 1 year ago
2023-03-29 22:01:16 [2023-03-29T20:01:16Z INFO  neolink] Neolink c68ae1d5b8a1631bd1a89b64061d11438c552b23 release
2023-03-29 22:01:16 Error: Failed to parse the "/etc/neolink.toml" config file
2023-03-29 22:01:16 
2023-03-29 22:01:16 Caused by:
2023-03-29 22:01:16     missing field `name` for key `cameras` at line 3 column 1
QuantumEntangledAndy commented 1 year ago

Umm did you delete too much from your toml? I just wanted you to add the discovery = "local" not delete everything else

Veuchez commented 1 year ago
# uid/adress etc

I thought you were supposed to comment everything

Veuchez commented 1 year ago
2023-03-29 22:05:32 [2023-03-29T20:05:32Z INFO  neolink] Neolink c68ae1d5b8a1631bd1a89b64061d11438c552b23 release
2023-03-29 22:05:32 [2023-03-29T20:05:32Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `x264 (gst-plugins-ugly)` for `x264enc` element. Required to paused certain cameras
2023-03-29 22:05:32 [2023-03-29T20:05:32Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h264` element. Required to paused certain cameras
2023-03-29 22:05:32 [2023-03-29T20:05:32Z WARN  neolink::rtsp::gst] Missing the gstreamer plugin `libav (gst-libav)` for `avdec_h265` element. Required to paused certain cameras
2023-03-29 22:05:32 [2023-03-29T20:05:32Z INFO  neolink::rtsp] Starting RTSP Server at 0.0.0.0:8554
2023-03-29 22:05:32 [2023-03-29T20:05:32Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101, UID: 95270002NF6XXXXF4
2023-03-29 22:05:32 [2023-03-29T20:05:32Z TRACE neolink::utils] Camera Info: BcCameraOpt { name: "ingresso", channel_id: 0, addrs: [192.168.2.101], uid: Some("95270002NF6XXXXF4"), port: None, protocol: TcpUdp, discovery: Local, aux_printing: None, credentials: {"username": "admin", "password": "******"} }
2023-03-29 22:05:32 [2023-03-29T20:05:32Z TRACE neolink_core::bc_protocol] ingresso: Starting Local discovery
2023-03-29 22:05:32 [2023-03-29T20:05:32Z TRACE mio::poll] registering event source with poller: token=Token(0), interests=READABLE | WRITABLE
2023-03-29 22:05:32 [2023-03-29T20:05:32Z DEBUG neolink_core::bc_protocol::connection::discovery] Broadcasting to: [(255.255.255.255, 2015), (255.255.255.255, 2018), (172.17.255.255, 2015), (172.17.255.255, 2018)]
2023-03-29 22:05:32 [2023-03-29T20:05:32Z TRACE neolink_core::bc_protocol::connection::discovery] Also sending to [192.168.2.101:2018, 192.168.2.101:2015]
2023-03-29 22:05:32 [2023-03-29T20:05:32Z TRACE mio::poll] registering event source with poller: token=Token(1), interests=READABLE | WRITABLE
2023-03-29 22:05:34 [2023-03-29T20:05:34Z TRACE mio::poll] deregistering event source from poller
2023-03-29 22:05:37 [2023-03-29T20:05:37Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 22:05:37     
2023-03-29 22:05:37     Caused by:
2023-03-29 22:05:37         0: Failed to connect to camera ingresso at Address: 192.168.2.101, UID: 95270002NF6XXXXF4 on channel 0
2023-03-29 22:05:37         1: Cannot contact camera at given address
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE mio::poll] deregistering event source from poller
2023-03-29 22:05:37 [2023-03-29T20:05:37Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101, UID: 95270002NF6XXXXF4
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE neolink::utils] Camera Info: BcCameraOpt { name: "ingresso", channel_id: 0, addrs: [192.168.2.101], uid: Some("95270002NF6XXXXF4"), port: None, protocol: TcpUdp, discovery: Local, aux_printing: None, credentials: {"username": "admin", "password": "******"} }
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE neolink_core::bc_protocol] ingresso: Starting Local discovery
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE mio::poll] registering event source with poller: token=Token(16777216), interests=READABLE | WRITABLE
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE mio::poll] registering event source with poller: token=Token(16777217), interests=READABLE | WRITABLE
2023-03-29 22:05:37 [2023-03-29T20:05:37Z DEBUG neolink_core::bc_protocol::connection::discovery] Broadcasting to: [(255.255.255.255, 2015), (255.255.255.255, 2018), (172.17.255.255, 2015), (172.17.255.255, 2018)]
2023-03-29 22:05:37 [2023-03-29T20:05:37Z TRACE neolink_core::bc_protocol::connection::discovery] Also sending to [192.168.2.101:2018, 192.168.2.101:2015]
2023-03-29 22:05:39 [2023-03-29T20:05:39Z TRACE mio::poll] deregistering event source from poller
2023-03-29 22:05:42 [2023-03-29T20:05:42Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 22:05:42     
2023-03-29 22:05:42     Caused by:
2023-03-29 22:05:42         0: Failed to connect to camera ingresso at Address: 192.168.2.101, UID: 95270002NF6XXXXF4 on channel 0
2023-03-29 22:05:42         1: Cannot contact camera at given address
2023-03-29 22:05:42 [2023-03-29T20:05:42Z INFO  neolink::rtsp::states] ingresso: Connecting to camera at Address: 192.168.2.101, UID: 95270002NF6XXXXF4
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE mio::poll] deregistering event source from poller
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE neolink::utils] Camera Info: BcCameraOpt { name: "ingresso", channel_id: 0, addrs: [192.168.2.101], uid: Some("95270002NF6XXXXF4"), port: None, protocol: TcpUdp, discovery: Local, aux_printing: None, credentials: {"username": "admin", "password": "******"} }
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE neolink_core::bc_protocol] ingresso: Starting Local discovery
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE mio::poll] registering event source with poller: token=Token(33554432), interests=READABLE | WRITABLE
2023-03-29 22:05:42 [2023-03-29T20:05:42Z DEBUG neolink_core::bc_protocol::connection::discovery] Broadcasting to: [(255.255.255.255, 2015), (255.255.255.255, 2018), (172.17.255.255, 2015), (172.17.255.255, 2018)]
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE neolink_core::bc_protocol::connection::discovery] Also sending to [192.168.2.101:2018, 192.168.2.101:2015]
2023-03-29 22:05:42 [2023-03-29T20:05:42Z TRACE mio::poll] registering event source with poller: token=Token(33554433), interests=READABLE | WRITABLE
2023-03-29 22:05:45 [2023-03-29T20:05:45Z TRACE mio::poll] deregistering event source from poller
2023-03-29 22:05:47 [2023-03-29T20:05:47Z WARN  neolink::rtsp] ingresso: Retryable error: ingresso: Could not connect camera
2023-03-29 22:05:47     
2023-03-29 22:05:47     Caused by:
2023-03-29 22:05:47         0: Failed to connect to camera ingresso at Address: 192.168.2.101, UID: 95270002NF6XXXXF4 on channel 0
2023-03-29 22:05:47         1: Cannot contact camera at given address
QuantumEntangledAndy commented 1 year ago

Nothing of interest. It's almost like there is something blocking the returning messages. Any chance for firewall issues here?

QuantumEntangledAndy commented 1 year ago

Restarting the docker deamon to force it to reconfigure the network might be worth a try here, but I cannot see anything that suggets a bug on the coding end. Looks like something is up with the messages on the route back

Veuchez commented 1 year ago

I disabled the firewall just to check if it was the one that was blocking.

QuantumEntangledAndy commented 1 year ago

I see well at this point I'd probably need a wireshark dump to see what was heppening on the network really can't tell what to suggest next.

Veuchez commented 1 year ago

I just did a test. made machine with ubuntu and installed docker. Started container and the cameras go without problems. I didn't even use --net=host

QuantumEntangledAndy commented 1 year ago

So I'm looking at the different network modes that windows supports. https://learn.microsoft.com/en-us/virtualization/windowscontainers/container-networking/architecture

It has the following networks modes

(This is not an enviromental variable but a docker configuration)

Veuchez commented 1 year ago

Now I'll do some tests ... let's see if I'm capable ..

Veuchez commented 1 year ago

I did some tests, I don't think the problem is with docker but with windows itself. Installing the executable on windows, the camera does not connect anyway. I also turned off the firewall. Same network, same configuration, pc with ubuntu works, pc with windows won't connect. If it was a network or firewall problem it would give me the same problem on linux as well. I have tried both windows 11 and windows 10. I also tried on different computers.

QuantumEntangledAndy commented 1 year ago

I am going to close this as something I can't replicate and it is known to work on other windows machines. If you still need some specific help though please do ask