Seite 8 von 10

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 16. Dez 2009, 00:43
von torg
Vielen Dank

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 11. Jan 2010, 23:08
von SHadow1312
Hoi,

super Idee, Danke. Aber sehe ich das richtig, das Serienaufnahmen noch nicht richtig funktionieren?

scheduleType
0 = einmalig
1 = täglich zu dieser Zeit
2 = wöchentlich zu dieser Zeit
3 = immer auf diesem Kanal
4 = immer auf allen Kanälen
5 = Samstags und Sonntags
6 = Montags bis Freitags

Zumindest bei Type 3 und 4 muss doch im Programm nach dem Titel gesucht werden, da die im Schedule eingetragene Zeit irrelevant ist, oder habe ich was übersehen?

Gruss
Sascha

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 12. Jan 2010, 01:50
von SHadow1312
So, habe mich mal an dem SQL vergriffen. Jetzt wird für Aufnahmen nicht mehr nur der Zeitraum, sondern auch das Programm (EPG) ausgewertet. Das Skript läuft bei mir seit 20 Minuten stabil ;) Vielleicht findet sich ja noch jemand zum Testen.

SQL-Statement
MediaportalScheduler.sql.txt
(2.73 KiB) 349-mal heruntergeladen

Code: Alles auswählen

--scheduleType
--0 = einmalig
--1 = täglich zu dieser Zeit
--2 = wöchentlich zu dieser Zeit
--3 = immer auf diesem Kanal
--4 = immer auf allen Kanälen
--5 = Samstags und Sonntags
--6 = Montags bis Freitags

ToDo
--abgebrochene Aufnahmen und Ueberschneidungen ignorieren: Tabelle CanceledSchedule
--Type 5 und 6 noch nicht realisiert

--
select top 1 channel, programName, startTime, endTime, preRecordInterval, postRecordInterval , dateadd(mi, (preRecordInterval + 3) * -1, startTime) as Start from 
	(
	--Type 0: einmalige Aufnahmen aus Planer nehmen wie vorhanden
	select c.name as channel, s.programName, s.startTime, s.endTime, s.preRecordInterval, s.postRecordInterval 
	  from schedule s, channel c 
	 where s.scheduleType = '0' and c.idChannel = s.idChannel

	--Type 1: Scheduler mit Programm, Kanal und Zeit ohne Datum vergleichen
	union
	select c.name as channel, s.programName, p.startTime, p.endTime, s.preRecordInterval, s.postRecordInterval 
	  from schedule s, program p, channel c 
	 where s.scheduleType = '1' and c.idChannel = s.idChannel and p.title = s.programName 
	   and CONVERT(varchar(8), p.startTime, 108) = CONVERT(varchar(8), s.startTime, 108)
	   and CONVERT(varchar(8), p.endTime, 108) = CONVERT(varchar(8), s.endTime, 108)

	--Type 2: Scheduler mit Programm, Kanal und Zeit mit Wochen-Datum vergleichen
	--(DateDiff in Tagen) Modulo 7 = 0, enstpricht Wochenabstand
	union
	select c.name as channel, s.programName, p.startTime, p.endTime, s.preRecordInterval, s.postRecordInterval 
	  from schedule s, program p, channel c 
	 where s.scheduleType = '2' and c.idChannel = s.idChannel and p.title = s.programName 
	   and datediff(d, s.startTime, p.startTime) % 7 = 0
	   and datediff(d, s.endTime, p.endTime) % 7 = 0
	   and CONVERT(varchar(8), p.startTime, 108) = CONVERT(varchar(8), s.startTime, 108)
	   and CONVERT(varchar(8), p.endTime, 108) = CONVERT(varchar(8), s.endTime, 108)

	--Type 3: Scheduler mit Programm und Kanal vergleichen
	union
	select c.name as channel, s.programName, p.startTime, p.EndTime, s.preRecordInterval, s.postRecordInterval  
	  from schedule s, program p, channel c 
	 where s.scheduleType = '3' and p.title = s.programName and s.idChannel = p.idChannel and c.idChannel = s.idChannel

	--Type 4: Scheduler nur mit Programm vergleichen, Kanal ignorieren
	union
	select c.name as channel, s.programName, p.startTime, p.EndTime, s.preRecordInterval, s.postRecordInterval 
	  from schedule s, program p, channel c 
	 where s.scheduleType = '4' and p.title = s.programName and c.idChannel = s.idChannel
	--Type 6: toDo
	--Type 7: toDo
	) as aufnahmen
