Kleine Sektflaschen Hochzeit
Kara basiert auf dem Konzept endlicher Automaten, ist alltagsnah und trotzdem ein theoretisch fundiertes und mächtiges Programmiermodell. Verschiedene Programmierumgebungen eröffnen spielerische Zugänge zu grundlegenden Programmierkonzepten mit unterschiedlichem Schwierigkeitsgrad für allgemeinbildende Schulen bis hin zu Diplomstudiengängen in der Informatik. XMPP-Kompendium: Programmierung mit Ruby – Wikibooks, Sammlung freier Lehr-, Sach- und Fachbücher. Der einfache Einstieg ins Programmieren: Endliche Automaten Der Übergang zu realen Programmiersprachen Kara-Umgebungen zu speziellen Themen Ausgezeichnet: Die Kara-Umgebungen haben den European Academic Software Award 2002 gewonnen. Idee, Konzeption und Realisierung: Jürg Nievergelt, Werner Hartmann, Raimond Reichert, Markus Brändle, Tobias Schlatter. Mit Beiträgen von Philipp Boksberger, Horst Gierhardt, Reto Lamprecht, Remo Meier, Horst Müller, Nicole Völki, Samuel Zürcher. Kontakt: Raimond Reichert.
Hier aber nicht, hier wollen wir, dass alle wissen dass unser Agent da ist. () (korrekt: Jabber::Client#send) ist die Methode mit der wir alles rausschicken können. Hier also unser Online-Status, genannt Presence:
()
Wir wollen aber noch mehr. Wir wollen Free for chat sein und eine hübsche Status-Message anzeigen. Um nicht erst eine Instanz von Presence holen zu müssen, die wir erst ändern und dann abschicken, hat XMPP4R etwas ganz innovatives eingeführt: Chaining. Das sind Setter, die als Rückgabewert das Objekt selbst haben. Ruby lernen ??? - Skript- und Webserverprogrammierung - Fachinformatiker.de. Wir können diese also hintereinanderketten:
((:chat). set_status('I will google for you! ')) Andererseits nimmt diese Parameter auch schon der Constructor von Presence entgegen, man könnte es also auch so schreiben:
((:chat, 'I will google for you! ')) XMPP-Stanzas debuggen [ Bearbeiten]
XMPP (das Jabber-Protokoll) besteht aus drei Hauptelementen, den sogenannten Stanzas:
Beispielsweise können wir diese nun ganz einfach in Interactive Ruby anschauen:% irb
irb(main):001:0> require 'xmpp4r'
=> true
irb(main):002:0> (:chat, 'I will google for you! '). to_s
=> "
Weil wir diese Komplexität aber nicht brauchen, lassen wir die Parameter weg und geben uns mit den Defaults zufrieden. Unser Block bekommt genau einen Parameter: die Nachricht. d_message_callback { |msg|} Jetzt müssen wir prüfen, ob der gesandte Text ( body) nicht nil ist. Programmieren mit ruby. Das muss sein, da zum Beispiel bei Chat State Notifications Nachrichten ohne Text verschickt werden, wenn jemand mit Tippen anfängt. d_message_callback { |msg| if end} Unter dieses if schreiben wir nun das Holen der Suchergebnisse: searchresult = google() Die haben wir jetzt in einem Array aus Strings. Jetzt bauen wir uns unsere Message in einer Variable namens answer zusammen, welche an den Absender der msg geschickt wird: answer = () =:chat # Alles andere nervt Als Text unserer Nachricht möchten wir die ersten fünf Suchergebnisse, jeweils durch einen Zeilenumbruch getrennt: = searchresult[0.. 4]("\n") Und schließlich schicken wir das über unsere Client-Verbindung ab: (answer) Et voilà, wir haben den Joogle-Bot gebaut.
Das Rubywiki ist ein Wiki mit vielen deutschsprachigen Artikeln. Für weitergehende Fragen steht eine große Community zur Verfügung.
Natürlich escaped, wer weiss mit was die User den armen, kleinen Bot füttern. Das kann folgende Funktion für uns übernehmen: CGI::escape(phrase) Dafür benötigen wir die cgi -Bibliothek, also an den Anfang des Skripts: require 'cgi' Die komplette URL lautet nun: "CGI::escape(phrase)}". Das #{... } können wir machen, weil der String in Anführungszeichen statt Hochkommata steht. Da kommt dann einfach gewünschter Code, eben unser escaped Suchwort rein. Natürlich müssen wir das noch in eine HTTP-Anfrage umformulieren: response = Net::HTTP::get_response('', "/search? Programmieren mit ruby pdf to word. q=#{CGI::escape(phrase)}") Für Net::HTTP brauchen wir am Anfang des Skripts noch: require 'net/' Jetzt haben wir eine response. Unser Suchergebnis befindet sich in. Leider hat uns Google ein Ergebnis mit dem Zeichensatz ISO-8859-1 geliefert. Jabber ist jedoch glücklicherweise UTF-8. Schicken wir ihm ungültige Zeichen, dann wird uns der Server sofort trennen. Deshalb müssen wir erstmal mithilfe der iconv -Bibliothek konvertieren: html = ('utf-8', 'iso-8859-1')() Dafür brauchen wir am Anfang: require 'iconv' Das Paket gibt es unter FreeBSD im Port converters/ruby-iconv.
Jetzt sind wir bereit, unser zeichensatzkonvertiertes Suchergebnis auseinanderzupfriemeln. Zuerst initialisieren wir unser Ergebnis-Array: result = [] Jetzt wandern wir mit einem regulären Ausdruck durch das Suchergebnis, um uns URLs und Seitentitel herauszuklauben: (/(. Programmieren mit ruby eBook Full. +? )<\/a>/) { |url, title| In diesem Block hängen wir einen Ergebnisstring an unser Ergebnis-Array an: ("#{title}: #{url}")} In Ruby liefern Funktionen immer das Ergebnis der letzten Operation zurück. Also operieren wir einfach nichts mit unserem result und so sieht das Ende unserer google -Funktion aus: result Nach diesen sieben Zeilen Funktionsrumpf haben wir schon die Googlesuche implementiert: Jetzt müssen wir natürlich noch die Verbindung zu Jabber herstellen... Message-Callback implementieren [ Bearbeiten] Irgendwo zwischen Client-Instantiierung und Stoppen des Hauptthreads schreiben wir nun den Teil, der Suchanfragen entgegennimmt und das Ergebnis ausgibt. Dazu kann man bei XMPP4R sogenannte Callbacks schreiben, die über Namen, Prioritäten und viel mehr verfügen.
Ferienhaus BlueSky [fh38659] Tolles Haus, super für Familien in kleines Ferienpark - Diejenigen, die gerne Strandurlaub machen aber die überfüllten Strände lieber meiden, möchten wir gerne in e [fh38659] max. Ferienwohnungen & Ferienhäuser für den Urlaub mit Hund in Noordwijk. 5 Personen ab pro Nacht* Duinen Comfort [fh32595] Komfortabeles Strandchalet in Ferienpark - Duinen Comfort ist ein komfortables und modern eingerichtetes Haus für bis zu 5 Personen. Das geräumige Wohnzimmer mit Sitze [fh32595] Preis auf Anfrage Soleil deLuxe [fh32499] Luxuriöses und total modernes Ferienchalet - Soleil deLuxe ist ein luxuriös und modern eingerichtetes Haus für bis zu 5 Personen. Vom geräumigen Wohnzimmer mit Sitz [fh32499] Soleil Comfort [fh32500] Tolles Ferienhaus für 5 Personen in Noordwijk nah am Strand - Soleil Comfort ist ein komfortables und modern eingerichtetes Ferienhaus für bis zu 5 Personen. Vom gerä [fh32500] Duinen Basis [fh32594] Gemütliches Strandchalet in Ferienpark - Das Chalet Duinen Basis ist ein äußerst komfortables Chalet mit allem, was Sie im Urlaub benötigen.
Und dann ist da der 13 Kilometer lange Sandstrand, der zu ausgiebigen Spaziergängen einlädt. So schön ich es finde, im Sommer in der warmen Sonne mit Dayo und Suri das süße Nichtstun im Sand zu genießen. Es geht jedoch nichts über einen Tag am Strand im Herbst oder Winter. Der Wind pfeift um die Ohren, die Wellen rauschen aufgewühlt heran, Wolken und Sonne wechseln sich in schneller Folge in einem wunderbaren Farbenspiel ab. © Angelika Mandler-Saul, Ich liebe das. Und Dayo und Suri? Zugegebenermaßen finden die beiden den Wind nicht so toll. Aber meistens dauert es nicht lange und dann genießen auch sie ihr persönliches Strandleben in vollen Zügen. Was mich immer wieder an den Stränden überall in den Niederlanden beeindruckt, ist das entspannte Miteinander (der Menschen) und Untereinander (der Hunde). ▸ Urlaub mit Hund in Noordwijk aan Zee, Südholland: Ferienwohnungen & Ferienhäuser privat mieten. Da wird gerannt, gejagt, getobt und gespielt als gäbe es kein morgen mehr. Und wer keinen Kontakt wünscht, der wird respektiert. Wenn das nicht Hundehalters Himmel ist! Ferienwohnung für den Urlaub mit Hund in Zuid-Holland finden An den langen Stränden der Nordseeküste können sich die Hunde richtig austoben Wenn dann irgendwann doch die Kälte durch die Jacke krabbelt, dann geht es einfach zurück auf die Strandpromenade von Noordwijk.