Extensions

Extend SAMMI's functionality with our community made extensions.

Kick Streaming

Developed by:
Rating | Social | views

Overview

This extension allows you to control and interact with Kick through SAMMI commands and triggers.

Features

Viewer Engagement

  • Trigger events based on new followers, subscribers, gift subscribers, and hosts

Chat Messages

  • Listen for messages from specific roles, including broadcaster, mods, subscribers, and founders
  • Wildcard functionality to trigger for all messages or specific ones

User Interaction

  • Ban, unban or timeout users with a simple command
  • Promote or demote users to chat moderators
  • Listen to hosting events, chat updates, and chat clear events

Stream Moderation

  • Monitor and manage user bans and unbans

Poll Management

  • Create and delete polls, and listen to poll update events to retrieve the current poll information, such as amount of votes

User and Channel Data Retrieval

  • Get information about channels, such as the amount of followers
  • Get information about your viewers, such as whether they’re a subscriber

Icon generated by OpenAI


Special thanks goes to:
My amazing Patrons.
Thank you so much!

If you would like to support me developing SAMMI itself and my extensions, you can join my Patreon, which will give you access to all my upcoming creations for completely free and priority help on any of my extensions.

DISCLAIMER: The extension is provided as is. The developer has no obligation to provide maintenance and support services or handle any bug reports.
Feel free to edit the extension for your own use. You may not distribute, sell or publish it without the author’s permission.


Additional Information
Version 1.1 Requires SAMMI 2023.2.1^ Stream Platform Kick Updated May 11, 2023
Setup

First Time Using SAMMI?

  1. Watch and review Step by Step tutorial (you can skip the part where you connect to Twitch).

Setup the extension

  1. Make sure you’re on the latest version of SAMMI and install the extension. You can follow the Extension Install Guide.
  2. Make sure SAMMI is connected to Bridge. Bridge must be running at all times and be connected to SAMMI for Kick extension to work.
  3. Set up Kick login details. Navigate to your Bridge - Kick Streaming tab.

    SAMMI Tab in Bridge
    SAMMI Tab in Bridge

    • Broadcaster Name:
      1. This is the channel name you utilize for streaming.
    • Bot Email:
      1. Create a new alternate Kick account.
      2. Use the email of this secondary account for some authenticated requests, like sending chat messages.
      3. This account must be made a moderator on your broadcaster channel.
    • Bot Password:
      1. This is the password for your alternate/secondary Kick account.
      2. Please use a throwaway password with only alphanumeric and special characters ?!@#$%^&*()_+. Do not use escape characters like \ or /.
  4. Press Login. You may get a popup asking you to provide verification code sent to your Kick bot email. Once you provide it and press Ok, you should now be Logged in as your bot and be connected to your broadcaster channel. The extension will remember your login details from now on and will automatically log you in.
    Successfull Login
    Successfull Login
  5. You’re all set! You can now go back to SAMMI to the premade Kick deck and explore all the available Kick commands and triggers.
Due to frequent updates to the extension, it's best not to add your own buttons or commands to the premade Kick deck. Instead, look at the example buttons here and make your own in a different deck.

Getting Around Cloudflare using Proxy

If you’re unable to log into Kick, or SAMMI gives you a yellow alert ‘Cloudflare detected’, see this guide.

Kick Commands List

Kick Event Triggers List

Replaying Events

You can replay any previous event via Bridge - Kick Streaming tab. Simply select the event from the dropdown and click Replay. The full event will be delivered to SAMMI and triggered just like a live event would. Useful for testing your buttons.

Logging events and commands

You can turn on logging for all events and commands related to Kick. These logs can be saved as a text file.

This is handy when you need to figure out what’s going wrong, or if you think a new event has been added. You can send these logs to me, the extension developer, to look over. This is important because there isn’t an official Kick API, so if you come across any new events, saving these logs helps me update the extension to handle them.

Kick Commands

Kick: Get Channel Info

Retrieves public information for the specified channel. All buttons with Kick commands must be set to persistent.

Box Name Description
Channel Name Channel name to get the information of
Type Type of information to retrieve:
- Channel ID
- Follower Count
- Viewer Count
- Is Mature
- Stream Title
- Stream Categories
- Subscriber Badges
- Chat Mode
- Profile Picture
- Banner Picture
- Past Broadcasts
Save Variable As Variable Name to save the result into

Kick: Get User Info

Retrieves user information in relation to your channel. All buttons with Kick commands must be set to persistent.

Box Name Description
Channel Name Leave empty for your own channel, else fill out with the channel name
User Name User information to check
Type Type of information to retrieve:
- All
- User ID
- Is Subscriber
- Is Moderator
- Is Follower
- Is Banned
- Subscription Months
- Profile Picture
Save Variable As Variable Name to save the result into

Kick: Get Emotes

Retrieves an array of all global or channel emote objects. All buttons with Kick commands must be set to persistent.

Box Name Description
Channel Name Leave empty for your own channel, else fill out with the channel name
Type Whether to retrieve global or channel specific emotes
Save Variable As Variable name to save the result into

Example payload for a single emote object:

{ 
"subscribers_only": 0, 
"channel_id": 1452836, 
"id": 171291, 
"name": "Snorlax Scared." 
}

Kick: Get Leaderboards

Retrieves an array of sub gift leaderboard.

Box Name Description
Channel Name Leave empty for your own channel, else fill out with the channel name
Save Variable As Variable name to save the result into

Example payload for a single gift object:

{
"user_id": 2378790, 
"username": "ChrisLenga", 
"quantity": 888
}

Kick: Send Chat Message

Sends a chat message to your broadcaster’s channel via your Kick alternate account (currently only limited to that). Does not accept chat slash command.

