Wallpaper Changer.. Brauche Hilfe beim Entwickeln

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

Booxi

Benutzer
Registriert
13. März 2012
Beiträge
22
Reaktionspunkte
0
Punkte
0
Guten Morgen ihr lieben Synos..
hoffe ihr könnt mir helfen.

Ich bin gerade an einer 3rd party app dran,die Automatisch die Wallpaper ändert...
für einen Synology und PHP neuling bin ich schon weit gekommen....

die php Wählt zufällig eine jpg datei in einem Vorher definierten Pfad aus und checkt ob diese Verfügbar ist..
so weit so gut..
nun habe ich 2 große Hürden...


1. Hürde
woher lasse ich die PHP wissen wer gerade an der Syno angemeldet ist?
(natürlich automatisch ohne usereingabe)


2. Hürde
Wo ist die Aktuell geladene Hintergrundbilddatei auf der Syno Gespeichert?


habe bereits im AdminTool und Putty etwas gesucht aber effektiv leider nichts gefunden
Würde mich freuen, wenn mir da jemand behilflich sein kann weiter zu kommen
 
Zuletzt bearbeitet:
2. Hürde
Wo ist die Aktuell geladene Hintergrundbilddatei auf der Syno Gespeichert?
Das Wallpaper des jeweiligen Benutzers findest in der Datei
Rich (BBCode):
/usr/syno/etc/preference/<user>/wallpaper
 
Erstmal ein riesen dankeschön. das hat mich schon viel weiter gebracht.....
habe jetzt per winscp mal versucht das Wallpaper zu ändern und es klappt


mit den cookies auslesen habe ich noch ein problem
habe das bereits verwendet um 3rd partyapps zu schützen

2 fragen bleiben bestehen.. müsste diese php in einem Besonderen ordner liegen, damit sie funktioniert?

Hatte folgendes versucht in meiner PHP einzubinden
PHP:
<?php
putenv('HTTP_COOKIE='.$_SERVER['HTTP_COOKIE']);
putenv('REMOTE_ADDR='.$_SERVER['REMOTE_ADDR']);
$user=exec('/usr/syno/synoman/webman/modules/authenticate.cgi');
echo $user;
?>


dort sollte ja auf der aufgerufenen seite Der Name des Angemeldeten users erscheinen
tut es aber nicht...
Habe ich jetzt nen denkfehler oder hat meine PHP es nicht geschafft den usernamen Abzufragen???

brauche diese Abfrage damit ich
es dann in den Pfad einbauen kann

PHP:
$pfad1 = "/usr/syno/etc/preference/";
$pfad2 = "/wallpaper";

//ort der zu ändernen datei
$Datei = $pfad1.$user.$pfad2;




Edit::::

Lösung gefunden ..
einfach mal in
/usr/syno/synoman/webman/3rdparty/Wallpaperchanger
verschoben

und et jehht...
so nu komm ich nen stück weiter
 
Zuletzt bearbeitet:
was du denn auch ganz sicher am DSM angemeldet, als du deinen Code probiert hast? Der funzt natürlich nur wenn eine Anmeldung am DSM besteht
 
ja sicher..... die htaccess hat nur in dem einen Ordner gefunzt....
aber funzt jetzt ja daher iss ok.. :)
bin jetzt mit der ersten version fertig.... und muss den Code jetzt nochmal umkrempeln, da ich jetzt die möglichkeit einbauen möchte
mehrere benutzer einer DS mit dieser funktionaität zu versorgen :)...
und anschießend noch cron jobs rauf.. und fertig ist der Wallpapersaat.....
 
So um das hier mal etwas zu aktualisieren
Die erste Testfähige betaversion ist fast Fertig
eine Simple HTML gui ist nun auf das Grundgerüst aufgearbeitet
einige Funktionen fehlen noch, doch sobald diese Implementiert sind werde ich einen Betatest Starten..

Dazu rufe ich euch auf...
wer den Wallpaperchanger einmal antesten will, solle doch bitte hier posten..
daraufhin bekommt ihr eine PN mit einem Downloadink...
Das Programm ist keine SPK, dennoch simpel zu installieren..
(lediglich einen Ordner in den 3rd Partyapps ordner schieben)


Vorraussetzungen:
ihr habt ordnerroot zugriff auf eure nas


