def _cmd_say(arg1=None, arg2=None):
    if arg1 == "on":
        prof.settings_string_set("termuxnotify", "enabled", "on")
        prof.cons_show("Termuxnotify plugin enabled")
    elif arg1 == "off":
        prof.settings_string_set("termuxnotify", "enabled", "off")
        prof.cons_show("Termuxnotify plugin disabled")
    elif arg1 == "active":
        prof.settings_string_set("termuxnotify", "enabled", "active")
        prof.cons_show("Termuxnotify plugin enabled for active window only")
    elif arg1 == "vibrate":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/termuxnotify")
        else:
            prof.settings_string_set("termuxnotify", "vibrate", arg2)
            prof.cons_show("termuxnotify plugin vibrate set to: " + arg2)
    elif arg1 == "rooms":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/termuxnotify")
        else:
            prof.settings_string_set("termuxnotify", "rooms", arg2)
            prof.cons_show(
                "termuxnotify plugin notifications for rooms set to: " + arg2)
    else:
        enabled = prof.settings_string_get("termuxnotify", "enabled", "on")
        rooms = prof.settings_string_get("termuxnotify", "rooms", "off")
        vibrate = prof.settings_string_get("termuxnotify", "vibrate", "off")
        prof.cons_show("Termuxnotify plugin settings:")
        prof.cons_show("enabled : " + enabled)
        prof.cons_show("vibrate : " + vibrate)
        prof.cons_show("rooms : " + rooms)
Example #2
0
def _cmd_say(arg1=None, arg2=None):
    if arg1 == "on":
        prof.settings_string_set("say", "enabled", "on")
        prof.cons_show("Say plugin enabled")
    elif arg1 == "off":
        prof.settings_string_set("say", "enabled", "off")
        prof.cons_show("Say plugin disabled")
    elif arg1 == "active":
        prof.settings_string_set("say", "enabled", "active")
        prof.cons_show("Say plugin enabled for active window only")
    elif arg1 == "args":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/say")
        else:
            prof.settings_string_set("say", "args", arg2)
            prof.cons_show("Say plugin arguments set to: " + arg2)
    elif arg1 == "clearargs":
        prof.settings_string_set("say", "args", "")
        prof.cons_show("Say plugin arguments cleared")
    elif arg1 == "test":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/say")
        else:
            say(arg2)
    else:
        enabled = prof.settings_string_get("say", "enabled", "off")
        args = prof.settings_string_get("say", "args", "")
        prof.cons_show("Say plugin settings:")
        prof.cons_show("enabled : " + enabled)
        if args != "":
            prof.cons_show("args    : " + args)
Example #3
0
def _cmd_notifycmd(arg1=None, arg2=None):
    if arg1 == "on":
        prof.settings_string_set("notifycmd", "enabled", "on")
        prof.cons_show("Notifycmd plugin enabled")
    elif arg1 == "off":
        prof.settings_string_set("notifycmd", "enabled", "off")
        prof.cons_show("Notifycmd plugin disabled")
    elif arg1 == "active":
        prof.settings_string_set("notifycmd", "enabled", "active")
        prof.cons_show("Notifycmd plugin enabled for active window only")
    elif arg1 == "command":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/notifycmd")
        else:
            prof.settings_string_set("notifycmd", "command", arg2)
            prof.cons_show("notifycmd plugin command set to: " + arg2)
    elif arg1 == "rooms":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/notifycmd")
        else:
            prof.settings_string_set("notifycmd", "rooms", arg2)
            prof.cons_show(
                "notifycmd plugin notifications for rooms set to: " + arg2)
    else:
        enabled = prof.settings_string_get("notifycmd", "enabled", "on")
        rooms = prof.settings_string_get("notifycmd", "rooms", "mention")
        command = prof.settings_string_get("notifycmd", "command", "")
        prof.cons_show("Notifycmd plugin settings:")
        prof.cons_show("enabled : " + enabled)
        prof.cons_show("command : " + command)
        prof.cons_show("rooms : " + rooms)
def _string(op, group, key, value):
    if op != "get" and op != "set":
        prof.cons_bad_cmd_usage("/python-test")
        return

    if group == None or key == None:
        prof.cons_bad_cmd_usage("/python-test")
        return

    if op == "set" and not value:
        prof.cons_bad_cmd_usage("/python-test")
        return

    if op == "get":
        prof.win_create(plugin_win, _handle_win_input)
        prof.win_focus(plugin_win)
        res = prof.settings_string_get(group, key, None)
        if res:
            prof.win_show(plugin_win, "String setting: " + res)
        else:
            prof.win_show(plugin_win, "String setting: None")
    elif op == "set":
        prof.win_create(plugin_win, _handle_win_input)
        prof.win_focus(plugin_win)
        prof.settings_string_set(group, key, value)
        prof.win_show(plugin_win,
                      "Set [" + group + "] " + key + " to " + value)
