Siri @home

Ist ja interessant…

Ich habe die gleiche Konfiguration wie BunnyMC: iPhone 4S, RPi mit SiriProxy

Was nun tun?:confused:

Joachim

Ich nutze auch das 4S. Auch Siri auf dem Pi. Und wie gesagt, die meisten gehen durch.

Hallo Leute,

ich habe noch ein paar „Syntaxprobleme“:

require 'httparty'

class SiriProxy::Plugin::IPS < SiriProxy::Plugin
  attr_accessor :host

  def initialize(config = {})
    self.host = config["host"]
  end
  
  listen_for (/(Licht|Beleuchtung|Lampe) (Garage|Werkstatt|Technikraum) (an|ein|aus)/i) do |device1,room1,action1|
    room = room1.strip
    action = action1.strip
    if((action = "an") or (action = "ein"))
      state = 1
    else
      state = 0
    end
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=#{room}&type=light&state=#{state}")
    if(room = "Technikraum")
      say "Im #{room} wurde das Licht #{action}geschaltet!"
    else
      say "In der #{room} wurde das Licht #{action}geschaltet!"
    end
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end


end

Ich denke der Sinn wird klar: Übertragen werden soll der gewünschte Raum (room) und der gewünschte Zustand (state).
Aber irgendwie wird im Ansagetext nur der „Technikraum“ benutzt und es wird nur „an“ ausgeführt. - Eingeschaltet wird vom IPS aber komischerweise der richtige Raum…:confused:

Jemand eine Idee?

Joachim

Nachtrag: Hat sich erledigt!! Auch dort muss beim Vergleich das „==“ verwendet werden!

Hallo Leute,

im Video wird ja ein Bild der IP-Cam eingeblendet, hat jemand das schon mal umgesetzt? Ein Beispiel-Skript wäre toll…:wink:

Ein Erläuterungen für den „Siri-Syntax“ habe ich bisher nur eine Seite gefunden, die ein paar Dinge erklärt. Habt Ihr vielleicht noch andere empfehlenswerte Websites?

Joachim

Ansonsten: Ich habe bisher meine über IPS fernbedienbaren Lampen, die Temperaturabfragen und die Steuerung der Garagentore über Siri umgesetzt. Einiges andere steht noch auf der Agenda…:smiley:
Es macht einfach Spass! Vielen Dank für die tolle Unterstützung!

Ich bin da hilflos.
Auch auf die Gefahr hin, dass ich mich lächerlich mache:

Wie macht man das? Oder wo finde ich da was zum Lesen?

Ergänzung:
Ich hatte in der dnsmasq.config die Adresse 192.168.001.077 statt 192.168.1.77 eingegeben und beim Start einen Fehler erhalten, bzw. der guzzoni-Link deutete auf eine Adresse 192.168.1.63
Dann geändert auf 192.167.1.77 und alles war OK.
Jetzt kämpf ich mit dem IPS-Plugin. (17.02.2013)

Hallo

habe es nach 2tragen geschaft Siriproxy auf raspberry zu installieren und läuft auch.

aber nun hänge ich schon stunden fest habe die ganzen beiträge gelesen und komme nicht weiter hab das
habe das siriproxy-ips.zip installiert aber nun weis ich nicht mehr weiter

habe in config.yml

  • name: ‚IPS‘
    path: ‚/root/SiriProxy/plugins/siriproxy-ips‘
    host: ‚192.168.0.50:82‘

eingetragen und nun startet der proxy auch nicht mehr???

bitte

danke alex:confused:

Fragst Du uns, ob der Proxy nicht mehr startet? Das wissen wir doch nicht, Du kannst es ja vielleicht verraten…:slight_smile:

Was passiert denn…oder vielleicht besser was passiert denn nicht??

Joachim

nein

nach den Änderungen in config.yml

kommt im terminal fenster jetzt:

root@raspberrypi:~/SiriProxy# siriproxy bundle
/usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse': (/root/.siriproxy/config.yml): did not find expected key while parsing a block mapping at line 32 column 6 (Psych::SyntaxError)
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:151:in `parse'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:127:in `load'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `block in load_file'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `open'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `load_file'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/lib/siriproxy/command_line.rb:143:in `parse_options'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/lib/siriproxy/command_line.rb:33:in `initialize'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/bin/siriproxy:6:in `new'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/bin/siriproxy:6:in `&lt;top (required)&gt;'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:23:in `load'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:23:in `&lt;main&gt;'

