home
products
contribute
download
documentation
forum
Home
Forums
New posts
Search forums
What's new
New posts
All posts
Latest activity
Members
Registered members
Current visitors
Donate
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Search titles only
By:
Menu
Log in
Register
Navigation
Install the app
Install
More options
Contact us
Close Menu
Forums
Products
TV-Server
For The Record - The rule-based scheduling suite
Contact us
RSS
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="dvdfreak" data-source="post: 199071" data-attributes="member: 21313"><p>Since I see it as an isolated subsystem, a service that can be used by other programs, all and everything going through the service API. So no direct database access for example, and obviously als no direct database access from within TvScheduler to another system.</p><p></p><p>If TVE3 would use TvScheduler as a subsystem it would itself no longer have any need for a Program table, nor a Schedules table, a Recording table,... Now I know this is no quick-quick change (far from it), but from a design point-of-view it's the only way to go IMHO.</p><p></p><p>Looking at dependencies I'd say TvScheduler is lower on the ladder than TVE3. So TVE3 uses TvScheduler, and not the other way around. That's what I started to do right now with my TVE3 plugin, make TVE3 talk to TvScheduler.</p><p></p><p></p><p></p><p>How does ClickFinder get its data into TVE3's database right now? Direct insert? Is this a plugin? It should be super-easy to modify this and have it insert data into TvScheduler's guide, there are service methods to do this:</p><p></p><p>[code]</p><p> [OperationContract]</p><p> [FaultContract(typeof(TvSchedulerException))]</p><p> Guid EnsureChannel(string xmltvId, string displayName);</p><p></p><p> [OperationContract]</p><p> [FaultContract(typeof(TvSchedulerException))]</p><p> GuideChannel GetChannelByXmlTvId(string xmlTvId);</p><p></p><p> [OperationContract]</p><p> [FaultContract(typeof(TvSchedulerException))]</p><p> GuideChannel GetChannelByName(string name);</p><p></p><p> [OperationContract]</p><p> [FaultContract(typeof(TvSchedulerException))]</p><p> Guid ImportProgram(GuideProgram guideProgram, GuideSource source);</p><p></p><p> [OperationContract]</p><p> [FaultContract(typeof(TvSchedulerException))]</p><p> void ImportPrograms(GuideProgram[] guidePrograms, GuideSource source);</p><p>[/code]</p><p></p><p></p><p></p><p>This will be in the next release. Only for the "Contains" rule for obvious reasons <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /></p><p></p><p></p><p></p><p>Yes, it's clear. Perhaps it is better and clearer to add a button to purge recorded episode titles, so it "forgets" about them <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> Anyway, still need to implement this rule for starters, then we can finetune it...</p><p></p><p></p><p></p><p>An "Add All" button will be in the next release.</p><p></p><p></p><p></p><p>Thanks! I try to code to the highest quality and have quite a few unit tests to double-check all the rules work and that I don't break anything when changing code/adding new features. Nice to see this is paying off and that people only have minor problems <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /></p><p></p><p></p><p></p><p>Well yes, I always intended for this to be included as open-source, but I would like to keep track of the code obviously. So it moves forward in the proper way so to say.</p><p></p><p>I'll try to pop onto IRC so we can talk about this!</p><p></p><p>[size=+1]<u>UPDATE ALERT</u>[/size]</p><p></p><p>In the mean time I uploaded a small update with a small fix and some enhancements:</p><p></p><ul> <li data-xf-list-type="ul">Added "Add All" button to TV channels and Categories in the Edit Schedule panel, and a label that is displayed when no channels or categories are selected. Listboxes are also multi-select now to make it easier to remove multiple entries.</li> <li data-xf-list-type="ul">When creating/editing a schedule the title Contains rule may now contain a ";" separator, in which case all of the substrings need to be present in the title.</li> <li data-xf-list-type="ul">Changes to pre- and post-recording or the schedule's priority are now also synced by the MediaPortal plugin.</li> <li data-xf-list-type="ul">Bug fix: VeryLow schedule priority now works again.</li> </ul></blockquote><p></p>
[QUOTE="dvdfreak, post: 199071, member: 21313"] Since I see it as an isolated subsystem, a service that can be used by other programs, all and everything going through the service API. So no direct database access for example, and obviously als no direct database access from within TvScheduler to another system. If TVE3 would use TvScheduler as a subsystem it would itself no longer have any need for a Program table, nor a Schedules table, a Recording table,... Now I know this is no quick-quick change (far from it), but from a design point-of-view it's the only way to go IMHO. Looking at dependencies I'd say TvScheduler is lower on the ladder than TVE3. So TVE3 uses TvScheduler, and not the other way around. That's what I started to do right now with my TVE3 plugin, make TVE3 talk to TvScheduler. How does ClickFinder get its data into TVE3's database right now? Direct insert? Is this a plugin? It should be super-easy to modify this and have it insert data into TvScheduler's guide, there are service methods to do this: [code] [OperationContract] [FaultContract(typeof(TvSchedulerException))] Guid EnsureChannel(string xmltvId, string displayName); [OperationContract] [FaultContract(typeof(TvSchedulerException))] GuideChannel GetChannelByXmlTvId(string xmlTvId); [OperationContract] [FaultContract(typeof(TvSchedulerException))] GuideChannel GetChannelByName(string name); [OperationContract] [FaultContract(typeof(TvSchedulerException))] Guid ImportProgram(GuideProgram guideProgram, GuideSource source); [OperationContract] [FaultContract(typeof(TvSchedulerException))] void ImportPrograms(GuideProgram[] guidePrograms, GuideSource source); [/code] This will be in the next release. Only for the "Contains" rule for obvious reasons :) Yes, it's clear. Perhaps it is better and clearer to add a button to purge recorded episode titles, so it "forgets" about them :) Anyway, still need to implement this rule for starters, then we can finetune it... An "Add All" button will be in the next release. Thanks! I try to code to the highest quality and have quite a few unit tests to double-check all the rules work and that I don't break anything when changing code/adding new features. Nice to see this is paying off and that people only have minor problems :) Well yes, I always intended for this to be included as open-source, but I would like to keep track of the code obviously. So it moves forward in the proper way so to say. I'll try to pop onto IRC so we can talk about this! [size=+1][U]UPDATE ALERT[/U][/size] In the mean time I uploaded a small update with a small fix and some enhancements: [list] [*]Added "Add All" button to TV channels and Categories in the Edit Schedule panel, and a label that is displayed when no channels or categories are selected. Listboxes are also multi-select now to make it easier to remove multiple entries. [*]When creating/editing a schedule the title Contains rule may now contain a ";" separator, in which case all of the substrings need to be present in the title. [*]Changes to pre- and post-recording or the schedule's priority are now also synced by the MediaPortal plugin. [*]Bug fix: VeryLow schedule priority now works again. [/list] [/QUOTE]
Insert quotes…
Verification
Post reply
Forums
Products
TV-Server
For The Record - The rule-based scheduling suite
Contact us
RSS
Top
Bottom