Esempio n. 1
0
def main():
    with open('./../../dont_commit.json') as f:
        data = json.load(f)
    for user in get_participants(data):
        write_all_messages(data, user)
    for user in get_participants(data):
        create_json_wordcloud(data, user)
Esempio n. 2
0
def set_nickname(data):
    # warning: does not work for users json (your nickname)
    mydict = {}
    changed_names = {}
    name_got_changed = {}
    messages = data["messages"]
    for message in messages:
        if ("content" in message.keys()
                and "set the nickname for" in message["content"]):
            for changer in get_participants(data):
                key_phrase = "set the nickname for"
                if (changer) in message["sender_name"] and (
                        key_phrase) in message["content"]:
                    for user in get_participants(data):
                        if (user in message["content"]):
                            nickname = message["content"].split("to", 1)[1]
                            if (changer in changed_names.keys()):
                                changed_names[changer] += 1
                            else:
                                changed_names[changer] = 1
                            if (user in name_got_changed.keys()):
                                name_got_changed[user] += 1
                            else:
                                name_got_changed[user] = 1
    return name_got_changed, changed_names
Esempio n. 3
0
def time_range_analysis(data, start, end):
    num_messages = {}
    for user in get_participants(data):
        num_messages[user] = 0
        for message in get_messages(data, user):
            hour = datetime.datetime.fromtimestamp(
                message["timestamp_ms"] / 1000.0).strftime(
                    '%Y-%m-%d %H:%M:%S.%f').split()[1].split(":")[0]
            if int(hour) >= start and int(hour) <= (end - 1):
                num_messages[user] += 1
    return num_messages
Esempio n. 4
0
def created_poll(data):
    mydict = {}
    messages = data["messages"]
    for message in messages:
        if ("content" in message.keys()
                and "created a poll" in message["content"]):
            for user in get_participants(data):
                if (user) in message["sender_name"]:
                    if (user in mydict.keys()):
                        mydict[user] += 1
                    else:
                        mydict[user] = 1
    return mydict
Esempio n. 5
0
def most_mentioned(data):
    mydict = {}
    messages = data["messages"]
    for message in messages:
        if ("content" in message.keys() and '@' in message["content"]):
            for user in get_participants(data):
                first = user.split(' ', 1)[0]
                if ('@' + first) in message["content"] or (
                        '@' + first.lower()) in message["content"]:
                    if (user in mydict.keys()):
                        mydict[user] += 1
                    else:
                        mydict[user] = 1
    return mydict
Esempio n. 6
0
def set_emoji(data):
    mydict = {}
    messages = data["messages"]
    for message in messages:
        if ("content" in message.keys()
                and "set the emoji to" in message["content"]):
            for user in get_participants(data):
                if (user) in message["sender_name"]:
                    emoji = message["content"].split("to", 1)[1]
                    if (user in mydict.keys()):
                        mydict[user] += 1
                    else:
                        mydict[user] = 1
    print(mydict)
    return mydict
Esempio n. 7
0
def revaultd_manager(bitcoind, directory):
    datadir = os.path.join(directory, "revaultd")
    os.makedirs(datadir, exist_ok=True)
    stakeholders, managers = get_participants(2, 3)

    ourselves = {
        "manager_xpub": managers[0]["xpub"],
    }
    csv = 35
    revaultd = RevaultD(datadir, ourselves, stakeholders, managers, csv,
                        bitcoind)
    revaultd.start()

    yield revaultd

    revaultd.cleanup()