#dev-chat
1 messages ยท Page 42 of 1
got it, last thing
With the static wheels im doing in that new one u sent me
Is it possible to make a few of the spots smaller than others?
so its harder to hit a "Jackpot" than the others
the colors are based off the Twitch users chat name.
would be really hard to remove a color; like not BLACK... or '000000' but can be '000001'
gotcha its no big deal, I just kinda wanted the good items to only be gold, but I can manually set every color. No big deal
i don't think that is possible. but i can check. i've been asked if there as an option to make it 'half as wide' and don't recall seeing that option
Ok no problem, Just an idea I had
ya. i'm not thinking it's an option; but maybe i'll get a hint somewhere to add it. glad you like it ๐
Is there any chance to get some help with Event Rotator By CO6STUDIOS code? How to make it appear only from one side? Without jumping to the left and to the right all the time?
in css?
yea
@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@font-face {
font-family: 'reitam';
font-display: swap;
src: local('Sans-serif'), local('Reitam'), url('Reitam.otf');
}
Like this?
src: local Will look for the file in the folder
so you can try out to use
@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@font-face {
font-family: 'FAMILYNAME';
font-display: swap;
src: local('FILENAME');
}
@left fiber thats the code that i have
It will check on the streamelements hosting pc for the family
That line will check in the windows folder for the font
Because the font is a custom one
It is probaly not installed on the se servers
So yeah you would need to look to change it with a web url not a local src
so can i just copy that code you sent
No
@mystic locust You don't need to use font-face if you have the font installed on your streaming PC. Just type a name as it appears in fonts
^^^
Like you can use font-family: "Times New Roman" and it will use this font if it is installed on your PC.
No need to point path to that font
But name should be the same (case sensitive AFAIK).
so like that
oh
You have it overwritten by "TheFontBold" on the bottom, so remove it, also use actual font name
yea i found that out
it worked and i set the font to roboto
i just dont know how to make it bold
font-weight:bold
Yes
yea ok thanks it works now i need help animating the text from up to down
never mind
hey can someone help me with css animations
i kinda know how to use them but i need more help matching them up with my alert
Any good intro to code custom Stream Elements vids/docs
nvm saw the pinned docs up top lol
@elfin arch I shot you a DM of an Idea!
Hi, i have been waiting for my oauth2 key for weeks now. When will i get it ?
@fluid mango Hi. Next batch of access should be dispatched shortly. For the time waiting you can develop your tools in local environment using Bearer :JWT as Authorization method, then you can switch to OAuth :token after oauth credentials are provided.
Is there by chance any api or otherwise any way to get data from bit boss? I noticed there is a data-action that indicates if attacking or healing, but there is no way to inject any kind of javascript easily to retrieve that
I found the docs for custom widgets that i can probably more easily do what I am trying to do, but still running into the same general problem. Is there any way at the very least to get who the current bit boss is from another widget. I tried gathering that from the url of my boss widget but naturally blocked by a CORS request.
@viral patrol so when will i get oauth credentials
Hi, I was using the TTS API I found on a reddit post, however it has now stopped working? is there another way to access it? or is that no longer available?
Got a link to the post by chance?
@fluid mango I will do my best to push things forward so they happen sooner than later. It doesn't depend on me, but I can query right people ๐
Hello all, I have been working on a command code for my twitch. It is a spin on the hot potato game that many see in Streamlabs streams. I have something going but I can not figure out how to create in interrupt with the timer. I am using the Russian roulette to help spring board me... but again, not sure where to go from there. I have also been all over the internet but if someone has something or any guidance that would be helpful!
Hi there, does anyone know where does streamelements get the bits information from? I'm switching from streamlabs to streamelements but the bit amount that has been given to me does not match up... I think this might be api related since I started using streamlabs before signing up for streamelements. Is there Any way I can update this?
does the custom widget have any sort of persistent data
What do you mean persistent data? It's just that streamelements is missing the data from before I joined streamelements somehow
It should get it globally from twitch no?
We don't get data from other providers outside of tip history.
And that's when importing with the extensions.
Well I was hoping to be able to retrieve data from bit boss widget, such as, is the action a heal or damage, or if that is not possible, who the current bit boss is so I can compare against, if that isn't possible, then I need to store data such as what the current health is, and switch the bit boss manually
@hardy walrus but I thought bit/cheer data came directly from twitch themselves... So should I try to import the streamlabs data again? Everything else was imported correctly, its just the bits that are not matching up when checking on both platforms
@proper goblet We cannot collect data from the before you joined us. Your all aggregates should populate over time, but there won't be ability to adjust some of them.
Twitch doesn't provide historical data for that purpose.
We store this data as it happens on Twitch. It is up to date but since moment you joined us.
Damn, I understand, so I'm stuck with those different values then right? Such a shame
Well just glad I signed up for se not too long after streamlabs to consider and make the choice
Thanks!
They will populate over time (unless you are using "all time top cheerer" widget)
Exactly what I intended to use haha but it's fine I guess, a little discrepancy will not hurt
Thanks for your help
i see there are still no oauth tokens going out? is there any eta when this will finally be done again? 
The TTS has captcha 
how can someone apply like the channel points tts to get access to it without captcha
? Where can that be done?
^^ having the same issue, had to change to a different API which is nowhere near as good. Please remove the captcha ๐ like it was before or give us a way we can call it from an API end point
Hey guys, trying again
https://github.com/StreamElements/widgets/tree/master/CommandCounters
i trying to make this exemple work
on the visual, everything works, but i not able to change the values using the chat, its need any more steep to make it work?
@bleak berry @next remnant Due to unreasonable use of our API that security wall has been put in place. Until we have a method in place to regulate it it's unfortunately going to stay.
I completely understand why you had to do it, just very sad to see it gone thats all, I would have even paid for it ๐ I spent all day shopping around at other APIs and none of them was as nice as yours
can I ask, is your TTS in house or do you use a service like amazon polly?
That is beyond my access and understanding.
Nah you can still access the TTS and use it for like mp3 and make stuff with it, but bots can't access it anymore
well I guess not only twitch purposes were like used by that api, other stuff probably used it too when they heard about it ๐คท
@bleak berry because like your widget. It was being used by 3rd parties rather then on the platform
Yea like I said I understand why it was put in place, but I will miss it.
Is it possible to add custom fonts to overlays?
And also, I assume the rendered end-product is on a Chromium-based solution? If so, any details on what it supports/doesn't?
Reason for why I ask is that I wanna test some heavy-duty-JS stuff on text animations for a donation overlay.
@pulsar willow you can add without problems, on html or css, your choice
@teal bone This widget is an old one and currently there's a better way to have counters on screen. This is still on repo for archival purposes. I recommend you using "bot counter" default widget or if you want to access it from custom widget https://github.com/StreamElements/widgets/blob/master/CustomCode.md#bot-counter and https://github.com/StreamElements/widgets/blob/master/CustomCode.md#se-api
@pulsar willow I do use gsap for heavy text animation, didn't got a problem
If you use something that is really heavy it can take to render them by OBS (same as in the browser).
Hmm.
@abstract basalt Can GSAP do heavy mapping animation?
Like 3djs or WEBGL
Say, I apply a distortion map to the text and animate it, can it do it? Any examples for it?
gsap provide tools for animations (easing, timeline, and tons of stuff), it can be used with threejs (don't use webgl alone you masochist), but I mostly use it for DOM animation and/or SVG animation
But if you want to go with canvas based distortion I would probably avoid gsap (or I don't have the knowledge for it).
You should try to look, what obs uses as chromium version same for SLOBS (check on windows and mac, they might differ)
I don't know what vmix use, probably chromium too
Thanks, super informative and yea, I guess then GSOP isn't the tool for it
my best advice would be to grab an example CodePen and do a merge into the Overlay Editor. see if it works; then fire it up as a source in OBS and check that.
You can also run a tool like babel to transpile the code and apply polyfills
is it possible to retrieve bit boss widget data from another custom widget, either who the bit boss currently is, or if the action is healing or damaging
Curious about how SE fetches (hjeh using this word) the follows & other such data after streamer not using Streamlabels desktop client anymore ? EDIT: @viral patrol Big thanks good to know :)
@trim bronze We run everything in cloud to collect data and display it as labels. We are using Twitch API to achieve that.
Correct me if i'm wrong:
The event โ Bot:counter should return {"counter":"CounterName","value":"CounterValue"}
but CounterName is returning empty
can someone help me with css keyframing in stream elements please?
sandbox prevents from saving local storage........so is the only way I can have persistent data is to set up a server and do HTTP requests to do this
Hey guys do you know how long it usually takes to get approved for oauth2 tokens? Been waiting about 2 weeks I think. :]
@elder dragon Had a question about your Simple Info bar widget! Could we Dm about it?
Hey guys, just wondering if there's a list of IP's I can whitelist for a simple app I'm creating, so that only StreamElements can access it? Thanks.
Hello, trying to translate my SLOBS HTML & CSS code to SE, but of course it's not the exact same. Trying to use keyframed colorwave on the alert text to sync with the alert itself and I am having trouble translating it. Also not sure how to get the alert to show up because it is just a default.gif in HTML.
@teal bone This one works for me:
window.addEventListener('onEventReceived', function (obj) {
console.log(obj.detail);
});
@simple creek you can use SE_API.store methods https://github.com/StreamElements/widgets/blob/master/CustomCode.md#se-api
@molten iron SE uses plenty of IP addresses, the best way I could think of is to provide authorization header within your requests from custom widget and check it on your end.
@zealous basin Instead of path to default.gif you can use {image} which gets replaced with user selected image URL. Also keyframes should work fine as this is pure HTML which is not platform specific
Itโs a webm file.
@zealous basin You can embed it like: https://github.com/StreamElements/widgets/blob/master/CustomCode.md#alert-widget ({video})
this is how simple it was in slobs, but this isn't working in SE. Just trying to figure that aspect out.
Are you editing a custom widget or using custom CSS in the Alert Box?
custom CSS,
that looks like a re sub message?
This works in the CSS tab on SE, but HTML still doesn't give me the correct name in the alert. This is just for subs in general.
the {userMessage} should be {{message}} the message the user sends with the resub .... i'm not sure what "messageTemplate" is?
is that the username?
that's just from slobs, the message template is whatever you have in the message box.
Like this?
i could be wrong here; but once the custom CSS is enabled then all of the other 'settings' are ignored. so it basically all has to be hard coded.... minus the information from the event; like username, message, monthssubed, etc.
the {{message}} is what the user types in for a resubscription;
what do you want the first {{message}} you have there to say?
ohhhhh, well i just want the name of who subbed is all.
it's showing properly, just need to figure out the keyframe colorwave in CSS
try just {{name}}
Same thing, the name is showing up fine now, just gotta figure out the keyframing since it's not reading the colorwave correctly in CSS
the css looks good to me.... i think; but to be fair my CSS isn't too great. can you post a jsfiddle of your full HTML/CSS/JS ?
Test your JavaScript, CSS, HTML or CoffeeScript online with JSFiddle code editor.
i'm assuming it has to do with the id= before Colorwave
i'll take a look. ...but we might have to wait until someone with better CSS knowledge jumps in and it might take a while.
No worries
@viral patrol omg ty
@viral patrol is it possible to use this to retrieve bit boss data?
@zealous basin ... make the first {{Name}} lowercase ๐
I did after I saw it haha
did that fix it?
no sadly D: one second
it's either the alert-message is the wrong term, or the keyframe colorWave is just being rude.
i don't have your image but this is what i see (i increased the size to test)
does it do a colorwave or just stay yellow?
it waves
hmmmm
can I send you the webm and you try it out?
mine just stays purple, i dunno why
all i did was change the Name to name lowercase
under the settings what is your alert message
nothing there; once the custom CSS is enabled all of those settings are removed.
well; they still show but don't actually change anything because the custom CSS overrides them all
...at least that is how it works from my testing
is there a way I can reset the sub alert to default and try again
when you press the emulate for a sub do yo see your image?
there is no 'reset'; but you can create a 2nd one and test with that.
let me try again; i can't get the image or video to show from the settings menu when i enable the Custom CSS toggle ๐ค
o.O this is weird.
ya DM me your image
Howdies. Why my top tipper stopped appearing all of sudden at it's label box ? On that box there's now: top tip: no data. Now current top is rolling at label named as 'recent tip' That person is still higher than recent & name is now behind the name in that label box. It should be on 'top tip' label. How to get it back there ? I just got to know yesterday that SE retrieves that & such data from the cloud. Why that label stopped working few days ago ?
There is no change, can you check if that label doesn't show "last week top tipper" or something like that?
@viral patrol Ty. Ah no even when go online it's showing 'top tip: no data'. Early this week this name that now is following recent w smaller sum is was on that box. I changed overlay today, but that label didn't change it's text display. Yeah overlay doesn't have anything to do with it.
@viral patrol Check from where sry i have no clue. Ah thanks Is that done in overlay editor ? Update: Found it just moments before you replied with instructions & now working like used to. Still big thanks & for your time with this problem that happened on it's own. Clicked the widget "label box" & then saw the options.
Edited by deleting All time Top Data from the box & leaving name, currency, amount. If glitches again then know what to do & if doesn't help then to ask here in Discord. Wish you & all to whole SE staff good new week ๐ฅณ ๐
Yes. Go to overlay editor, click that widget and check "settings" in left panel
On my other overlay same options in settings not shown in widget ๐ฎ ๐ฆ It's 'recent tip' widget. Only thing that can edit at it's settings are text [name] [currency]. So that overlay on same widget is missing 'how many recent' w max being 20x ๐ฆ I imagine it shouldn't be overlay dependant on what setting options same widget has. Update: Hjeh nvm i guess it's just cause of it's planned setup. I copied that other widget over to overlay that didn't have it like that & made same settings to it as other one ๐
hy can anyone gime link about documentation regarding building costume wiggets with, HTML, CSS and JavaScript tnx in advance.
Hi, Is there currently some sort of websocket for the songrequest?
Got everything figured out thanks to @elfin arch! Thanks homie!
Hi everyone. New here. I was wondering, is it possible to code a spinning wheel for new followers that happens automatically? ๐ If so, where should I start?
for the trigger on follower I would start with the Wheel of Fortune V2 widget @uncut cave https://discordapp.com/channels/141203863863558144/457957557470887947/659336746051567627
Hey, I have a problem with a Benno widget : Video on command
What is it?
What is the process for the widget sharing? I submit the form about 1-2 weeks ago. How long does it usually take?
@unkempt bluff no ETA, just waiting, but it will be posted
@unkempt bluff Your widget was next in queue and you had a great timing as it was supposed to be published today (and it is published). Thank you for your contribution 
@viral patrol Thanks! I was just hoping I did not screw something up! You know, the #fails.
You will know if it is all ok when people start asking questions about it. Be prepared ๐
Okay, I need an actual example of argument variables in use. Working on a text based chat RPG, would be a big help. Thank you.
@rugged rapids To make it simple, I have an overlay containing 5 widgets that allow you to display video and/or audio by typing a command in the chat. The command works once or twice then stops working and works again a few times afterwards without any regularity. I don't know the cause of these malfunctions and it disappoints my followers.
I am directed by you because I have already been able to contact you and your answers are fast and efficient.
Hoping to be well explained.
Make sure, that in one widget the video/sound need to be played fully, before a new one can get activated via command. Also by default this is only available for VIP and above, depending on the settings, if you have not modified the widget.
Is there any kind of documentation with the titlify integration by chance?
hey is there a way that i can put my most recent follower and most recent subscriber on my overlay?
cause if so can anyone tell me?
Yes, but even the finished sound/video doesn't work backwards any more
@lapis mortar #dev-chat message
hello community, how are you? Hope so. I wanted to clarify a question regarding the custom chat widget. How do I leave the chat user's nickname box the same color as the name and the color of the name in white? This way:
im trying to link my overlay to lightstream but i keep getting a white screen when i paste the link
Hi
I want to create my custom Alert with HTML, JS and CSS but i need a documentation to manaage the events
Click on the channel description on top
Thx
I have find it on GitHub
is it your official project?
Yes
for the events and stuff use the Overlay link in the title: https://github.com/StreamElements/widgets/blob/master/CustomCode.md
@elfin arch Ok
@sharp trout Is it working, when you use one overlay with one widget, which is the default one provided via the widgets gallery?
Just tested it with a fresh widget and it is all working as intended.
Yes, the other widgets work. But yours works 35% of the time over a one hour time slot, which is very random.
What OBS version do you use?
How do you guys include custom fonts (not google fonts) for css? When I try to upload them on my own server I get CORS'ed on SE ๐ค
Why not install locally and specify in the overlay?
install locally?
Google Fonts
More than 900 google fonts are supported at this time. You can preview them here: https://fonts.google.com/
Custom Fonts
Steps:
- Install the font on the streaming PC or choose a pre-installed windows font.
- In the overlay widget settings, select Text Settings
- Enable Custom Font
- Type the name of the font as it appears in the windows font directory (This is usually
C:\Windows\Fonts)
Note: After installing fonts, the browser and OBS must be restarted for the font to appear.
Otherwise this:
@font-face {
font-family: 'FAMILYNAME';
font-display: swap;
src: local('FILENAME');
}
That seems more like a hack 
I build overlays mostly for other people, so I can't expect them to always install custom fonts locally. Plus I am pretty sure the font license doesn't allow that as well
Unfortunately not much we can do in that case.
Oh, okay I will try that then ๐
I think it would be great if we could have a field like font-input and just upload them there
@tribal zenith If you are corsed on your end, be sure that headers responded by your webserver include Access-Control-Allow-Origin: *, for example if it is apache, you can set a rule in .htaccess
<FilesMatch "\.(woff|otf|tft)$">
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>
</FilesMatch>
@viral patrol Thanks, will try that later too ๐
Has the team considered integrations with IFTTT? It would be cool to control smart devices with stream store items
Just wondering if there is any way to push custom stuff to the activity board and trigger custom alerts via API?
Are there any decent documentation sources for the special variables usable inside custom bot commands? I'd like to implement a simple if statement, and I'm struggling to find anywhere that documents how to achieve that kind of thing?
If someone could help me out that would be ace, but if there's a place I can find out for myself that would be even better. Teach a man to fish and all!
@woven jacinth https://streamelements.com/dashboard/bot-commands/variables
@topaz ferry Yeah, thank you - I've already seen that page and I don't think it helps my situation. There's no if statement etc, but I know that it's possible to do that kind of thing.
I've used things like '|' as a logical OR before, but I don't think it's documented anywhere... I'm after that kind of thing
@woven jacinth try doubling it.
|| , &&
@vital night MY MAN! I love this guy!
Does anyone mind making a custom widget for a mobile streamer
Hey Team, Not sure what board this is best on. But if I have a command that cost 50 when a user doesn't have 50 it doesn't return any error is there a way to do so ?
Unfortunately there's no way to output any message if user has not enough points or privileges condition is not met.
@viral patrol Thanks mate - doh but thanks ๐
Hello, when I click on the refresh icon next to the gifted subs in activity feed, nothing comes through the websocket api - any idea why?
this is for the main gifter btw - if i click on the individuals who got the sub, that works ok
This is normal behaviour AFAIK as first row is just to show that those gifts are aggregated. Twitch sends information about individual subs and this data is converted on the fly to emit community gift alert variation.
oh ok
would be cool to have something come through though, make it a bit easier to know
Does anyone know if itโs possible to access the DOM of one custom widget from another custom widget? Iโm working on changing colors of a bunch of elements when alerts happen but itโs going to force me to use multiple widgets to build it all out.
Unfortunately not. All custom widgets are sandboxed in separate frames.
Thatโs what I thought. Could make for some interesting alerts otherwise, though.
Suppose I'll ask again.
Any way via API to trigger alerts with custom messages from an external application? Like custom follows, etc.?
and to push them to activity feed too?
@vital night without pushing to activity feed you may check charity widgets on #widget-share - this does the part you want.
And if we want to push it to activity feed too?
I just don't see anything on pushing, just get functions related to activity.
In short, I've been working with a group on developing a bot for Trovo.live and a lot of people have requested streamelements support.
So I was trying to get it that until SE does add Trovo if they plan to, that they can at least OAuth and trigger their twitch alerts or something with custom messages
@rugged rapids It's OBS 25.0.8 with StreamElements OBS
Hello! I was wondering if there was a way to rotate a window in the StreamElements overlay editor to a specific degree.
@rugged rapids Look that, there are 2 command to audio 1 but none for audio 2
Is it possible to edit the goal widgets using html/css/js or do you need to recreate them from scratch?
visually you can with css in the browser source Custom CSS. Otherwise custom widget would be it I think.
Good day everyone. ๐ Is anyone familiar with the Bank Heist widget, and possibly know how to troubleshoot it?
It was working great, but with double messages. I turned off and on, the chat alerts for SE, on the Bot Modules page, now !heist does nothing. I tried a new API token, and that didn't work. Then, I removed the overlay, and got another API token, still to no avail. Did I break something when I turned the chat alerts off and on?
Hi, I'm trying to use custom CSS to position a webm video for a alert. How can I generate the source link for the image I uploaded? or do I need to use a 3rd party webm host? and is there another method to change positioning of an video for alert without using custom CSS.
BTW it works when I used this webm link http://techslides.com/demos/sample-videos/small.webm
but never works when I tried other 3rd party hosts or using download link generated from uploads.
Also, is there a way to get the URL of uploaded sounds to SE, so we can put in the custom widgets?
Just create a field with type sound-input (lets call it mySoundInput here) in your custom widget and access it in HTML/CSS via {{mySoundInput}}
In JS you can access it via the fieldData property
@tribal zenith So I'd need to create a custom widget to get access to that field? Basically, I am using someone's shared greet viewer widget, and wanted the URL of the sounds in my personal SE uploads, to input into the URL fields.
@inland ice if you want to access a specific uploaded sound by name you would need a field in a custom widget, yes. But for widget specific questions you should probably ask the creator
@tribal zenith thank you. Don't know about creating custom widgets, so I'll do some GoogleFu. I don't think this is widget specific though. I tried to access page source, for my uploads, but it seems the browser needs to login, in order to access the URLs, of said sounds. Thanks again. :)
@sharp trout That is just the label being wrong for the second command. It should say "Command to start audio2". Sorry.
@inland ice well, a little hackier workaround would be to create a custom widget with sound-inputs, select the desired files there and just console.log the fieldData for the URLs
@tribal zenith if I already have a custom alerts page overlay, with said sounds in them, would that work? I just created blank overlay, and added what I wanted to follows, etc, but using the GUI. Does the default blank overlay template have an editor?
@rugged rapids Okay but all the seconds audio and seconds video dont work
@inland ice yes, the upload- & select-form should be shared so you don't have to reupload your files. Once you have the URLs you can just delete the custom widget
Nice! I'll try that when I get back to my machine! Thank you @tribal zenith
@inland ice np, you can find more infos regarding custom widgets and fields here:
https://github.com/StreamElements/widgets/blob/master/CustomCode.md
@sharp trout Can you get me an editor invite link to your account per DM, so I can take a look please?
Hi, me again.
I'm really struggling with the bot syntax for custom commands. The almost complete lack of documentation for a product that has existed for years absolutely baffles me.
There are strange, obtuse design choices happening in the background that I can't work out how to get around because the documentation doesn't exist.
Here's the example I've been working with recently (I asked for help in here already).
I'd love to be able to make a command that prints its usage instructions if a user supplies an incorrect number of arguments. The bot seems to have incredibly shaky logic surrounding the decision to even run a command that uses args if the wrong number is supplied. For instance, the command in question hits a custom API I've written. It takes a parameter that should be a queryencoded string from the user. If the string is empty or contains only whitespace characters, the API returns a usage string (although I only added this to the API because it seemed impossible to do it at the SE end). So the command looks something like:
${customapi https://example.com/?user=${user}&message=${queryencode '${1:}'}}
The command is not executed if no args are supplied, and inserting | test anywhere other than inside the ${1:} still doesn't cause the command to run (with no args). Using a single or double pipe, with any (or no) amount of whitespace within the queryencode doesn't help either; the command will still only run when at least 1 argument is supplied.
The reason why I think the "use 2 pipes" advice I got here is incorrect, is because if you were to change the queryencode section to ${queryencode '${1:|| test}'} the API receives the string '| test' when no args are supplied - notice the pipe symbol at the start of the string. So using 2 pipes really doesn't help me here.
As ||ing outside the queryencode doesn't cause SE to run the command, I'm scuppered - because whitespace isn't seen as a string by the bot (or at least isn't enough to get the command to run with no args).
I hope you can appreciate that it has taken me days of trial and error to work out even the small amount I have. There are many possible solutions I've tried, but to no avail.
A simple if statement, or even just a damn checkbox that will force the command to run with no args is all I need. Failing that any sort of basic string processing that would allow me to split up a given string on spaces (so I could take all the args, even from 0, but then splice 0 out) would suffice.
In my opinion I shouldn't have to try and hack my way around an undocumented design choice like this, but if I'm going to have to, the UI should be absolutely up front about it, and maybe offer some common resolution guides or something to help at least.
Yes, in this example, I could do something like change the API code to treat a message that starts with a particular symbol as a request for usage, and get SE to combine the args with that instead of whitespace. But I shouldn't have to do that, and it has the chance of breaking other usecases for this API.
The truth is I don't care about this example; it's not particularly important. But this certainly isn't the first, and I'm sure not the last time, that I've had to sink way too much time and effort into bashing my head against brickwalls that I have no hope of knowing about beforehand.
I joined this Discord in the hopes of finding some sort of documentation so I can actually learn how to use this product properly. I'm a big advocate for SE in general, and I want to be able to use the chatbot for creative & engaging things.
My creativity is severely limited when I have no hope of understanding the tools at my disposal.
I'm not even trying to do something complicated, but every time I try to do something simple using custom commands, it feels like a battle.
I have to create test commands (because I'm never exactly sure how things will turn out), and even make design choices in back-end code specifically to deal with the way SE handles custom commands.
I could maybe accept all of these things if there was any sort of documentation surrounding them, but forcing users to work it all out for themselves is not an acceptable solution.
I sincerely hope that this lack of documentation is not standard practice for StreamElements, as all it serves is to frustrate and demoralise your customer base.
I'm sure decent documentation would also save the support team time as well. Personally I'd even be happy looking over snippets of source code.
If you read all of that brain dump; thank you.
- Rozza
Hi I'm not sure if this is the best channel for this but I think I've been banned or something out of the speech API endpoint. I have been testing a new custom browser source script using the API and I understand I probably did overdo it lately ๐ Is there any way I can talk to someone about this? I also have a screenshot of the error but it contains my IPv6 address so dont really want to post that here ๐ Forgot to mention the error I received is CloudFlare error 1020 - Access Denied
"Due to unreasonable use of our API that security wall has been put in place. Until we have a method in place to regulate it it's unfortunately going to stay." @regal steppe there is a small chat about it in one of the pinned messages.
ahh i forgot to check pins, thanks
no problem. it was a pretty recent change
@woven jacinth i personally tend to stay away from the custom commands myself because of the limitations. I think one thing that might help you is using ${0:} for the args as there will always be the 0 argument (the command) when sending to your API. I would personally suggest looking at making a 'custom widget' that basically handles all the custom commands that you want but understand if that is not an option for you because of the limitations that has (must be in OBS and OBS must be running).
is there a way to listen for channel point redemptions in a custom widget?
Unfortunately you're on your own as we have nothing setup with it yet. Only thing is the custom widget in #widget-share that works with text based redemptions.
gotcha
Looks like twitch api has a pubsub thing for channel point redemptions. I've got a nodejs bot that maybe I can have listen to those for my channel
@woven jacinth Hi. I think that the best way would be to use: ${customapi https://example.com/?user=${user}&message=${queryencode '${1:|help}'}} so if your message equals help print usage message. This will also work if user types !mycommand help.
yesterday I posted a google form on the streamelements API to ask for oauth2 credentials, how long does it take usually to get an answer? I'm making a twitch chat minigame which currently supports only streamlabs and I want to add streamelements support for the currency system
Hi. There is currently a delay providing this details. I recommend you to prepare that without oAuth layer at the moment - you can use JWT authorization method for local dev environment (Authorization: Bearer JWT-here) and once credentials are ready for you you will just add Auth layer and replace authentication with Authorization: OAuth oauth-token-here
I haven't used JWT before, the minigame is supposed to be hosted locally by every streamer who uses it, is JWT safe for that?
The best way is to go via OAuth, but you can prepare your project with JWT (for yourself) to create full logic, so OAuth process won't hold you back. Then you just add Authorization from Oauth provider
oh JWT is strictly self-testing, well I'll do that, I just hope I'll get the oauth credentials like in a week at most, one of the streamers I watch took a 1 month break and they'll stream like in a week I want them to be able to use the minigame on that stream
if you have your code locally hosted by the user with an '.env' or settings file for server only then it would be fine. (at least i hope ๐ค ) i have JWTs stored with twitch/discord tokens in the 'setup'
How do I debug custom code used in the alert box? I have some alerts working but one isn't displaying the correct info. Example: Resub alert is fine, but Community gift alert is missing the data. I can't find a way to step through the code to find the issue, neither can I log anything to console or display an alert box! How do you debug custom code?!
@gleaming arch You can use console.debug() as this method should work. Just make sure you change console logging level to verbose in your browser.
Perfect! Spotted mistake instantly! Was using console.log()
Additionally, is there a way to step through the code? I have other code working locally but put it in to a custom widget and it is slightly different.
Just add debugger; after your console.debug call
Thank you! Damn, of course it's that straight forward!
Hi I wasn't sure if this is where I ask this cause I don't see a help desk for widgets. I got the Clock widget by MrBoost and it has the wrong time. Is their a way to change this to my timezone
I think timezone settings should be in widget properties
I don't know that particular widget, but when you click this clock and then settings in left panel @worldly flame ?
Arizona doesnt do day light savings, thats why its a hour off
Hey everyone ๐ Is there a way to cancel a submission to the widget-share ? I noticed I didn't met some requirements and prepared a new version that tries to solve the main problem (due to licensing)
Also, can I use my own CDN to host some files so I can have control on where they are used (licensing reason again)
Huh. I was about to publish this widget today, but sure. I can wait, but there's one thing - we don't allow external js executed (besides of known js cdns), so I pasted your JS in the javascript tab.
But sure - I can postpone that widget ๐
hello I need to substract 1 sub point from bar (which is probably my eternal tier 3 sub) in sub points progress bar.
const update = (amount) => {
const percentage = Math.floor((amount / prefs.goalNumber) * 100);
const current = document.querySelector('.label.current');
switch (prefs.progressDisplay) {
case 'amount':
current.textContent = isTip ? currencify(amount) : amount;
break;
case 'percentage':
current.textContent = `${percentage}%`;
break;
case 'amountpercentage':
current.textContent = `${isTip ? currencify(amount) : amount} (${percentage}%)`;
break;
}
document.querySelector('.progress').style.width = `${percentage <= 100 ? percentage : 100}%`;
}
It's probably case 'amount': but since I can do sth with html, css and php javascript is black magic for me.
now I have 0 subscribers but it's still display 1 point
@viral patrol I can send you the updated code so it's easier to edit for people who want to ๐ , for the CDN stuff I understand ๐ you should be able to simply paste the code at the top of the JS tab
Or I can try to include it, but I did got some problems at some points where it would cut a part of the JS code I pasted if it was too long
Sure. You can dm me the new code and I will update it ๐
https://cdnjs.cloudflare.com/ajax/libs/ is ok as a CDN :)? That what GSAP provides for their CDN hosting https://greensock.com/docs/v3/Installation#CDN
Sure it is
Hello! Iโm having an issue with my alerts on obslive. I inported my overlay and alerts from streamlabs, at first it was working fine. But now on the alerts they are not populating the data. Letโs say I get a follow, instead of the alert saying โNew Follower Lobotiempoโ it comes up as โ{insert title}โ lobotiempo then underneath the alert โ {amount}โ I edited the message to say โLobotiempo is now follow!โ So not sure why it isnโt populating like that on the alert
hello i am having a issue with closing my account
Sorted
Does anyone know if the stream elements websocket connection emits chat messages for twitch? The docs have a message event type but it doesn't seem to work. I'm wondering if I need to use Twitch pub/sub to get this.
You want to listen to chat messages ?
Yeah, I'd like to make my own chat widget
Hi, does anyone know how do get a command to work for non-subs but then NOT work for subs? ๐ค Thanks.
Is there any way to get a SFX command/chat command user specific?
Nope
Darn, okay
Wasn't there a custom widget at some point that could do SFX via chat commands?
I'm certain there is but not for specific users.
Boo, okay
Hey guys, I downloaded the recommended compressed bits/tips/follow/sub bar and I was wondering if anyone knows what to edit in the code?
https://discordapp.com/channels/141203863863558144/457957557470887947/722385437959651339 This was the recommended bar
my friend here has it on the other side
mine has a gap and im unsure on how to fix it?
Hello! ๐
I'm creating something for which I'd like to make use of StreamElements loyalty points.
The redemption store seems like a great fit for me, but I need my own service to know when a redemption takes place.
Is there some notification mechanism I can use for that, or do I need to constantly poll the site via the "list current user redemptions" API call?
@terse raft Chat messages are not forwarded to SE WS. You may use any IRC client/tmi.js to connect to twitch if you want to read message in your own app. But if you want to create a chatbox I think it would be easier to adjust this to your needs: https://github.com/StreamElements/widgets/tree/master/CustomChat
@naive sorrel I am not sure, but probably those events are emitted on websockets too.
Hmm, alright, I can see that in the documentation, though it doesn't specify what events it supports.
I'll test it out, thanks. ๐
Hi, is there a way I can give different responses for different user levels in Twitch chat? I know Nightbot can do this sort of thing, but I don't like that Nightbot has a minimum of 5s CD on its commands. Thanks. ๐
The Game Label Widget is something I've been looking for for quite a while, would it be difficult to add a Stream Title field also?
having title and category automatically filled on a standby scene would be really handy
@tribal robin https://streamelements.com/dashboard/overlays/share/5e3d4f859b7bf7b57841be9b try this one
nice!
Does anyone have an alertbox widget that is customizable?
I'm looking to integrate Discord server joins as an alert but I'm unsure if it's even possible
@plain dirge You can take charity widgets from widget-share and build something around what's there
the Game Label widget has the text jammed right next to the icon. Any way to insert a few spaces so it's not so tight?
15 pixels seems like it would be about right
@viral patrol FYI I tried the .htaccess file to hopefully fix the CORS issue, but unfortunately that did nothing. I then asked my server provider, if they know why this didn't work and what I could do, but they just said, that this is nothing I could fix on my end and StreamElements would have to whitelist the domains.
So yeah, seems like we have to use github for custom fonts :/
Wait. It is not about whitelisting a domain on our side.
Can you dm me the URL of that font on your server?
sure
thanks @viral patrol ! I'll look into that
is there anyone on that can get access to my accout to help me please
is there a way to listen for channel point redemptions in a custom widget?
@ocean fractal Google 'triggerfyre' my friend โค๏ธ
Hi, I would like to know if there is a way to use a custom command for the !uptime instead of the default command?
Yes
@jaunty breach you can disable default command and create custom command with same name :)
ohhhhhhh
Iโm missing the alias to get the uptime back
just change the command name
Because since the streamer im working for 2 days+, twitch force you to restart your stream after 48h, so the !uptime only show the bew stream
New*
So we want to make a custom one saying 2D + {uptime}
No problem, thanks
I search the alias to get back the uptime but couldnโt find it ^^
its in default commands so it wont appear in search
Yup, just wondering if we can disable it on the default commands and create a custom one with an alias to get the uptime and add 2D before it :p
RosieRiver have been streaming for 2 days and ${uptime] !
Using that
And getting:
StreamElements: Parsing error at position 56: Mismatched input list, missing end of inputs
${channel} have been streaming for 2 days, ${uptime}!
Oh oops
@gloomy robin 

Question is there an API limit? I wrote a script to add points to specific users and want to make sure I don't go over the limit.
Hey guys, i feel like the pros missed my message from earlier
Hi, Having an issue where a Regex is functioning normally in my channel, but then the exact same Regex isn't working in a channel I am modding for. ๐ค (repost from main twitch subchannel)
make sure the other user has the reqEx checkbox enabled @silk pebble ๐ค .... other than that; i'm not sure. (make sure SE or bot is a mod of course)
@elfin arch yeh Regex works 95% of the time on the channel
but not 100% which is the issue xD
@pure adder I am not sure about the API rate limit, but if you are adding points to multiple people at the same time then look at doing a "Bulk Add" and add them all at the same time with a single object
is it working for some variations of the filter or not working for any?
I didn't see anything in documentation about bulk add
just make sure they have the regEx box checked, i guess
@elfin arch i mean Regex is working for essentially all other commands. is there something about a different type of command that would differentiate it? also i cant tell where that screenshot is from
oh command; my bad i was thinking filter
@elfin arch and when i say 95% of the time, I mean literally a Regex match for a function will be working 1 day, then randomly stop working the next. Sometimes giving the Regex a "kick" (Edit Regex, Save, Revert Edit, Save) helps, but sometimes as in the case from today, nothing helped.
ya; it's not explicitly mentioned in the Docs @pure adder ... but there is an object you can send to the points endpoint with a list of usernames and points to make 1 call. (like if you wanted to add points to all offline chatters for example) .... i'll see if i can find it
I did end up just using a Command Keyword instead to make it work, but having Regex be unreliable is annoying, as u would imagine. @elfin arch
ok. ya. i remember having this convo like a month or 2 back about getting it to work. wasn't sure if it was '95%' not working because it was missing something in the filter or if the whole regEx was getting disabled
ya. sorry @silk pebble i am not sure and don't use regEx commands enough to notice any issues or know why that would happen.
@elfin arch lol yeh. npnp. tnx anyway
are you using JS/node @pure adder ?
BulkPutPointsToSE: (userNames, points) => {
//userNames = [pjonp, streamElements, commanderroot], points = 5;
let SEUserObject = userNames.map(i => {
return {
"username": i,
"current": points
}
}),
SEDataObject = {
"mode": "add",
"users": SEUserObject
};
return fetch(`https://api.streamelements.com/kappa/v2/points/${process.env.SE_ACCOUNTID}/`, {
method: 'PUT',
body: JSON.stringify(SEDataObject),
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.SE_JWTTOKEN}`
},
})
....
so body is like this: ```json
{
"mode": "add",
"users": [
{
"username": 'pjonp',
"current": 5
},
{
"username": 'streamElements',
"current": 10
},
{
"username": 'commanderroot',
"current": -100
}
];
};
ya I got that thanks
that user's should be an array not an object; just edited it
and the response back will be .text() not a .json()
@polar hollow i'm looking at that widget and can't get it centered like you have. ๐ค
ya. that is what i mean; i see yours is centered. can you try to get a new copy of the widget?
i saw your screenshot and something doesn't look right as you mentioned.
yeah the normal widget had a hype bar and extra things and a bunch of weird things that i ended up deleting
Im trying to get a bar that shows follows/bits/subs/tips on the left side
yeah
should i start on a fresh one?
try in the CSS tab; line 37 change to 'left'
naw; if you already have it close to what you want then no reason to start over.
yes! thank you!!
also with bits is there a way to show the top of the week or is that a weird one to change?
um... not sure; let me check. you want both stream top and weekly top?
just the widget
had someone donate 5000 bits and then someone else donated 1 bit right after
big pain
๐คฃ
do you want both the top in the week & most recent or just the top for the week? (.... the latter would be easier)
latter yeah
the other one does sound interesting but I don't think I want to get into it that much
alright... try this...
for lines 256, 257, 258
replace 'cheer-latest' with cheer-weekly-top-donation
I cant tell if it worked or not but thanks!
then same thing on 297/298
sure. ask away. if i can't answer maybe someone else can
Iv saving up for a capture card and i thought i would put a goal up. I could never figure out how to make it so tips, subs and bits all go to the goal
Great timing. We've just added a widget that fits your needs ๐
no way haha
perfect timing lx ๐
what are the odds
And now I can uninstall brain control software. Thank you for cooperating @polar hollow โค๏ธ

alright time to figure out how this works
How much does an affiliate get from subs?
Hey everyone ๐ I'm building a raid alert widget, what are the best practice to handle these events?
I saw the widgetDuration with resumeQueue but I've trouble to understand how it works
If the widget has a widgetDuration only one event will be sent at the same time and the will "lock" the other event for the duration?
And resume queue allow to "skip" or release the queue earlier?
That is correct. Every queueable items falling into custom widget will lock queue for widgetDuration time, you can resume queue prematurely via resumeQueue method (especially if event is not doing anything within that widget - you want to display raid alerts only using that and you want to make sure that subs and other alerts are not holding queue there)
So something like this would be the correct way?
window.addEventListener('onEventReceived', (obj) =>{
if (obj.detail.event.type === "raid"){
animate(obj.detail.event.name,obj.detail.event.amount)
}
else{
SE_API.resumeQueue();
}
});
Not only that, you have to exclude events that are not holding the queue
const skippable=["bot:counter","event:test","event:skip","message"]; //Array of events coming to widget that are not queued so they can come even queue is on hold
window.addEventListener('onEventReceived', (obj) =>{
const listener = obj.detail.listener;
if (skippable.indexOf(listener)!==-1) return;
if (listener === "raid-latest"){
animate(obj.detail.event.name,obj.detail.event.amount)
}
else{
SE_API.resumeQueue();
}
});
Ho yeah ok I see ๐ didn't realized they could be triggered
Without that you could "skip" event that are still in the queue and miss some alerts?
ya; i'm also curious what the difference is there ๐ค ... i will note that lx code has 'listener == raid-latest` (which is how i'd do it was well)
oh i think i see it now.... say you have a sub bomb of 50 subs and each one is set for 10seconds. any chat message would bypass the 'skippable' check and start clearing the queue
What is the difference between using the listener or the type of the event? safer since it's not inside the event data?
Listener is always provided. event contains event data, which does not always contain type parameter.
Good to know ๐
Without that you could "skip" event that are still in the queue and miss some alerts?
You could skip current event when it is played. For example you have 2 raids in queue (one after another), raid #1 is playing, somebody writes a message in chat, you will receive next event via onEventReceived and your animation may break
I totally see the point ๐ Good to know ๐
hi folks is there anyone i can pick ther brains for a bit
Hi. Please state your question, it will be easier ๐
is there anyone that can assist me with overlays and some other stuff please
@novel rapids Welcome to the helpdesk! Please let us know how we can assist you today and a support volunteer or staff member will assist you as soon as they are available. Thank you for your patience.
Hi, does anyone have an idea on how to make the alert text box's adaptive so they fit any length of words when someone donates or subs?
If you are referring to custom coded alertbox: https://github.com/StreamElements/widgets/tree/master/AlertboxTextFit
Hmmm. This one seems not OK
nvm. Just checked it - should be OK
sweet ill give it a look, thanks
Im still trying to figure this bar you sent me
this test points bar is a bit weird
^here I have 400 points
shouldnt the bar go up?
So I wanna know if theres a way to get the discord stream kit overlay in my streamelements overlay to save resources
hi folks me again lol how do i know if my stream is ready
@novel rapids Are you looking for API assistance? If so, you will want to ask detailed questions. If you are looking for assistance with certain features of the website, please ask in the appropriate helpdesk channel
i was hoping for someone to have a look at my stream to see if its ready
which is not an appropriate question for this channel. In reality, that question should be asked to yourself. Only you can say if your channel is ready. Does it have everything you want? does it look the way you want it? It is your channel, your choice
@cinder lintel sorry
@tribal robin Only one we have natively is for our media request. Anything else would require a custom widget that connect to an available API or locally load a file to be displayed on stream.
Thankyou for pointing me here Sudo.
Hi all. Does anyone know if there is a widget available that listens to the Twitch API, and can swap out active animation loops/gifs with a different image/webm/gif/etc. when say when it detects a subscription in the api?
Basically I use a custom animation as a layer over my tip jar to create a character, so swapping out animations when a sub happens would be the greatest. I've just never had the time to figure out how to approach it or learn the coding required.
do you have experience with HTML CSS or JS?
try something like this to start with https://jsfiddle.net/r19jh78d/
What's the recommended way to play sounds in a widget?
an html audio tag with an ID
Or something like this?
var audio = new Audio('audio_file.mp3');
audio.play();
I usually go the JS way for audio.
+1 for the JS route to add volume slider as well
But the really important part: audio.volume=fieldData.audioVolume/100;
Good to know :D
I'll see to add that now that the visual base of my new widget is working ๐
Is it ok to use the field widgetDuration in a slider and not an hidden type ๐ค ?
Of course you can do that.
But I was using widgetDuration as a fuse. If everything in the code fails to resume queue prematurely, it is an exit from it.
i couldn't change the widgetDuration in my testing with it; for me it was locked at the value i set it for the first time. couldn't change it
There's a way to adjust that. Logic there for any custom is like:
currentValue=defaultValue- if the
userValue !== currentValue,currentValue = userValue
So if you changedefaultValuein fields (even remove the field, it is still in values)
This one can cause troubles like you have an artifact in your code and somebody copies just the code of it, it may not work as original widget may have a values used in code when they are missing in fielddata.
ya. i've had that a few times where the Field variables were overriding stuff in the JS; i'm saying that once i set the the widgetDuration = 30 in the fields it was fixed there for me; even if i changed the field data to widgetDuration = 2 it was still 30 seconds
Once i set it; i couldn't change it. unless i was going crazy or made an ooof
Yup. In that case you change type from hidden to number and adjust value in both Fields and code.
Hey guys...How would i get $time in 24h format and AM/PM format for Asia/Vientiane ?
day 6 of waiting to get oauth credentials for the API, I got everything working, now to release the "streamelements currency system support update" all I need is to get a response regarding the credentials.
Good day everyone. ๐ Does anyone know how to adjust the volume of custom widgets, in the JS portion of one? For Zanzer's custom greeting, it just says to type "volume": 50 but it never adjusts the sound clip.
Try to use volume between 0 and 1 to be sure
I've tried to use 0, and it didn't work to turn it off, and no other combination I use works either
That's in the JS field
@viral patrol I've tried to use the volume, and length custom fields, and they don't seem to work. Then, I added the strms link for the widget, and can't adjust in there, either. There has to be something I'm missing.
I copied the JS block into notepad++, and tried a search for volume. When I searched volume, aVolume variable came up. It looks as if the variable is defined twice. Could that be the issue?
I think the best is to get widget author ๐ @crude crest can you take a look? Thanks in Advance
(I am not able to investigate the code currently)
@viral patrol Thank you for your time ๐
how to set a negative value to a count? when I set ${count name -3} the value is subtract 3 instead of set to -3.
Is it possible to get the profile image to a twitch username? For example a "Top Widget"?
how to set a negative value to a count? when I set ${count name -3} the value is subtract 3 instead of set to -3.
@toxic harbor set it to 0 and then subtract 3
And this is out of box thinking:
We hit ${count wins 0} and even ${count wins -3}
Or you may make it so it looks like just -3
Like: ${count wins 0}h! We are at ${count wins -3} which will produce 0h! We are at -3
Does anyone have a way to make the Media Request widget where it scrolls the Title text. Some of the songs and artists are longer than the window I use.
Scroll Horizontally that is.
Hi, is there a way of seeing all stored quotes in a list? ๐ค
ooh ok. tnx
๐
@hardy walrus will it have a "new" tag or something in the dashboard, u think?
guys is there way to make !so @name , i saw this from nightbot
@silk pebble No idea.
@hardy walrus kk xD. tnx
@pulsar willow Take a look at the templates when creating a new custom command.
i know without @ but dont see with it
Use ${touser}
it doing twitch.tv/@user not twitch.tv/user
hmm should be $(touser)
it work but it doin link with @ and thats wrong
even when doing $(touser) instead of ${touser} ?
then just use ${1} ๐
Would still cocontain the @.
oh yea. hes tagging the person with the @.. didnt see that xD
Check out ${1}, they are playing ${game ${1}} at https://twitch.tv/${channel ${1}}
This is what is in the templates.
Hey so I'm looking into making a simple "Challenge Me" button system where on a sub, it'll press the button and it'll present me with a challenge, I got the core function done in codepen and I've imported it into streamelements with customisable colours, a text field for a command to go into as well as a test button but, I haven't got the foggiest idea how to connect it all up, am I allowed to share my codepen in here or shall I screen record it functioning?
Curious on if this is technically the right section, but i am testing a sub goal for my stream, and say I set it at 10 (for total subs) and then someone subs for 25 months, it goes straight to 25/10 - but thats not 25 subs?
So technically a live sub count!
@ruby geyser Check our repo https://github.com/StreamElements/widgets/tree/master/CustomChat so you can get an idea how to read the chat
So my brain exploded, I can't seem to find the part where I would essentially trigger a button press. Can I share my code pen so you get a rough idea what the function is?
I should probably mention I am a complete novice when it comes to JS ๐
@ruby geyser
const command='!challenge';
window.addEventListener('onEventReceived', function (obj) {
if (obj.detail.listener !== "message") return;
const message = data["text"];
if (message.startsWith(command) && message.length > command.length){
const challengeText=message.replace(command,"");
if (!parseInt(data.tags.subscriber)) return;
startChallenge(challengeText); // - here it is where you start it
}
});
@ruby geyser are you after some code that detects a sub alert, and then can run some custom code, rather than a chat command?
np, sorry I didn't spot it sooner, but I'm nicking that code
window.addEventListener('onEventReceived', function (obj) {
if (obj.detail.listener !== "subscriber-latest") return;
startChallenge(); // - here it is where you start it
});
This one triggers startChallenge() on new sub โคด๏ธ
https://codepen.io/jakeyn00b/pen/gOPyJgG So here is what I have as a bare bones button press. Essentially I want it have a way of testing the button press either with chat command or the button within streamelements and for it's core function to trigger on sub. I've been spending most of today looking for a way to loop function the array but my knowledge is limited and I'm struggling to understand how to do it with what I have.
I'll take those chunks of code and see what I can do with it myself but any pointers or hints on how to achieve this would be incredibly helpful, I'd also love to share it once it's done
I pretty much would like it to loop through each of the challenges for a determined amount so for example 12 times before presenting the output
Hi everyone!~ I am currently testing out a free alerts widget from NerdorDie.com. It's their "Wicked" widget. I am currently earning in USD, and am fairly happy with a little update they did last night to add a currency symbol reflecting USD amounts.
However, I was curious if the currency symbol and syntax would correctly change depending on if I changed my currency settings at my StreamElements.com account.
It mostly did. It seems to work well for currencies that use "."/decimal points to separate dollar amounts from cents. However, the system does seem to have trouble with commas.
So, for example, with Japanese yen, it does not provide commas, as JPY does not use decimal points to separate dollars from cents. They just have yen in increasing amounts, and when it gets to 1,000yen, they start separating with a comma.
So we don't have a comma function for JYP currency.
It's passable, but looks a little bit weird.
The emulator also has a loophole to add impossible decimal points to JPY, but again, I think it's just a loophole, and it likely won't ever show up for real donations.
Hi, is there a way to show a video on an overlay that hides when an alert is triggered?
Okay going back to testing in USD, and I am also seeing no commas being included in the syntax for higher amounts at $1,000 or above. It's probably not going to matter to me this fall, since I'll be a new streamer, and I doubt I'll ever get such high amounts, but 1,000JPY, for example, is about $9USD give or take a quarter. So that's not a very high amount, and so I think commas being added to currency syntax has some value, but maybe isn't a coding priority.
Is there any way to use iframe in a SE overlay? I'm trying to get a recent Twitch clip to play in an overlay
Afaik, for security reasons, that is not possible as iFrame.
Is there any other way to show a Twitch clip in a widget?
I'm trying to reproduce a feature Dr. Disrespect had on his stream where his chat would vote for a clip to be created and then it would show shortly after on stream
Ooooh! Alright. Thanks, guys! โค๏ธ
can you get streamelements bot to show new follower on chat?
@vital hollow https://streamelements.com/dashboard/bot-modules/ => Chat alerts
omg @viral patrol man i was hoping you wopuld respond thank you

wow it was in front of my face thank you! ive been stuck for days lol
Hey i want a Custom URl , now is mine dalim-7320 and i want only dalim pls help me
I hope this is the right place to ask. Does anyone know of a chrome extension that can detect a dom change from a streamelements overlay URL and send a UDP packet (Itโll actually be an OSC command) on my local LAN containing certain data from that change? I figure why duplicate a job thatโs already done?
Can anyone help me HTML a single gifted sub alert? I can't find out how to put the name of the person receiving the gifted sub in the HTML alert.
@red oriole Hi. You should be using {sender} in your HTML in a place you want to have sub gifter and {name} for a gifted person.
@red oriole Hi. You should be using
{sender}in your HTML in a place you want to have sub gifter and{name}for a gifted person.
@viral patrol Hmmm...I've tried that and no dice. Can I send you what I have to show you?
@ruby geyser As in your example it should be:
const command='!challenge';
window.addEventListener('onEventReceived', function (obj) {
if (obj.detail.listener !== "message") return;
const message = data["text"];
if (message.startsWith(command) && message.length > command.length){
const challengeText=message.replace(command,"");
if (!parseInt(data.tags.subscriber)) return;
Loadquotes() // - here it is where you start it
}
});
@red oriole Sure. You can give me jsfiddle with your code
@covert widget I haven't seen any DOM listener for SE overlays
Big shout out to my dude @viral patrol for taking the time to chat with me via a call, and walk through some things. Thank you my friend!
You are welcome! Glad I could help you 
i am trying to edit my overlay and every time i change the video for a sub alert it shows that i changed it but if i simulate a sub it keeps using the default sub alert picture. im not sure why this keeps happening..
Hello! You need to replace <img> tag in your html with something like <video id="video" playsinline autoplay muted style="width:50%; height:50%"><source id="webm" src="{{video}}" type="video/webm"></video>
im not really sure how to do that but its not a CSS if that helps.
all the other alerts except sub and cheer have changed to the correct video. and the ones that dont show the right video do have the correct noise
Oh. It is not css
Go to variations tab as probably you are triggering "Resub" variation
Same applies to cheers
yep.. that was it! thank you. i was feeling very defeated haha
I am trying to get this API request working:
https://docs.streamelements.com/reference/single-user [Add or remove points from user]
url = 'https://api.streamelements.com/kappa/v2/points/razbith3player/razbith3player/10'
headers = {'accept': 'application_json',
'Content-Type': "Content-Type",
'Authorization': f'Bearer {jwt_token}'}
res = requests.put(url, headers=headers)
print(res.json)
{"statusCode": 403, "error": "Forbidden", "message": "No channel authorization found"}
I don't know what I could've done wrong.
It doesn't say "invalid token" it just says I don't have authorization, which makes no sense, I try to access my own User on my own channel
You have a typo in your headers
f'Bearer {jwt_token}'
OK. All of your headers are wrong
I just copied the example
It should be Accept: application/json You don't need content-type (which is malformed too) as you are not passing any body
Also, what programming language are you using? Is it JS?
python
requests library
"it should be Accept: application/json"
alright I adjusted the capitalize, it didn't do anything
the requests library handles the formatting of headers, like when using other APIs it works as intended
It is not capitalization as you had underscore there
oh
https://api.streamelements.com/kappa/v2/points/599f72deef8c5c6dcfb39eec/razbith3player/10
where the underline is not an issue, but good that you pointed that out
You were using channel's name instead of id
alright, makes sense, now it works, I'm used to twitch API where both work
{
"channel": "599f72deef8c5c6dcfb39eec",
"username": "razbith3player",
"amount": 10,
"newAmount": 15790,
"message": "Added 10 points to user razbith3player"
}```
Due to multiple platforms we have covered, we require users to query via channel ID.
So there are less mistakes when there's somebody who has channel on Twitch and YT/Facebook with same username
oh that actually makes sense
[tbh since channel name is so short compared to the channel_id. if the provided channel_name is a lot shorter than the channel_id, the request should tell you, to use channel_id instead of channel_name directly. [I have no idea if all channel_ids are 24 char long, but mine is]
question: how to fetch channel_id by username, i am looking through the API and I don't see any way to do that, do I have to tell users to copy their Channel-ID and paste it in the program ?
https://docs.streamelements.com/reference/channels#channelsbychannelget
https://api.streamelements.com/kappa/v2/channels/CHANNELNAME will return a field "_id" with the channelId
works, thanks
But, there's a better way to get this data (assuming you have authorization token), then you query /channels/me as channel name may be different.
url = f'https://api.streamelements.com/kappa/v2/channels/{self.name}'
headers = {'accept': 'application/json'}
res = requests.get(url, headers=headers)```
too late now, I fetch the self.name anyways through twitch api to figure out where the bot should connect to
what's the difference between `pointsAlltime` and `points` when I request a user's points
10 minutes of watchtime are given to those in chat when the loyalty points are handed out (every 10 minutes). Therefore, loyalty must be enabled for watchtime to work properly.
There is no direct link between watchtime and all-time points.
It canโt be calculated from the amount of all-time points a user has because subs may earn points at a faster rate and !bonus all command increases all-time points for users in chat at that time.
Giving points to a single user does NOT affect all-time, only when giving to all in chat.
@tame sun ^^^^
wait, pointsAlltime = watchtime ?
@crude crest would you happen to have time to help troubleshoot the volume adjustment for your Automatic Greeting widget?
I just gave myself 20 points and requested my own points and the points was higher by 20 than pointsAlltime so I suppose points is the actual points and pointsAlltime is all points gathered by watching + !bonus ones, or smth
when fetching, I'll use the points one, I guess
alright, points it is
I used https://yoink.streamelements.com/mediarequest
to work with media request - the link does not work now. Worked like this link https://yoink.streamelements.com/activity-feed.
Who knows the correct link?
@untold shuttle I know what you're speaking of and it's behaving the same way you're most likely getting. Gonna ask some people.
@viral patrol thanks for the reply
is this the channel where i would ask questions about custom widget code?
is the TTS in the alerts widget able to be manipulated at all in the javascript editor?
Is it normal that the input type checkbox doesn't reset the iframe when the value change like other inputs do?
Developing a website for a client, he wants to add in some features with the Donation/Tips API, but I see the client ID is a parameter for the leaderboard endpoint, was wondering if there's a way he can generate an API key for me?
Guys, I have been searching for it online, but couldn't fidn much information about it. Could someone recommend me some documentation about merging streamelements economy with a discord bot economy? Or is that even possible in some way? I'm developing a discord bot and would like to use a cross-economy with my streamelements points.
@abstract basalt Yes. I think it is because changing state of checkbox doesn't change it's value but state only. This is why I am using dropdown type instead.
@pastel goblet Unfortunately I don't know anything about that, but you can listen to SE events via WS on your discord bot and then dispatch discord currency to your users (ofcourse with name check, because you will get twitch username and not Discord username from us).
@delicate light Reading /tips/:channelId/leaderboard doesn't require API key, but streamer needs to enable this in tipping settings
@viral patrol Where are the tipping settings?
Also apparently /tips/:channelId/leaderboard ALWAYS returns a 403 error, so you actually need to access the /top endpoint instead
I read that above.
@delicate light https://streamelements.com/dashboard/tipping-settings
Thx I'll switch to a dropdown ๐
^^ nvm what I said earlier, enabling leaderboard fixes that (not specified in docs tho)
Is there documentation on the DOM of a Streamelements widget URL ? I want to make a browser plugin using MutationObserver that acts on the DOM change when a stream alert happens.
https://github.com/StreamElements/widgets/blob/master/CustomCode.md
They are embeded on an iframe
Anyone got a problem with rem units for a widget on OBS ?
I have the correct display on the editor/preview on the browser, but once in OBS, the font is super small and margins too. I only use rem not px
(same effect with using px)
Hey there! I was recently editing variations for my sub alerts and I wanted to do some custom css for it, but I'm having trouble finding containers for the amount of months resubbed for, who gifted subs etc... basically any variable that doesnt appear in the default css for the default alert
@pulsar willow Check Alertbox section of: https://github.com/StreamElements/widgets/blob/master/CustomCode.md#alert-widget
Looking to submit a widget sometime in the near furture once I get the bugs worked out.
On the rules it says "3. Forward any data that could identify a streamer to an external resource without their consent (not as opt-out too)"
Is it fine that it uses a mini API to get creds for a 3rd party I host which is then saved on the widget to get info from the 3rd party on the user behalf.
Yes, but it has to be described as external service (like for example user has to input something or check a checkbox before any data (like username) is forwarded to external service)
I see. Would on the mini api it connects the 3rd party and shows what data they are allowing to be used?
Like on connection it shows what permissions to be granted.
Huh. I cannot tell without checking that in action. If you submit your widget I will definitely reach you to discuss it ๐
I can give you the API link as it's online currently while am testing.
Just like heist game widget - it requires user to oauth and paste a token within widget. Just to make user sure what are they doing.

I am not on PC ATM - I will be in ~10hrs ๐
Am I allowed to make changes to the widget after submiting?
Well looks like never mind as it's the same idea of https://discordapp.com/channels/141203863863558144/370226812669788161/738107210906992730 which was removed 
I had my own endpoint for that too. Spotify is not really happy about streamers playing music from their app.
But about that question: yes, you can update widget after you submit it. And we are happy if you do so ๐
How long ago was this as it seems they don't care much anymore.
They even have there own Twitch Ext made by themselfs.
i dropped the api stuff and just started using snip.
Snip does work. Kind of just like having a overlay that just works anywhere with no conf needed or any programs installed. I used Snip in the past and it works great tbh.
i had so many lag issues with the aiden one. just moved all my code over to snip
@viral patrol thanks a lot for the help! it was exactly what i needed
Is there any way to the test the API (for example, the tip listing) without having to wait for a tip? Emulating the event does not seem to send the event through the API unless I'm mistaken and I'm doing something wrong.
Do you not get API access to channels you manage?
I have API access and I've getting tips for old events that have already happened, but I'm trying to test it with new events to make sure that I can trigger actions and they will work correctly in my application.
Hi all - I am looking to build some integration with StreamElements on the back of requests from my users. Is there a staff member around that I can speak to just to confirm no concerns from SE around my plans? Thanks
@burnt shale Hi! I hope I will be able to provide answers to your questions.
@viral patrol Hi I'm trying to implement your chat poll widget on Streamelements but I'm having some issues with it responding the the chat commands. I've added the widget but it's not responding to the chat commands set up.
I just checked it on my account and it seems to be working
!startpoll Which option?|option a|option b|option c
Thanks @viral patrol I've managed to get it working. It disappears when I move it's position but now I've sorted out where I want it, It's all good. I think I was doing the command slightly wrong. Thanks x
Good day everyone ๐
@crude crest were you able to check on the code for the automatic greeting? The part to change the volume of sound files wasn't working, when I manually set it in the JS code.
@pastel goblet ... it's a rough road for the Twitch to Discord connection; but is possible. you will need to link the accounts yourself and verify the tokens/id/username for each user. But you will need a website or something for people to agree to connect their accounts
@inland ice did you set it to a value between 0 & 1?
@elfin arch I tried that as well, yes. 0 didn't disable the sound, 0.0 didn't either. When I tried several increments, I tried .01 .1 0.1 etc
The overall volume level could be changed, but not the differing single sounds and/or videos.
go to https://jsfiddle.net/ and post your JS code in there; click save then send the link back.
ooooo; you mean different volumes for different alerts
Correct. The overall volume for the entire widget can be changed, but not the separate values for individual alerts.
Test your JavaScript, CSS, HTML or CoffeeScript online with JSFiddle code editor.
In the remitted block, it says to use a value from 1-100, but that didn't work either.
The sound will go off, so I know that part of the JS is solid.
Is there a way for me to make changes to the premade Evenlist with custom CSS?
For youtube that is
I already asked in #helpdesk-youtube and I was forwarded to here
Sorry, @bleak vapor I'm green when it comes to all of this. But welcome ๐ There is probably someone who knows, however.
i'm sure with YouTube; but if there is a 'custom css' override or settings that brings up the HTML/CSS then yup ๐ @bleak vapor
i don't have much time to look at the code @inland ice but basically it looks like
so if you add that "volume" : 2 would be 2%
ah, so a space is needed where the colon is?
and you are correct; this code has the 0.01 multiple in it; so it is a number between 1-100
no that space won't matter; is that 'volume' something you added?
yes, I did add that, as the remitted portion says use "volume" 1-100 to adjust the volume of a specific command
is it possibly nested wrong?
try just 50; no quotes with it
what about the comma after the 50?
remove the comma
unfortunately the volume still won't change
in his video, the volume JS is there https://www.youtube.com/watch?v=pzZe2545TN8&feature=youtu.be
This widget allows you to add people to a custom greetings. When they come in to the channel and chat for the first time, you can have a video or image/sound play for them.
How-To-Get links: https://www.youtube.com/watch?v=mEGcHFdO9IA
The newest code will always be in the D...
@viral patrol Do you think I should try submitting it still?
at 55 seconds in the video, you see how volume is set
yup; that looks good to me. (i don't know the code though)
but did you remove the quotes from your "50"
yes I did
jump down in the code and replace this :
copy the aVolume and change to like 0.2
see if that changes the volume
that aVolume is the number you put in * 0.01 (so this should be low volume; 20%)
@pฬjฬoฬnฬpฬ unfortunately, that didn't work either
There must be browser plugins or server side code that detects alert/types/values that get pushed to a streamelements widget URL. Iโm looking to send OSC packets over my LAN, and it seems to me all the authentication work is already done by that browser page. I need to send OSC packets over my LAN. Can anybody point me in a good direction?
anyone coded a widget where it plays an alert depending on if a user left a message or not
is there something like nightbot's $(querystring) in the streamelements bot? so if i send a command without anything after the command it will still send the costomapi to the server.
Not sure if its the right place but does anyone know how to add a text source to a widget?
What kind of access does the JWT Bearer token give to someone's account?
Would it be appropriate to ask my client to send it to me so I can access the proper endpoints?
I've been trying for a few days to figure out how to get access to my clients tip history through the API. Does anyone have any solutions?
Hi, im trying to add a custom font to an Alert, Im enabling the Custom Font Switch but after that what should I do?
@rocky lava Google Fonts
More than 900 google fonts are supported at this time. You can preview them here: https://fonts.google.com/
Custom Fonts
Steps:
- Install the font on the streaming PC or choose a pre-installed windows font.
- In the overlay widget settings, select Text Settings
- Enable Custom Font
- Type the name of the font as it appears in the windows font directory (This is usually
C:\Windows\Fonts)
Note: After installing fonts, the browser and OBS must be restarted for the font to appear.
Thank you!
HELLO I AM HAVING AN ISSUE AND I COULD REALLY USE SOME HELP. I JUST CHOSE MY OVERLAY THEME IN STREAM ELEMENTS AND THEN I WENT TO MY OVERLAYS. THEN I OPENED THE OVERLAY EDITOR FOR THE THEME THAT I CHOSE AND THE ISSUE THAT IM HAVING IS THAT I TRIED TO EDIT THE TEXT FOR ALL OF THE SOCIAL MEDIA THAT CAME WITH THE OVERLAY AND I WAS ABLE TO EDIT THE TEXT IN THE ACTUAL EDITING TAB BUT FOR SOME REASON ITS NOT TAKING EFFECT OR CHANGING THE SOCIAL MEDIA FOR THE OVERLAY I TRIED SAVING IT MULTIPLE TIMES AND THEN LOOKING AT THE PREVIEW AND THE SOCIAL MEDIA TEXT JUST WON'T CHANGE OR PERMANENTLY SAVE. WHAT AM I DOING WRONG?
if you alt click on the name; then edit it the left tab; it should show in the editor preview
look for the 'settings' on the left
Ok i think i got it thank you so much!
One more thing how do i found / implement a new social media icon that doesn't exist in the overlay you chose
@solemn cedar you can use google images to find it and upload it to overlay as image widget
Thank you
And also is there a way to pin the social media on the bottom of your in game scene so that it shows in all of your scenes not just in the in game
Or do i have to add the social media individually to each one
You can have a social rotator as separate browser source and add it anywhere you want
Also - search our #widget-share for phrase "social"
And you should find several of them
Hello everyone! I have a rather specific question about the Credit Roll widget:
Would it be possible to reload the Widget via JS at an interval, so that it stays updated? Currently I'm using it on my end screen and have to (automatically) reload the whole Streamelements browser source to get the widget to update and show the stream's latest followers etc.
I would prefer to not refresh the complete source, as it blackens the screen for a moment and also resets other widgets like the chat box. I know it's more of a cosmetical issue, but would smoothen the flow of the scene transition a bit.
in OBS settings for that scene do you have the 'shut down source' enabled?
No, that is not active
is that widget on the same overlay as all of the rest?
Yes, only one overlay and one browser source in that scene
create a new blank overlay; copy that widget over; then when you switch it off it will reload without affecting the others
i am assuming this if for a 'credit roll' at the end of the stream with it's own scene
Exactly, and you are very right, that might be the easiest way to do it ... damn, I could have figured that out myself 
Thanks for your input!
๐ค
It works just as expected! 
@elfin arch I was just curious, did you happen to have anymore ideas about the widget volume?
if you go back to https://discordapp.com/channels/141203863863558144/259680142459142144/738418428293152838
and change the aVolume to 0 is it mute and no sound at all?
Has anyone been able to come up with a !clip command that can be added to SE for easy quick clipping?
So the overlay that i made in the stream elements overlay editor is the one that im using for streamlabs but i want to use the same overlay for my obs but just with a slight tweak or difference, how can i use the same overlay for both obs and streamlabs but with slightly different versions of the same overlay?
Create one overlay for the items that are the same and then two more for the ones that are different.
What are you referring to when you say items? And when you say then two more? Could u be more specific?
Either create two overlays, which contain the changes and the duplicated items and add them to the OBSs or create one overlay with the matching same things and two more for the ones that are different and add to the one OBS the two overlays and the other OBS gets the same and another one, so also two.
Hello! Sorry to intrude, is there a way to put the media share overlay bar with the info on top of video instead of bottom? seems like a no-brainer, but i can't get around it
SE_API.store apparently doesn't store data forever? How can I have permanent persistent data. Do I have to set up my own API?
or is it if data eventually is missing, i am using a name that is being used
Data within SE_API.store should be permanent. Are you sure nothing is overwriting it?
Is anyone around that is good at making widgets that could help me think my through how to make something work that im trying to do for my stream overlay
Hi, I am building a now playing widget site and I want to show the current now playing status from the streamelements songrequests. I need people to be able to sign in with their streamelements account. How can I do this and where can I create my Streamelements developer application?
please dont tag all support heroes
check the pinned messages for the most info
and otherwise a Code Guru can most likely answer your question 
you want all your viewers to have to sign up for an SE account?
The pinned messages do not contain my question
No, I am a developer of a site where people can create a now playing widget to include in their streams and I want people to be able to connect to my site using their streamelements credentials
Oauth2
so you do want everyone to have to make an se account
No by default people can login to my site using spotify to show their current spotify playing status and when they want to include the streamelements songrequest I want them to be able to connect their streamelements account to my site
im so confused, you say no, but then say "able to connect their streamelements account to my site"
best thing is to figure out what you want then wait for a coder to respond
I want access to the streamelements oauth2 api
https://docs.streamelements.com/docs/getting-started-1 i am trying to follow this guide but the oauth2 application form is disabled
OAuth2 enables developers to build applications that utilize data from the StreamElements API. Apply for OAuth2 credentials here.Code samples are available here. Description: When someone navigates to this URL, they will be authorized for the requested scopes. Once accepted th...
@bold scroll Unfortunately we aren't allowing any new applicants atm.
Aah, when will streamelements allow new applications?
No idea but I'm certain we'll make known when this is possible.
Hello, is there any way to hide deleted messages from my on-screen chat? Unwanted messages shouldnt be shown.
It would be great if an option gets added to Streamelements chat overlay.
Imagine that you are a streamer with few viewers and someone pastes a dikpik text-art to your chat and it appears on your stream. You cant remove it even if you ban the user.
This is a serious problem, i hope developers see this.
@viral patrol it isn't being overwritten by me, my only thought is some other widget was using the same key
@elfin arch setting to zero did mute the volume, yes
Does anyone happen to have a timer that I could add to my overlay? I checked in Widget share but didn't really find anything that would suit my purpose. The closest thing was a marathon timer which is activated by user interaction.
how does one get interaction from the someButton field?
{{someButton}} .... nevermind
er no that just displays the value #confused
i found it, my apologies i searched for someButton and not button. It is in the doc
Hello.. when giving access to stream elements it is asking to permanently edit or delete my videos
the same is with stream labs
and i have heard peoples account getting hacked because of this feature
im from INDIA and is this secure way to stream
or should i choose OBS STUIDO instead??
Are you talking about the streamElements website or the OBS.live extension @leaden sentinel ? The SE OBS.live extension is just a plug-in for OBS STUDIO that allows you to have some Stream Elements docks and information inside of OBS Studio. It is completely secure as long as you keep your password safe and never share your tokens (the same as any other website / software)
@fading lynx I think that this widget should do the trick for you https://github.com/StreamElements/widgets/tree/master/CustomChat
Thanks I will give it a shot @viral patrol
@viral patrol where can i adjust the space between messages?
Okay i will check
Btw i pasted json to fields, is it right?
That is correct
https://github.com/StreamElements/widgets/blob/master/CustomChat/widget.css#L26
@viral patrol thanks
I just checked it doesnt remove messages from screen@viral patrol
Timeout should remove them, but message delete has changed AFAIK
Yeah timeout works
exactly 2 weeks later, still no API credentials reponse, I get that I can use the JWT token, I setup basically everything, I'm just waiting for this so I can rollout the update, I don't trust users pasting their JWT token without being confused, skipping instructions then dming me 20 times about how they don't know what to do
also when I go to the form page:
@tame sun It is closed for the time being and we're not accepting new applications. I will however ask about your status.
Unfortunately as I'm going to bed due to work tonight I'm not sure when I'll get a reply from the person who could answer it.
thanks basshunter
@tame sun We are resolving the issue behind backlogged OAuth credentials dispatch. Your application is still queued and once the issue is fixed your application should be processed in the first batch (before we reopen requests form).
Is it possible/allowed to have a POST webhook that updates information on the overlay? I'm not positive I can consume the api via JS, but if I can, it beats polling the service every few seconds.
Oh, the webhook and API are external to SE.
Iโm not sure where Iโm supposed to ask this but i finally got my own custom alerts and overlays but when i put the alerts into the overlay editor the text on image will not show up but the text shows up next to and under the alert
hello. can I ask for a help regarding invitation?
(idk where to ask this since all the helpdesk is regarding specific stuff for social media.sorry for the inconvenience)
I want to invite my main account here
Hey guys, is it possible via API to retrieve the last subscriber or tips count?
@ClintonIsDeaf#1895 Check if the custom code for all of your alerts is the same. If it is a default alertbox (no custom code) - check margins and text position if it is not out of the canvas
@onyx shuttle What kind of invitation are you looking for?
@unique umbra You can get your session data from this endpoint <https://api.streamelements.com/kappa/v2/sessions/:channelId>
Hey! Is there any way to reset current followers count in followers goal widget?
@granite pelican To reset goals:
- from the overlay editor -> session data on top right (monitor symbol) -> goals tab -> reset progress of desired goal
- from the dashboard -> activity feed on the left -> widget data on the right -> goals tab -> reset progress of desired goal
Note: Goal widgets(progress) only counts up and doesn't go down automatically, if you loose followers/subs
It helps, ty.
Hmm aint there some sort of endpoint for top 10 list of superchats? just wondering here, since i can get the one in the first place of superchats but would like to generate a top 5-10 like i do with tips
Hi! I have a question about the Widgets API. I don't exactly understand how state is managed for widgets.
So, let's assume a simple widget that has some animations and it's supposed to draw a different icon, based on how many months the person has been subbed for, the problem I have is when reading the API is: When writing code, do I subscribe to a certain event?, as I understand it, a widget is already pre-destined for a certain event.
I just can't find the "Widgets API", just your normal API.
You subscribe to the event type subscriber (obj["detail"]["event"]["type"]) and get the subscribed months with obj["detail"]["event"]["amount"]
I see, and the next step is returning markup or whatever for the render. How does that happen?
Like, the way I assume it works is I sub to an event -> that event comes with data -> I do something with the data -> I return something.
That return something irks me. Internally, streamelements wait until I return something? What's that something?
If you could point me to the widgets API docs, I'm not gonna bother you with this ๐
I just can't find them.
Take a look at the channel header for the overlay editor documentation.
@minor steppe I see no endpoint for top supporter unfortunately
Hello! I'm trying to set up the Train V2 widget, but my end sprite animation starts as soon as the train begins instead of as it ends. So, based on Harris's video, i'm trying to get the pokeball to animate once charmander reaches it, but instead, it's animated in a loop and consistently closing while charmander is moving towards it. I was advised to ask here by Support. Any help would be great.
Not sure if this is the best place to ask but (Custom Widgets on the Overlay Editor):
Is there a way to temporarily mute the sound effect of an alert? Hypothetical scenario:
- User cheers 100 (or arbitrary number of) bits with the message "nosound"
- Set audio volume of alert to 0, but play the animation.
- If the keyword is not in the cheer message, audio volume is set to whatever it's configured to, and plays normally.
I'm not sure if it's possible to modify the alert widget with that behaviour (enable custom CSS for the alert widget, change the JS), or if it would be necessary to create a custom alert widget instead (no idea how involved that would be).
I have a subscriber goal widget. But my subscribers are not updating in real time. There is a problem in your api.
when I had 82 sbs it was showing 81 subscribers. even After having 84 subscribers it was showing 81. now my subscribers are 86 but it's showing 84. Plz help
so i have probably a super super basic question (i feel embarrassed asking); but with the streamelemts variables how can i make it so when a command uses "@"<username> that the response eliminates the "@" symbol? trying to do a simple shoutout command with the twitch link in the response but that "@" symbol keeps messing it up. what am I doing wrong?m
i dont remember this being a problem in the past, iirc, perhaps something has changed? i have tried the simple ${1} to using touser, and other variations.
don't know if that's possible using custom commands and variables itself. not seeing nightbot's $(eval) equivalent which can easily use some inline js to strip out the @ if it exists.
Other option would be to use a custom widget.
with nightbot it was super easy with the following, but i was hoping to have elements only and remove nightbot altogther
nighbot command: ->
!commands add !test -ul=moderator $(twitch $(user) "Be sure to give {{displayName}} a follow over at {{url}} ! They were last playing {{game}}")
or something like that
https://github.com/StreamElements/widgets/blob/master/CustomCode.md scroll down to "button click" which shows a way for the custom widget (in the overlay editor) to emulate a chat message. you can do a lot more with custom widget javascript.
Is anyone aware of a single goal widget that can combine all financial contributions into one progress bar? I want to create a monthly goal that includes tips/bits/subs but I have yet to find this in the wild. Not for stream elements at least.
Maybe this is not the right channel for my question, but: Can I create a custom command (SE Twitch), which either tells that the user is lucky or resets the users points to 0.
What is the difference?
I'm trying to get latest gifter's name and amount on sessionUpdate
alltime is probably cumulative. as in the most recent "gifter" has gifted XX number of total subs.
@onyx shuttle What kind of invitation are you looking for?
@viral patrol server invitation
Is there a way to button up a widget and hide open editor before sharing
@onyx shuttle https://discord.gg/se
@gleaming lantern I think you may want to use: ${channel ${touser}}} which should return you channel name of that person (so it will strip @ character)
@median halo Please search for in:#widget-share goal it will return you two of the widgets for cumulative goal
thank you @viral patrol I've been waiting for that exact widget forever (:
No problem! Keep an eye on this channel as you can find a lot of other hidden gems there (even if they are not really hidden) ๐
@viral patrol after creating 1 step and removing the other 4 I can't seem to get anything to show up. I've set it to 1200 points and each bit/tip as 1 unit and subs as 3. Before I created the step when testing it would show fine. Not sure what's wrong.
Hmmm. I am not an author of that particular widget.
oops my bad
Hello,
I have a problem with the widget "Season of Subgiving".
On gifted community subs there should a train drive through the overlay.
The train works while testing the widget in the editor. But in the live stream when real subs are gifted the train doesn't work.
Do you know that problem and can someone help me, please?
If you don't need steps, you may want to check: https://github.com/StreamElements/widgets/tree/master/CumulativeGoal
@pulsar willow Twitch changed something recently in their sub gifts events. We are investigating that one.
I'll give that one a shot thanks lx
@viral patrol Ok, good to know, thank you.
Where can I see wether you have found the problem so I know when I can use the widget again?
@median halo with that one you will have it easier - you will be able to blame me for something broken as I am author of if.
@pulsar willow I would recommend you to create alertbox variation for community gifts to handle them and also keep that train. If it doesn't display anything you will have just alertbox, but one day actual train will go through your screen.
@viral patrol Thank you.
I already created my Overlay like that.
Alerts are separated from the train.
Ok, so all I can do is just wait, right?
Yes. I hope we get events like we used before.
Great. Thanks for your help ๐
I can't seem to make sense of the 'bar thickness' field. It seems to have zero effect. @viral patrol
Checking it RN
however this is simple and what I'm looking for (: I can just pop a mask over top of it and make it look how I like. The only thing I'm curious if we could add would be the option for a gradient instead of solid bar color?
I will push updated CSS/JSON in few minutes
alright thanks (:
OK. Same link as above
alrighty I'll check it outu
And if you want to adjust your gradient to be non repeating, you can check this portion of CSS code
You can also replace it with code you get from here: https://cssgradient.io/
haha you read my mind
do you happen to know how to code it in a way that the gradient is revealed as the goal is met instead of it as an image that's smashed in and expanded as the goal is met?
do you understand what I'm trying to express? @viral patrol
You can add background-size: 300px 100px; below it and then play with numbers
ty
perfect, you've been a real help and I appreciate ya @viral patrol
you seem to have the know how, may I suggest you look into creating a boss battle widget similar to this? that would certainly be a popular one. on past platforms I used one that would have staged effect where I could start it at 10hp and each tip was 1hp damage. Once it was killed it would revive with x more hp. the best part about it that it included tips/bits/subs just like your goal tracker. the overkill option was nice as well, that way if someone did a large amount it would continue to do damage on the revived boss.
ah I see there is one updated. let me see if the changes match my needs (:
To be honest some time ago I created Boss widget, which later was included as native one:
I can't remember what the default one was missing but it didn't work out for me
oh I remember now, you can't have increasing HP and overkill both active for some reason
and I'm not sure if you can adjust how much more HP the boss will have upon revival, it seems to be at 100hp
I'd imagine these are things that could be fixed but the default widgets won't allow me to edit ):
IX thank you greatly!! /bow
@median halo unfortunately there's no way to adjust it in the code.
Hello, there are any way to skip current song? Didn't find this in references.
For StreamElements media request?
Yep
Chat command !skip doesn't work?
Work, but i need it in code.
Oh
And... Something about it?
@rocky lava you will ask the user to create an invite link for you to access his/her SE profile (https://streamelements.com/dashboard/account/channels) with permission as an Editor. Then, you will access the invitation link and enter his/her Dashboard in StreamElements. Next, you will go to the link https://streamelements.com/dashboard/overlays and click on the button Import from other channels to import the Overlay from your profile into his/her profile.
Someone, please?
Nothing...
Please be patient ๐
I want to, but i was ignored
hello, any ideas on how to get a animation to play on command?
@crisp laurel Are you looking for like, !renandstinky to show a gif of the two on stream?
If so setup a item in your store thats free that people can claim then make a command to redeem the item, set the alert to be the gif you want
@shell tree i want a webm video o play on !confetti
What size is the webm file?
Ok then just do what I said above
Go there and setup a slot for it
ohhh damn no idea that was a thing, thanks!
Yep!
Setup the stream store item, then edit the alert to be your .webm file through the overlay editor.
Afterwards you can use !redeem <itemname> or setup a command to redeem the item
ok so you can do one with redeem?
it does the redemption but it doesnt play
ok so it plays now, but i have the redeption alerts set to 1920x1080 same as the webm but it plays at like quarter size
got it, solved that issue, now i just need to get it to not show up in activity feed and its perfect, thanks for your help again!
Oh dear, missed a few! sorry lol
To make it not show up in your feed:
Click filter and deselect Redemptions
yup i got it, its perfect, thanks!
So did StreamElements stop allowing people to register for OAuth credentials so they can create apps?
@sage path For the time being yes. However if you had previously applied with no response yet you're still on the list to do.
So then there's no way for us to create new apps?
Cause using my JWT token that I got from my account page keeps saying i am unauthorized
Were you previously approved?
In that case JWT is the only way atm.



