XBMC Community Forum
Directory Watchdog - Background file monitor service to initiate auto update library? - Printable Version

+- XBMC Community Forum (http://forum.xbmc.org)
+-- Forum: Development (/forumdisplay.php?fid=32)
+--- Forum: Feature Suggestions (/forumdisplay.php?fid=9)
+--- Thread: Directory Watchdog - Background file monitor service to initiate auto update library? (/showthread.php?tid=66348)

Pages: 1 2 3 4 5 6 7 8


Directory Watchdog - Background file monitor service to initiate auto update library? - sireone - 2010-01-07 03:06

I've been searching and searching and it seems that one feature that needs to be implemented in the next update is Automatically Updating of the video library in XBMC Live!. They took one step forward and added 'Update on Startup', but what we really need is updating at specified intervals.

I did some searching and found some scripts (based on xbmc-eventclients-xbmc-send), but then realized that Camelot 9.11 does not contain cron.

If anyone has any ideas, lemme know,

Thanks,


- hikaricore - 2010-01-07 03:11

Why not just map an unused button on your remote?
Does the trick for me.


- althekiller - 2010-01-07 03:21

Install cron, live is just a stripped ubuntu.


- robweber - 2010-01-07 03:54

While the suggested solutions all 'work', the fact remains that it requires some additional setup (some platform dependent) for something that could easily be solved with a setting in XBMC where you set the time of day and it just does it.


- sireone - 2010-01-07 04:12

Am i missing something here?

Quote:xbmc@XBMCLive:~$ sudo apt-get install cron
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package cron
xbmc@XBMCLive:~$ sudo apt-get install crond
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package crond
xbmc@XBMCLive:~$



- wstewart - 2010-01-07 05:10

cron is the package.

Did you do

apt-get update

Must be something wrong with your sources. Check /etc/apt/sources.list


- sireone - 2010-01-07 05:16

That did it! Once I ran 'apt-get update' I was able to run 'apt-get install cron'

Thanks,


- outleradam - 2010-01-07 06:11

no need to install cron
get curl. it's more fun. curl provides terminal based web access.
Code:
apt-get install curl
make a script like this

Code:
#! /bin/bash

#FOR ((EVER))
for (( ; ; ))
#Loop
do
#sleep for 1 hour
sleep 3600
#send command to XBMC to update video library
curl "http://"$XBMCIP"/xbmcCmds/xbmcHttp?command=ExecBuiltIn(UpdateLibrary(video))"
done
exit 0
make it executable
Code:
chmod +x /path/to/myscript.sh
then place it in /etc/init.d


- The-Boxhead - 2010-01-07 11:29

Why all this would work the best way to do it would be that XBMC
had this "built in" in feature rels.

Regular users dont expect to setup scripts, mapping custom keymaps, hacking skins or whatever.

There should be some kinda "monitor" functions on all sources added. When
XBMC senses a change in any of the sources it updates them, and movies / music or whatever is automaticly scanned into the library.

Most "library" programs on PC/MAC has this functions and users are used to it.


- spiff - 2010-01-07 11:46

robweber, then send us the simple diff. i mean, it's just adding a setting to the gui and poof it does it automagically, eh.


- robweber - 2010-01-07 16:04

spiff Wrote:robweber, then send us the simple diff. i mean, it's just adding a setting to the gui and poof it does it automagically, eh.

I probably shouldn't be throwing around the word 'easily'. I guess I was thinking easy for the user when it is done, not trying to setup all sorts of other scripts and download packages.

I do like the idea though and may attempt something, whether it works or not will be a different story. I'll post a link to the ticket here if I come up with anything remotely usable.


- outleradam - 2010-01-07 18:33

I have mythicalLibrarian set up to automatically update all xbmc servers on the network when a new recording is generated and added to my NAS. Not everyone has the same setup so there is no single soloution. There is no single command.

Xbmc could DIR > file.log and compare it to the last file.log and update if new file size is not equal to old file size. That would be supported on all platforms. It may get very slow on large libraries though


- spiff - 2010-01-07 18:39

well, that's what update library does internally - in somewhat more sophisticated ways though. what is needed is a directory watchdog, problem with that is there is no cross platform solution.


- banan - 2010-01-07 19:21

spiff Wrote:well, that's what update library does internally - in somewhat more sophisticated ways though. what is needed is a directory watchdog, problem with that is there is no cross platform solution.

@spiff: What about Python? Look here for how sabnzbd handle it (*nix, osx, win): http://trac2.assembla.com/SABnzbd/browser/trunk/main/sabnzbd/dirscanner.py


- spiff - 2010-01-07 19:25

banan, that's an option and in line with what i have been saying for years and years on end - adding this to the core makes no sense.