0

RV Remote Sync Push

 I am using this to connect a master and a slave rv session.
rv -network -networkConnect host 45139 -flags syncPullFirst

The problem is that the slave only pulls the masters sources initially. When I change the source media in the master session, I have to either use sync>push session to all contacts, or pull from the slave. Can I set it up so the master session will automatically push when its source changes?

Thanks

5 comments

  • 0
    Avatar
    (Michael) Kessler

    Hi Matt,

    I'm sorry you are having syncing problems!

    Are you happening to use RV 7.2.0 or 7.2.1?  There was a regression introduced in RV 7.2.0 that caused an order of events in new sources that messed up syncing new sources.  This should be resolved in RV 7.2.2.  If you are indeed using one of those two versions, please try the same with RV 7.2.2 or 7.2.3, the latter you can get at www.tweaksoftware.com/downloads

     

    Thanks,
    -Kessler

  • 0
    Avatar
    Mattschiller

    Thanks, I am using 7.2.1. I may not be able to upgrade. Is there a python call to tell the session to push to all contacts?

  • 0
    Avatar
    Mattschiller

    I found the Mu method to push, but I am not sure how to pass args to it in python.

    from pymu import MuSymbol

    F = MuSymbol("sync.RemoteSync.remotePushSession")
    baseRemoteSync = MuSymbol("sync.RemoteSync")
    event = MuSymbol("Event")
    F(baseRemoteSync, event)


    Exception: Exception thrown while calling commands.remoteContacts -- exception: "nil argument to function"

     

  • 0
    Avatar
    Mattschiller

    That wast the wrong exception, here is the correct one.

    Exception: Exception thrown while calling sync.RemoteSync.remotePushSession -- exception: "nil argument to function"

  • 0
    Avatar
    Mattschiller

    let b = sessionAsByteArray();

    if (_showFeedback) displayFeedback("Sending Session Data ... ", 1, syncGlyph);

    deb ("************* pushSessionToAll %s" % _contacts);
    for_each (c; _contacts)
    {
    deb ("******* pushing session to '%s'" % c._contact);
    remoteSendDataEvent("remote-push-session",
    c._session,
    "session-data",
    b,
    string[] {c._contact});
    }

    So in sync.mu pushSessionToAll method it is using remoteSendDataEvent which is available in pythons rv.commands but how does python access sessionAsByteArray() or even build a proper array like that? I only see sessionName() available in python. I also do not know how to get the contacts sessions as c._session is doing.


    I would gladly just do this in mu, but I do not know how to access the current session and contact objects to populate the data needed for remoteSendDataEvent. I could then just use pymu.muEval.

    I confirmed I can not upgrade to 7.2 any time soon.

    Thanks

Please sign in to leave a comment.