Tellstick i server men skicka kommando från Raspbmc
Moderator: Telldus
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Tellstick i server men skicka kommando från Raspbmc
Hej!
Jag har en server där jag har min tellstick i för att styra lampor tidsmässigt.
Jag har också en rasparry Pi som htpc ansluten till tv:n
Jag undrar nu om man kan skicka en signal från raspbmc till servern att släcka vissa lampor.
Har läst att man ska kunna skicka ssh kommando utan att logga in men hur skulle ett sånt script se ut om jag vill att lamporna ska släckas när filmen startar och tändas vid paus eller stopp?
scriptet kan jag inte men ssh raden borde väl vara:
film start:
ssh user@192.168.x.x 'tdtool --off 1'
filmstopp:
ssh user@192.168.x.x 'tdtool --on 1'
någon som har ideer??
tack
Robban
Jag har en server där jag har min tellstick i för att styra lampor tidsmässigt.
Jag har också en rasparry Pi som htpc ansluten till tv:n
Jag undrar nu om man kan skicka en signal från raspbmc till servern att släcka vissa lampor.
Har läst att man ska kunna skicka ssh kommando utan att logga in men hur skulle ett sånt script se ut om jag vill att lamporna ska släckas när filmen startar och tändas vid paus eller stopp?
scriptet kan jag inte men ssh raden borde väl vara:
film start:
ssh user@192.168.x.x 'tdtool --off 1'
filmstopp:
ssh user@192.168.x.x 'tdtool --on 1'
någon som har ideer??
tack
Robban
Tellstick i server men skicka kommando från Raspbmc
Testa att läsa mansidan för ssh och särskilt flaggan -n
Re: Tellstick i server men skicka kommando från Raspbmc
Först måste du skapa en ssh mtckel på pajen.
Ssh-keygen
Kör enter på alla frågor (testing)
Kan vara bra om du kollar upp dessa frågor senare. Har med säkerheten att göra
Nästa komando är ssh-copy-id xxx.xxx.xxx.xxx
Xxx.xxx ...... = serverns ip adress
Prova sedan att logga in med ssh
Funkar det borde dina komandon funka
/Andreas H
Ssh-keygen
Kör enter på alla frågor (testing)
Kan vara bra om du kollar upp dessa frågor senare. Har med säkerheten att göra
Nästa komando är ssh-copy-id xxx.xxx.xxx.xxx
Xxx.xxx ...... = serverns ip adress
Prova sedan att logga in med ssh
Funkar det borde dina komandon funka
/Andreas H
Tellstick i server men skicka kommando från Raspbmc
Kul att lära sig något nytt! Har alltid kopierat den publika nyckeln manuellt till .ssh/authorizedkeys
Och för att vara petig (men det funkar ju inte annars) ssh-keygen. Bara gemener.
Och för att vara petig (men det funkar ju inte annars) ssh-keygen. Bara gemener.
Re: Tellstick i server men skicka kommando från Raspbmc
Så är det i mobilens automatiska värld
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Re: Tellstick i server men skicka kommando från Raspbmc
ok...jag lyckades manuellt skicka kommando till servern via ssh.
Jag loggade in på Pi:n via ssh och skrev följande
ssh robert@192.168.x.x 'tdtool -f 4'
detta släckte en lampa som var tänd så det funkar.
men jag måste ändå slå in password till servern.
men hur skulle ett script se ut? ( e lite nybörjare på just linux).
Jag loggade in på Pi:n via ssh och skrev följande
ssh robert@192.168.x.x 'tdtool -f 4'
detta släckte en lampa som var tänd så det funkar.
men jag måste ändå slå in password till servern.
men hur skulle ett script se ut? ( e lite nybörjare på just linux).
Re: Tellstick i server men skicka kommando från Raspbmc
Detta fixar komandona jag skrev tidigare
ssh-keygen
sdh-copy-id
/andreas
ssh-keygen
sdh-copy-id
/andreas
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Re: Tellstick i server men skicka kommando från Raspbmc
menade hur skulle ett script i xbmc se ut för att tända / släcka lamporna vid filmstart/pause/stopp ut?
Re: Tellstick i server men skicka kommando från Raspbmc
Pass. Tror du får bättre svar på något xbmc forum
Re: Tellstick i server men skicka kommando från Raspbmc
Har gjort en liknande lösning för vanliga XBMC som ligger här nånstans på forumet , som använder http istället.
Dock förutsätter det att man kan sätta upp Apache(Funkar nog med vad som helst som kör php) och Php. Samt att raspbmc har samma stöd för Python och att du hittar var du ska in med filerna eftersom
att instruktionerna jag skrev var för windows.
http://www.telldus.com/forum/viewtopic. ... zip#p12569
Dock förutsätter det att man kan sätta upp Apache(Funkar nog med vad som helst som kör php) och Php. Samt att raspbmc har samma stöd för Python och att du hittar var du ska in med filerna eftersom
att instruktionerna jag skrev var för windows.
http://www.telldus.com/forum/viewtopic. ... zip#p12569
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Re: Tellstick i server men skicka kommando från Raspbmc
hej!
Zappy,la in filerna som du beskrev i ditt inlägg HC och Lyse....och jag kan komma in på min webserver och starta/stänga lamporna genom sidan som kommer upp.
la in Lyse katalogen under /Scripts i Pi:n och ändrade IP adressen till servern där tellsticken sitter och bootade om men inget händer när jag startar filmer.
Zappy,la in filerna som du beskrev i ditt inlägg HC och Lyse....och jag kan komma in på min webserver och starta/stänga lamporna genom sidan som kommer upp.
la in Lyse katalogen under /Scripts i Pi:n och ändrade IP adressen till servern där tellsticken sitter och bootade om men inget händer när jag startar filmer.
Re: Tellstick i server men skicka kommando från Raspbmc
Du måste hitta nån slags autostartfil till XBMC vet dock inte var den ligger i rpiversionen av xbmc. borde heta ngt i stil med autoexec.py
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Re: Tellstick i server men skicka kommando från Raspbmc
verkar vara som man ska lägga in hela scriptet i rc.local i rpi:n och sedan köra chmod +x rc.local.
gjorde detta men fortfarande inget.
och eftersom jag kan komma åt sidan manuellt o tända/släcka lampor manuellt så borde väl php ha tillgång till scriptet på serversidan,eller?
gjorde detta men fortfarande inget.
och eftersom jag kan komma åt sidan manuellt o tända/släcka lampor manuellt så borde väl php ha tillgång till scriptet på serversidan,eller?
Re: Tellstick i server men skicka kommando från Raspbmc
Du bör inte ändra i rc.local på Raspberry Pi:n. Det är bättre och säkrare att lägga till ett skalprogram i katalogen /etc/init.rc istället.fenderrobban wrote:verkar vara som man ska lägga in hela scriptet i rc.local i rpi:n och sedan köra chmod +x rc.local.
gjorde detta men fortfarande inget.
Men om du inte vill/kan göra det som jag beskriver nedan, och det fungerar med att ändra /etc/rc.local, så gör det det och är ok det med.
Vad är det skriptet skall göra?
Saker som du vill göra när maskinen startar och stoppas skall läggas i ett skalprogram i katalogen /etc/init.d/
Med fördel kopierar du någon av de befintliga filerna i katalogen och döpa kopian till något liknande fenderrobban-tellstick eller fenderrobban-xbmcremote. Prefixet fenderrobban för att inte skriva över någon redan befintlig fil. Jag tror att /etc/init.d/apache2 är ok, om man rensar ur det mesta.
Sedan gör du
Code: Select all
sudo update-rc.d fenderrobban-tellstick defaults
Code: Select all
sudo invoke.rc-d fenderrobban-tellstick status
sudo invoke-rc.d fenderrobban-tellstick start
Det borde fungera, eller gå att få att fungera.och eftersom jag kan komma åt sidan manuellt o tända/släcka lampor manuellt så borde väl php ha tillgång till scriptet på serversidan,eller?
Du kan prova att ansluta till en webbsida med kommandona wget eller curl. Då kan du testa om det fungerar från samma eller andra maskiner.
Se även:
Code: Select all
man update-rc.d
man invoke-rc.d
man service
man wget
man curl
Code: Select all
#!/bin/sh
### BEGIN INIT INFO
# Provides: fenderrobban-tellstick
# Required-Start: $local_fs $remote_fs $network $syslog $named
# Required-Stop: $local_fs $remote_fs $network $syslog $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# X-Interactive: true
# Short-Description: Start/stop fenderrobband-tellstick
### END INIT INFO
set -e
SCRIPTNAME="${0##*/}"
SCRIPTNAME="${SCRIPTNAME##[KS][0-9][0-9]}"
# Byt till serverprogrammet
SERVERBIN="/usr/local/sbin/serverbin"
ENV="env -i LANG=C PATH=/usr/local/bin:/usr/bin:/bin"
. /lib/lsb/init-functions
test -f /etc/default/rcS && . /etc/default/rcS
# Var man kan ge variabler ovan, som SERVERBIN ett nytt värde.
if [ -f /etc/default/fenderrobban-tellstick ] ; then
. /etc/default/fenderrobban-tellstick
fi
# Testa om programmet finns
if [ ! -x $SERVERBIN ] ; then
echo "No $SERVERBIN program"
exit 0
fi
startkommando() {
# Skriv allt som behövs göras för att starta servern
return 0 # det gick bra
return 1 # om det gick dåligt
}
stoppkommando() {
# Skriv allt som behövs göras för att stoppa servern
return 0 # det gick bra
return 1 # om det gick dåligt
}
testrunning() {
# Testa om servern kör
return PID # return processens processid om den kör
return "" # om den inte kör
}
case $1 in
start)
log_daemon_msg "Starting tellstick" "SCRIPTNAME"
# Kommandon som startar tjänsten, om den inte redan kör
# Byt ut "startkommando start" mot lämpligt kommando
if startkommando start; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stoping tellstick" "$SCRIPTNAME"
# Kommandon som stoppar tjänsten, om den inte redan stoppad
# Byt ut "stoppkommando stop" mot lämpligt kommando
if stoppkommando stop; then
log_end_msg 0
else
log_end_msg 1
fi
;;
restart)
# Kommandon som startar om tjänsten, se start och stopp ovan
stoppkommando stop
startkommando start
;;
status)
# Kommandon som skriver ut status
# byt ut "testrunning" mot lämpligt kommando
PID=testrunning
if [ "$PID" ]; then
echo "$SCRIPTNAME is running (pid $PID)."
exit 0
else
echo "$SCRIPTNAME is NOT running."
exit 1
fi
;;
*)
log_success_msg "Usage: /etc/init.d/$SCRIPTNAME {start|stop|restart|status}"
exit 1
;;
esac
Man kan ladda ned den från http://debian-handbook.info/ och slå upp kapitlet som servrar.
-
- Posts: 21
- Joined: Fri Mar 17, 2023 9:45 am
Re: Tellstick i server men skicka kommando från Raspbmc
jaxån, tanken är att när jag startar en film från Raspbmc ska vissa lampor släckas och tvärtom om filmen stoppar/pausas.
Har alltså en tellstick i en server som är igång 24-7 och en raspberry pi som htpc.
(se tidigare inlägg i tråden)
Har alltså en tellstick i en server som är igång 24-7 och en raspberry pi som htpc.
(se tidigare inlägg i tråden)