Example #5
0
def prof_init(version, status, account_name, fulljid):
    synopsis = [
        "/autocorrector on|off", "/autocorrector showlist",
        "/autocorrector clearall", "/autocorrector add"
        "/autocorrector rm"
    ]
    description = "Messy typist autocorrector. Replaces common typos in your outgoing messages."
    args = [
        ["on|off", "Enable/disable correction for all windows"],
        ["showlist", "show typolist."],
        ["add", "Add entry to typolist. Use pattern:replacement as format."],
        [
            "rm",
            "Remove entry from typolist. Use pattern:replacement as format."
        ], ["clearall", "Remove all entries from typolist"]
    ]
    examples = [
        "/autocorrector on",
        "/autocorrector add tpyo:typo",
        "/autocorrector add tset:test",
        "/autocorrector rm tset:test",
        "/autocorrector showlist",
    ]

    prof.settings_string_set("autocorrector", "enabled", "on")
    prof.register_command("/autocorrector", 0, 2, synopsis, description, args,
                          examples, _cmd_autocorrector)
    prof.completer_add("/autocorrector",
                       ["on", "off", "clearall", "add", "rm", "showlist"])
Example #6
0
def _cmd_say(arg1=None, arg2=None):
    if arg1 == "on":
        prof.settings_string_set("say", "enabled", "on")
        prof.cons_show("Say plugin enabled")
    elif arg1 == "off":
        prof.settings_string_set("say", "enabled", "off")
        prof.cons_show("Say plugin disabled")
    elif arg1 == "active":
        prof.settings_string_set("say", "enabled", "active")
        prof.cons_show("Say plugin enabled for active window only")
    elif arg1 == "args":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/say")
        else:
            prof.settings_string_set("say", "args", arg2)
            prof.cons_show("Say plugin arguments set to: " + arg2)
    elif arg1 == "clearargs":
        prof.settings_string_set("say", "args", "")
        prof.cons_show("Say plugin arguments cleared")
    elif arg1 == "test":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/say")
        else:
            say(arg2)
    else:
        enabled = prof.settings_string_get("say", "enabled", "off")
        args = prof.settings_string_get("say", "args", "")
        prof.cons_show("Say plugin settings:")
        prof.cons_show("enabled : " + enabled)
        if args != "":
            prof.cons_show("args    : " + args)
Example #7
0
def _cmd_autocorrector(arg1=None, arg2=None):
    if arg1 == "on":
        prof.settings_string_set("autocorrector", "enabled", "on")
        prof.cons_show("autocorrector plugin enabled")
    elif arg1 == "off":
        prof.settings_string_set("autocorrector", "enabled", "off")
        prof.cons_show("autocorrector plugin disabled")
    elif arg1 == "clearall":
        prof.settings_string_list_clear("autocorrector", "replacements")
        prof.cons_show("autocorrector plugin replacement list cleared.")
    elif arg1 == "showlist":
        replacements = prof.settings_string_list_get("autocorrector",
                                                     "replacements")
        prof.cons_show("Replacement string list:")
        for replacement in replacements:
            prof.cons_show(replacement)
    elif arg1 == "add":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/autocorrector")
        else:
            if len(arg2.split(':')) == 2:
                prof.settings_string_list_add("autocorrector", "replacements",
                                              arg2)
                prof.cons_show("Replacement String added.")
            else:
                prof.cons_show(
                    "Invalid replacement String. Please use the following format to specify replacements: pattern:replacement."
                )
    elif arg1 == "rm":
        if arg2 == None:
            prof.cons_bad_cmd_usage("/autocorrector")
        else:
            if len(arg2.split(':')) == 2:
                prof.settings_string_list_remove("autocorrector",
                                                 "replacements", arg2)
                prof.cons_show("Replacement String removed.")
            else:
                prof.cons_show(
                    "Invalid replacement String. Please use the following format to specify replacements: pattern:replacement."
                )
    else:
        enabled = prof.settings_string_get("autocorrector", "enabled", "on")
        if enabled == "off":
            prof.cons_show("autocorrector inactive.")
        else:
            prof.cons_show("autocorrector active.")