wenn ich die änderung wieder lösche, lässt siriproxy sich wieder starten.

hmm???

danke

alex:)

Was steht denn in „…at line 32 column 6 (Psych::SyntaxError)“… in Deiner config.yml?

Poste die doch vielleicht mal, evtl. gleich mit Deiner Änderung…

Joachim

in der config.yml steht

listen: 0.0.0.0
port: 443
log_level: 1
plugins:
    # NOTE: run bundle after changing plugin configurations to update required gems

   #- name: 'Example'
   #  path: './plugins/siriproxy-example'

    # - name: 'Thermostat'
    #   git: 'git://github.com/plamoni/SiriProxy-Thermostat.git'
    #   host: '192.168.2.71' 

    # - name: 'Twitter'
    #   path: './plugins/siriproxy-twitter' # path works just like specifing in gemfile 
    #   consumer_key: "YOUR_KEY" 
    #   consumer_secret: "YOUR_SECRET"
    #   oauth_token: "YOUR_TOKEN" 
    #   oauth_token_secret: "YOUR_TOKEN_SECRET"

    # Note: Eliza should not be run with other plugins
    # - name: 'Eliza'
    #   path: './plugins/siriproxy-eliza' # path works just like specifing in gemfile 

    # Below are not actual plugins, just further example of config options

    # - SimplePlugin # simple syntax for plugins that are in rubygems and have no config 

    # - name: 'AnotherPlugin'
    #   git: 'git://github.com/netpro2k/SiriProxy-AnotherPlugin.git' # git works just like specifying in Gemfile
    
   - name: 'IPS'
      path: '/root/SiriProxy/plugins/siriproxy-ips'
      host: '192.168.0.50:82'

danke

alex

…daran kann ich jetzt so keinen Fehler feststellen.

Hast Du nach der Änderung:

siriproxy bundle
bundle install

ausgeführt?

Joachim

danke für die rasche antwort

ja habe ich und wenn ich eben

siriproxy bundle

eingebe kommt im putty fenster

root@raspberrypi:~/SiriProxy# siriproxy bundle
/usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse': (/root/.siriproxy/config.yml): did not find expected key while parsing a block mapping at line 32 column 6 (Psych::SyntaxError)
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:151:in `parse'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:127:in `load'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `block in load_file'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `open'
        from /usr/local/rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `load_file'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/lib/siriproxy/command_line.rb:143:in `parse_options'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/lib/siriproxy/command_line.rb:33:in `initialize'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/bin/siriproxy:6:in `new'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.3.2/bin/siriproxy:6:in `&lt;top (required)&gt;'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:23:in `load'
        from /usr/local/rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:23:in `&lt;main&gt;'
root@raspberrypi:~/SiriProxy#

dann habe ich gerade noch ein ubuntu aufgesetzt da ich dachte es liegt am raspberry und bin nach der video anleitung vorgegangen, der siriproxy funktioniert einwandfrei, nur wenn ich die config.yml wieder ändere
kommt auch (unter ubuntu 11.10 vmware)

