\documentclass{beamer}
\usepackage[ngerman]{babel}
\usepackage[utf8x]{inputenc}
%\usepackage{iwona}
\usepackage{palatino}
\usepackage{beamerthemesplit}
\usepackage{url}
\usepackage{listings}

\usetheme{Warsaw}
\usefonttheme{professionalfonts}

\title{\emph{\sc Omegle}}
\author{Yves Fischer}
\date{Montag 15. Juni 2009}

\newcommand{\simplesplit}[2][]{
\begin{columns}
  \begin{column}{5cm}
    #1
  \end{column}
  \begin{column}{5cm}
    #2
  \end{column}
\end{columns}
}

\begin{document}
\frame{\titlepage}

\section{Was ist Omegle}
\begin{frame}
  \textbf{Omegle}
  \begin{itemize}
  \item ... verbindet zwei Gesprächspartner zufällig
  \item ... ist ,,Web 2.0''. Setzt mit Ajax auf REST-Interface und
    JSON als Datenformat.
  \item ... ist \emph{nicht} primär eine Cybersex Plattform
  \item Hat angeblich je nach Zeit zwischen 2500 und 4000 Benutzer
  \end{itemize}
\end{frame}

  % \begin{frame}\frametitle{Omegle technisch betrachtet}
  %   asd
  % \end{frame}


  \section{Fun mit Omegle}
   \begin{frame}\frametitle{Re-Implementation der Omegle
       Plattform}
     \begin{itemize}
       \item Zum testen der eigenen ,,Omegle-Applikationen''
       \item ebenfalls mit python und twisted-Framework
       \item Zurzeit teils funktionsfähig. Weitere funktionen wie Malen oder Bildertausch geplant
       \end{itemize}
   \end{frame}

  \begin{frame}\frametitle{eigene Omegle Clients}
    \begin{itemize}
    \item einfacher Konsolenchat
    \item ncurses chat mit python-urwid
    \end{itemize}
  \end{frame}

   \begin{frame}\frametitle{Mitschneiden von Inhalten}
     grafik..
   \end{frame}

\begin{frame}[fragile]\frametitle{Training eines Bots} 
  \lstset{language=SQL} \tiny
  \begin{lstlisting}
SELECT message
  FROM omegle_messages 
 WHERE ( message ILIKE '%sex%'
      OR message ILIKE '%boob%'
      OR message ILIKE '%horny %'
      OR message ILIKE '%pussy %'
      OR message ILIKE '%ass %'
      OR message ILIKE '%naked%'
      OR message ILIKE '%fuck%'
      OR LENGTH(message) < 7 AND CAST(RANDOM()*10 as integer)=1)
   AND
      LENGTH(message) < 35 
   AND NOT ( message ILIKE '%www.%'
          OR message ILIKE '%http%'
          OR message ILIKE '%@%.%');
  \end{lstlisting}
\small
  \begin{itemize}
  \item Alle Nachrichten in denen die {\it Wörter} vorkommen und keine
    Adressen vorkommen.
  \item keine Nachrichten groesser 34 Zeichen ({\sc ASCII}-Art)
  \end{itemize}
\end{frame}

\begin{frame}[fragile]\frametitle{Unterhaltung}\tiny
  \begin{columns}
    \begin{column}{5cm}
\begin{verbatim}
 Megahal Connection confirmed
Stranger: dafaakep
 Megahal: I want to touch a boobie.
Stranger: you know what, so do i
 Megahal: I want to do sex with you.
Stranger: aah pillow
 Megahal: You know what, so do i.
Stranger: you know what, so do i
 Megahal: Do you want to do sex with a girl.
Stranger: i want to do sex with you
 Megahal: Want me to fuck you.
Stranger: fuck me with your pecker
 Megahal: Me want sex you have sex with me.
Stranger: /b/ have sex with everyone
 Megahal: And sex with everyone.
Stranger: everyone
 Megahal: And sex with everyone.
Stranger: and a little bit more sexy time now
 Megahal: Hey sexy sexy.
Stranger: im too sexy for my shirt
 Megahal: My hair just goes down to my boobs.
Stranger: my cock goes up to my boobs
\end{verbatim}
      \end{column}
      \begin{column}{5cm}
\begin{verbatim}
 Megahal: My hair just goes down to my boobs.
Stranger: charizard
 Megahal: Fuck the rest uk rule.
Stranger: haha thats not what yall were saying when we sunk your tea in boston
 Megahal: Not like sex.
ahalBot Megahal:Stranger is typing
Stranger: me fucking you 
 Megahal: You want to do sex with you.
Stranger: oh no much like sex
Stranger: sexy time 
 Megahal: Yes yes go sex time.
Stranger: i am doing sex with me
 Megahal: And sex with me.
 Megahal: Class of 450.
Stranger: would you like to suck my cock
 Megahal: You want to do sex with you.
Stranger: BEZERKER
 Megahal: One guy fucks you in the ass.
Stranger: i prefer one in the ass, one in the mouth
 Megahal: One guy fucks you in the mouth.
 Megahal disconnect
\end{verbatim}
      \end{column}
    \end{columns}
  \begin{itemize}
  \item Abbruch der Verbindung mit ,,Processing Failed''. Filter?
  \end{itemize}
\end{frame}

\frame{\frametitle{Auswertung}
  \begin{itemize}
    \item Asiaten brechen bei {\it sinnlosen} Bot-Aussagen eher nicht ab
    \item Die allgemein schlechten Englischkentnisse auf Omegle
      begünstigen den Einsatz der K.I.
    \item Megahal ist durchaus in der Lage seinen Partner einen ganzen
      Chat hinüber nicht aufzufallen
    \item Das trainieren von Megahal mit Begriffen aus Konversationen rund um Cybersex ist sinnvoll, wenn lange Konversationen gewünscht sind, da hier fehler des Bots nicht so stark ins Gewicht fallen
    \item Megahal ist nicht in der Lage ein Gesprächsverlauf zu analysieren sondern betrachet jeweils nur die letzte Aussage seines Gesprächspartners. Daher kommt er leicht al vom Thema ab.
  \end{itemize}
}

\section{Demonstration}
\frame{\frametitle{}
  \begin{center}\Huge Demonstration \end{center}
}

\begin{frame}\frametitle{Quellen}
  \begin{itemize}
  \item omegle \url{http://omegle.com}
  \item megahal \url{http://megahal.alioth.debian.org/}
  \item python-omegle tools \url{http://xapek.org/svn/common/omegle}
  \item Omegle Klon in python \url{http://xapek.org/svn/common/chat}
  \item Perl WWW::Omegle
    \url{http://search.cpan.org/~revmischa/WWW-Omegle-0.02/lib/WWW/Omegle.pm}
  \item Folien
    \url{http://xapek.org/svn/common/omegle/slides/slides.pdf}
  \end{itemize}
\end{frame}

\end{document}
