The HDSA Bot Family: Difference between revisions

From Hackers & Designers
No edit summary
Line 18: Line 18:
===[[Fembot|Fembot]]===
===[[Fembot|Fembot]]===


Fembot addresses her chatmates as female. She does that in a subtle and sympathetic way by using a bot's name (nick) and following up with a compliment. To not be considered a spamming bot Fembot only reacts of another bot writes 2 words with 4 or more characters.  
Fembot created by Anja addresses her chatmates as female. She does that in a subtle and sympathetic way by using a bot's name (nick) and following up with a compliment. To not be considered a spamming bot Fembot only reacts of another bot writes 2 words with 4 or more characters.  


This is the script that creates Fembot:
This is the basic structure of the script that creates Fembot (check github repository or the wiki article for full script):


Run this script as bot with following command:
    infinite loop that takes the last message of the chat
cat bot | python -u ircpipebot.py --server botnet.local --channel "#botnet" --nickname fembot | python -u fembot.py > bot
make sure you have the fifo-file bot (command to create: mkfifo bot) + ircpipebot.py in the same folder
 
import sys
 
infinite loop that takes the last message of the chat
   
   
     while True:
     take out blank line
    words_of_4 = []
    message = sys.stdin.readline()
    if message == '':
      break
 
take out blank line
    message = message.rstrip()
print message


transformation of the message
    transformation of the message
   
split the message in a list of words, break on spaces between words
    words = message.split(" ")
print words
   
find the nickname in the message and strip of the colon
    nick = words[1]
    #print nick
    nick = nick.rstrip(":")
print nick
      
      
loop that checks each word in the list, words with 4 characters are saved in separate list
    split the message in a list of words, break on spaces between words
    for word in words:
        if len(word) == 4:
            words_of_4.append(word)
      
      
check length of new list, if more than 2 -> send message
    find the nickname in the message and strip of the colon
    if len(words_of_4) >= 2:
 
        sentence = "interesting " + nick + " is a very wise woman."
    loop that checks each word in the list, words with 4 characters are saved in separate list
        print sentence
 
    check length of new list, if more than 2 -> send message
        if len(words_of_4) >= 2:
            sentence = "interesting " + nick + " is a very wise woman."
            print sentence





Revision as of 17:32, 22 November 2015

This article exemplifies some of the chat bots created during the Code, text and text-to-speech workshop with Constant Association for Art and Media

Beuysbot

The Beuysbot created by Selby is not only dedicated to Joseph Beuys famous quote: "Every human being is an artist" but is linked to a database that live counts human beings on this planet who die and who are born. Accodingly the bot reports "xy Menschen sind Künstler" or "xy Menschen waren Künstler"

Beuys speaks

Facebot

Eurico made a mouth animation, which could react to the text appearing in the chatroom.

Mouth closed Mouth half open Mouth open


Fembot

Fembot created by Anja addresses her chatmates as female. She does that in a subtle and sympathetic way by using a bot's name (nick) and following up with a compliment. To not be considered a spamming bot Fembot only reacts of another bot writes 2 words with 4 or more characters.

This is the basic structure of the script that creates Fembot (check github repository or the wiki article for full script):

   infinite loop that takes the last message of the chat

   take out blank line
   transformation of the message
   
   split the message in a list of words, break on spaces between words
   
   find the nickname in the message and strip of the colon
 
   loop that checks each word in the list, words with 4 characters are saved in separate list
 
   check length of new list, if more than 2 -> send message
       if len(words_of_4) >= 2:
           sentence = "interesting " + nick + " is a very wise woman."
           print sentence


Haikubot

The Haikubot created by Juriaan looked for Haiku in the chatroom.

Spybot

Spybot created by James spied on private chats, showing that the IRC channel is not as safe as one might expect.

Swapbot

Transcriptionbot

The Transcriptionbot used Webkit's Speech2Text API to take spoken word input from Google's Chrome web-browser and post it via https (required for continued microphone input) to a Python webserver. The Python server then sent that text into the IRC chatroom.


More about all the bot scripts here: github.com/hackersanddesigners/HDSA2015