zonex@ubuntu:~/SiriProxy$ siriproxy bundle
/home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse': (/home/zonex/.siriproxy/config.yml): did not find expected key while parsing a block mapping at line 30 column 3 (Psych::SyntaxError)
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:151:in `parse'
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:127:in `load'
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `block in load_file'
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `open'
        from /home/zonex/.rvm/rubies/ruby-1.9.3-p385/lib/ruby/1.9.1/psych.rb:297:in `load_file'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.4.0/lib/siriproxy/command_line.rb:143:in `parse_options'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.4.0/lib/siriproxy/command_line.rb:33:in `initialize'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.4.0/bin/siriproxy:6:in `new'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/gems/siriproxy-0.4.0/bin/siriproxy:6:in `&lt;top (required)&gt;'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:19:in `load'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/siriproxy:19:in `&lt;main&gt;'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/ruby_noexec_wrapper:14:in `eval'
        from /home/zonex/.rvm/gems/ruby-1.9.3-p385@SiriProxy/bin/ruby_noexec_wrapper:14:in `&lt;main&gt;'
zonex@ubuntu:~/SiriProxy$

wenn ich die config.yml wieder ändere auf standart geht der siriproxy wieder bei beiden varianten.

also keine Ahnung woran das liegt. hmmmm

danke Alex

denke es hat vielleicht was mit dem siriproxy-ips zu tun habe denn hier von der 2ten seite runtergeladen

gibts da auch einen anderen?

danke alex

Hallo Alex,

versuche es mal so:

listen: 0.0.0.0
port: 443
log_level: 1
plugins:
    # NOTE: run bundle after changing plugin configurations to update required gems

    - name: 'Example'
      path: './plugins/siriproxy-example'

    - name: 'IPS'
      path: '/root/SiriProxy/plugins/siriproxy-ips'
      host: '192.168.0.50:82'


    # - name: 'Thermostat'
    #   git: 'git://github.com/plamoni/SiriProxy-Thermostat.git'
    #   host: '192.168.2.71' 

    # - name: 'Twitter'
    #   path: './plugins/siriproxy-twitter' # path works just like specifing in gemfile 
    #   consumer_key: "YOUR_KEY" 
    #   consumer_secret: "YOUR_SECRET"
    #   oauth_token: "YOUR_TOKEN" 
    #   oauth_token_secret: "YOUR_TOKEN_SECRET"

    # Note: Eliza should not be run with other plugins
    # - name: 'Eliza'
    #   path: './plugins/siriproxy-eliza' # path works just like specifing in gemfile 

    # Below are not actual plugins, just further example of config options

    # - SimplePlugin # simple syntax for plugins that are in rubygems and have no config 

    # - name: 'AnotherPlugin'
    #   git: 'git://github.com/netpro2k/SiriProxy-AnotherPlugin.git' # git works just like specifying in Gemfile

Ist schon auf Deine IP geändert, lass auch mal die „Example“-Daten drin - irgendwo im Thread hat sich diesbezüglich auch schon mal jemand geäußert…

Joachim

du bist der beste joachim es geht :slight_smile: :slight_smile:

habe es aber vorher auch schon mit dem Example probiert und da gigns auch nicht was ich noch geändert habe ist das ich denn SSH zugriff entfernt habe vielleicht lags ja auch daran aber egal,… es geht :slight_smile:

danke schon mal :slight_smile:

somit habe ich wieder einen teil erreicht :slight_smile:

und wie kann ich jetzt das licht schalten bzw. wo muss ich das eintragen ? wenn´s keine umstände macht

danke

alex

Nun, da gibt es sicherlich viele Wege. Ich habe es so gemacht:

  1. So sieht derzeit meine siriproxy-ips.rb aus:
# encoding: utf-8
require 'httparty'

class SiriProxy::Plugin::IPS < SiriProxy::Plugin
  attr_accessor :host

  def initialize(config = {})
    self.host = config["host"]
  end
  
  # Beleuchtung allgemein
  listen_for (/(Licht|Beleuchtung|Lampe) (Garage|Werkstatt|Technikraum) (an|ein|aus)/i) do |device1,room1,action1|
    room = room1.strip
    action = action1.strip
    if((action == "an") or (action == "ein"))
      state = 1
    else
      state = 0
    end
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=#{room}&type=light&state=#{state}")
    if(room == "Technikraum")
      say "Im #{room} wurde das Licht #{action}geschaltet!"
    else
      say "In der #{room} wurde das Licht #{action}geschaltet!"
    end
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end
  
  # Aussenbeleuchtung
  listen_for (/(Aussenlicht|Aussenbeleuchtung) (an|ein)/i) do |room1,action1|
    room = room1.strip
    action = action1.strip
    if((action == "an") or (action == "ein"))
      state = 1
    else
      state = 0
    end
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=Aussenlicht&type=light&state=#{state}")
    say "Die Aussenbeleuchtung wurde #{action}geschaltet!"
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end
  
  # Temperaturabfrage allgemein
  listen_for (/Temperatur (Büro Joachim|Büro Anna|Schlafzimmer|Bad Dachgeschoss|Bad Erdgeschoss|Küche|Flur|Wohnzimmer|Dennis Zimmer)/i) do |room1|
    room = room1.strip
	if(room == "Büro Joachim")
          roomsend = "BueroJoachim"
        end
        if(room == "Büro Anna")
          roomsend = "BueroAnna"
        end
        if(room == "Bad Dachgeschoss")
          roomsend = "BadDachgeschoss"
        end
        if(room == "Bad Erdgeschoss")
          roomsend = "BadErdgeschoss"
        end
        if(room == "Küche")
          roomsend = "Kueche"
        end
        if(room == "Dennis Zimmer")
          roomsend = "DennisZimmer"
        end
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=#{roomsend}&type=temperatur&state=0")
    if(room == "Küche")
     say "Die Temperatur in der #{room} beträgt derzeit #{result} Grad!"
    else
     say "Die Temperatur im #{room} beträgt derzeit #{result} Grad!"
    end
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end

  # Aussentemperatur
  listen_for (/Aussentemperatur/i) do
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=Aussentemperatur&type=temperatur&state=0")
    say "Die Aussentemperatur beträgt derzeit #{result} Grad!"
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end
  
  # Garagentore
  listen_for (/(Tor eins|Tor zwei|Garagentor eins|Garagentor zwei) (öffnen|auf|hoch|zu|runter|schließen)/i) do |room1,action1|
    room = room1.strip
    action = action1.strip
    if((action == "zu") or (action == "runter") or (action == "schließen"))
      state = 1
    else
      state = 0
    end
    if((room == "Tor eins") or (room == "Garagentor eins"))
     roomsend = "TorEins"
    else
     roomsend = "TorZwei"
    end
	 result = HTTParty.get("http://#{self.host}/user/siri/siri.ips.php?room=#{roomsend}&type=gate&state=#{state}")
    say "#{room} #{result}!"
    request_completed #always complete your request! Otherwise the phone will "spin" at the user!
  end
end

Da kann man sicherlich noch einiges verbessern, ist aber auch erst mein Anfang…:wink:

Alle Anfragen laufen den in der schon im Thread vorher beschrieben Datei im Ordner webfront/user/siri/siri.ips.php auf:

<?php 
	$room = $_GET['room']; 
    $type = $_GET['type'];
	$state = $_GET['state']; 
	
    
	IPS_RunScriptWaitEx(18362  /*[Siri\Siri-Aktionen]*/, Array("Room" => $room, "Type" => $type, "State" => $state));
	$Value = GetValueString(48388  /*[Siri\Siri-Abfragen\Siri-Variable]*/);
	echo $Value;
	SetValueString(48388  /*[Siri\Siri-Abfragen\Siri-Variable]*/, "");
	
?> 

Dieses ist aber nur eine Schnittstelle ohne große „Intelligenz“. Wie Du siehst gibt es nur ein Skript was gestartet wird und eine Variable aus der die Daten zur Übergabe an den Siriproxy abgefragt wird.

Im IPS selbst gibt es dann ein Skript das dann mit den notwendigen Aktionen befüllt wird:

<?
Include ('Konstanten.ips.php');
Include ('f_Siemens-Logo.ips.php');

// Todo:TV, PC, Türsummer, Raumtemperatur setzen

$Room = $_IPS['Room'];
$Type = $_IPS['Type'];
$State = $_IPS['State'];

If (array_key_exists($Room, $k_SIRI_DEVICES))
		{
		If (($Type == "light") AND (GetValueBoolean($k_SIRI_DEVICES[$Room]['Statuslink']) == !$State))
		   {
		   IPS_RunScript($k_SIRI_DEVICES[$Room]['Switchlink']);
		   }
      ElseIf ($Type == "server")
			   {
			   SetValueBoolean(55583 /*[Siri\Server-Status]*/  , $State);
			   }
      ElseIf ($Type == "temperatur")
			   {
			   SetValueString(48388 /*[Siri\Siri-Aktionen\Siri-Variable]*/ , round(GetValueFloat($k_SIRI_DEVICES[$Room]['Statuslink']),1));
			   }
      ElseIf ($Type == "gate")
			   {
			   If ((GetValueInteger($k_SIRI_DEVICES[$Room]['Statuslink']) == 0) AND ($State == 1))
					{
					LogoTaster(40477 /*[Siemens LOGO Garage]*/, $k_SIRI_DEVICES[$Room]['SwitchlinkDown'], 1000); // Tor zufahren
					SetValueString(48388 /*[Siri\Siri-Aktionen\Siri-Variable]*/ , "wird geschlossen");
					}
				elseif ((GetValueInteger($k_SIRI_DEVICES[$Room]['Statuslink']) == 0) AND ($State == 0))
				   {
				   SetValueString(48388 /*[Siri\Siri-Aktionen\Siri-Variable]*/ , "ist bereits geoeffnet");
				   }
            elseif ((GetValueInteger($k_SIRI_DEVICES[$Room]['Statuslink']) == 1) AND ($State == 1))
				   {
				   SetValueString(48388 /*[Siri\Siri-Aktionen\Siri-Variable]*/ , "ist bereits geschlossen");
				   }
				elseif (((GetValueInteger($k_SIRI_DEVICES[$Room]['Statuslink']) == 1) OR (GetValueInteger($k_SIRI_DEVICES[$Room]['Statuslink']) == 2)) AND ($State == 0))
               {
					LogoTaster(40477 /*[Siemens LOGO Garage]*/, $k_SIRI_DEVICES[$Room]['SwitchlinkUp'], 1000); // Tor auffahren
					SetValueString(48388 /*[Siri\Siri-Aktionen\Siri-Variable]*/ , "wird geoeffnet");
					}
			   }
		}

?>

Ich habe dazu alle relevanten Daten in einem Array geparkt, ich persönlich halte das für übersichtlicher. das kann ja aber jeder so machen wie er möchte:

//*************************************************************************************************************
// Informationen zu den Siri-Geräten
global $k_SIRI_DEVICES;
$k_SIRI_DEVICES = array(
"Technikraum" => array("Typ" => "Light", "Switchlink" => 42689, "Statuslink" => 59347),
"Werkstatt" => array("Typ" => "Light", "Switchlink" => 12687, "Statuslink" => 33786),
"Garage" => array("Typ" => "Light", "Switchlink" => 11885, "Statuslink" => 53176),
"Aussenlicht" => array("Typ" => "Light", "Switchlink" => 17101, "Statuslink" => 42289),
"Aussentemperatur" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 21257),
"BueroJoachim" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 40847),
"BueroAnna" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 15617),
"Schlafzimmer" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 49121),
"DennisZimmer" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 56346),
"BadErdgeschoss" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 14810),
"Kueche" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 48444),
"Wohnzimmer" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 14751),
"Flur" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 33183),
"BadDachgeschoss" => array("Typ" => "Temperatur", "Switchlink" => "", "Statuslink" => 12846),
"TorEins" => array("Typ" => "Tor", "SwitchlinkUp" => 39642, "SwitchlinkDown" => 42801, "Statuslink" => 27402),
"TorZwei" => array("Typ" => "Tor", "SwitchlinkUp" => 51205, "SwitchlinkDown" => 29713, "Statuslink" => 57920)
);

Wie gesagt, ich bin (auch) erst am Anfang, habe selbst noch viele offene Fragen hier im Forum laufen…

Vielleicht hilft es Dir ja…

Joachim

danke für die vielen infos

ich versuch mal mein glück, aber wie das aussieht sind php kenntnisse von vorteil die ich leider nicht habe :frowning:

aber ich werd´s schon irgendwie schaffen hoffe ich :slight_smile:

sonst mach ich einen php schnellkurs :slight_smile:

danke erstmal für die hilfe :slight_smile:

alex

PHP-Kenntnisse haben bei IPS schon einen „gewissen Vorteil“…:wink:

Viel Erfolg!

Joachim

so nach denn ersten 4 Stunden PHP 5 Video2Brain DVD bin ich zwar noch verwirrter als vorher, aber auf einen höheren Niveau ;):slight_smile:
und habe es jetzt auch geschafft das erste Licht mit Siri zu schalten :slight_smile: :slight_smile:

danke nochmal an joachim

mfg alex :slight_smile:

Hallo Leute,

ich möchte in der siriproxy-ips.rb folgende Python-Funktion anwenden:
str.replace(old, new[, count])

Im Konkreten lauter er:
program = program2.replace(’ ‚,‘_’)
(Ich habe es auch mit " statt ’ probiert)

Es kommt aber immer die Fehlermeldung:
…siriproxy-ips.rb:102:in ‚replace‘: wrong number of arguments(2 for 1) (ArgumentError)

Wie wendet man in Python solche Funktionen korrekt an?

Joachim