Example #8
0
def _cmd_presence_notify(arg1=None, arg2=None, arg3=None):
    if arg1 == "all":
        prof.settings_string_set("presence_notify", "mode", "all")
        prof.cons_show("Notifying on all presence changes")
        return

    if arg1 == "online":
        prof.settings_string_set("presence_notify", "mode", "online")
        prof.cons_show("Notifying on online/offline presence changes only")
        return

    if arg1 == "off":
        prof.settings_string_set("presence_notify", "mode", "off")
        prof.cons_show("Presence notifications disabled")
        return

    if arg1 == "ignored":
        if arg2 == "clear":
            prof.settings_string_list_clear("presence_notify", "ignored")
            prof.cons_show("Removed all ignored contacts for presence notifications")
            return

        if arg2 == "add":
            if not arg3:
                prof.cons_bad_cmd_usage("/presence_notify")
                return
            prof.settings_string_list_add("presence_notify", "ignored", arg3)
            prof.cons_show("Added {contact} to ignored contacts for presence notifications".format(contact=arg3))
            return

        if arg2 == "remove":
            if not arg3:
                prof.cons_bad_cmd_usage("/presence_notify")
                return
            res = prof.settings_string_list_remove("presence_notify", "ignored", arg3)
            if res:
                prof.cons_show("Removed {contact} from ignored contacts for presence notifications".format(contact=arg3))
            else:
                prof.cons_show("{contact} not in ignore list for presence notiications".format(contact=arg3))
            return

        prof.cons_bad_cmd_usage("/presence_notify")
        return

    if arg1 == "resource":
        if arg2 == "on":
            prof.settings_boolean_set("presence_notify", "resource", True)
            prof.cons_show("Showing resource in presence notifications")
            return;
        if arg2 == "off":
            prof.settings_boolean_set("presence_notify", "resource", False)
            prof.cons_show("Hiding resource in presence notifications")
            return;

        prof.cons_bad_cmd_usage("/presence_notify")
        return

    _show_settings()
Example #9
0
def _set_omemo_message_char(char):
    msg = 'OMEMO Message Prefix: {0}'.format(char)
    log.debug(msg)
    prof.cons_show(msg)
    prof.settings_string_set(SETTINGS_GROUP, 'message_char', char)
Example #10
0
def _cmd_sounds(arg1=None, arg2=None, arg3=None):
    if not arg1:
        prof.cons_show("")
        enabled = prof.settings_boolean_get("sounds", "enabled", False)
        chatsound = prof.settings_string_get("sounds", "chat", None)
        roomsound = prof.settings_string_get("sounds", "room", None)
        privatesound = prof.settings_string_get("sounds", "private", None)
        roomlist = prof.settings_string_list_get("sounds", "rooms")
        if chatsound or roomsound or privatesound:
            if enabled:
                prof.cons_show("Sounds: ON")
            else:
                prof.cons_show("Sounds: OFF")
            if chatsound:
                prof.cons_show("  Chat    : " + chatsound)
            if roomsound:
                prof.cons_show("  Room    : " + roomsound)
                if roomlist and len(roomlist) > 0:
                    for room in roomlist:
                        prof.cons_show("    " + room)
                else:
                    prof.cons_show("    All rooms")
            if privatesound:
                prof.cons_show("  Private : " + privatesound)

        else:
            prof.cons_show("No sounds set.")
        
        return

    if arg1 == "on":
        prof.settings_boolean_set("sounds", "enabled", True)
        prof.cons_show("Sounds enabled")
        return

    if arg1 == "off":
        prof.settings_boolean_set("sounds", "enabled", False)
        prof.cons_show("Sounds disabled")
        return

    if arg1 == "set":
        if arg2 == "chat":
            prof.settings_string_set("sounds", "chat", arg3)
            prof.cons_show("Set chat sound: " + arg3)
        elif arg2 == "room":
            prof.settings_string_set("sounds", "room", arg3)
            prof.cons_show("Set room sound: " + arg3)
        elif arg2 == "private":
            prof.settings_string_set("sounds", "private", arg3)
            prof.cons_show("Set private sound: " + arg3)
        else:
            prof.cons_bad_cmd_usage("/sounds")

        return

    if arg1 == "clear":
        if arg2 == "chat":
            prof.settings_string_set("sounds", "chat", "")
            prof.cons_show("Removed chat sound.")
        elif arg2 == "room":
            prof.settings_string_set("sounds", "room", "")
            prof.cons_show("Removed room sound.")
        elif arg2 == "private":
            prof.settings_string_set("sounds", "private", "")
            prof.cons_show("Removed private sound.")
        else:
            prof.cons_bad_cmd_usage("/sounds")

        return

    if arg1 == "rooms":
        if arg2 == "add":
            if not arg3:
                prof.cons_bad_cmd_usage("/sounds")
            else:
                prof.settings_string_list_add("sounds", "rooms", arg3)
                prof.cons_show("Sounds enabled for room: " + arg3)
        elif arg2 == "remove":
            if not arg3:
                prof.cons_bad_cmd_usage("/sounds")
            else:
                prof.settings_string_list_remove("sounds", "rooms", arg3)
                roomlist = prof.settings_string_list_get("sounds", "rooms")
                if roomlist and len(roomlist) > 0:
                    prof.cons_show("Sounds disabled for room: " + arg3)
                else:
                    prof.cons_show("Empty room list for sounds, playing in all rooms.")
        elif arg2 == "clear":
            prof.settings_string_list_clear("sounds", "rooms")
            prof.cons_show("Cleared sounds room list, playing in all rooms.")
        else:
            prof.cons_bad_cmd_usage("/sounds")

        return

    prof.cons_bad_cmd_usage("/sounds")
def _set_omemo_message_char(char):
    msg = 'OMEMO Message Prefix: {0}'.format(char)
    log.debug(msg)
    prof.cons_show(msg)
    prof.settings_string_set(SETTINGS_GROUP, 'message_char', char)