--nur Aufnahmen, welche noch nicht vorbei sind
where endTime > current_timestamp
--sortiert nach Startzeit
order by startTime asc
Das aktualisierte Skript:
WHS_LO_Erw_SHadow1312.vbs.txt
(13.3 KiB) 419-mal heruntergeladen
In der Logdatei wird nun auch Kanal, Programm und Zeit angezeigt:

Code: Alles auswählen

12.01.2010 01:30:31  --- Start ---
12.01.2010 01:30:33  geplante Aufnahme: DSF - Poker - Start 12.01.2010 06:00:00
12.01.2010 01:30:33  Set Taskplaner: 12.01.2010 05:54:00
12.01.2010 01:30:34  Set LightsOut = 1

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 18. Jan 2010, 09:28
von nicx
hi larry,

nachdem dein script hier nun schon seit monaten jahr super läuft habe ich mal wieder einen feature-wunsch ;)

ich hätte gerne einen zeitraum angegeben in dem der server auf jeden fall schlafen geht (d.h. z.b. von 22 uhr bis 10 uhr) auch wenn das kriterium "datei im pfad xy vorhanden" ist. bei den anderen kriterien (mp aufnahme läuft, client ist erreichbar,...) soll dies nicht der fall sein.

hm war mein wunsch nun verständlich erklärt? ;)

gruss,
nicx...

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 28. Jan 2010, 14:01
von Jaques-Ludwig
Hallo,

ich bekomme in der Log-Datei immer folgende Fehlermeldung:

