Charmed Quark Systems, Ltd. - Support Forums and Community
Sage Media Server driver (beta) - Printable Version

+- Charmed Quark Systems, Ltd. - Support Forums and Community (https://www.charmedquark.com/vb_forums)
+-- Forum: General Discussion (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=3)
+--- Forum: Driver Development (https://www.charmedquark.com/vb_forums/forumdisplay.php?fid=13)
+--- Thread: Sage Media Server driver (beta) (/showthread.php?tid=5497)



Sage Media Server driver (beta) - SamVimes2 - 10-15-2009

Fonceur Wrote:Then you probably want to look at the backdoor methods...

Must....resist...inappropriate jokes...urge....to snicker...rising...

Can you explain in much more detail what this means (*in context of CQC/Sage*)? I have no idea how to do anything with a/this driver other than use the fields like a normal driver, but always excited to experiment and try new things.


Sage Media Server driver (beta) - Fonceur - 10-15-2009

SamVimes2 Wrote:Must....resist...inappropriate jokes...urge....to snicker...rising...
Hey, it's not my term... Wink

Quote:I have no idea how to do anything with a/this driver other than use the fields like a normal driver, but always excited to experiment and try new things.
The problem with using fields, is that every clients get to access the same ones... So for example, let say Client1 is accessing the SageTV CQC channels template, and checking the list of TV shows on ABC. If from Client2 someone tries to access the channels template, he will also see the ABC shows... He can switch to Fox, but then Client1 will also be switching to Fox, since both are using the same fields...

By using a QueryTextVal method, instead of using common fields, each Client will get a local copy of the content, so Client1 can check ABC and Client2 check Fox simultaneously, without interfering with each other... The drawback is that it is a lot messier, as you now have to deal with parsing one or more long text string, which you can't do without looking at the code itself (or getting some instructions). Thus the need for me to provide some sample templates... Wink


Sage Media Server driver (beta) - Hiller - 10-15-2009

Quote:By using a QueryTextVal method, instead of using common fields, each Client will get a local copy of the content, so Client1 can check ABC and Client2 check Fox simultaneously, without interfering with each other... The drawback is that it is a lot messier, as you now have to deal with parsing one or more long text string, which you can't do without looking at the code itself (or getting some instructions). Thus the need for me to provide some sample templates... Wink

I don't really write drivers and don't use Sage so I might be really off base here but couldn't you just add a field in the driver that was writable? From an IV I select that I want control of client1 or 2 or 3... That gets written to the driver and sets the appropriate variable behind the scenes.


Sage Media Server driver (beta) - Fonceur - 10-15-2009

Hiller Wrote:From an IV I select that I want control of client1 or 2 or 3... That gets written to the driver and sets the appropriate variable behind the scenes.
By Client1 (or IV-1) I meant something like the kitchen's touchscreen, and Client2 (or IV-2) the basement's touchscreen... As long as both are looking at the same SageDriver.Channel field, there is just no other way to have 2 different values of that field...


Sage Media Server driver (beta) - SomeWhatLost - 10-22-2009

this may sound like a stupid question, but where exactly can one find these mythical XML macros designed by jrlewis???
is there a link to them somewhere?
do they come with the latest CQC?


Sage Media Server driver (beta) - Fonceur - 10-22-2009

SomeWhatLost Wrote:this may sound like a stupid question, but where exactly can one find these mythical XML macros designed by jrlewis???
Currently, they are included with the driver, as I was running out of room with the max 5 files per message... Wink


Sage Media Server driver (beta) - SomeWhatLost - 10-22-2009

Fonceur Wrote:Currently, they are included with the driver, as I was running out of room with the max 5 files per message... Wink
cool, thanx...


Sage Media Server driver (beta) - SomeWhatLost - 10-25-2009

you know, I am not convinced this driver actually works?
whats up with this:
Code:
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCKit, CQCKit_DriverBase.cpp.2576, Status/App Status
    Driver 'SageMediaServ' is beginning initialization
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCKit, MEng.User.CQC.Drivers.SageTCP.SageMedia.DriverImpl_Dev.645, API Failed/Data Format
    A macro parse event occured
    Overrides must have identical parameters, return, and visibility as the overriden method
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCKit, MEng.User.CQC.Drivers.SageTCP.SageMedia.DriverImpl_Dev.653, API Failed/Data Format
    A macro parse event occured
    Expected a method call, object reference, or flow control statement here
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CIDMacroEng, CIDMacroEng_Parser.cpp.2184, Status/App Status, Error: 6505/0/0
    An unrecoverable error occured while parsing
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCKit, CQCKit_MEngErrHandler.cpp.237, Status/Data Format
    A C++ exception occured during macro parsing
    MEng.User.CQC.Drivers.SageTCP.SageMedia.DriverImpl_Dev  Line=653, Col=17)
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CIDMacroEng, CIDMacroEng_Parser.cpp.2184, Status/App Status, Error: 6505/0/0
    An unrecoverable error occured while parsing
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCGenDrvS, CQCGenDrvS_DriverGlue.cpp.1344, API Failed/App Status
    CML driver 'SageMediaServ' failed to compile
}
10/25 09:30:53-cqc-mms, CQCServer, CQCDrv_SageMediaServ_Thread16
{
    CQCKit, CQCKit_DriverBase.cpp.2646, Status/App Status
    Driver SageMediaServ returned failure status on initialization
}

the driver is stuck in "Wait for init" how do I make it go?


Sage Media Server driver (beta) - Fonceur - 10-25-2009

SomeWhatLost Wrote:you know, I am not convinced this driver actually works?
whats up with this:
It's working fine on my end... From the log, it seems like some driver implementations have changed on the beta version of CQC that you are using, so I would expect other non updated drivers to fail too... In particular that part:

Code:
Overrides must have identical parameters, return, and visibility as the overriden method

From it's location, it seems like a Send method was added, breaking mine... Wink So try the attached version. Or maybe I had a default method mark wrong and previous CQC versions were just not complaining about it...


Sage Media Server driver (beta) - SomeWhatLost - 10-25-2009

Fonceur Wrote:It's working fine on my end... From the log, it seems like some driver implementations have changed on the beta version of CQC that you are using, so I would expect other non updated drivers to fail too... In particular that part:

Code:
Overrides must have identical parameters, return, and visibility as the overriden method

From it's location, it seems like a Send method was added, breaking mine... Wink So try the attached version. Or maybe I had a default method mark wrong and previous CQC versions were just not complaining about it...
that seems to have done the trick, it loaded, connected, and now seems happy... now I just need to actually do something with it...