OwnchatBot Info

Reward types

Chat commands

{% if kofi_integration %}

Kofi Integration

{% if kofi_settings['donations'] %} {% set d_points_label = 'point' if donation_points == 1 else 'points' %} You are awarded {{ kofi_settings['donation_points'] }} {{ d_points_label }} for every dollar you donate on Kofi.
{% endif %} {% if kofi_settings['subs'] %} {% set s_points_label = 'point' if sub_points == 1 else 'points' %} Subscribers get {{ kofi_settings['sub_points'] }} {{ s_points_label }} every month.
{% endif %} You must be authenticated with Owncast to take advantage of Kofi integration.
{% for user in users %}
{% if user['user_authed'] %}
OwnchatBot recognizes your Kofi account by your email address. In order for OwnchatBot to award your donation points, you must enter the email address associated with your Kofi account here.

{% with messages = get_flashed_messages(with_categories=true) %} {% if messages %} {% for category, message in messages %} {% if category == 'failure' %} {{ message }} {% endif %} {% if category == 'success' %} {{ message }} {% endif %} {% endfor %} {% endif %} {% endwith %}


Email addresses are ONLY used for Kofi integration. They are not sent to any other individual or company, and will not be used to create or send mailing lists of any kind.

{% else %} You must authenticate with Owncast to get Kofi rewards.
{% endif %}
{% endfor %} {% endif %}

Other stuff

OwnchatBot can be downloaded from https://git.deadtom.me/deadtom/OwnchatBot.
If you are thrilled to death with OwnchatBot, and want to throw a little monetary love the developer's way, he's on Kofi.
OwnchatBot © 2025 by DeadTOm is licensed under Creative Commons Attribution-ShareAlike 4.0 International.

Points and Rewards

{% for user in users %} {% set points_label = 'point' if points_award == 1 else 'points' %} {% set minutes_label = 'minute' if points_interval == 1 else 'minutes' %}   {{ user[1] }}, you currently have {{ user[2] }} {{ points_label }}.
  You are accruing {{ points_award }} {{ points_label }} every {{ points_interval }} {{ minutes_label }}. {% if kofi_integration %} {% if kofi_settings['donations'] %} {% set d_points_label = 'point' if donation_points == 1 else 'points' %} {% set s_points_label = 'point' if sub_points == 1 else 'points' %}
  You can also get {{ kofi_settings['donation_points'] }} {{ d_points_label }} for every dollar you donate on Kofi{% if kofi_settings['subs'] %}, and {{ kofi_settings['sub_points'] }} {{ s_points_label }} every month for subscribing to my Kofi page{% endif %}. 🤑 {% endif %} {% endif %} {% endfor %}

Active Votes

{% if votes %} {% for vote in votes %} {% set points_label = 'point' if rewards[vote[0]]["price"] == 1 else 'points' %} {% set votes_label = 'vote' if vote[1] == 1 else 'votes' %} {% endfor %}
Name Description Price Current Tally
{{ prefix }}{{ vote[0] }} {{ vote[2] }} {{ rewards[vote[0]]["price"] }} {{ points_label }} {{ vote[1] }} {{ votes_label }}
{% else %}   There are currently no active votes
{% endif %}

Active Goals

{% if goals %} {% for goal in goals %} {% set progress = goal[1] / goal[2] * 100 %} {% if goal[1] == goal[2] %} {% else %} {% endif %} {% endfor %}
Name Description Progress
{{ prefix }}{{ goal[0] }} {{ goal[3] }}
{{ '%0.0f'| format(progress| float) }}%
{% set milestones = rewards[goal[0]]["milestones"] %} {% for milestone_key, milestone in milestones.items() %} {% if milestones[milestone_key][0] and milestones[milestone_key][1] %} {% if milestones[milestone_key][1] < goal[2] %} {% set milestone_progress = milestones[milestone_key][1] / goal[2] * 100 %}
{% endif %} {% endif %} {% endfor %}
{{ goal[1] }} / {{ goal[2] }} {{ goal[1] }} / {{ goal[2] }}
(Mouse over flags for milestone details)
{% else %}   There are currently no active goals
{% endif %}

Active Redeems

{% if rewards %} {% for reward, reward_info in rewards.items() %} {% if reward_info["type"] == "redeem" or reward_info["type"] == "special" %} {% if reward_info["cooldown"] > 0 %} {% set minutes_label = 'minute' if reward_info["cooldown"] == 1 else 'minutes' %} {% else %} {% endif %} {% set points_label = 'point' if reward_info["price"] == 1 else 'points' %} {% endif %} {% endfor %}
Name Description Cool down Price
{{ prefix }}{{ reward }} {{ reward_info["info"] }}{{ reward_info["cooldown"] }} {{ minutes_label }}None{{ reward_info["price"] }} {{ points_label }}
{% else %}   There are currently no active redeems {% endif %}

Queue

{% if queue %} {% for row in queue %} {% if not row[4] %} {% if row[6] %} {% else %} {% endif %} {% endif %} {% endfor %}
Time Name Description User
{{ row[1].replace(tzinfo=utc_timezone).astimezone().strftime("%H:%M") }} {{ prefix }}{{ row[2] }} {{ all_rewards[row[2]]["info"] }}{{ row[6] }}
{% else %}   The queue is currently empty {% endif %}