28.01.2010 13:33:33 Set LightsOut = 1
28.01.2010 13:36:23 --- Start ---
28.01.2010 13:36:40 Fehler:[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server existiert nicht oder Zugriff verweigert.
28.01.2010 13:36:40 Fehler:Der Vorgang ist für ein geschlossenes Objekt nicht zugelassen.
28.01.2010 13:36:40 Set LightsOut = 0 (keine Aktion)

Woran kann das liegen?

Vielen Dank,

Jaques-Ludwig

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 28. Jan 2010, 20:27
von larry
@nicx
Du kannst eine zeitliche Begrenzung einbauen, indem du die gewünschten Befehl in eine Zeitbedingung setzt.
z.B. wenn das Notepad nur zwischen 10 und 22 Uhr den Standby verhindern soll:

Code: Alles auswählen

if hour(now())>10 and hour(now())<22 then
WSHCheckTask ("Notepad.exe")
end if
@SHadow1312
danke für das SQL-Statement.
Ich schaue es mir die Tage mal an und werde es ggf. übernehmen.

@Jaques-Ludwig
Die Meldung besagt, dass du nicht auf den SQL Server kommst. Dies könnte mehrere Gründe haben.
- Du nutzt keine MS SQL, sondern einen MySQL Server.
- Einer der beiden folgenden Parmeter passen nicht:
- SQLServer= "Server\SQLEXPRESS"
- DWH= "MpTvDb"
- Firewall blockiert den Transfer

Welchen SQL-Server benutzt du denn? Ist MP lokal installier? Hast du evtl. eine SVN-Version installiert? Hier muss dann ggf. der DWH Parameter angepasst werden.

Gruß
Larry

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 11. Feb 2010, 22:41
von Grisu002
Ich verwende für die Aufnahme 4 The Record, könnte man das Script so umgestalten das es auch mit der Datenbank von 4TR läuft oder ist hier der Aufwand zu groß.

Hab mal unter DB 4TheRecord eingetragen, bekomme aber beim ausführen des Scripts gleich eine Fehlermeldung, Fehler:[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid column name 'idChannel'.

Danke und Gruß Grisu

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 12. Feb 2010, 23:26
von larry
Da kann ich dir nur ein "Ja, aber" bieten.
Grundsätzlich kann per Script fast alles angesteuert werden.
Ich selbst nutze aber 4 The Record nicht und habe dies auch nicht in naher Zukunft vor. Daher kann ich keine entsprechende Datenbankabfrage erstellen.
Wenn jemand eine passende SQL-Abfrage liefert oder mir mitteilt, welche Spalten aus welchen Tabellen verwendet werden, kann ich diese im Script ergänzen.

Gruß
Larry

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 13. Feb 2010, 11:04
von vvulture
Hello. I hope someone an help me with this problem in English.

I cannot get the script to work .
Here is my log ( always like this, with or without recording schedules ) :

13/02/2010 7:42:31 PM --- Start ---
13/02/2010 7:42:31 PM Taskplaner = 01.01.2020
13/02/2010 7:42:31 PM Set LightsOut = 0 (keine Aktion)
13/02/2010 7:43:47 PM --- Start ---
13/02/2010 7:43:47 PM Taskplaner = 01.01.2020
13/02/2010 7:43:47 PM Set LightsOut = 0 (keine Aktion)
13/02/2010 7:46:50 PM --- Start ---
13/02/2010 7:46:53 PM Taskplaner = 01.01.2020
13/02/2010 7:46:53 PM Set LightsOut = 0 (keine Aktion)
13/02/2010 7:51:53 PM --- Start ---
13/02/2010 7:51:53 PM Taskplaner = 01.01.2020
13/02/2010 7:51:53 PM Set LightsOut = 0 (keine Aktion)
13/02/2010 7:58:58 PM --- Start ---
13/02/2010 7:58:58 PM Taskplaner = 01.01.2020
13/02/2010 7:58:58 PM Set LightsOut = 0 (keine Aktion)

I am using WHS PP3, with MP 1.01.

Any ideas ??

Thank you

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 13. Feb 2010, 12:01
von Grisu002
Hallo larry

kann ich Dir den eine Datei schicken wo Dir evt. weiterhelfen würde?

Gruß Grisu

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 14. Feb 2010, 02:10
von vvulture
Hallo Kerle
Ich habe mein Englisch zum Deutschen übersetzt. Ich hoffe, dass Sie mich verstehen können.
Ich habe ein Problem, in dem MP_Aufnahmen Aufgabe nie modernisiert ist. WHS_Standby.log ist:
14/02/2010 11:09: 30 MORGENS --- Anfang ---
14/02/2010 11:09: 30 morgens Taskplaner = 01.01.2020
14/02/2010 11:09: 30 morgens gesetztes LightsOut = 0 (keine Aktion)
14/02/2010 11:11: 49 MORGENS --- Anfang ---
14/02/2010 11:11: 50 morgens gesetztes Taskplaner: 14/02/2010 12:47: 00 P.M.
14/02/2010 11:11: 50 morgens gesetztes LightsOut = 1
Das MP_Aufnahmen ist nicht modernisiert.

Helfen Sie bitte! : (

IN ENGLISH :

Hi guys
I have translated my english to german . I hope you can understand me .

I have a problem where MP_Aufnahmen task is never updated .
The WHS_Standby.log is :
14/02/2010 11:09:30 AM --- Start ---
14/02/2010 11:09:30 AM Taskplaner = 01.01.2020
14/02/2010 11:09:30 AM Set LightsOut = 0 (keine Aktion)
14/02/2010 11:11:49 AM --- Start ---
14/02/2010 11:11:50 AM Set Taskplaner: 14/02/2010 12:47:00 PM
14/02/2010 11:11:50 AM Set LightsOut = 1

The MP_Aufnahmen is not updated .

Please help ! :(

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12.09)

Verfasst: 14. Feb 2010, 10:21
von larry
@Grisu002
Schick mir am Besten eine PN

@vvulture
See at the Thread in the MP-Forum

Gruß
Larry

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12

Verfasst: 29. Jul 2010, 09:40
von nemo
Hallo Community,

hat das Skript schon jemand mit dem aktuellen Release 1.1.0 getestet?
Ich würde gerne umstellen aber dazu muss ja auch das aufwecken funktionieren.

Gruß
Nemo

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12

Verfasst: 29. Jul 2010, 10:37
von larry
Das Script funktioniert mit 1.1 genauso wie mit anderen Version.
Einzige Einschränkung ist, dass der MS-SqlServer verwendet werden muss.

Gruß
Larry

Re: Script für Funktionserweiterung von LightsOut (Upd:14.12

Verfasst: 29. Okt 2010, 09:06
von pipo1900
Hello,

At first Thanks for this great script.

I just found something not working in my script:
"/* 2 = wöchentlich zu dieser Zeit */ "
There is no date/time returning, so LightsOut is not set to <> 0 (and no date/time is set).
I tested this by adding this line, but no log was added:
LogDatei rs1("Start")

I changed the SQL part with the input from SHadow1312.
Now LightsOut is set correctly, but this script is not completed.

So please Larry and/or SHadow1312, can one of you (or someone else) help me with this issue.

Thanks in advance,
Louk