#dev-chat
1 messages Β· Page 69 of 1
Hey guys anyone also have Steam-Chat disconnects since the last update?
Never had problems with it but somehow especially on steam games it disconnects
sounds like the same thing, almost. Doing it the hard way then XD
any documentation on where to get start for building a custom widget?
Channel topic.
what is the channel topic called?
i need help getting my overlay to work, its not showing up in obs when i try to active the overlay, when a follow happens etc.
still haven't got an answer for that, idk where else to go with it
but store.set is triggering "onEventReceived" more than just once, it triggers all of the widget's "onEventReceived" by the amount of all widgets that exist
instead of it triggering for each of the widgets once
there are so many people with the Staff role in this Discord, I assume each work on something specifically, but I haven't managed a way to get any response yet
You were told in the other Discord that staff was asked internally (which is more than what's usually done when bugs are reported). If they haven't answered welp, just wait. Staff doesn't mean developers. Just find a workaround for your use case
I made support ticket now, idk what that's gonna do. But I'm gonna use more ways to reach out to people whenever I find one.
If I get a response and the issue is resolved, then I'm happy.
Reporting bugs is nice, but don't expect them to be solved in 2 days. You're gonna have better luck finding a code workaround to be honest
For example, you can have an overlay with a button that will simply store something (like timestamp) to SE_API and listen for this event in the widget itself and trigger anything you want based on that
stores an object into our database under this keyName (multiple widgets using the same keyName will share the same data. keyName can be an alphanumeric string only).
store.set is not sharing the values it's just replacing them π
π€·
that's what that means
it's a kv store not a database
if you want multiple values you need multiple keys
hey @hardy walrus during our convo I made a submission under my e-mail and looks like i got an e-mail there's the pending Asana submission for StreamElements API Access, no rush at all lmk if anything else is needed, ty!!! π β‘
hello, sorry but I didn't understand. Can I see some example using this technique?
I found how to use the kvstore in my widget but I'm trying to update it with the API now and I can't find how to do it.
with a PUT method, I try to request https://kvstore.streamelements.com/v2/channel/[myID]/customWidget.[myKey] but I get a 405 responde "method not allowed".
Maybe my body is not right or I don't know...
hi! I'm setting up the prize wheel widget from pjonp and I can't seem to get it to send messages in the chat :[ in the overlay editor, each segment has "Segment [number] Chat Text" which I assumed was a message that would be sent to chat explaining which one was just landed on? not sure if i misinterpreted that or if i'm just not understanding how to set this up properly :s
PUT: https://kvstore.streamelements.com/v2/channel/ACCOUNTID/
HEADER: authorization: Bearer TOKEN
BODY: {key: KEYNAME, value: OBJECT}
i think...
the KEYNAME would be customWidget.[myKey]
it should work some like this: {user} got {res} and wins {points} points ...where user is the {name} after !spin NAME, {res} is the Text is on the wheel at that position (or text override); and {points} is if you have an amount of points set for it (the points only works with the middleware token)
so in the chat response:
then in the Chat text; like you mentioned:
{res} is This segment wins! if it lands on 1.
i got it now, thank you very much! 
I can't figure out how to get the userCurrency value on my "onEventReceived" listener for tips, can someone help me out there?
the currency is always your stream settings. The users amount will be formatted to your setting.
Ohh alright I see, thank you
Hello. I search twitch command (or API) for searching in my youtube canal. For example: if i write in chat "!search G305" the bot will show me all videos with "G305" in title (names of videos + links).
Do you have the API call and Auth to grab your youTubeVideos?
Is there an event fired (or other way to detect) when the overlay is saved? I've got a few widgets that need to share state, and ideally, I'd like it to be that you can update the shared state from any of them, but for that I need to push them to the store on save.
Ah wait, that'll fire OnWidgetLoad, won't it.
this has been a big topic of late...
Interesting.... I may have a solution (that I'll share if I get it working) but ideally, it would only run when you're in the overlay editor. Is there a way to detect that?
you can check the Onload data for isOverlay
I'm sorry but i don't understand what do you mean. I make videos with reviews of pc peripherals and i if someone want to see review of specific product from my videos, he need just to write in my twitch chat !search <name of product>
any solution you have would be great π ... this is where i'm at https://streamelements.com/dashboard/overlays/share/621af4a53c11000240fc87fe
and it juggles the SE.store set/get/update events
getting the list of your YouTube videos would be the hard part. So you'd need an API or something to get a list of you videos
and @left rampart ... go your own route if it's not that way; fresh eyes might break the case π
My idea is similar, but I think I can get it generic/abstract enough to run out of an external JS file that can be hosted on a CDN or something.. Since my overlay isn't compiling at the moment (heh), am I right in assuming that isOverlay will be true if I'm not in the editor?
And, in a similar vein, is it possible to the other properties of a field from JS? type, group, label...
isOverlay is only true when loaded on the SE website.
isOverlay? ain't the property overlay.isEditor? (or overlay.isEditorMode, talking from memory)
your wall might be the "save" data and share. because you will want the socket for live updates.
yup. something like that.
Yeah i know. Before 1 week i used API to make !lastvideo command in my yt canal.
Do you have any idea how to make API for searching?
i'm not familiar with youTube API
Okay. Thanks anyway.
ya; i read that back and @still juniper is right; it's .isEditor not overlay π€£ ... or something like that.
window.addEventListener('onWidgetLoad', obj => { //on the widget load
widget.isEditorMode = obj.detail.overlay.isEditorMode;
Now, this is odd... I thought my overlay wasn't compiling, but now it just looks like console.log() stopped working. I know the docs say we won't have that, but I did until a minute ago.
are you putting your code into the custom CSS of an alert box? that only accepts* .debug()
Nope, custom widget.
Just spun up a new test one
console.log(); works. i'm 99% on that. but it's been 12 hours since i've used it
Would you (or anyone) mind doing a quick test? I just confirmed that even previous code I haven't changed has stopped outputting to the console, but it could be a browser thing.
I'll check, gimme a minute
yup; i can as well. post code here
I mean...
window.addEventListener('onWidgetLoad', function (obj) {
console.log(obj);
});

logging works fine for me
π€£
ya; sorry; i thought it was more in depth code. that's 100% logging
Oh, it was but not in the new overlay I used to test π
Regardless, if @still juniper can log, I'll do the usual gamut of cache deletes, etc.
check you're not filtering by mistake log messages from the source in the console panel. Sometimes I activate filtering and then forget about it
...no comment.
goes back to bed
I feel you right now, trust me π
In my defense, it feels weird that filters survive a hard refresh
This is unrelated, but while I've got you guys here... have we requested an event:custom listener yet? Seems like something that would be really useful.
I don't know if it's been officially requested, but it's something that has come up in the past. I'm totally with you, it would be beneficial for both devs and SE (since 3rd party integrations would be much easier and so SE would likely get more users). But... I'm still waiting for a read confirmation from devs of breaking bugs and it's been more than a month, so I don't really think they'd care about suggestions at this point, sadly (though just my opinion, hopefully I'm wrong)
At that point, I'd @ them on Twitter.
I'm currently building a whole suite of addons around StreamElements, but hearing that basic dev support is non-existent makes me hesitant to go that route
Of course, if you mean a read-receipt, @still juniper, they could have disabled that but still read it.
I mean a "we got this issue and will investigate, thanks" answer. Github repo is dead, devs Discord is dead. Not even messages through internal channels in Discord seem to reach to them (as per reports of other ppl). I'm not tagging them on Twitter or any other place. Because to be honest, I'm all for contributing and helping, but if they don't care to check and answer/acknowledge in the "official" means, I'm not insisting, it's their loss. If I can find a workaround in SE fine, if I don't I just move to my own solution/server. It's a pity, but it is what it is. I have 2 stupid doc PRs in the Github repo waiting for over a month and no one has taken a look at them (despite them merging a trivial PR some days ago). It's just discouraging Β―_(γ)_/Β―
Right. I mean, I could reinvent the wheel, but I was really hoping to just give the existing one some chains so that it could get through the snow better.
Side note: There's a Devs Discord? 
there is but it's dead
thank you! It's working
Right. Would you mind if I shot you a quick DM on a somewhat-related note?
sure (I mean sure shoot haha)
Done. And, yeah... we should really ban the phrase "would you mind..." for being too confusing. 
Hi. I appreciate your feedback. We've been evaluating how we re-ignite our dev server and/or the communication practices you're speaking to in your note. I don't have an impactful update to share with you this second, but your thoughts on the subject have NOT gone unnoticed and we have a busy internal team working to improve for you and your needs. If you'd like to share additional details and examples on how we can make meaningful improvements for you, my DMs are always open. π
@marsh quiver Since the Dev Discord isn't going to stay dead, could I get an invite, perhaps? π
Also, super happy to see such a prompt staff response, even when it's mostly just a "we're working on it" π
I will check with the internal team to see if we can pass out a couple more invites to interested members like yourself.
Much obliged
I would have guessed there was just a dev section on this discord hidden behind a role >.>
That's worth a discussion @proud spade. I know Eglorian and the Gurus were going to catch up about the server in the near future. I'll be sure we discuss that kind of migration as a possibility. Not opposed to keeping a separate server for these activities either, though. π
Oh absolutely, I can see the advantages of either way.
it's a toss up. and each has benifits.
puts in a vote for migrating back to IRC. π
Definitely. If there is a litmus test for access either way, I've got code that is not scalable to other users (yet) but that I'm happy to demo to prove my "worth"
How about an old Year 2000 style forum?
I miss old school forums. What do you think?
Turn back the clock a bit?
haha
Year 200? So, can we go to the Gladiator fights afterwards?
lol
I wanted to test kvstore:update events so I built up the below function real quick, anyone knows why the kvstore:update got send 2 times instead of just one into the console? CustomEvent.timeStamp are different.
window.addEventListener('onEventReceived', function (obj) { console.log(obj); if(obj.detail.event.listener == 'widget-button'){ if(obj.detail.event.value == 'test'){ obj = {element: 1} SE_API.store.set('test1', obj); } } });
TLDR: why does SE_API.store.set('test1', obj); trigger two different kvstore:update events?
that was recently reported πΌ . Apparently, the update event is sent as many times as custom widgets are in the overlay, instead of just once
I don't think so since I created a new overlay just for testing purposes and as far as now there's just one custom widget in there.
thanks for pointing out that it has already being reported, I always do search before posting new message but this time I didn't see that message while searching..
it seems to send number of custom widgets + 1 events or sth like that, it does scale with other independent widgets sadly
it's a bug right? what's the point of updating the same key multiple times via multiple widgets?
it's a bug, yeah
do you know if someone from SE took charge of it or should I report it via streamelements.com/contact?
Staff was asked internally on Monday by c4ldas. No answer afaik.
karl-police opened a support ticket. He hasn't shared updates about this either so I guess no answer too.
And this is tied to my previous comment about the lack of acknowledgement from devs in regards to bug reports (not even suggestions, but things that are effectively breaking the editor and widgets).
feels bad, I actually received answer when I contacted them via streamelements.com/contact, unfortunately they seemed super busy working on something since they were aware of many bugs I reported but told me that they didn't have time to work on it neiter an ETA for the fixes
anyway, is it possible to trigger SE_API.set() via API call? I would like to trigger them via streamdeck
β¬οΈ
This isn't working on my side.
const apiToken = obj.detail.channel.apiToken
const id = obj.detail.channel.id
key = 'test1';
temp = {element: 2}
const seAPIFetch = await fetch(`https://kvstore.streamelements.com/v2/channel/${id}`, {
method: 'PUT',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': `apikey ${apiToken}`
},
body: {
'key': `customWidget.${key}`,
'value': temp
}
})
console.log(seAPIFetch);
const seAPIResponse = await seAPIFetch.json();
console.log(seAPIResponse);
console.log(await SE_API.store.get(key));
});```
`console.log(seAPIFetch);` returns `status: 400`
and obviuosly `console.log(seAPIResponse);` returns error since the call isn't working properly
I'm using ``` 'Authorization': `apikey ${apiToken}` ```since last time we ended up using it into the `GET` call .
reference > [#dev-chat message](/guild/141203863863558144/channel/259680142459142144/)
I also tried with the JWT token hardcoded but the answer from SE is the same as previously.
It's working for me using Authorization: Bearer jwt in cURL. ~~Maybe the PUT endpoint doesn't accept apiKeys and only JWT. ~~Anyway, since this is meant for the Streamdeck I guess you're fine with the jwt
nvm, it's just that you're not stringifying your body:
body: JSON.stringify({
'key': `customWidget.${key}`,
'value': temp
})
you're right, thanks
So, I have a means of (sort of) detecting when the user saves the overlay, but it's a hack... Is there an actual means to perform a callback on save? I'm not even looking to change the data in the overlay at that point, just need to know it was saved.
What is the syntax for the default !song command that returns the youtube video?
I'm using a third party browser source that uses a custom command trying to replicate the !song command. Basically it can do Spotify on top of Media Request so trying to make it output the same...
Hi! I need a bit of help as I added the "Goal bar by cdod" to my stream, but every time i try testing it by clicking "test widget" in my streamlabs and on the stream elements editor, the progress bar does not move:(
are you talking about this #widget-share message one?
- where do you see such "test widget" button?
- are you aware that this widget is being built for Streamelements and not for Streamlabs? they are 2 different services.
Oh⦠whoops i usually use stream element stuff on my stream-labs so i thought itd work. My bad!
idk how the creator feels about it, but you'll need to make some adjustments to the code the let it works on SL
If you are setting your goals up in StreamElements it should still work, otherwise @opaque wasp is correct. The equivalent of stream-labs' "test widget" button in the Overlay Editor is the "EMULATE" menu. Just pick the type of event you want to fake. π
Oh yes i was doing that aswell! I clicked emulate but nothing happened:/
I took a look at the code for that widget, and basically, the session information it's checking for doesn't exist when you emulate events. You could try having a friend unfollow and refollow when you know to expect it and see if that works. Unfortunately, pretty much the only alternative is that the widget needs to be updated by the developer.
i have a question that maybe can help me has anyone ever tried to livestream on a virtual world how come it doesnt pick up audio
Hello. Is there a limit to the number of keywords per command? I added 10 and I can't add more.
I tested the giveaway of STREAMELEMENTS it is STILL rigged! Can someone make the same giveaway with the same settings but make the winners random! My entire stream is built up around STREAMELEMENTS point system! I have a video 15 minutes uploaded to Youtube if you want proof! I will now pay β¬40 for the person that solve the problem for me! Problem is- last 6 persons that joins the giveaway wins. If you have 25 people joining. The last 6 that joins always wins! π¦
Hello I want to "buy" an item from my item store from code. Is it possible with a http request or something like that?
how do i start a stream
Is there a media kit? I'm unable to find one.
Aha, thank you!
Hey, Having troubles with OAuth API.
I'm getting the token in /oauth2/authorize.
Then, I make a POST request on /oauth2/token with the required parameters, but Im getting this error
Hello, is there a way to get the current Follower Count in a <p> element?
something like {followercount}?
Sure. You can inject that and more into your HTML from the included Javascript section of a custom widget. Particularly, take a look at the onWidgetLoad and onEventReceived events. https://github.com/StreamElements/widgets/blob/master/CustomCode.md for more info.
You should absolutely be able to "buy" an item using the websocket API, but of course it would only emulate the event, the way the overlay editor does. I'm not sure of the exact websocket protocol either (if anyone has a doc for that, I'd love to see it) but I know it can emulate other on-stream events.
I'm not sure whether you're wondering how to actually go live, or how to become a streamer, but you'll have better luck in #helpdesk-selive or the helpdesk for your streaming platform (i.e. #helpdesk-twitch for Twitch.)
I'm not sure of the exact websocket protocol either (if anyone has a doc for that, I'd love to see it)
https://dev.streamelements.com/docs/kappa/ZG9jOjYxMzcxNTY-connecting-via-websocket-using-o-auth2 Some stuff not documented though. As per my tests, you can only successfully emitevent:testevents (eventones never reach the other end)
I've seen that but, despite what it says, I don't see anything specific to websocket events. Is it just the same events sent through obj.detail.event in overlays? If so, I'm struggling to think of a use case for it.
Same events, yes. Two main use cases come to my mind:
- Get SE tips into your external whatever (e.g. you're running a custom alerts service totally independent from SE)
- Inject events from your external whatever into SE (so trigger events that then appear in SE overlays)
I guess others may use it to listen to all Twitch events instead of using Twitch's native systems, since this way they don't have to handle OAuth and other stuff
Inject events? So, SE doesn't strip out listener values that are outside the expected set of values?
I assumed that if I did something like
emit('event:test', {
event: '...',
listener: 'cyberlight-isGreat'
));
SE would trash it
They don't. But you can also use the expected set of values, it all depends on your needs
Well, that could be VERY useful, if one had an overlay configured to listen for a specific thing.
Seemingly random, I know, but you don't know of a way to get the ID of the overlay you're in from inside a custom widget, do you?
That I don't know sorry
So i am using the chat box by Cocahh, but the text is cut off in obs and i cannot figure it out. Any ideas?
@viscid estuary ‡οΈ
The default resolution for StreamElements overlays (theme and custom) is 1920x1080. Please add them in OBS at their full resolution and use CTRL+F to fit to screen if necessary. You can then downscale your stream in OBS settings > Video if you'd like https://i.imgur.com/6bWXxjR.png
A question: I would like the StreamElements Bot to select a random viewer with: ${customapi.https://decapi.me/twitch/random_user/${channel}}
It works as it should so far but I would like to know how I can define names so that bots like streamelements, nightbot or the soundalerts are automatically ignored.
Anyone know how to remove names from the se extension on twitch? When someone changes their name it stays on and continues with the new name. All the names starting with Q are the same person
still have no chat stats anyone help
according to https://docs.decapi.me/twitch?endpoint=random_user%2F%3Achannel
exclude A comma-separated list of users you wish to ignore.
so you'll have ${customapi.https://decapi.me/twitch/random_user/${channel}?exclude=StreamElements,Nightbot,SoundAlerts}
this inquiry belongs to #helpdesk-twitch, I did a quick research for you anyway and seems like removing and adding back the extension should work
I can't do much about it, you'll need to wait for a SE admin to see your message π
.
bump @thick plover not sure if you got it fixed; but that is a #helpdesk-twitch question π it will (was) lost here
So I'm new to SE dev, but judging from the conversation and the sent docs, I can create my own widgets (already new that) and I can send it custom events, right? EDIT: Sorry wrong message got replyed
It seems that way, but I suspect that this would require the user to have the "Preview LIVE events on Stream" checkbox checked. It is by default I think, but it could cause unintended behavior for some.
Is there a way to detect if if the "preview" checkbox is checked? If so, I think I'll create a helper library to make broadcasting custom events easy.
but I suspect that this would require the user to have the "Preview LIVE events on Stream" checkbox checked
Correct. I suspect there is a way to sendeventevents, but haven't been able to confirm it. My suspicions based on the code of the Patreon Alerts widget by lx, that seems to inject a custom event of the kind. Sadly, I really couldn't make it work for some reason, so never could inspect such event. Although he might be doing something privileged in any case
is there a possibility or a common proper way to handle variable amount of settings?
for example something like this, but the widget user will be able to set amount of gifs to setup (currently hard limited to 5 "gifs", but I want the user to be able to type in "20" and it'll allow the user to set up 20 "gifs" like that)
as far as I know that isn't an option, I would love to have dynamically generated custom fields too..
I don't think so? I agree this would be great, but I don't think we can dynamically edit (or even see) the Fields JSON. Also, doing this would be a breaking change for existing widgets, which can currently rely on fieldData.whateverTheySet always existing in the payload
it's not an option to have dynamic fields. But please request it; cause i want these too
Is there a particular place we should be requesting things?
Check out the StreamElements ideas board: https://strms.net/ideas. You'll be able to add ideas, upvote ideas you agree with and track their progress with email notifications. Adding and upvoting ideas also helps the staff know which ideas should be prioritized so please take some time to upvote.
that is the 'idea' board. so good ideas get priority π
Streaming advice! Anyone know how (or if it's possible) to set commands to change images on your stream?
as a basic example, !green would make a green square, and then if someone else aid !red it would replace the green square with a red one?
Or !shuffle would do a square of a random color?
I wont actually be using colored square but you get the idea
Hey SE and community, I wanted to see if someone can assist me with one of my commands?
I have the below command so that when it's used it picks one of the responses randomly...
.me ${sender} ${random.pick 'insert text for example 1' 'insert text for example 2' 'insert text for example 3' 'insert text for example 4' 'insert text for example 5'}
This command works 100% with no issues. but I wanted to change it to use a sound command from the SE Store if one of the random choices are picked. see below example...
.me ${sender} ${random.pick 'insert text for example 1' 'insert text for example 2' 'insert text for example 3' 'insert text for example 4' 'insert text for example 5 ${redeem example1}'}
The issue I am having is that when example 5 is selected the sound clip plays which is great but then the text doesn't paste into the chat. I have tried putting ${redeem example1} at the front of the 5th selection and at the end... both end with the same result.
is there a way for me to change this to allow it to use the voice command from the SE Store AND put the text into chat?
Yeah, it's possible to do something like this. You will need a custom widget that listen to chat messages.
Hey, that's something doable for sure. I'm pretty sure you'll need a custom widget with some coding in order to achieve something like that since I don't think you can achieve this without coding.
I've managed this, I just need to add a background that slides in with it, and slides out
any idea on how the background could be added?
which kind of background would you to add, like an image/video or maybe just a wall black screen? in both cases since you added a the Alpha Rotator custo widget, you can easily add it with a few lines of code.
actually yes, you should be able to use the slideshow widget to show the background just in time.. that wouldn't be the cleaner solution but if you don't know much about coding is your best option
hello! I have the command for a song now playing set up. I was wondering if anyone knew the way to also have a spotify link to the song added to it as well.
timing is very awkward to do this π¦
Hi I would like to stream to twitch and keeps defaulting to youtube how can I stop this?
@vague owl ‡οΈ
StreamElements menu, on top of OBS > Logout > Login
Hey I am working with the video on command widget and I wish to set it up so followers can also activate command can anyone help me with this? You can DM me
Yeah imagine "repeater" field
I tried to solve a similar problem with the "Monster Team" custom widget:
#widget-share message
It uses a pastebin.com doc as URL list and determines via a second command parameter which img to show.
(Credit to thefyrewire, whose pastebin API is the foundation of the widget.)
Example (not tested):
A pastebin-document might look something like:
:[green,random] {"default":"some.website.org/green.png"}
:[red,random] {"default":"another.website.com/red.png"}
:[red,random] {"default":"bla.bla.lol/red2.png"}
To get the green img:
!slot green
As every entry has the "random" keyword, this should select a random img:
!slot random
There are multiple entries with the "red" keyword, so this should select a random red img:
!slot red
Let me know, if the examples don't work (been a while since I've tested the widget).
Interesting feature. π
I've never tried to test whether a user is a follower, but if it is possible, I will try to add such an option to my revised fourth version of the widget. (Not published yet and in reviewing afaik.)
What does the revised 3rd version do, looking at everything released says version 2, would glad to live test version 3 for you
This is great! Do you know if it's possible to reference images stored in google drive? Or should I assume I need to stat using a different online storage option.
Yeah, I used G Drive too in a past project. Use this link https://drive.google.com/uc?export=view&id=${google_drive_file_id}
I think there are 2 versions 2, therefore it jumped from v2 to v4. π€£
The main feature of v4 is, that a dropdown list was added to each media command, which defines how a chat message is compared to the specified command string.
So messages like !lurk till later or I'm in !lurk (can) trigger it as well.
The modified code can be seen here:
https://github.com/AFoeee/VideoOnCommand/tree/compatible_with_older_obs
If you decide to test it, I would suggest to replace the content of the 'Data' tab with {}.
This way it loads all the default values and you avoid complications.
by the way in current public V2 if i delete the ! i can activate the command with just word. This is great please dont change this. honestly happy to find the creator here
@spare hound
Actually there are 3 creators π
This is still possible in newer versions.
@pulsar willow
ahh, and amazing i love that fact that i can pair it up with other commands. where do you post updates or status updates on it?
Is there a quick way I can enable everyone in chat to use command?
Is there a quick way I can enable everyone in chat to use command?
You mean in v4? There is an optionEveryone (ignores checkboxes)in first dropdown menu in 'global settings'.
I post updates on the github project (afaik there is no way to let users know that there is an updated version).
awesome and im okay grabbing the info from github and putting it into a widget?
well, you can of course wait for the staff to review it and provide an installation link as with the earlier versions.
But for testing you would simply put the data in the corresponding custom widget tabs and it should work.
@pulsar willow You are awesome. you guys should attach a donation link in your instructions, if allowed
Doing a little maintenance on a previous project which was an augmented version of SE giveaways. Provided I have API access as the user, Is there a way to block the automated response to !giveaway so that I can override it?
Reposting: Iβm writing up a Python program to help me manage a stream more efficiently. Iβve noticed that there are no methods listed in the API documentation for skipping or clearing items in the media request queue. Clearing the queue can be done via other means like looping through and deleting all the items in the queue (I would rather have a method for this), but I havenβt been able to figure out a way to skip requests outside of using chat commands (this is bad as it fills up chat with nonsense). Any suggestions or workarounds? Am I missing something in the documentation?
I appreciate any help you can provide.
Just wondering if anyone could provide input here:)
I've seen people in here suggesting to use the Spotify's widget for Twitch instead.
Ty Iβll seach it up!
Actually, here you got it
#command-share message
I appreciate it, I already have this working, but it doesnβt give a Spotify link to the song, which is what I was looking for
Someone else yesterday told me to ask my question again here
I appreciate it a lot tho ty!
Bad news regarding the "follower only" feature.
Unfortunately, it seems that the SE message event (because of Twitch) doesn't include follower data.
Checking the follower status might still be possible, but would require to query the Twitch API on each message.
Afaik this has the following drawbacks:
- Each streamer would need to register as developer to receive an OAuth token.
- Very frequent chat messages will probably result in an API time-out.
Then there is the additional problem that users could immediately unfollow after using the command, which kind of undermines the purpose of such an option.
Taking this into account, it feels like there is no satisfying way to implement the feature at this point.
Sorry for that.
I can see there's a SE_API.sanitize function, but where can I access the settings what words to sanitize and what to replace them with or when to skip?
Initially I thought it's going to be Dashboard -> Chat bot -> Spam filters, but that's not it...
it'll probably be the setting in the donations settings
that's it, thank you!
for anybody looking for those settings, it's in the dashboard -> Revenue -> Tipping Settings -> (small font) Tipping Settings -> Tip Moderation
@pulsar willow @spare hound you can use DecAPI's followed endpoint to check if a user is following the channel, just make sure to cache it (for like 5 minutes or so?) so that it's not hit on every chat message from that user
https://docs.decapi.me/twitch?endpoint=followed%2F%3Achannel%2F%3Auser
there is still the issue of people easily following and unfollowing, so that's the only caveat with introducing a follower-only feature
thank you for the tip π
wouldn't be easier for him to just enable followers only chat feature from Twitch itself?
Im getting this response when trying to get /kappa/v2/channels/me endpoint:
{
"statusCode": 401,
"error": "Unauthorized",
"message": "Not allowed to perform this operation"
}
Im using Bearer token generated with OAuth2.
What is wrong? Token was generated with scopes ["channel:read", "tips:read", "tips:write"]
/oauth2/validate response:
{
"channel_id": "5a825ad2d1ea600xxxxxxxx",
"client_id": "b4dxxxxxxxxxxxxx",
"expires_in": 2590478,
"scopes": ["channel:read", "tips:read", "tips:write"]
}
I'm looking for confirmation that right now the only two methods of communication between widgets is the use of the kv store, or to set up a hosted server and set up communication that way?
My use case is I have one widget that runs on a timer received from an external API. That timer determines different state events that the other widgets respond to. I'd like to not spam hitting that API several times on an interval with multiple widgets in the same overlay.
Afaik there are no other ways. KVstore seems suitable for your use case, although have in mind that here are some issues with it right now (kvstore:update events being sent multiple times per single event, so you'll have to filter repetitions (based on time probably, they're all received just some milliseconds apart))
Those kvstore:update events being fired are each widget receiving the update. As the event is a state, I just check to see if the state is the same.
if you check in those events, you can see they are ms apart as they have a timestamp for each one.
What's kind of crazy to me is that if you have 6 widgets in one overlay, a kvstore update will trigger 6 events due to each widget emitting an event that it received the kvstore update. So we know the widget is getting an update, but we can't listen for the widget itself receiving an update, we can listen to the confirmation that is broadcast that the widget has received the update.
Hence the duplication
There is also the problem that if you have the widget in StreamElements AND the widget live in OBS (or a preview)... it doubles the events fired.
What's kind of crazy to me is that if you have 6 widgets in one overlay, a kvstore update will trigger 6 events
This is the issue I was referring to. An update operation emits multiple events via websockets. I don't think the underlying issue is that each widget is re-emitting the event, I just think the background broadcast logic is broken, but you may be right. Anyway it shouldn't work this way, that's clear
When I tested kvstore:update, I had just one custom widget into the overlay and the event was triggered twice anyway.
Hi all, I'm trying to port some commands that I was using over from nightbot to streamelements bot but I'm not sure if there's equivalence to certain commands. Is it possible to have a command use store api responses into multiple variables and print them out? Are if statements possible? Edit to add: Also is this question supposed to go into twitch helpdesk instead? Very new here.
this sounds like you're using $(eval) in nightbot which streamelements unfortunately does not support
in fact, nightbot is to my knowledge the only cloud bot that has support for running code
Is there a way to have a streamelements widget post something in chat? For example, I have a widget that displays something on the screen... I'd also like to have that text returned and spit out in the chat. This text is dynamically generated via an API. So its not like it is something I can have the command display as a response to the user triggering it.
Get JEBAITED_TOKEN via https://jebaited.net/login/ then you can use this code here
let query = `https://api.jebaited.net/botMsg/${JEBAITED_TOKEN}/${msg}`;
await fetch(query);
I just found this.... THANK YOU SO MUCH
Why nobody recommends the native /channel/say endpoint? https://dev.streamelements.com/docs/kappa/b3A6NTM5NzEyNQ-channel-say
I've never tried it but it's there so... not sure why it's overlooked (I'm curious about possible issues with it)
I saw this, but you have to apply for OAuth2 to be able to get a token, at least thats what it appears like.
I am a little curious why SE_API doesn't have a way to send a message itself. That would be perfect.
I didn't know about it honestly.
you can use JWT as the bearer token
For the header, do you just do: 'Authorization: JWT Token 123' instead of 'Authorization: Bearer 123'?
'Authorization: Bearer eyJhb....'
I suppose that people prefer jebaited.net because you can generate a specific token. Instead in order to use /:channel/say you need to hardcode your JWT token?
That is what fields are for... And that works perfectly... now I can skip out of jebaited's api. Thank you!
Actually is it safe to ask people to enter their Tokens values into a field?
quick note: I'm just helping with what I know. I don't have much knowledge with coding but does including JWT in custom widgets expose it to the public?
Can someone access your widget without access?
I guess they can if they have the link...
I believe they can if they have the link to the overlay, yes
So yeah I guess they would expose it publically
that's why maybe it's safer to use jebaited
I mean its the same thing... That token is just as easily accessed.
inside a widget you can use the apikey apiToken of the overlay (unless that endpoint does not support it for whatever the reason)
It's not, with jebaited you can generate specific token for that job.
That is the only difference I can see.
Yeah, but that token is still exposed... So if someone has it, they can use it for that job, right? For example, if the token has access to "say message", then if they get that token, they have access to force the bot to say something with that token correct?
Are you sure its called apikey I am not sure what you are referring to.
I think the main concern is that one gives someone access to posting messages and the other one gives full control of your account basically
at least that's how I see it
That is super valid
but again, coding is not my area π
apiToken*. You receive a special token tied to the overlay/widget in the onWidgetLoad event, that you can use to call the API
inside widgets you should use it, not jwt or oauth
That appears to be failing authorized for https://api.streamelements.com/kappa/v2/bot/{channel} and https://api.streamelements.com/kappa/v2/bot/{channel}/say
Hi, I want to extend a viewer queue custom widget code I found on here to allow anyone to enter queue (to extend for facebook and external live streams). I think the easiest method would be for me to create a basic webpage where user can submit their name and I feed it to the custom widget through an API. I spent some time looking through documentation this morning but still confused. Can someone point me in the right direction. Do I need to apply for SE API access and then use something like websocket to connect? Or is there an easier way to do it that i'm missing? Thanks in advance.
Seems a protected endpoint then (btw fyi, you need to use apikey not Bearer in the call). I guess that explains the jebaited stuff
apiToken = obj.detail.channel.apiToken;
channel = obj.detail.channel.id;
const seAPIFetch = await fetch(`https://api.streamelements.com/kappa/v2/bot/${channel}/say`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': `apikey ${apiToken}`
},
body: JSON.stringify({
'message': 'test'
})
})
console.log(seAPIFetch);
});```
>> `seAPIFetch.status` returns `403`
must be protected, some of the endpoints are for the overlay token. It's good to know π
Ugh, this kinda sucks... Cause it would be amazing to be able to keep it self contained... Lets steps to tell people what to do.
But I gues jebaited is the way to go.
Can I get some help with making a join command where people can type !join and it will be added to a list and a mod/streamer can do !list and see everyone who joined?
I think warp worlds's multi-queue can also be used in a non-gaming context:
https://warp.world/v1/multi-queue
Hello, does anyone know how long does an API Access Application submission takes? I've applied for one last week and haven't received any answer yet. Also is it possible to send custom merch alerts through the api?
So I should be able to just:
event: {
name: "SenderName",
message: "Sender Message"
}
})```
all my ground controlsummary are gone and they wont comeback
need help
been gone fore a while even go on your website everythings gone
I've found this for you #dev-chat message
discord.com links are allowed, why discordapp.com are not?
Fixed. Shouldn't be a jackwad now.
Is there anything that I can do to ensure a smooth review when the devs find time to review my app? ... What are the devs looking for in the review?
I would also love to know this before I submit my application, particularly if Dev review is still taking a while and follow-up reviews are likely to take even longer.
I believe the event payload has to take roughly the expected shape. (so, include a listener, and then a detail object with your custom info.) I've also had trouble getting to work when sending from the overlay itself (via SE_API.sendMessage('event:test')). Not sure if there is a permissions error there, or what the problem is. I'm currently looking at other ways to achieve the effect, and with support for "real" events as well. Will post back here if/when I get something working.
hello
[3:01 PM]
i have no activity feed for like the a month friend just sub to me and it didnt work
[3:01 PM]
reset everything nothings working
[3:02 PM]
still saying nothings theres
[3:02 PM]
added se live to obs still nothing fix
[3:02 PM]
help
You want #helpdesk-selive for that but, if everything is set up correctly, it can still take some time for alerts to process. If that's it, just give it like 10 minutes.
no everything is gone from my stream stuff @left rampart
no alerts from the the whole year
That's still not something we can help with in this channel. Most of us are 3rd-party developers who have no control over StreamElements itself. I see you've also asked in #helpdesk-twitch very recently. Give it some time, but if that doesn't work, you can always contact SE directly at https://streamelements.com/contact
ok
I've also had trouble getting to work when sending from the overlay itself (via SE_API.sendMessage('event:test')).
That won't work,sendMessageis not for that
Although checking it, and following yesterday's conversation, I've found out that you can send a bot message by using edit: this works if inside the editor, but errors outside (preview/live url)SE_API.sendMessage("bot_say", {msg: "your custom message here"}) - no token, no Jebaited, no nothing
damn that's a big news, thank you!
I believe the event payload has to take roughly the expected shape. (so, include a listener, and then a detail object with your custom info
Don't include adetailobject, that's generated internally when they dispatch aCustomEventobject. If what you send has a detail key, you'll end withdetail.detail. Just:
socket.emit('event:test', {
listener: 'yourListenerName',
event: {
whateverParam: whateverValue
},
});
Is there a list of the various available messages, than?
welp, it works in the editor but not on the final url, popping 403 there again. Not sure if intended or not but back to Jebaited it seems
what does this mean?
what's on the docs basically
that using that function does send a bot message if within the editor, but errors if outside of it, for whatever the reason - 403 = forbidden call
gotcha sendMessage is what the overlay uses to communicate, so you're able to send the post request but SE doesn't allow that anyway
it does when the API call is sent from the editor though, but welp, useless anyway
The custom widget markdown doc? I havenβt found anything but a single reference to event:test in example code.
Because event:test has nothing to do with SE_API object as I said
event:test only makes sense in regards to websockets. If you want to dispatch something from an overlay, dispatch a CustomEvent object. But it won't get to the parent window or other widgets, just the widget you're dispatching it from. There is no way to send events to the parent window (that's what sendMessage does in fact, but it's limited to the list of things listed in the docs - kvstore ops, getcounter, cheerfilter, etc)
Is it possible to know through the API the loyalty points you have in a specific channel, or do you need to have access to it?
I have the token of my account but not of the channel where I want to check my points
Got it. The piece I was missing was that cheerfilter, kvstore:update, etc worked. I've only ever found references to sendMessage using undocumented message types, which lead me to believe there were no documented message types at all.
things that work are already wrapped in functions, in theory raw sendMessage has no real use right now (afaik)
Makes sense. I was only digging because the Doc also says:
The overlay's API token is also provided (via the onWidgetLoad event below) for more direct REST API calls to be used as authorization header.
So, I was trying to determine what could be done there, but I gather they mean pulling in something like Axios and manually hitting the REST API. Seems like something like SE_API.kappa.[get|post|put|delete](uri, params); would be more secure. That way, there's no need to actually give us a token that we could potentially pipe off to an external DB.
Then again, those tokens probably only work when sent from streamelements.com... still, would be nice.
Is there a way to make a custom command that is a lottery where users have to type something to join it for a chance to win being a streamers partner for a game?
Like the !sraffle but without using loyalty
Anyone know how to extend a setTimeout after it has already started?
something like this:
const handler = () => {
if(some_condition) {
setTimeout(handler, 250)
return;
}
/* other code */
};
setTimeout(handler, 250);
Add me back, it's TND lol
You can use this endpoint (no authentication needed):
https://api.streamelements.com/kappa/v2/points/CHANNEL_ID/USERNAME
The response will be something like this:
{
"channel": "CHANNEL_ID",
"username": "YOUR_USERNAME",
"points": YOUR_CURRENT_POINTS,
"pointsAlltime": ALL_TIME_POINTS,
"watchtime": YOUR_WATCHTIME,
"rank": YOUR_POSITION_IN_LEADERBOARD
}
Don't know if that applies to you, but you can use the giveaways, so the viewers just need to type !enter or !ticket to enter to the giveaway (you have to enable it on default commands). You can make the first ticket free and set the max ticket per user to one, so it will not use their loyalty points
Is it possible to send custom alerts/merch alerts using the api? I haven't found anything in the docs and I noticed a lot of people asking for them the previous year in this channel, not sure if there is any workaround for it? I noticed that by adding a Merchandiser Alert Box in the overlay you could emulate Merch Events, but I couldn't find any way to trigger them by an api.
that type of event would be in the webSockets and not in the API; so if you are using an overlay it would be merch-latest
Can someone tell me why ${customapi} is fetching the whole html markup when it didn't used to?
@sick pilot if you mean for json objects it doesn't filter that unfortunately.
Unless you're doing that on the other end of the api.
It used to be a simple case of outputting text in a php file but now both the customapi and fetchurl commands output the whole html markup
take it away pjonp
that would be on the API endpoint @sick pilot; the commands are expecting a text response
so if the server is responidng with the full PHP ... try opening that link in a Chrome tab π€
π€ .... i saw this link earlier
You can't have. I haven't posted it anywhere.
You posted it in #helpdesk-twitch but bot yeeted it
Ohhh right, yeah I think I posted the full command I was trying to use including the URL, my bad.
is it possible to add regular html form fields to the custom widget and have them displayed off canvas in the overlay but then make them visible by displaying the widget in an iframe or something on a stand alone webpage to allow people off twitch to enter their details to interact with the widget? I am building on the task queue widget pjonp created some time ago and want to find a way to allow facebook and youtube viewers to join. thanks in advance
π€ that is odd...
Yeah, been trying to figure it out all night π
anyone here
?
can i like ask u people to sub is thAT legal
@floral hinge might be legal but can't say if it's against the rules or not.
ok
Another thing that's odd as well is that it outputs a Title which isn't present on the page.
WAIT, CLOUDFLARE PERHAPS.
defiantly against the rules.
Read and follow our server rules:
- We do not tolerate toxicity! Treat the community team, staff, and all members with respect.
- No advertisement or channel promotion, anywhere on the server.
- No NSFW/NSFL
- No unsolicited DMs or friend requests to server members
Make sure to read the #welcome in any server you join.
@compact schooner would be difficult AF given there's no real way to listen to FB message/comments since there's no bot for them.
wait... which task widget π ... was it connected to google Sheets?
so I am looking for a way to just interact with it directly
through a webform in widget or webform externally that would then talk to the API?
the one someone gave me is not
but if there is one that is
pleeeeeeaaaaaase share
the one someone linked for me was a queue modified to display the user and the task next to them
@elfin arch it was Cloudflare. I can't believe I was trying to figure that out since the bot yeeted my comment last night and now it just came to me when asking about it.
I guess don't proxy your APIs through Cloudflare haha
oh ya ya; that was a quick code. um.. that is a good idea for a queue system. Short answer is, ya, anything is possible; but it doesn't exist (to my knowledge). That's more complicated to setup
I saw above mentioned being able to talk to the widget through websockets and saw that on the API description page. is that something I would need to apply for a API access for? Or I can do it directly by just calling the API endpoint?
was it a cloudflare/proxy thing? it looked good on my end (but looking at the Chrome data)
sorry i'm very new to this coding but not coding in general, trying to wrap my head around what's possible
good to know. thank you π
so form fields within the widget won't work? or noone knows? Should I bother trying in other words?
it is a complicated setup to get that working; so yes you could.
Yep, it looks like any servers using Cloudflare's DNS will cause that issue. I guess it goes through Cloudflare's security and that's what's being displayed, or at least messes up the API call.
and one last question, the custom widgets responding to chat commands as it is now, would it respond to youtube chat commands the same way? Or that functionality is for twitch only? the !join etc
For custom coded widgets; yes; it should respond the same way.
but... note that youTube chat is delayed
Like stupid bad.
βοΈ yT is API pings and you get a group of messages together. they are not live
i'll see how bad the delay is. it is for an ADHD coworking streams. if its under a couple of minutes might not be too bad and I can then direct peeps off facebook to youtube to participate
oh lol, my current stream is about half a minute delayed, a few seconds is nothing
thanks so much for the ideas
if the commands don't work i will pop back in for some more help
you guys rock
thanks! great demo. I am using restream to start branching out to other platforms. my obs to twitch chat delay is even longer than that
i use stand alone chats for that reason
but that gave me heaps of ideas and mojo to go on with my project. I wasn't sure if I wanted to get bogged down with the custom API calls this early in the birth of the idea cycle
thanks again for your input and pjonp for the qeueu code!
is there a way i can change the bank info i put onto the tipping settings? i got a new bank account and want the withdrawal to go to the new one
Is there a resource that shows which CSS classes various widget contain? I'm trying to add padding to my chatbox, but I have no idea what selectors to target.
The default chatbox is very limited, the recommendation is that you get a custom chatbox from #widget-share. There are many of them in there and you can edit the code easily
@somber patrol ‡οΈ
Please contact us via email for support with SE.Pay. You can use our contact form here: https://streamelements.com/contact Thank you.
I found it using .twitch-chat, but I hear you. I had no idea that existed, so I'll take a deeper look there and see if anything looks interesting - thanks!
Hi, recently after the rust twitch drops, I get so many non italian viewers, and I would like to know if there's something to add in my stream for a live-translate subtitles
Hey, i recently start to work with the ST API in Kotlin. Get Request works perfectly but if i try to push a data change request i run into some problems with the OkHttpClient. The docs tell me to insert null into the .put() method inside the Request Builder, but that throws a IllegalArgumentException. Anyone knows what to import there? (Cant figure it out from the docs from OkHttp)
i'm not sure you are in the correct server.... this is for Stream Elements
I know, but if the docs from StreamElements API (ST API) tells me to do something that isnt working, i thought i can ask here
which endpoint are you going for?
I request to /kappa/v2 and try to change the user points
let me check; the header in the channel.
Just to be clear, i dont use OAuth2 for open connections or variable usage.
I try single calls like following (https://dev.streamelements.com/docs/kappa/b3A6NTM5NzE3OA-channel-user-amount)
val client = OkHttpClient()
val request = Request.Builder()
.url("https://api.streamelements.com/kappa/v2/points/<channel>/$user/$points")
.put(null) // <--- Exception here
.addHeader("Content-Type", "application/json")
.addHeader("Accept", "")
.addHeader("Authorization", "$token")
.build()```
Yeah i know, just cut that out for sharing here
Mhm, saw that too... Problem -> Dont know what body exactly is. Its wanting a MediaType and Content, but the StreamElements API dont want extra parameters like content there. Leaving it out lead to 202 errors
It is very similar to Java (its even compatible with it), but with way better style, formatting, features, performance, and more
i'm shooting blind here; this is foreign code to me and i've never got into these endpoints
but is see this
...i got nothing π€£
Where you find this? I can try it out as Content part, but i never saw this inside the docs
Yeah, im on single user (where is no body part), but maybe it works anyways. Just filtering the client docs for a correct media type atm. I will send feedback, if i find smt
.url("https://api.streamelements.com/kappa/v2/points/<channel>/$user/$points") <channel> ?
i donno the markdown for this language; so unsure if that is valid or not
I just replace my channel name with this to not advertise
are you using the ID ###'s when you do that and not text
π ... common mistake
Did it too at the beginning, but i test everything in the demo web requester on the docs and manage to get everything right. Than i copied the sample code from underneath and the error appears
have you tried an empty .put() ?
You need to input anything. Nothing is not possible (and null leads to an error)
Leaving it out leads to an 404 error (on api side)
I'll try an other client requester with better docs to understand what is needed. Maybe that will solve the issue
ya. sorry; i don't know Kotlin, ...what you have looks correct
No problem, you tried to help. That counts 
Solve the issue π
For anyone here running into the same issue, you can simply use Ktor Client Requests instead of OkHttpClient. There you can setup everything correctly and leave out the body, if there is no need
a PUT with no body 
hey, its there any way to send a chat message via a streamelements widget?
Hello, is there a way to create sound commands on stream elements?
You can use https://jebaited.net (which is a third party service from SE staff) to create a token to add to your widget.
If you don't want to use jebaited.net, you will need to use your JWT and that is not the safest thing to keep on your widget and use the endpoint from here: https://dev.streamelements.com/docs/kappa/b3A6NTM5NzEyNQ-channel-say
You can use the Streamelements store from loyalty page and create your items in there:
https://streamelements.com/dashboard/store/items
and how does it works?
Thank you! Any videos on how to actually set it up?
How to send chat messages using custom widgets (jebaited method):
- Go to jebaited.net website
- Authorize the application to connect to your Streamelements
- Go to API tokens
- Where it says "Scopes", click on it and select botMsg an click on "Add Token"
- Your token will appear right below
- Click on botMsg next to your token and it will popup a URL for you. You can use that URL to send a message. Using that URL you can make an API call for that, like the example below:
const jebaitedToken = '0123456789abcdef'
const message = 'YOUR MESSAGE HERE'
const encodedMessage = encodeURIComponent(message)
fetch(`https://api.jebaited.net/botMsg/${jebaitedToken}/${encodedMessage}`)
There are some in Streamelements Youtube channel:
https://www.youtube.com/watch?v=hoNYfLw1Gg4 (from 2017, but it is a quick video with some useful information)
https://www.youtube.com/watch?v=BXGMjHqwVFE (from 2018, explaining the loyalty system, which is where the store placed)
https://www.youtube.com/watch?v=mBDY4RdoZ4A (from 2019, explaining how to use the SE store)
I'm trying to connect to the sockets but getting the "Failed to authenticate" message. I'm using the JWT from the dashboard. I can use it to get kappa/v2/users/current successfully but I can't use it against oauth2/validate ("No token found"). I see the header set correctly (authorization: OAuth eyJhbGci...) in the dev tools. I just reset the token and reattempted with no luck.
Should I be using my OAuth2 app to gen a token?
I just want something fast
I think encodeURI() should be encodeURIComponent(), as the first doesn't escape characters like / and ?, so it would break the query string
You can use the JWT, but I don't think it can be validated using the OAuth endpoint. Are you trying to connect to the websockets? Have in mind that authentication for JWT is socket.emit('authenticate', {method: 'jwt', token: jwt});
(also, socket.io is a little behind, it's 2.x iirc)
Ah, the method needed to be "jwt"
Thanks
thank you!
Yeah, thatβs right! I knew there was an option just for part of the URL but I didnβt remember exactly the function. Thanks! encodeURI() should be used to the entire URL. Fixed
Hi, i dont know where to post this, but what do I put in the accept so that I am allowed to do the operation? All in all, i wanna a streamelements widget that can add points to users
Hey developers, is there any chance we can get a widget for loyalty point redemption cooldowns? Right now it simply informs a chatter that the item is on cooldown, but informing them how long their personal cooldown or the global cooldown is would be incredibly helpful.
I've seen most of my viewers request it, as they sometimes just have to guess and it ends up filling up chat unnecessarily.
I was directed here from another support post I made in #helpdesk-selive
for the built in commands; no.
if you wanna make one; yes π
Hello! Can anyone help me get animated facecam overlay from "Connection Animated Streaming Overlays" for TROVO. I would love to change colour on it but you can see here when I want to download it from the overlay It's black not transparent around the frame. I just need the original one with transparent background. Thank you in advance.
https://cdn.streamelements.com/uploads/0505dfb4-abc9-4270-b284-5e1436813279.webm
- Token is your JWT token
- Channel is your account id
- Accept is application/json
Hi
Howdy! I'm trying to figure out if theres a way to sum 3 variables with the chat bot. I was hoping something like ${getcount <variable1> + <variable2> + <variable3>} would work, but no dice.
In the past I used a custom API for such things:
$(customapi.http://api.mathjs.org/v4/?expr=${getcount variable1}%2B${getcount variable2}%2B${getcount variable3})
Here is the documentation for it:
https://api.mathjs.org/
hmm
How do I get the JWT Token?
huh.. i think that actually worked
In case you are confused by the syntax:
%2B is URL encoding for +.
yea i figured π
whats minus?
afaik - can be used without encoding it
https://streamelements.com/dashboard/account/channels
Click on "show secrets". Your JWT is like your password, so keep it safe!
Thank you π
Now I got a bad request error so maybe my Channel ID is wrong?
"message": ""channel" with value "140233911" fails to match the required pattern: /^[0-9a-fA-F]{24}$/"
Channel is on the same page, as I said before it is your account ID
JWT is 24 characters long......
The websocket seems to disconnect often. Is that an issue others have or could it just be my network (which seems to have issues with some sockets)?
What WebSocket are you referring to?
hello can i use adobe fonts directly to the stream elements
thanks for the answer in advance
Hello, how can I send a merch alert to a Merchandise Alert Box using socket emit? If I try to emulate one from the overlay I receive the content by listening to the socket on my server but I haven't found any docs regarding the possibility to send the event as well:
{
listener: 'merch-latest',
event: {
type: 'merch',
name: 'Rasia',
amount: 25,
count: 25,
items: [ [Object], [Object], [Object], [Object], [Object] ],
tier: '1000',
month: 'August',
isTest: true
}
}
nvm, it worked like this:
this.socket.emit('event:test', {
clientId: clientid,
channelId: channelid,
listener: 'merch-latest',
event: {
type: 'merch',
name: 'Alexander',
items: [
{ name: 'Shirt', price: 44, quantity: 3 },
{ name: 'Hat', price: 28, quantity: 1 },
{ name: 'Mug', price: 3, quantity: 1 },
{ name: 'Hoodie', price: 4, quantity: 3 },
{ name: 'Protein powder', price: 28, quantity: 3 }
],
isTest: false
}
});
Now I was wondering if I can pass an image as well? like the image of a product to replace that flying drone animation for merch-alerts?
π
kinda look likes you are doing a middleware thing?. your server get's the merch event; then process it it. then you could add an image to the items' Objects { name: 'Shirt', price: 44, quantity: 3 img: '....'},; then send it back to SE (i'd use your own listener, like 'myMerch'). you would need a custom widget to do your CSS fun and use that img from the Object or all of them as you queue the purchase. π€£ that's my thoughts
So a custom widget would be my best bet, I'll look into it, thanks a lot!
ya; you will 100% need a custom widget to send your Image over... π€ i'm gonna ask about that though. i don't think the Image/Preview is sent in the merch events but IMO should be.
i'd use your own listener, like 'myMerch'
if they do that, alert won't queue with the rest of alerts (I'm having Vietnam flashbacks)
ohhh. ya. the main queue thing.... that's i think when i gave up
basically only the events with a predefined listener are sent to the queue, so depending on what you want to achieve a custom listener is not the best option
ya. i remembering that now. i was working on a thing, scraped it. and that was why.
ohhh. ya. the main queue thing.... that's i think when i gave up
Made me laugh. π
do you also wanna join the PTSD group? π
Hey. Does anyone know the easiest way to make an alert trigger via api?
I want to make a competition that runs on a backend, and for it to push updates to the stream in alerts
Hi, I recently noticed that if a twitch viewer got gifted a sub in the last month and renews it himself SE will not take note of it.
I can't find it in the <data>-Element of a custom widget either. The sub doesnβt appear in the session data nor the acivity feed. I just got lucky and saw it in chat.
Does SE not have access to that data? I would like to include that into some streaming tools. It would be kind of sad if the viewer gets excluded from alerts and other widgets just because they renew a gifted sub.
so i looked through the possible event values that can be listened to at github and can't find that type of event their either.
@fathom vector for external services to notice it, the sub has to share it in chat
this is always true btw not just for SE
but twitch shared it automatically in chat.
that's not the same thing
resubs are only ever alerted for if manually shared by the subscriber
if the resub appears in Twitch chat, then Twitch is sending it. In this case, it's a giftpaidupgrade event
oh ok thank you sorry
Whether or not SE takes it into account... that I don't know
yeah but theres no alert for that
well, it's a resub, that's on SE
the reasoning being probably that this would get a single sub more than one alert
(one for that message, and one later when shared by the subscriber)
what do you mean by that? π
it doesn't work that way. Not that it matters, resub events are most cases already duplicated by Twitch because of their weird sub anniversary stuff
I've never seen duplicated events
that it's a SE issue if they're not handling it
what really? most people can send a resub message twice in the same month
it's just that you can choose to wait to share until right before your sub anniversary and then shortly after get a new resub to share
i think this one is correct
so you share it twice for a single resub, aka duplication, since you get both events from Twitch
that's the only way I've been able to do that
no, you share once for each sub
it's just that you wait to share one sub and share the next one immediately
nope, I'm telling you you can make it to share twice the same resub. I mean, it happens everyday multiple times in every stream
with the same amount of months?
because I've never seen that
or at least not noticed
in any case, eventing bugs aside, I'm sure alert services (streamlabs does the same) ignoring the upgraded-from-gift/upgraded-from-prime/paid-gift-forward messages is to reduce instances of multiple alerts for the same event
ah i understand what you mean now: for example i am a x3 sub at a channel and decide to prolong my sub it will appear as an event but I still could reveal that I did that action via chat?
which is counted as the next event
yes if you are a sub for another month you'll get prompted by twitch to share that on your sub anniversary
I honestly think they don't handle them just because. For those events you don't get to share a message anyway iirc
would make sense
none of the channels i sub to and haven't done that with for a while are online rn so I can't screenshot it but it's like 'It's your x month sub anniverary!' and it asks to share that with a message and the option of sharing how many months you were subbed in a row
that event gets alerted on
along with the initial sub and gifted subs of course
just saying, I do handle those events in my developments and has nothing to do with duplication. Also, iirc, sub train widget does take them into account
what you do with custom stuff is up to you, I dunno about the sub train, I'm just talking about the standard alerts
afaik all of them only alert on shared resubs and first-time subs
(and gifts)
do you know where i can see if SE is accessing it?
SE sub train widget, nothing custom.
I don't use that so I know literally nothing about it
in fact, I don't recall if it's the sub train or the sub counter, but one of them counts upgrades while the other doesn't. I've seen them desync over that stuff
just checked. There is a variation for "Paid Upgrade", that's what you want to use (not tested, but they do process those events)
thank you, i found that variation too now but i can't see how it is listed within the data element that i could include it into other widgets π
ah yeah, I forgot what you originally said hahaha That I don't know, I would expect those events to be included as resubs, but don't know if it's the case or not
worst case scenario you can use an external lib to get them from Twitch
thank you for all your help :)
Hi guys, i just startet to use the SE Widget for social media banenr by Benno and want to add some more (like tiktok, hover, etc) I made it work with the Informations in the overlay but the new added picture wont show up. Can someone help?
Does anyone know if there's supposed to be a data set for data["cheer-week"]["amount"] for use in custom coded widgets?
It exists for follows and subs, but not for cheer
How many socials do you have in the rotation?
Hey everyone,
I'm new to this server searching for a little support with my Chatbot. I'm trying to realize a command !dance which should either work with or without a tagged user.
I know, that I could pick a random user, if nobody is tagged. But instead I want to write a completely different text in both cases.
!dance -> xxx dances through the room!
!dance @yyy -> xxx grabs yyy and dances around the room.
In a programming language I would realize it using a simple if/else statement. Is anything similar possible within the chatbot?
Sorry in advance if the question already has been asked earlier. I could not find a proper result so far.
Thanks! π
I accidently reset my recent followers/subs for widgets. Is there a way to get that back so that Credit Roll - by Grot widet will actually display something?
Hey, does anyone have code for a random number generator widget that animates in an odometer JS style?
I can probably put it together myself if needed, but wanted to see if anyone has something similar already
Not possible with Streamelements bot, you can only have one word to substitute the @yyy in your example. We had a similar question some time ago and the suggestion was to redefine the sentence so it would work on both ways:
#helpdesk-twitch message
anyone who knows how to code this NerdOrDie widget/hype train thingy to display a bits icon PNG instead of an X next to the amount of bits and the sub badge next to sub name on the right?
Hi there
I was wondering if you could help me here. I want to share an overlay with a client -- I'm a designer and I created a custom chat for a client and I would like to know how can I share it without needing the editor permission (I have 50+ clients and that's very counterproductive). Thank you!
@sleek valve ‡οΈ
One-Click Overlay Sharing Application
Use this link to submit an application: https://strms.net/shareoverlay_request
Hi I had made a bunch of overlays and other content for my twitch, recently I logged into my stream elements and now their all gone. I was wondering if anyone would know a means of regaining or recovering them
@surreal folio did you have a trovo/FB/YouTube account attached to it?
@hardy walrus i had my twitch account attached, like signed in with twitch. It was there for like a week and then disappeared. I still have the link to it but the actual overlays dont show up and the website link doesnt load
Please provide your account ID found at the top of this page: https://streamelements.com/dashboard/account/channels This ID is public info and safe to share here.
@hardy walrus They just appeared, wtf ima make a duplicate to be safe next time
Β―\_(γ)_/Β―
Hi good morning anyone else having audio issues in stream Labs?? Last night on my stream my audio just went Atari mode on me.
You'd wanna ask them about that.
Hi! I've recently asked a question about buying Se store items from http, I was told to check out the websocket, but I didn't really found anything helpful, I checked socket.emit(event:test) but I want my event to appear in the activity feed, is there any way to do this?
Tysm π€ already sent!
scopes store:read and store:write are not working rn
I have a question, I am trying to make a custom widget spin wheel that users can win loyalty points from but I cant find any info or help on how to access loyalty point inside the widget javascript, can anyone help me? Thanks
hey there i got a problem where i try and edit a overlay i chosen and i come across with a error message saying 'Overlay does not exist'
Try to do a logout and login again to check if that solves the issue. Close all windows from your browser and try again:
https://streamelements.com/logout
not worked
@severe shell
thats the error
has any one got the Current Steam Game Widget working i have done want its says but it just say loading and no info comes up
What do you have on your overlay list? Can you send a screenshot?
hi guys. i'm from Malaysia. joined here for quite a while but i never chat anything before. apologize if i'm in the wrong section.
but i'm here to find custom codes for facebook livestream custom 'event list' widget. (i'm trying to create my own simple 'event list' design through HTML/CSS/JS/FIELD/DATA)
please note:
i've only started learning these coding few days ago π so, i only know how to do basic containers and texts inside them.
what i'm after:
- JS section codes
- FIELD section codes
- DATA section codes
but, if you guys can provide all sections also would be great! thank you so much
i'm looking for the codes for this.. (but for facebook)
the image is showing codes for YouTube Subscribers.
i'm look for codes for
Facebook Follower/VideoShare/VideoLike/StarDonation
Hey seantrace, that's good you are starting on that! My suggestion is that you have a look at #widget-share and import some of the widgets from there to your own Streamelements so you can check all the code it is used. One more thing is to have a look at the Overlay Editor documentation here: https://github.com/StreamElements/widgets/blob/master/CustomCode.md
It will provide you some useful things you can use on your own code.
Most of the widgets are usually for Twitch (because it is more popular), but many of them will work fine on Facebook, Trovo, etc etc. Maybe you will need to tweak one or other part to get data from Facebook (so you can check the overlay editor documention for that) but most of the things will be good.
Unfortunately the API used for that widget does not seem to be working. And the dev who created the widget informed he hasn't managed to check for a fix as they have no time at the moment
ok thanks for the reply i will keep checking
can help me for sign in my streamelement
Okay i will check them all out. thank you so much for your help! appreciate it
When I go to add an overlay to OBS, it won't work. I go to stream elements, select my overlay, hit save, copy the URL, and then paste it in the browser section of OBS. Although, when I click ok, nothing happens. What is wrong?
@spare basin ‡οΈ
To add your overlays to OBS, add a new browser source in your scene. Paste your overlay URL in the browser source properties, set the dimensions to 1920x1080 (unless you changed them on the website) and check Shutdown source when not visible as shown in this GIF: https://imgur.com/a/2JhJD0S
Do we have access in custom widgets to the new Twitch /announce feature text?
Considering we don't have the ability to use within chat yet I doubt it.
And I mean that from using the bot to announce.
That's what I was figuring. I have an overlay that served a similar purpose and was hoping I could combine the two.
Someday... π
in order to send chat's messages you can use this code here https://discordapp.com/channels/141203863863558144/259680142459142144/958879835319566396
as far as I know, you just need to put /announce or .announce at the start of the message
I'm looking for receiving in a custom widget, not sending.
can't you fetch messages starting with /announce?
Hello, is there a way to detect when a overlay gets unloaded?
Is there a way to access loyalty points within a widget through javascript?
Hello @static wigeon I am a bit angry, I have asked you, told you to take away "the extra owner" Sparsetoast on my account. Nothing happens!!! Take away this from my account, if you can not do that so close my whole account at Streamelements right now. I do not want it on my account.
I really like SE so I will start a new account if you erase the present.
@mortal knot
@onyx mural
hi! could you please send us an email at support@streamelements.com clarifying what you're referring to? we'd love to help!
${time.TIMEZONE} command variable is not accurate/doesnt work for most Timezones
Hello!
I'm having an issue where alerts don't trigger for certain users. Works for everyone else, but some viewers can't seem to trigger the alert no matter what they do. Has been an ongoing issue for over a year. Any chance you know what may cause this?
@round turtle Got usernames I could look at?
TitusBlackwell / toxiCHORG just a couple that dont seem to be working
can someone help me with my problom
Issue appears to have been sorted. It appears the Revenue - Tipping moderation settings were also affected all alerts. Turned off the moderation for tips and it fixed it!
Figured as much
Hello, I'm not seeing more than 3 widgets in the widgets gallery. Is this by design? Every piece of information I've found about SE says that there are a whole bunch
@cosmic zenith unfortunately that's the case atm unless you're specifically using twitch.
Okay, so that's normal. That's fine, I just wanted to know if there was something wrong, or if there was a pay tier that was assumed.
I only set it up with FB because I wanted to screw around with it
Ask away!
I talked to the developer and we were able to find the issue and fix it. We sent it to approval and it should take a few days to be updated on #widget-share channel. But I can send you the version we have, just send me a DM if you don't want to wait.
Which countdown are you using? And what is your OBS version?
hi i am trrying to disconnect my account from youtube so i can stream on twitch, and no matter how many times i disconnect from youtube it sends me back to it even after connecting to twitch
Are you talking about the website or in OBS?
in obs
are you using SE.Live? click the StreamElements menu and logout
StreamElements menu, on top of OBS > Logout > Login
Ive done that, my account from youtube has been disconnected, and my twitch has been connected. But this keeps pooping up.
i'm not familiar enough with OBS. i was thinking that should work; give it a try in #helpdesk-selive or #helpdesk-twitch
thank you
May be the last time you have use Stream Elements you are still connected with Twitch, try to disconnect and connect YouTube on your Web Browser and in OBS don't use link an account use key of streaming for every platform streaming you use.
Hey guys,
is there a guide on how to set up an overlay that I can simply share with someone through a link? (They open the link and get into the editor to set it up for themselves and use it on their own account). Or a question before that - is it even possible for me to set something like that up?
Do not share that link
@hardy walrus what was it? Clicked on the upper streamelements one, just showed a black screen
Explain why
For security reasons.
Ok
One-Click Overlay Sharing Application
Use this link to submit an application: https://strms.net/shareoverlay_request
You have to either get an invite to copy it yourself or give them the widget codes if entirely custom widgets.
So basically get invited as an Editor and then copy it onto their profile
Yes
Right, appreciate it
Become a CodeGuru! form is not up to date in these case. Note Jsfiddle deleted and forked
I'm not sure if I understood what you meant, but the form is correct and there is a "JSFiddle Code Link" field so you can put the link of the widget you want to submit
Hello everyone, I'm using HypeBoss Alert in StreamElements overlays, I want to use "Increasing HP" game mode, but I can't find a way to change the value of the HP increase. I notice that the boss gain 10% HP more than the previous one, but I want him to increase 25% HP more than the previous. Is there a way to do that, even if I have to code over it, it's not a problem for me. Thanks in advance π
There is no option for that. Also, the code for it does not seem to be publicly available.
You would need to create your own widget for that from scratch, if I'm not mistaken
Okay, thanks for your time, I think I will edit the boss's HP each time one he's defeated, it's will be easier ^^
10 min and its version 22.3.5.805
Can any developer help me with a question?
Hello, how can i reliably get the follower count of a streamer in my overlay?
i think you can just ask away
Is it possible to increase the limit for the GET and PUT requests for kvstore(SE_API.store), and if so what's the procedure?
Please do ping me if you answer me
Hi
Anyone knows how to execute certain events in the JS if the overlay is reloaded?
I want the overlay to turn black for a few seconds when it reloads. I already have everything, I just need something like "if overlay reloads then execute{code I already have}".
why is se pay only in us?
@winter sparrow ‡οΈ
SE.PAY is available for streamers who are at least 18 years old, with bank account under their name in one of the following countries, and have at least 101 followers (Twitch/Trovo/Facebook) / 101 subscribers (YouTube):
Austria, Belgium, Czech Republic, Denmark, Finland, France, Germany, Ireland, Italy, Netherlands, Poland, Portugal, Slovakia, Spain, Sweden, Switzerland, United Kingdom, United States.
If you meet these criteria and donβt see SE.Pay, let us know.
For information on SE.Pay payment methods, their fees, and settlement times see https://streamelements.com/dashboard/tipping/fees
And you don't meet any of those requirements.
can anyone tell me how variation works?
I have setup a custom widget for follow alert that renders a simple CSS of my choice.
after that I created variations which uses different images.
How does the chances work?
and what about the original one?
what is:
amount
chance
and how does the selection work
Figured it out. Just no condition; this will execute it once when the overlay is reloaded.
const HTML_top = document.querySelector('#top');
const HTML_msg = document.querySelector('#msg');
const HTML_right = document.querySelector('#right');
//no condition here
HTML_top.style.opacity = "1";
HTML_msg.style.opacity = "1";
HTML_msg.style.left = "20px";
HTML_right.style.opacity = "1";
setTimeout(() => {
HTML_top.style.opacity = "0";
HTML_msg.style.opacity = "0";
HTML_msg.style.left = "1920px";
HTML_right.style.opacity = "0";
}, 10000);```
Hello! Hope everyone have a great weekend. I have a small question. Is there a way to delay the output of a custom command in chat bot?
@cunning grail that'll do it after 10 seconds though, but you can also use the onWidgetLoad event
Nah it shows it and then hides it after 10 seconds because it is hidden at the beginning (CSS) and then shown when the script starts, and hidden again after 10 seconds
yes you flipped it around, showing after 10 seconds
but I meant you can do it instantly on load by using js window.addEventListener('onWidgetLoad', function (obj) { // stuff to do here });
π @hot trout is 100% correct
Yeah thanks. I mean, I want it to show on reload and hide it after 10 seconds again. My code shows it and hides it after 10 seconds; there was just the on reload thing missing
ah if the 10 seconds is part of your concept then sure, setTimeout is correct
whatcha making @cunning grail ?
Overlay turns black when reloading because otherwise it would look cursed. My overlay is a sidebar with text and a topbar with credits rolls.
Now live (German), you can just take a look at the overlay
Hi, I'm making a widget for a friend streamer that will interact with loyalty points. Best way for what i've understood is to make a SE API application request, but the thing is that it's not an a "real" app, it's just a SE widget. Does my request still works ? Should i apply under my account or my friend's account ?
Hi guys I hope this is the right channel for this, does anybody know how to get/make a widget like the ones in the pictures that shows the latest cheerer, subscriber, tipper, sub count (I would love to be able to set a sub goal too), channel picture, and a hype train counter? Iβve been looking online so much but they always have something missing. I would love it if it could include the alerts too so the themes would match instead of having a separate ugly alert box. If I can even find a sample code (I assume these widgets are made with html codes) I can work on customizing it further. I would appreciate any help. Sorry for the long message β€οΈ
If you are just doing it for a few friends that you can handle it, you don't need to apply for that. The application is just for oAuth2 credentials. In that case you could use JWT token, instead.
Or your friend can connect to jebaited.net website, which they can connect their SE account and have the channel points with a token, and in case the token gets leaked, you can revoke it and generate a new one (safer than using JWT). I posted some instructions on how to use jebaited.net website, it was for botMsg, but you can use almost the same steps for addPoints feature: #dev-chat message
However, if you still want to apply for oAuth2 credentials, you go for it using your own account. Your friend will connect their account to your application once you when you have it.
Nope, not using the chat bot. If you had a server that were able to respond to bot requests, you could configure that way, but SE bot will always try to reply as quickly as possible
When using the Time API here: <#helpdesk-twitch message>, if the timezone is set to "Australia/Brisbane" then the short timezone name is GMT+10 instead of the expected AEST. The long timezone name still shows Australian Eastern Standard Time as expected. When using "America/New_York" the short and long timezone name show EST and Eastern Standard Time as expected.
hi nned help with soemthing
Latest cheerer, subscriber, tipper, sub count and sub goal you can get it directly from Streamelements Overlay Editor default widgets, just need to click on + symbol and select what you want.
Channel picture you can get on this endpoint: https://api.streamelements.com/kappa/v2/channels/<channel_name>. Key "avatar" will give you the link
Regarding the hype train, I believe that will need the authentication from Twitch, don't know if there is a way to have it without authentication (using documented information)
This is how Javascript handles date format, it is a pain... That's pjonp's API, which is written in Javascript.
Anything outside United States and Canada will show the GMT+-<number> for short parameter
Hey so I need a developer to help merge my setup to a slider on my layout.
All the stuff on the right to the left with my slider addon.
Can anyone help on this with me? I have no experience.
Here's the slider.
Oh true! I forgot about that, thank you π
I'm trying to do a bit more advanced stuff with my chat commands using regex but I'm having some issues.
Is it possible for the bot to reply to a command only when the passed argument is between 2 numbers?
Like if the limit is 1 to 10 and the user types "!test 5", the bot replies.
But if the user types "!test 16" the bot does not reply (or reply something different).
DM me, lets talk about what you need done
@short trout not really; for a small range of numbers you could use or operators (like 1|2|3|4|etc) but that gets unwieldy real fast
regexp is a string processing function that doesn't really do numbers, so you can only do checks on numbers that involve the characters as written
in the case of 1-10 you could use [1-9]|10 too
I get that one working in the regexp field but I can't get it working in combination with a !command.
So this isnt java related but hope its okay to ask
So im learning to code right now and im on CSS flexbox's, Why would align-center squish a box, without it it fills the container but why would it squish, just trying to understand and its racking my brain
header .follow-btn {
display: flex;
align-items: center;
margin: 0 0 0 auto;
}
With: http://thecynicalkitty.com/s/220411165634.png
Without: http://thecynicalkitty.com/s/220411165649.png
Anyone able to help me understand, as I want to learn.
From freecodecamps lesson here: https://www.freecodecamp.org/learn/responsive-web-design/css-flexbox/use-the-align-items-property-in-the-tweet-embed
@mortal wagon are you using chrome and are you familiar with its web inspector
I find it incredibly useful to figure out exactly which of the justify/align properties you need to do what you're looking for
specifically this button
(also exists for grids)
I found the reason, Its because
align-items: center;
default value is stretch π and applying center changes that
just didnt know its default value or what was changing the size
thanks though guys
Hey, i was digging around the docs but wasnt finding anything in that regard so i'm asking here if there is any way to log or even send command edits via the API?
so instead of using the twitchchat or the webdashboard
Is there a way that alerts that SE would pop up with can be sent to Lioran Board so I can have it change something when the alert comes in?
I'm thinking of one animation that's always there then when an alert comes in, it changes to a different one
@sturdy cedar In Google Chrome make sure you're logged in to Stream Elements, open up the console and paste this in. It may take some time to run, so be patient. THIS WILL RESET THE WATCHTIME FOR ALL USERS AND THERE IS NO WAY TO UNDO / REVERSE IT:
let channelId;
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
const jwt = getCookie("se-token");
const getChannelId = () => {
return new Promise((resolve, reject) => {
fetch(`https://api.streamelements.com/kappa/v2/channels/me`,
{
"headers": {"authorization": `Bearer ${jwt}`}
}).then(resp => resp.json()).then((data) => {
channelId = data['_id'];
resolve(true);
}).catch(() => {
reject('Cannot get channelId');
});
})
};
const acceptRedemptions = () => {
fetch(`https://api.streamelements.com/kappa/v2/store/${channelId}/redemptions/search?from=2018-06-01T07:38:48.243Z&limit=100&offset=0&page=1&pending=true&searchBy=redeemer.username&sort=%7B%22updatedAt%22:-1%7D&to=2021-06-01T07:38:48.243Z`,
{
"headers": {"authorization": `Bearer ${jwt}`}
}).then(resp => resp.json()).then((data) => {
for (let i in data['docs']) {
fetch(`https://api.streamelements.com/kappa/v2/store/${channelId}/redemptions/${data['docs'][i]._id}`, {
"method": "PUT",
"body": "{\"completed\":true}",
"headers": {
"authorization": `Bearer ${jwt}`,
"content-type": "application/json;charset=UTF-8",
"accept": "application/json, text/plain, */*"
}
});
}
if (data['_total'] > 100) {
setTimeout(acceptRedemptions, 10000);
}
});
};
getChannelId().then(acceptRedemptions);
Hello, I am using the Coca chat box, I would like to know if the background can be colored with the color of the nickname of each twitch user
@gilded meteor ^^^^
Stuck in update loop. Hello I opened up StreamElements and it said it needed to update. I clicked on the update button and am now just getting the same update request everytime I open it. I tried reinstalling and it did not work Here is the update window that pops up
@pale raven ‡οΈ
Download the OBS installer from their website: https://obsproject.com
Download the SE.Live installer: https://streamelements.com/selive
Install OBS without letting it run after completion.
Install SE.Live and run after finishing (No need to check the OBS option).
Disconnect and reconnect your account in OBS Settings > Stream.
Hello, i tried getting some information using the Kappa Api, with this code in my overlay: javascript let apiKey = obj.detail.channel.apiToken let channelId = obj.detail.channel.id fetch(`https://api.streamelements.com/kappa/v2/sessions/${channelId}`, { "method": "GET", "headers": { "Content-Type": "application/json", "Authorization": `apiKey ${apiKey}` } }) .then(response => { console.log('success') console.log(response); }) .catch(err => { console.error(err); }); but i got this weird response... what am i doing wrong?
Hello i am trying to make a custom chatbox on the streamelements but doesn't know how to share it to my friend, can anyone tell me how to convert the link to strms.net? @here
Ask your friend to share access with you and then duplicate the overlay; share links are limited only to a few authorized persons.
ah, so not anyone can convert the link to strms.net?
yeah, as far as I know it's a limited feature
thank you so much for the information!
can i ask what do you mean by sharing access ?
https://streamelements.com/dashboard/account/channels
INVITE NEW MANAGER > Editor > Generate Invite Link
Then you'll need to click on that link in order to accept the invite.
After that
https://streamelements.com/dashboard/overlays?section=all
Choose the overlay you want to share > 3 Dots > Duplicate > Select your friend name > Submit
Thank you so much!! This helps a lot π
You have to add another .then after the first one
let apiKey = obj.detail.channel.apiToken
let channelId = obj.detail.channel.id
fetch(`https://api.streamelements.com/kappa/v2/sessions/${channelId}`, {
"method": "GET",
"headers": {
"Content-Type": "application/json",
"Authorization": `apiKey ${apiKey}`
}
})
.then(response => {
return response.json()
})
.then (res => {
console.log(res)
})
.catch(err => {
console.error(err);
});
ah thanks
I have just edited the code, there was one thing wrong, just fixed again
can anyone explain to me how to get my gamecapture to work on OBS?
You will find better help in #general-chat or #helpdesk-selive for that question
good morning, has the open editor button been moved somewhere else, i cant edit my widgets today
Probably a bug, I just checked and it is the same on my side for any widget. I will contact the staff to let them know
ty
Hi all, so I have an odd one for you. I recently switched my name on twitch. Now it seems that my alerts, chat on stream, and a few other small things seen to not be working. How do I fix this?
@rose sapphire Refresh.
wonderful, thank you
Did you try to log out and log in again?
yep when i test the alerts they work but not for actual alerts. also chat is not working at all.
Can you get custom bars made and use them through SE Editor ? For like bits or subs
OMG this should be sponsored, I never heard about it before and I already developed a good amount of widgets 
I don't if new GitHub issues are posted somewhere.. Here I got a new one by the way https://github.com/StreamElements/widgets/issues/34, any help or contribution is welcome!
Is there a way to catch Stream Store Perk's Approve/Deny and Refund events into a Custom Widget?
Also, is there a way to Approve/Deny and Refund reedemed Perks via API? I checked on the SE APIs docs, didn't find anything similar to what I'm looking for, not even /:channel/redemptions/ seems to be helpful.
Hello! I have a question concerning streamelement counters. Would it somehow be possible to keep track of the counters used in chat? Like some sort of command that responds with a list of all the active counter variables. It also would be enough for me to just have a list in an external source, inaccessible through twitch chat.
I have asked in #helpdesk-twitch before and got told to ask again in this channel
Could someone create and design your own goal bars and use them?
they can
Where do I start?
Im not sure how to answer that. im not sure we are on the same page lol.
to create your own, you should need to custom code it with html/css/js
I want to design and create my own goal bars if possible.
Thatβs what I want to do/need
If itβs possible, Iβm a oil rig worker and not a coder. Is there a place to find someone who I can commission to do this?
fiverr is where i normally recommend. or you can hit up places like nerd or die or vbi for pre-made stuff
No one here can do this? Just curious.
There are some goal bars in #widget-share.
You can inspect (and change) the code, after you added the (custom) widget to your overlays.
This might give you a good idea what is possible and how it is achieved (as MrBoost already said, this involves HTML, CSS, JavaScript and JSON).
Afaik there is also the option to use a regular bar widget, but apply custom CSS to it (didn't try it myself so far).
I actually have no idea what any of that means.
Lol
I assume the answer is just no? A custom bar is not achievable?
It is achievable. π
I just wanted to point out that there are already some options in #widget-share (so that you don't have to "reinvent the wheel" yourself or pay for it).
Some developers here do commisions (as MrBoost already said), I assume they will DM you with an offer or something like that.
Ohhh great! Yes, I prefer to have something super custom. So if anyone wants to dm for a commission, I would love that!
is there any call limit on jebaited.net when im using the add points api?
because i want to add points to multiple users under a short time, but not to all the users
@viral patrol ^^^^^^^
Hey, is there a way to create an animated sub goal and how do you create the "animation"
Particles?
I'm having troubles with my alerts, every time I try to make a sub and cheer alert it doesn't work and I've tried everything, please help!
Not sure if this is the right channel for this, if not please let me know.
Does anyone know if there is a plugin or some other method that will allow you to apply a chroma key to a stinger transition?
The idea being when your transition begins your current scene could shatter or dissolve to your full screen logo with a background, then the animation would reverse except when the animation reenters the frame the new scene would be the one getting keyed. Here is a simple version of what I'm describing if it will help to understand my meaning.
I could be the right person for you project, feel free to DM me with some more details!
sorry for the late reply, appreciate your help! Thank you
@heady burrow google "obs track matte"
also, it's not a development question no
also tbh that just looks like your standard stinger, not even a track matte
stingers can have transparency so you don't even need the chroma key
Actually hold 1
that is correct. but make sure you sanitize the text first with the SE_API.sanitize(
hey guys, is there any way of see if user is subscriber on the chat event listener?
yes there is, here you have a code snippet too #dev-chat message
ok, i have tried this
"badges": { "broadcaster": (user === userOptions["channelName"]), "subscriber": parseInt(data.tags.subscriber) }
but the subscriber badge is the same as the founder one?
I mean,can I use something like "if(usertate.badges.subscriber ==1)" and get the subscribers and founders??
You will need to loop over obj.detail.event.data.badges and look for type: 'subscriber'.
Code Snippet
if (badge.type == 'subscriber') {
//the user is a subscriber
}
}```
Hey all, trying to remediate the latest wave of "example .com [remove the space]" bots and thought it would be fairly easy with the regex banned phrases. It appears that im either missing something or doing something wrong though.
Regex im trying to use \b[a-zA-Z]+\s.com
In theory that should be any word plus space .com
@pine tundra Seems you've met my friend here 
hahaha absolutely have
Unfortunately gotta leave you hanging as I can't answer it 
No worries, kind of the last effort before moving on. There isnt much for documentation other than using RE2 and zero error checking so π€·ββοΈ
I put those things in my twitch banned phrases list
no reasonable person is ever going to say something like "buy followers" or "primes" so just put that in and no one can say those words
though you may want to not put primes if you're a math-themed channel
Yeah probably the simplest solution at the end of the day, would love to get to the bottom of why my regex doesnt work though as I could build it out further and not mess with regulars/subscribers/etc
Hey guys, just a quick question. Did one of you got it working to pause/play alerts via the API?
Maybe I'm missing something becuase with https://api.streamelements.com/kappa/v2/overlays/{channel}/action/{action} neither pause nor play is working. Reload works tho.
Am I using the wrong endpoint?
What is the minimum system requirements for streaming?
@thorn crag From what I was told that unfortunately is "intended" and neither of those actually exist.
Well work at least
I tried a lot in the past, but never had it working. I tried looking into the console to understand how it works when pause/play is activated, but had no success since then. I believe they just don't have an endpoint for that
That's really a shame. Wonder how ground control does it. I really don't want to install SE.live to pause via Stream Deck
Yeah, the same reason I tried to get it working via API π
Props to BarRaider btw he has made a Stream Deck plugin for everything π Maybe I'll try to reverse engineer how ground control does it. If I find something I'll get back to you guys.
Hello, I am trying to insert an information text into my stream overlay, which can be changed with a command. I had the idea to try it with a custom variable, but couldn't create a working command. does anyone have an idea?
I would listed to ChatEvents and catch !command via Custom Widget listener, then change the text into the overlay.
And how does it work?
Here you have some infos about what you're looking to do
https://github.com/StreamElements/widgets/blob/master/CustomCode.md#on-event
I would setup a event listener that catch type: message
if (obj.detail.listener == 'message' && obj.detail.event.message == '!yourcommand'){
$('#your-html-tag').text('your text'); // set text on your overlay
}
});```
Hey guys, I want to share an awesome AlertBox I made, but it uses the library ParticlesJS for some big alert variations (where the library code is locally in the JS). Is this allowed? I'm not sure so I'm asking.
Oops. @cunning grail have you tried loading it from a JS CDN?
hello i was referred here from #helpdesk-selive
i have a question about streamelements website/dashboard and commands
Here is a quote from Submitted widgets must not: of https://strms.net/codeshare
Execute JavaScript obtained from external servers. This rule doesn't affect known JS CDNs (including but not limited to jsdelivr, cdnjs, code.jquery.com)
wow thank you so much!!!
i was pulling my hair out
no problem π
just one more quick question, how can i add another word like "hello" or "hai" maybe.. (side note: i just realized with this regex i don't even need the command keyword "hey" for it to work, which is greatπ) do i do it like so?: (i?)(h+e+y+) (h+e+l+l+o) (h+a+i+) or do i need to add (i?) infront of each parentheses?
also if i dont make any sense please feel free to ask me to elaborate π
TIL. Though its kinda at odds with the docs on GitHub: https://github.com/StreamElements/widgets/blob/master/CustomCode.md#html
No, wait. I reread that βthis rule doesnβt affect known JS CDNsβ
Guessing cloudflare is okay, but your own cloudfront cdn is a no-no
are you trying to make it all into one regrex?
would that be possible? or would it just be better/easier to make a different command?
Wouldnβt (I?)(hey|hello|hai) work, or is rego re2 weirder than I thought?
the hello and hey go together well, this something like (i?)(h+e+(y|l{2}o)) because they share the 'he' start. then the last* part looks for a 'y' or 2+ L's and O
but i guess, could make the 'h' common and do (i?)(h+(e+(y|l{2}o)|a+i)) ....
i tweeked it a little for the hey and hello (i?)(he+(y|l|o))
which covers helllllooooo etc
i'm starting to understand it a bit more
with all things regrex; you'll find a mistake and it will trigger on something random and you'll need to adjust π but this is a good place to start
so if i decide to add another greeting word ie; yo or wassup do i use | to separate them and then tweak which character to make common from there or am i getting too complicated to where making another command would be better
trust me i am super appreciative of how fast and helpful y'all are 
you can keep chaining with the | (or) .... but the more you add, the more false positives that will show up. I'd suggest breaking them up into there own keywords if you get anymore. easier to manage then and turn on/off and edit too
will do and noted ! thanks so much again and enjoy your day/evening!! β€οΈ
Not quite good with javascript so I thought to seek help here. I am using this widget in my overlay (#widget-share message by @nocturne gust )
The widget only seems to trigger an image with an exact character match in the chat, for example !image will work but !image @username would be ignored. Would love some help on how to change this so it would accept partial matches. Thank you β€οΈ
excerpt of the js where i assume this can be adjusted...
` //validate the object
//make sure that the event is a chat command
if ((obj.detail.listener !== 'message')) {
// console.log("Event is not a chat message.")
return;
}
//make sure that message exists and is trying to be a command
let data = obj.detail.event.data;
if (!data.text.startsWith('!')) {
// console.log("Chat input is not a command.");
return;
}
if (data.text.length <= 1) {
// console.log("input is only a single !");
return;
}
let input = data.text;
// console.log(input);
index = userConfig.findIndex(x => x.trigger === input);
// console.log(index);
if (index !== -1) {
console.log(coolingDown);
if (coolingDown) {
console.log('still cooling down from the last image update');
return;
}
let commandCooldown = userConfig[0].commandCooldown;
let resetCooldown = userConfig[1].resetCooldown;`
For colors it's the same only instead of .text .background , right?
a
I have two versions of this widget released. I think you are on the earlier one. The latest one checks each word so it would work with your example. Here is a link to a tutorial, see if it works for you. https://youtu.be/8gd1l_K4OzE
Hey guys!
Not sure if this is the right place to ask, but:
Is there a way to set up alerts, where one alert plays one random video from a selection, other than having to duplicate as a variation and change the video for each variation?
In order to change background-color you will need to use jQuery's css() method; so it will be
$('#your-html-tag').css('background-color', '#FFFFFF'); // set background color
I would use a image-input/video-input custom field with "multiple":true; then easily pick one media from the custom field array to be displayed each time the alert gets triggered.
Hello everyone. I experience in programming (python, java, c++), as I use it for my research, but I don't have any experience with API's and web interfacing. If i want to read new events (followers, donations, subscriber etc), not inside a streamelements widget but in a external app, I need to go through the OAuth2 process right?
Do you plan on doing things for other users or just yourself?
Others. What would change if it was for just myself?
It would be the best way yes.
Thanks!
Related, is there a way to have dummy tokens to first test out everything before applying for the OAuth2 credentials, meaning I would like to just use it with my twitch account first as a try, but because I'm not sure it is a project I will finish I'm not sure it makes sense to fully apply
working well. thank you very much for this β€οΈ just an oddity i noticed in the editor with your widget, the syntax meant for the 'Fields' section also exists in the CSS section.
@wicked hatch 
Not that I can help you but ask away here and someone for sure can.
Though looking at widgets within #widget-share may help a little as well.
hey, is it possible to use https requests (https:// tmi.twitch.tv/group/user/<STREAM>/chatters) inside the streamelents custom widgets?
are you asking "can I do API call via Streamelements's custom widget?" the answer is yes
You need single quotes around every option, with a space between options, and no text between options, and no answers with single quotes in them.
e.g.: ${random.pick '1' '2' 'rare pepe' 'this is a long option that has lots of words'}
Should be okay, yes
thank you !!!!
is babel working on stream elements?
Um what?
is babel js working if i use in stream elements
Ah. I'll leave that to someone who can answer that.
hello guys, i'm new to SE and I got some trouble on how to display custom youtube membership emotes on chat boxes, is there any way to do so or it's just not supported yet?
Im no pro but from what i know, not all Youtube features are supported yet. I could be wrong
Where do i find info about creating/upload/testing a widget ? A beginner guide sort of.. Ive just picked up coding again after 8 years of.. uhm.. doing nothing lol
I tried it
Can not
This one i did and played with
no space?
never tried with space between .. and it worked
weird
π₯²
try this line if it works.. backup yours first.. maybe its something with your characters ${random.pick 'test1''test2''test3'}
noooo
Is the stream public?
yes
not the same command
I'm sorry but i cant help you further.. lets wait for a pro π
sorry ty
I wanna do a own cutom widget.. css, html, js etc.. where do i upload it so i can test it ?
Good morning. Assuming I have the watchtime data from StreamLabs or any other service, is there a way I can import that to StreamElements, possibly through an API since it would be a proprietary format? The watchtime API seems to be read-only.
Thank you in advance!
Are you looking for this?
is that the closest you can get to a fully own built custom widget that you later can share with others ?
Yes and no.
Im sitting at my desktop with my own htm and js files atm. Tell me more π
please help me
Actually I was looking into this. Is there an ability to create custom widgets and share as a link without the custom CSS or JS? Such as if I make the graphics for it in an editor and just need to share the content/overlay?
The bot doesn't move
You can't have a space in the command name π
Of course, yes .)
Let me see if any of the developers/staff know
Can you provide me with your account id?
Please provide your account ID found at the top of this page: https://streamelements.com/dashboard/account/channels This ID is public info and safe to share here.
streamelementsοΌ
Yes
Can I erase it?
There is no need to, but if you wish, you may
ok
@wooden venture, posting multiple links will result in not being able to post again.
@viral patrol hi and sorry to @ you, but i can't get the "Latest YT Video" widget to work. I made a new overlay just for the widget and paste the link to OBS, but i get always the message "an error occurred retrieving videos for channel ...". the Channel ID is correct added on the widget. i found an older topic here about the problem, but i don't understand exactly what the guy did and solved that. I hope you can help me. Thanks
@rare heron, posting multiple links will result in not being able to post again.
hey, so is there any limit here?
Do you know where i can find tutorial about these tags {{widgetAuthor}} etc. and how i upload complete htm and js files ?
so i and others can customize my widget in streamelements editor later
The only information I am aware of regarding those "tags" can be found in the "Overlay Editor documentation" linked in description of this Discord channel.
Basically {{variable}} and {variable} are replaced with the value of the field with the same name ("variable" in this case).
This takes place before any execution happens (afaik) and is true for the HTML, CSS and JS documents.
Fields that start with "widget" are reservered for documentation purposes (you can still use them, but there is a risk that in the future they might get an additional meaning).
Hoping this is the right spot for this. I'm in the process of trying to add end credits to my stream and noticed there are a few less options for the end credits then SLOBS has, I have no intention of going back to SLOBS and was wondering if there anyway to add the Moderators and users that were in chat for the end credits as well?
Did you find out what the cause was?
Think i know what article your read - I have read the same and ended up here thanks to that π
oh man im still having this issue all day
I have seen one widget that did all that you want... check overlay/widget section on streamelements
Yeah I saw that yesterday based on a google search and assumed it did mods as well as everything else but the only options for it are subs, tips, cheers, and new follows. But not all the options as SLOBS has, I was wondering if it could be changed through the custom coding and if so how I could go about trying to do it.
Im pretty sure i had one once with mods and all that i could edit in streamelements.. but i cant remember where i found it
I think, since im logged in on my youtube profile i see less options in the overlay/widget section on streamelements
people in chat meaning people who actively participated by sending at least one message?
@graceful topaz I will let you know if i find something that fit your needs
@thorn crag @severe shell @hardy walrus I'm late to the party, but better late than never I guess. There is a way to do it, but not that pretty. You need to combine a call to the kvstore endpoint + emit a websocket event. With the first one, you achieve persistence between reloads, and with the second one overlays are notified and updated instantly.
curl 'https://kvstore.streamelements.com/v2/channel/channelId' -X 'PUT' -H 'authorization: Bearer yourToken' -H 'content-type: application/json;charset=UTF-8' --data-raw '{"key":"alerts","value":{"muted":false,"paused":true}}'socket.emit('overlay:togglequeue', false)
(same applies to muting/unmuting, only socket event is socket.emit('overlay:mute', {muted: true}))
As for the documented public endpoint not being intended to work... welp, to me it's just they didn't bother to update it when they updated the internal stuff. Otherwise it wouldn't be documented, it definitely wouldn't return a correct 201 code, and it wouldn't be effectively sending the old websocket related event (overlay:action). It does work, it's only that it's plain outdated internally
Thank you very much. I actually already found the kvstore but could not get the socket stuff working.
Other than that I wrote the support and it seems like they are looking into get it back working. I'm not surprised it isn't working tho, the code seems to be a bit of a mess.
Yeah, Iβve seen it be used before and I assumed it was all credit widgets but the person I knew who has done it said it was through SLOBS. Sorry for the delay in answering as well, currently at the day job and will be a bit slow to answer back.
Thank you I really appreciate that
Just checking if anyone knows if there's an API to PUT watchtimes so I can import watchtimes manually into SE
Hello. Do I need to fill the SE application form just to get the OAuth credentials to use the API?
It asks for a lot of details not relevant to a lot of us, like website, application logo, etc
If you need OAuth credentials, yes, you have to show something working so the staff can analyse your app... But if you are just making widgets for yourself or for a small bunch of friends you can use the streamer's JWT for authentication instead of going to the OAuth flow
Hmm, that's interesting... I had the part 1), but yeah, it didn't work (activity feed shows paused but the overlays were not updated. Thanks for the part 2)
By the way, I didn't use --data-raw on part 1)... just --data. Also "content-type" I don't think the charset is necessary
yeah yeah, I just quickly copied the curl from the inspector for reference π
And I'm assuming the JWT token doesn't expire, or does it?
For the websockets test events it doesn't seem like Facebook events are going through anymore. Any idea why this may be?
Do you by any chance have a working script (preferably in ps)? I already sunk to much time into this and would take any shortcut I can take π
Has anyone figured out a way to add in and out animations to a basic chat widget in Streamelements? I just want to add a simple 'Slide in' and 'Slide out' to my chat box
is there a way to save my cloud backup overlays + scenes locally?
It doesn't expire, so take extra care of it
The bot doesn't move
can you post your command response here? this ' might be the wrong character
sorry It doesn't work even if I change it
can you post that response text here? then I can copy it can give it a quick test
${random.pick 'P2020''RE45γͺγΌγ''R99''R301γ«γΌγγ³''γ©γ³γγΌγΈ''3030γͺγγΌγΏγΌ''γ¦γ£γ³γ°γγ³''γγ©γ¦γ©γΌ''γγ γγγ―''LSTAR''γγγγ― ''γγ£γ΄γ©γΌγ·γ§γ³''γ’γΆγ³γγΌγ―''γγΉγγ£γ''EVA8γͺγΌγ''γ»γ³γγγ«''γγ£γΌγΈγ©γ€γγ«''γγͺγγ«γγ€γ―''γγΌγΉγγΌγγΌ''γͺγ«γΏγγΌγΏγΌ'}
That seems to work on my end?
what are your advanced settings? do you have it enabled for 'offline' or 'both' ?
I tested in Twitch. I'm not familiar enough with how the bot works when using youTube. Are you live when testing?
if you go to: https://streamelements.com/dashboard; do you see?
I had to add SE as a mod; but your command is also working on youTube:
@exotic lagoon ‡οΈ
Go to the Dashboard > Right side > Part channel > Join channel (https://streamelements.com/dashboard) https://i.imgur.com/uYVb8OK.png
And then check your chat on the youTube website.
join channel complete
That should hopefully fix it. If not then i'm not sure. That was the first time i ever used the SE bot for youTube. I had to make it a moderator first like the instructions said and then it worked.
ok thank you
if it is a custom widget you can use GSAP to animate it https://greensock.com/gsap/
There is also animate-css (https://animate.style/).
As the name suggests, it works with CSS classes.
Hey Greywizz, sorry for the late reply, but we talked to the developer of Current Steam Game, found a solution, sent to approval and now the widget is now working. You just need to install it again from #widget-share and it will have the new code.
And if you need instructions to get your Steam ID, you can get it from here:
Hey here, can't figure out what's the socket event name for donations?
Hello there! What kind of timeout does the API call have in a command?
Sorry if I'm in the wrong area I'm a mod, ive recently switched over from streamlabs to obs studio, im now using streamelements and imported the overlay to obs studio at first the pop up alerts for likes, stars. popped up fine, now the box is in the middle saying new follower, liked, etc, the name is floating above almost at the top of the screen when someone likes or shares, etc.
Thanks you so much for getting back to me i will try that out
You've added to the CURRENT count to total it at ${count current +${1}}
This doesn't work to add a quantity to the counter?
Try ${count current "+${1}"}
You will find it on:
socket.on('event', (data) => {
console.log(data);
// Structure as on https://github.com/StreamElements/widgets/blob/master/CustomCode.md#on-event
});
This is the information you receive from a donation:
SE Live keeps crashing OBS Studios. I am fully updated as OBS goes.. and i downloaded SE Live from the website but when I open OBS and the screen comes up asking me to sign in and link my account everything goes white and OBS closes by itself
Sorry, I didn't understand what you mean by "kind of timeout", could you please elaborate on that?
This channel is related to SE API, custom widgets, chat commands, and coding language in general. You will find better help on #helpdesk-selive
thank you @severe shell
is there anyway to access the predictions data?
From Streamelements? No
Only using Twitch API
Hello, where do I change the command to show the name of the user who redeemed the item in my store?
@wooden ether Did you manually make that change?
no, I just put the bot in Portuguese, I don't know where to change this user that is there, I already turned the bot back to English but it still has the same message
Change {usuΓ‘rio} to {user}
@grave breach, posting multiple links will result in not being able to post again.
Hey, is it possible to generate an alert on StreamElements using the API? I would like to send alerts from a NodeJS application to a Twitch live stream
Hello,
How do I use CSS to rotate the text for streamelements alerts? I am using stream elements overlays, I have a simple diagonal banner image I'm using and I cannot get the text for the alerts to line up with it. Apparently there is a way to do this with CSS but when I try to mess with it, I get a default dancing shark alert??
@twilit depot when you enable custom css it overwrites the default code with that, you need to adjust the custom code to your liking
which it seems in your case just involves removing the dancing shark
after that you can apply a transform: rotate(Xdeg) to it in the css
though you'll want to translateY() it a bit too to move it down or the text will rotate partially outside the container
I had this originally in a different channel but maybe it is better here? IDK.
Hello! While trying to diagnose my NDI sources suddenly failing and acting as if they don't exist, I discovered StreamElements Browser sources causing a massive error in my OBS logs. I tried refreshing the sources, even creating a brand new scene with nothing else on it but the browser sources and 1 media file overlay, and it produces the same error. See OBS log attached, this is upon startup of OBS.
https://obsproject.com/tools/analyzer ... i don't see anything there; maybe #helpdesk-selive would be better to ask.
This part is what I am referring to. It just repeats over and over
i cant seem to get my media share to work, it wont play on my stream
one of your overlays has code in it that is using the javascript function eval( ....
which is a HUGE no no.
That would be a #helpdesk-twitch question.
this CSP error has been popping in native alert box the past few days
Hi! Iβm creating a bot for someone with a related overlay, curious if itβs possible to post data to a streamelements overlay custom widget from for example a node.js app
Has this been reported to Dev's already? or is that another bad assumption on my end π€£
Yes and No; depends what you are trying to do π
No idea
I did not make this code. This is from the browser source.
Just mostly displaying twitch usernames in the form of a leaderboard, winners, player turn etc, aswell as a timer. These values will be passed from the bot to the overlay. (Hopefully lol)
ya; i donno how to bypass "script-src 'none'" if that is a run as Admin or need flag or ??
What is the node server needed for? To have it always running? or running your own leaderboard database?
you're not supposed to bypass that, it's a security measure
so... until someone (aka devs) takes a look at that...
my OBS iq is like -5 π€£ ...
i can report it... if i know what to report.
They plan to run the stream and the bot essentially 24/7, aswell as storing the leaderboard yes.
in your Node bot you will want to connect to the websocket; and then you can send updates to all widgets with a custom listener
Okay great so itβs possible; thanks π
My issue with it is when it happens, it lags out my OBS and I get the "OBS is not responding"
The StreamElements "realtime"