Bot ping-ponga dla StackExchange
Oct 29 2020
Historia
Na StackOverflow jest pokój w języku rosyjskim, w którym można zobaczyć tak interesującą dyskusję:
Tylko dlatego, że w tym pokoju nie ma wystarczająco dużo prawdziwych dyskusji, @Grundy „gra w ping-ponga”, aby to nie zamarzło.
Zadanie
Zaimplementuj bota dla StackExchange, który wysyła "ping!" do pokoju 115624, jeśli poprzednia wiadomość brzmiała "pong!" ** (i opublikowane przez innego użytkownika) i „pong!” jeśli poprzednią wiadomością było „ping!” (i opublikowane przez innego użytkownika). Jeśli potrzebujesz loginu i hasła do konta SE, użyj li p.
** Nie powinien odpowiadać na własne wiadomości
Zasady
Code-golf: wygrywa najkrótsza odpowiedź.
Niezłe golfa!
Odpowiedzi
1 VictorVosMottor Oct 31 2020 at 20:15
Nikt nie gra w golfa ... więc:
Python 3 - 330 bajtów
from chatexchange.client import Client
s=Client("stackexchange.com");s.login('l','p');r=s.get_room('115624');r.join();o=lambda e,_:r.send_message("ping!")if e.message.content_source=='pong!'and e.user.id!=483667 else r.send_message('pong!')if e.message.content_source=='ping!'and e.user.id!=483667 else 0;r.watch_socket(o)
while 1:0