Overview
This extension allows you to control and interact with Kick through SAMMI commands and triggers. It greatly enhances chat and stream moderation, viewer engagement, and automates various streaming events.
Features
Viewer Engagement
- Triggers events based on new followers, subscribers, gift subscribers, and hosts
Chat Messages
- Listens 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 deletes 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.
Setup
- Install the extension.
- Set up your INIT button.
Broadcaster Channel Name
:- This is the channel name you utilize for streaming.
Bot Email
:- Create a new alternate Kick account.
- Use the email of this secondary account for some authenticated requests, like sending chat messages.
- This account must be made a moderator on your broadcaster channel.
Bot Password
:- This is the password for your alternate/secondary Kick account.
- Please use a throwaway password.
DO NOT USE YOUR BROADCASTING CHANNEL'S LOGIN DETAILS FOR THE BOT. SAMMI operates with an unofficial Kick API and uses a workaround for the login. It's crucial to use a disposable Kick account, in case it gets banned (though the chances are slim). - Reload Bridge
After filling out the INIT button, reload your bridge or press the INIT button once and you’re done. The extension will automatically connect to Kick chat and listen for all the available events. - Connecting to multiple channels
If you want to connect to another channel to listen for their events too, you can use the Kick: Connect to Chat command and place it in the Connect Chat button.
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 Triggers
- Followers Updated
- Subscriber
- Gifted Subscriber
- Stream Hosted
- Chat Message
- Chat Updated
- Message Deleted
- Poll Created
- Poll Updated
- Poll Deleted
- User Banned
- User Unbanned
Followers Updated
Extension Trigger: Kick Follower
Triggers for a new follower. At this moment this only tells you that you got a new follower. There’s currently no way to retrieve a list of all followers.
Pull Value | Description |
---|---|
username | Viewer username who followed, currently always ‘’ (empty string) |
count | How many followers the channel has total |
created_at | Timestamp of when the follow event happened |
followed | True/False, whether the viewer has followed or unfollowed |
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.
Want to listen for messages only from specific roles? Use the following triggers instead:
Kick Chat Broadcaster Message *
= triggers for any messages from the broadcasterKick Chat Mod Message *
= triggers for any messages from modsKick Chat Subscriber Message *
= triggers for any messages from subscribersKick 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 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!