wer das Programm getestet hat und Verbessungsvorschläge hat kann dann gern seine Vorschläge hier reinposten....
ich werde dann im Rahmen meiner Möglichkeiten diese Umsetzen...
 
Ich möchte sie mal testen.
Danke.
 
Habe aktuell noch ein Problem... möchte einen Symlink erstellen... nur geht das nicht so wie gedacht
möchte dass im homeverzeichnis ein Ordner angelegt wird und mit einem Ordner im 3rdpartyapps gelinkt wird
hier mal mein Versuch

PHP:
<?PHP
mkdir("/volume1/homes/.user./Wallpaper"); 
$link = "/volume1/homes/.user./Wallpaper";
$target = "user/.user./Pictures";
symlink ($target,$link );

echo "Daten werden erzeugt.. ";
?>

wenn mir einer sagen kann warum das net funzt wäre das Fanatistisch :)
 
Zuletzt bearbeitet:
Weil der Pfad nicht passt, würde ich schätzen. Mach mal aus target auch einen absoluten.
 
Dann so?

PHP:
<?PHP
mkdir("/volume1/homes/.user./Wallpaper"); 
$link = "/volume1/homes/.user./Wallpaper";
$target = "/usr/syno/synoman/webman/3rdparty/Wallpaperchanger/user/.user./Pictures";
symlink ($target,$link );

echo "Daten werden erzeugt.. ";
?>
geht nicht
Habe keine Peilung wann ich den Relativen/absoluten Pfad nehmen muss Oo


Noch eine Frage::

ich habe im ordner
/user
mehrere Unterordner also.
/user/user1
/user/user2
/user/user3
/user/user4
/user/user5

in jedem ordner liegt eine info.php
ich möchte dass jede info.php nacheinander ausgeführt wird ohne user1 user2 ... angeben zu müssen
meines erachtens geht das dann so
/user/*/info.php
nur wird da ja nur eine info.php ausgeführt und die anderen nicht beachtet
oder liege ich da nicht richtig?
 
Zuletzt bearbeitet:
PHP:
<?PHP
mkdir("/volume1/homes/admin/Wallpaper"); 
$link = "user/admin/Pictures";
$target = "/volume1/homes/admin/Wallpaper";
symlink ($target,$link );

echo "Daten werden erzeugt.. ";
?>
tausch mal target mit link
 
Immer absolute und Du bist auf der sicheren Seite.

Deine Parameter sind falsch rum, oder?
 
hiermit muss was nicht stimmen
PHP:
symlink ($target,$link );
denn die pfade habe ich mit
if (file_exists($link)) {
geprüft und er sagt alle pfade ok
 
wenn Du Wallpaper erstellst und zu Pictures linken möchtest
ist Wallpaper target und Pictures der link
 
möchte Dass ich etwas in den Wallpaper Ordner gepackt wird und in Pictures reinkommt, in dem Der Restliche Code Arbeitet
sozusagen wie ne Desktopverknüpfung XD

also Wallpaper ist die Sozusagen Desktopverknüpfung
 
Wie ist denn der letzte Stand zu php auf der Kommandozeile einer DS, sprich via Interpreter? Ich hatte damals ganz schön Probleme damit als ich es probiert hab, ist aber auch schon lange her, seitdem arbeite ich mit Shell-Skripten wenn ich was in der Richtung realisieren möchte.

MfG Matthieu
 
gibt es dann dort eine Paktikable lösung??

bin kurz vor dem Ersten Testbaren Release...
brauch nur noch ne PHP die Cronjobs erstellt..
eine php die in User/*/Wallpaper.php nacheinander ausführt
einen Symlink, damit der Jeweilige User ohne Benutzung einer Gui seine Wallpaper ins Verzeichnis bekommt
 
also Wallpaper ist die Sozusagen Desktopverknüpfung
warum erstellst Du in dem Script das Verzeichniss, wenn es der Link werden soll ?
Da ist Deine target link richtig, wenn Pictures nach Wallpaper gelinkt werden soll.
Du solltestda aber das mkdir entfernen.

Gruß Jo
 
habe dieses Problem nu wirklich so gelöst:
wallpapers liegen direkt im Home Ordner des Users und meine PHP greift nun Darauf zu....

nu iss noch die Frage wie ich die Aktualisierungs php im Userordner
user nach user abarbeiten kann..
also /user/USERNAME/conf.php --- die conf php sucht nach zufallsprinzip ein Bild des Users heraus
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat