ossia / libossia

A modern C++, cross-environment distributed object model for creative coding and interaction scoring
https://ossia.io
GNU Lesser General Public License v3.0
206 stars 33 forks source link

[oscquery_protocol_server] pushing value doesn't send it over the network #347

Closed avilleret closed 6 years ago

avilleret commented 6 years ago

as noticed by @matcham and @jln- changing values in an oscquery device doesn't update the values on the client (for instance score)

this also happens between 2 Pd patchers

It appears that oscquery_server_protocol::m_clients is not filled with connected client. Requesting a value (by sending a bang to an [ø.remote] object) works.

avilleret commented 6 years ago

from : https://github.com/OSSIA/libossia/commit/fe16d223f2d3e1c3d9e465e3861b689ec7be1739

build with example, run ./ossia_network_oscquery_publication_example open score add device B, the /test/float value should change but it's not.

avilleret commented 6 years ago

to reproduce :

git clone https://github.com/OSSIA/libossia --depth=1
mkdir build-libossia-test/
cd build-libossia-test/
cmake ../libossia/ -GNinja -DOSSIA_EDITOR=OFF -DOSSIA_QT=OFF -DOSSIA_PD=OFF -DOSSIA_TESTING=ON -DOSSIA_PROTOCOL_MIDI=OFF -DOSSIA_EXAMPLES=OFF -DOSSIA_DATAFLOW=OFF -DOSSIA_PYTHON=OFF
Tests/ossia_OSCQueryTest

the test fails when comparing expected value with current client value after a change pushed from server.

avilleret commented 6 years ago

the test fails since 9bb5eb40ef19560a2d32383be8df1eed194cc560