Box Name Description
Message Message to send

Kick: Clear Chat

Clears your chat.

(This command does not require any input fields)


Kick: Create Poll

Creates a new poll.

Box Name Description
Title Title of the poll
Duration Duration of the poll in seconds
Choice 1 - 5 Poll choices, minimum is 2

Kick: Delete Poll

Deletes a currently active poll.

(This command does not require any input fields)


Kick: Ban/Unban User

Bans, unbans or times out a user.

Box Name Description
Type Ban, unban or timeout the user
Username Username to ban, unban or timeout
Reason Reason to ban/timeout user
Minutes For how long to timeout user (leave empty for ban/unban)

Kick: Mod/Unmod User

Adds or removes the user from chat moderators.

Box Name Description
Type Mod or unmod the user
Username User to mod or unmod

Kick Event Triggers

Followers Updated

Extension Trigger: Kick Follower

Triggers for every new follower.

Pull Value Description
username Viewer’s username who followed the channel
user_id Viewer’s user id who followed the channel
count How many followers the channel has total
created_at Timestamp of when the follow event happened

Subscriber

Extension Trigger: Kick Subscriber

Triggers when you get a new (non gifted) subscriber.

Pull Value Description
user_id User ID of the user who just became a subscriber
username Username of the user who just became a subscriber

Gifted Subscriber

Extension Trigger: Kick Gifted Subscriber

Triggers when a viewer gifts subscriber(s) to another viewer(s).

Pull Value Description
usernames An array of all usernames that got a subscription gifted
gifter_username Username of the viewer who gifted the subs

Stream Hosted

Extension Trigger: Kick Stream Hosted

Triggers when your stream is hosted.

Pull Value Description
username Username of the user who hosted you
amount Amount of viewers you’re being hosted for
optional_message Optional message from the user who hosted you

Chat Message

Extension Trigger: Kick Chat Message * Triggers for every new message. You can replace the * wildcard to look for a specific message or use * to trigger for all messages.

Do not know what wild cards * are? See this wildcards in SAMMI guide.

Want to listen for messages only from specific roles? Use the following triggers instead:

  • Kick Chat Broadcaster Message * = triggers for any messages from the broadcaster
  • Kick Chat Mod Message * = triggers for any messages from mods
  • Kick Chat Subscriber Message * = triggers for any messages from subscribers
  • Kick Chat Founder Message * = triggers for any messages from founders
Pull Value Description
id ID of the message
message The message itself, in plain text, i.e. “hello :sunglasses:”
message_stripped The message itself stripped off of all the emojis
message_raw The original message containing all the emojis
replied_to_username username of the user who sent the original message if it’s a reply
replied_to_message original message this message replied to
replied_to_id original messages id his message replid to
created_at Timestamp of the message created
user_id User ID of the viewer who sent the message
username Username of the viewer who sent the message
color User chat color
role Role of the viewer who sent the message
picture_url Picture URL of the viewer who sent the message
verified Whether the viewer is verified
badge_list Follower badges of the viewer who sent the message
is_subscriber Whether the viewer is a subscriber
is_founder Whether the viewer is a founder
months Amount of months the viewer is a subscriber for
amount_gifted Amount of gifted subscribers by the viewer

Chat Updated

Extension Trigger: Kick Chat Updated

Triggers when a chatroom is updated, for example slow mode or followers mode enabled.

Pull Value Description
slow_mode Whether slow mode is enabled, 1 = enabled, 0 = disabled
message_interval Message interval for slow mode in seconds
subscribers_mode Whether subscribers mode is enabled, 1 = enabled, 0 = disabled
followers_mode Whether followers mode is enabled, 1 = enabled, 0 = disabled
min_duration Minimum duration for followers mode, currently always returns 0
emotes_mode Whether emotes mode is enabled, 1

Message Deleted

Extension Trigger: Kick Chat Deleted Message

Triggers when a chat message is deleted.

Pull Value Description
id ID of the deleted message

Poll Created

Extension Trigger: Kick Poll Created

Triggers for every new poll.

Pull Value Description
poll_name Title of the poll
duration Duration of the poll
choice_amount Amount of choices in the poll
vote_total Total number of all votes (will be 0)
choice_1_info - choice_6_info Object containing the choice information: { id: <choiceId>, label: <choiceName>, votes: <amount of votes for the choice - will be 0>}

Poll Updated

Extension Trigger: Kick Poll Updated

Triggers every time currently active poll is updated (i.e. someone voted)

Pull Value Description
poll_name Title of the poll
duration Duration of the poll
choice_amount Amount of choices in the poll
vote_total Total number of all votes
choice_1_info - choice_6_info Object containing the choice information: { id: <choiceId>, label: <choiceName>, votes: <amount of votes for the choice>}

Poll Deleted

Extension Trigger: Kick Poll Deleted

Triggers every time a currently active poll is deleted. (No pull data provided)


User Banned

Extension Trigger: Kick User Banned

Triggers when a user is timed out/banned in your stream. There’s no way to tell whether the user was just timed out or banned, as it’s not in the payload.

Pull Value Description
user_id User ID of the user who got timed out/banned
username Username of the user who got timed out/banned

User Unbanned

Extension Trigger: Kick User Unbanned

Triggers when a user is unbanned in your stream.

Pull Value Description
user_id User ID of the user who got unbanned
username Username of the user who got unbanned

Privacy Policy
This developer has disclosed that it will not collect or use your data.

This developer declares that your data is:

  • Not being sold to third parties.
  • Not being used or transferred for purposes that are unrelated to the extension's core functionality
  • Not being used or transferred to determine creditworthiness or for lending purposes

Reviews

Coming soon!