#!/usr/bin/python3
import yara
import sys

# The callback function, implementing comparable
# logic to yara_chat.c
def mycallback(data):
    if data['matches']:
        if data['rule'] == 'yes_rule':
            print('How nice of you!!')
        elif data['rule'] == 'no_rule':
            print('Well, nevermind then...')
        elif data['rule'] == 'hello_rule':
            print('Hello back')

    return yara.CALLBACK_CONTINUE

# Initialization of yara done in one step
rules = yara.compile(filepath="yara_chat.yar")

# Loop over the input, scanning each
for input_line in sys.stdin:
    matches = rules.match(data=input_line,
                          callback=mycallback)

