Control Social Stream Ninja with built-in commands, automation, and API integration
Social Stream Ninja includes several built-in commands that your viewers can use in chat, or that you can trigger via the API.
Command | Description | How to Enable |
---|---|---|
!joke |
Tells a random geeky dad joke in response | Enable via the extension menu toggle |
hi |
Automatically welcomes anyone who says "hi" in chat | Enable via the extension menu toggle |
!cycle |
When enabled, allows viewers to change OBS scenes | Enable via the extension menu toggle |
Note: Bot commands will only work when the auto-responder is properly configured and you have permission to post messages in the respective platforms.
For the auto-responder to work properly:
If you see a blue debugging bar when auto-responses are triggered, you can hide it by starting Chrome with the --silent-debugger-extension-api
flag.
Social Stream Ninja provides a powerful API that allows you to control every aspect of your streaming setup programmatically. The API server can both issue commands to your setup and listen to incoming messages from consolidated chat services.
Control featured messages, clear overlays, and manipulate content appearance in your stream.
Receive events from third-party services like Stripe, Ko-Fi, and Buy Me A Coffee.
Export chat messages to file or forward them via webhook (POST) for custom integrations.
Important: You must enable the Server API toggle in the extension menu for API functionality to work.
https://io.socialstream.ninja/{sessionID}/{action}/{target}/{value}
Perfect for simple commands from Stream Deck or custom scripts.
wss://io.socialstream.ninja:443
For real-time bidirectional communication with auto-reconnection.
https://io.socialstream.ninja/sse/{sessionID}
For one-way real-time updates from the server.
The API uses a channel system for message routing control:
- Channel 1: Main communication channel (default) - Channel 2: Typically used for dock.html communication - Channel 3: Often used for extension communication - Channel 4: Commonly used for featured.html communication - Channel 5: Used for waitlist.html communication - Channels 6-9: Reserved for future use
You can specify input and output channels when connecting:
wss://io.socialstream.ninja/join/SESSION_ID/IN_CHANNEL/OUT_CHANNEL
Action | Description | Example |
---|---|---|
sendChat |
Sends a message to all connected chat platforms | https://io.socialstream.ninja/SESSIONID/sendChat/null/Hello everyone! |
sendEncodedChat |
Sends a URL-encoded message to all platforms | https://io.socialstream.ninja/SESSIONID/sendEncodedChat/null/Hello%20everyone%21 |
clearOverlay |
Clears the featured message from the overlay | https://io.socialstream.ninja/SESSIONID/clearOverlay |
nextInQueue |
Displays the next message in the queue | https://io.socialstream.ninja/SESSIONID/nextInQueue |
autoShow |
Toggles automatic featuring of messages | https://io.socialstream.ninja/SESSIONID/autoShow/toggle |
blockUser |
Blocks a user from a specific platform | https://io.socialstream.ninja/SESSIONID/blockUser/null/{"chatname":"username","type":"twitch"} |
extContent |
Sends external content as a chat message | https://io.socialstream.ninja/SESSIONID/extContent/null/{"chatname":"User","chatmessage":"Hello"} |
Try out the API with our interactive sandbox that provides easy access to all commands and features:
Try all API commands in a safe environment
Get code examples for HTTP, WebSocket, and SSE
See real-time responses from your commands
Generate test messages with random content
Note: Remember to replace SESSIONID
with your actual session ID from Social Stream Ninja!
Social Stream Ninja integrates with StreamDeck through multiple methods: native HTTP actions and Bitfocus Companion integration.
Use StreamDeck's "Website" action with "GET request in background" enabled to send commands directly to the API.
Native integration with pre-built actions, real-time feedback, and variables for dynamic content.
Bitfocus Companion provides powerful control of Social Stream Ninja using either WebSocket or HTTP APIs.
Action | Description | API Method |
---|---|---|
Clear Featured Message | Removes the currently featured message from overlay | WebSocket/HTTP |
Next in Queue | Displays the next queued message | WebSocket/HTTP |
Toggle Auto-Show | Enables/disables automatic message featuring | WebSocket/HTTP |
Send Chat Message | Sends a message to all connected platforms | WebSocket/HTTP |
featured_message
- Current featured message textfeatured_username
- Current featured usernamequeue_size
- Number of messages in queueSocial Stream Ninja provides comprehensive AI integration to enhance your streams with AI-powered chat responses, moderation, and more. Choose from local or cloud-based AI providers to match your needs.
Let the AI engage with your viewers automatically, answering questions and keeping the conversation lively even when you're focused on your content.
Use AI to help moderate chat by identifying potentially harmful messages and automatically handling them based on your preferences. Choose between non-blocking or strict blocking modes.
Retrieval-Augmented Generation allows the AI to search through your custom knowledge base to provide accurate answers specific to your content.
Run different bot instances for various purposes: public chat bot, private 1-on-1 bot, censor bot, and even a multimodal AI co-host that can see and hear.
Social Stream Ninja supports multiple AI service providers, giving you flexibility in choosing the right solution for your stream:
Free, privacy-focused, self-hosted AI models running on your own computer.
OpenAI's powerful chat models via API key integration (gpt-4, gpt-3.5-turbo).
Google's multimodal AI models including Gemini Pro and Gemini Flash.
Efficient, cost-effective AI models optimized for conversational tasks.
Elon Musk's xAI models offering unique perspectives and real-time information.
Enterprise-grade AI models from various providers including Claude and Llama.
Access to multiple AI models through a unified API interface.
Connect to any OpenAI-compatible endpoint for maximum flexibility.
Social Stream Ninja includes comprehensive TTS support for bot messages and featured chat content:
Free, built-in TTS using your operating system's voice synthesizer.
Premium voice synthesis with natural-sounding, customizable voices.
High-quality voices with extensive language and customization options.
AI-powered text-to-speech with natural voice conversion capabilities.
Free, locally-running TTS using WebGPU/CPU for privacy-conscious users.
Note: TTS functionality requires the appropriate overlay page to be open in OBS. Each TTS provider offers different voice options, quality levels, and pricing models.
Social Stream Ninja provides multiple bot instances for different use cases:
Bot Type | URL | Description |
---|---|---|
Primary Chat Bot | /bot.html |
Main bot overlay with TTS support, responds to chat and displays messages |
Private Chat Interface | /chatbot.html |
Standalone 1-on-1 interface for private conversations with the AI |
Censor Bot | (runs in background) | Filters and moderates incoming messages automatically |
AI Co-Host | /cohost.html |
Multimodal AI that can see your screen, hear audio, and interact |
Follow these steps to set up AI integration with your preferred provider:
Select from the supported providers in the extension settings. Each provider requires different setup:
Customize your bot behavior:
Choose your TTS provider and configure voice settings:
Upload files for RAG (Retrieval-Augmented Generation):
For complete setup instructions and advanced configuration options, see our detailed guides:
Control Social Stream Ninja using MIDI controllers, keyboard shortcuts, or StreamDeck with MIDI plugins.
CC Number | Value | Action | Notes |
---|---|---|---|
102 | 1 | Send "1" to chat | Quick reaction |
102 | 2 | Send "LUL" to chat | Emote reaction |
102 | 3 | Tell a joke | Triggers bot response |
102 | 4 | Clear overlay | Removes featured message |
Tip: MIDI control works best with physical controllers but can also be triggered via virtual MIDI devices.
Use keyboard shortcuts for quick access to common functions.
Hotkeys can be configured within the menu settings and work system-wide when the browser is focused or when the app is used.
Social Stream Ninja can receive donations and events from third-party services via webhooks; a few popular ones are below:
Process credit card donations directly through your Stripe account.
https://io.socialstream.ninja/SESSIONID/stripe
checkout.session.completed
&server
to your dock URLReceive coffee donations from your supporters.
https://io.socialstream.ninja/SESSIONID/kofi
as the webhook URL&server
to your dock URLCollect donations through the popular Buy Me A Coffee platform.
https://io.socialstream.ninja/SESSIONID/bmac
as the webhook URL&server
to your dock URL to receive eventsSecurity Note: Keep your session ID private, as anyone with it can send fake donations to your overlay. The webhook URL should be treated as sensitive information.
Social Stream Ninja can also send data to third-party services:
Service | URL Parameter | Description |
---|---|---|
Singular Live | &singular=IDENTIFIER |
Sends selected messages to Singular Live for featured message overlay |
H2R | &h2r=IDENTIFIER |
Sends selected messages to a local H2R server |
Generic POST | &postserver=URL |
Sends selected messages to a custom endpoint via POST |
Generic PUT | &putserver=URL |
Sends selected messages to a custom endpoint via PUT |
These parameters should be added to the dock page URL.
You can create your own commands and functionality by customizing the JavaScript code:
custom_sample.js
to custom.js
This method allows for complex customizations and triggers.
Inject JavaScript directly via URL parameter:
&js=URL_ENCODED_JAVASCRIPT
Example:
https://socialstream.ninja/featured.html?session=SESSIONID&js=https%3A%2F%2Fexample.com%2Fcustom.js
You can create completely custom chat overlays from scratch to match your stream's unique style and functino. Social Stream Ninja provides a flexible foundation that you can build upon.
With these powerful commands and API options, you can create a truly unique and interactive streaming experience.