#dev-chat

1 messages Β· Page 3 of 1

smoky olive
#

Chat

proud spade
#

The default streamelements one?

smoky olive
#

Yeah

#

I just want the background behind to be blurry

#

No clue if seeing that helps

proud spade
#

Do you want the whole box, or just the chat lines?

smoky olive
#

I want the whole background behind the box to be blurred

#

This is the best visual example

proud spade
#

In OBS, for custom CSS you can put

.twitch-chat {
    background-color: rgba(255,255,255,0.3);
    backdrop-filter: blur(10px);
}
smoky olive
#

I feel like I'm messing something up

#
background-color: rgba(0, 0, 0, 0); 
margin: 0px auto; 
overflow: hidden;
}
.twitch-chat {
    background-color: rgba(255,255,255,0.3);
    backdrop-filter: blur(10px);
}```
#

Is this how it's supposed to be?

#

Because it doesn't look right

proud spade
#

Remove the background from the body

smoky olive
#

What do you mean?

#

Oh background color?

#

This?

background-color: rgba(0, 0, 0, 0);

proud spade
#

yes

smoky olive
#

Didn't change anything

proud spade
#
body { 
background-color: rgba(255, 255, 255, 1); 
margin: 0px auto; 
overflow: hidden;
}

Maybe?

smoky olive
#

Looks the same still

proud spade
#

In the widget editor, what color is the background for the chat?

smoky olive
#

I can't tell if I'm stupid or if OBS is stupid

#

Transparent

proud spade
#

If changing that to white doesn't fix it, I don't know.

smoky olive
#

It's white

#

This is the CSS

body { 
background-color: rgba(255, 255, 255, 1); 
margin: 0px auto; 
overflow: hidden;
}
.twitch-chat {
    background-color: rgba(255,255,255,0.3);
    backdrop-filter: blur(10px);
}```
proud spade
#

In the widget editor, can you use hsla(0, 0%, 100%, 0.10) for the color?

smoky olive
#

Okay

#

I don't know if it saved the .10 part

proud spade
#

It should have

smoky olive
#

It's only called HSL

proud spade
#

Or you can click the circle to the left and then click the HSL tab and click the transparent vertical bar on the right of the popup thing.

smoky olive
#

Oh yeah that got it to save

#

Okay so that's saved

#

Still looks the same in OBS

proud spade
#

Not sure. It looks like it's grabbing black from somewhere and you're getting 70% black + 30% white.

smoky olive
#

Where is it coming from then?

brazen cobalt
#

Probably on body

#

Add white to body and html

smoky olive
#

And html?

#

What do you mean?

brazen cobalt
#

Nvm. Just add opacity to it

smoky olive
#

I don't know how sorry

#

All I see is CSS

#

No HTML

brazen cobalt
#

Your body is adding black no?

brazen cobalt
smoky olive
#

Isn't 255 for all white?

smoky olive
proud spade
#

oh, uh

#

for .twitch-chat do 0.7 instead of 0.3

#

last idea I can think of

smoky olive
#

Well it's more white than gray

#

Anymore guesses on what it could be?@proud spade

proud spade
smoky olive
#

Yeah I see that now

#

So what should I do?

proud spade
#

Change your body { } background-color to transparent

#
body { 
background-color: transparent;
margin: 0px auto; 
overflow: hidden;
}
.twitch-chat {
    background-color: rgba(255,255,255,0.3);
    backdrop-filter: blur(10px);
}
smoky olive
#

This is how it looks

#

I just copied it from the message you just sent

proud spade
#

Are the background and the chat on different sources?

smoky olive
#

Yes they are

proud spade
#

Does changing body { to html, body { do anything?

smoky olive
#

Nothing I can see

#

The background itself is a video btw

proud spade
#

I don't know any way to do it then, unless they're on the same source.

smoky olive
#

Starting Soon text is another thing too

#

How could I make it all one?

#

I don't think it's possible to put a video on the website like that

proud spade
#

The problem is, even though the webpage it self is transparent, the browser tab isn't, so you're getting background from that.

smoky olive
#

And I guess there isn't a way to get rid of that?

proud spade
#

nope

smoky olive
#

Okay

#

So what do I do to get it all on one source?

#

Because I feel like I can't add the video background

#

Yeah I can't

#

Just tried

#

30mb is the max file size

#

And it's 561mb

#

Is it possible to import a YouTube video to it?

coral flare
#

is it possible for a custom widget configuration field (from JSON) to allow inputting a list (like for usernames)? IE I type a username, hit enter it adds the entry to the list, rinse repeat. Then in JS this would look like an array of strings

humble folio
#

Is Jebaited Api still working for any of you? The api always returns "false"

kind tusk
#

how can i send twitch announcements into the chat via the bots api? i tried to use https://dev.streamelements.com/docs/api-docs/1e22a4ed3ad16-channel-say but it doesn't work with /announcegreen. the message does get sent but not as an green announcement but actually as the text itself(/announcegreen).here is the example code from my request:

`const request = require('request');

const options = {
method: 'POST',
url: 'https://api.streamelements.com/kappa/v2/bot/XXXXXXXXXXXXXXXXX/say',
headers: {
'Content-Type': 'application/json',
Accept: 'application/json; charset=utf-8',
Authorization: 'Bearer XXXXXXXXXXXXXXXXX'
},
body: {message: '/announcegreen test'},
json: true
};

request(options, function (error, response, body) {
if (error) throw new Error(error);

console.log(body);
});`

hardy walrus
#

Color announcements aren't supported.

kind tusk
hardy walrus
#

By streamelements in general at least.

#

Why SB can do it I dunno.

kind tusk
dire dagger
#

hi i would like to know if there is a way to pull the username and profile pic of any chatter (not a shout out or anything like that) i would like to use this to welcome the first words of any chatter on my lives streams and all live stream and not just for first time chatter but all chatters please and thanks
ps: i dont know any kind coding like html or c++

solid shore
#

I know this is probably a common question, but can you guys recommend some good tutorials or widgets to "copy"
I like to listen to a YT tutorial explain to me what he is programming and programm with him, but sadly when I try to look for tutorials online, they basically just show me how to add streamelements chat into a browsersource.

I'm interested in learning

  • custom chatboxes/chatbubbles (with Wide Emtoes and showing Emotes bigger)
  • sub/bits/donation goalbars
waxen kettle
#

hey good morning i was with my firends and they accidentally delete my streamelemnts account directly eliminated i canΒ΄t log in so there is any way to get it bacck?

median spade
#

hello! I was wondering if there's a way to make a command to give loyalty to the one using it automatically (like a !first command).

waxen kettle
#

i dont understand i need my account back plis

fervent stratus
waxen kettle
#

fuck

uneven oxideBOT
#

Did you get a "Channel already claimed" message?

More than likely your accounts need to be merged! - Please note:

  • Merging accounts allows for faster ways to switch between accounts
  • Merging accounts allows duplicating/sharing overlays between the accounts
  • Merging accounts does not allow data sharing between accounts - different streaming platforms, different type of events

If you understand the limitations of merging and want to proceed, please find the JWT tokens (!jwt) from both accounts you want to merge and fill out the form here: http://streamelements.com/contact with each token correctly labelled

#

You can find your JWT token on your account channels page (Show Secrets to reveal the token): https://streamelements.com/dashboard/account/channels

READ ME: This is a private security token. Do NOT share this token here or other public places, only with a StreamElements staff member in private.

delicate pond
#

I have a question about chat alerts during raids.
I want to enter userID, but both userID and userName are entered.

!raid {user}
Is there a way to enter only the user id?

kind tusk
#

Hey guys, how exactly can i "send" emulated shop purchases to my account/activity feed via the api? I know that i can send tips via https://dev.streamelements.com/docs/api-docs/7e632a4cecfe1-channel but how exactly can i do the same for shop purchases/items? I know that its possible cause @viral patrol does it at jebaited.net with patreon pledges (screenshot attached). I can't find the right api endpoint in the documentation. Would be nice if someone could point me into the right direction. Thx

kind tusk
#

How does one trigger emulated events via api at all? i cant find a real proper documentation on that subject. How do i trigger all the events from the overlay maker via the api???

cosmic cloak
#

How does one change password? I can get into my account on my phone via twitch login, but if I hit forgot password on PC it never sends me an email

proud spade
zenith pilot
#

hello my widget data is not updating it just shows no data

hexed ridge
# kind tusk Hey guys, how exactly can i "send" emulated shop purchases to my account/activit...

cant help you really much but i searched around the server a bit and found this widget which might be the patreon thing you are referring to. also its from 2020 so its maybe outdated. But maybe @viral patrol can say something about that.
Maybe the code of it helps you:
https://streamelements.com/dashboard/overlays/share/5d565a9af876a34b54a3cbcb

also there was this comment from hectic (se staff)

if you connect to our api with OAUTH you can send us activities
we have an activity called Purchase made for 3rd parties, it may not fit patreon best but it will work
we're also working on a more general activity called "Event" that should fit

kind tusk
# hexed ridge cant help you really much but i searched around the server a bit and found this ...

Thanks for the response Marvin ✌️ Yes this is indeed the widget i am referring to. The thing is that the widgets code doesn't really help much, cause all the webhook "magic" does happen on the jebaited.net server. Jebaited.net gets the webhook call from patreon, and then sends a purchase activity to Streamelements via some sort of API. the thing is that i cant find any documentation or reference on that subject. It's pretty hard to gain more info or knowledge on that kind of subject via this discord or the api documentation. It sounds like using OAUTH to send activities would be the thing i am looking for, but still not clue about how the right api call should look like to send activities, as i can't some examples or references in the api documentation. Maybe im just too blind to find the right in the api docs, not sure.

still juniper
kind tusk
kind tusk
#

Is there a way to trigger stream store redemptions via the api? I only found a way to list them or create them but none to trigger them πŸ€”

ionic thunder
#

Is there a way to trigger !RAFFLE automatically when my scene auto switches to my BRB screen? I have a bot that says 'scene successfully switched to "BRB"', and have tried to use that as a command keyword. I can get the Streamelements chat bot to say !raffle but it doesn't actually activate the raffle. Robcdee, Cashmeow and a few other IRL streamers have this set up but I can't seem to figure it out!

smoky olive
#

@proud spade Any clue on any possible way it could be done?

#

Or did you run out of ideas for it?

somber glade
#

Anyone having or had issues with the media player widget? Mine will start to play the music video, but after a few seconds lags out and no longer plays the music video or music. It'll play fine in the media request section on the website and it'll play (somewhat) via the OBS widget if I click on 'settings' so it undocks it and hides the video to show the settings page. The media widget while on the settings tab will occasionally forget to autoplay to the next song/video and the !play command must be used.

sinful radish
#

Can anyone tell me if this script in console should still work for clearing out watchtime for everyone?

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);```
proud spade
sinful radish
#

ahhhh ok... makes more sense now thank you!

#

so just modify the 2nd date to todays date inside, then run it and it should then clear everything

proud spade
#

Should

sinful radish
#

lol and if not then try again later or its not going to?

proud spade
#

might need to adjust the time too

sinful radish
#

Ok

proud spade
#

I've never run it, so I can't say for sure it works, but I know people who have in the past and it's worked for them.

sinful radish
#

huh interesting... i do wonder if they had to change anything else

mighty shell
#

_ _

⭐ **StreamElements Logos **

Where can I find StreamElements Logos as Alpha Footage ?

Are there some Alpha Logos here in the server? πŸ˜„
_ _

ionic thunder
#

Is there a way to trigger !RAFFLE automatically when my scene auto switches to my BRB screen? I have a programme that switches my scene if I lose connection, and have a bot that says 'scene successfully switched to "BRB"'. I have tried to use that as a command keyword, and I can get the Streamelements chat bot to say !raffle but it doesn't actually activate the raffle. Robcdee, Cashmeow and a few other IRL streamers have this set up but I can't seem to figure it out!

kind tusk
ionic thunder
#

Ooo. I don't know what that is but I'll give it a Google. Thanks @kind tusk ❀️

hardy walrus
#

Bot can't run its own commands by design.

ionic thunder
#

@hardy walrus I figured this. I tried to get Nightbot to trigger the command but that didn't work either Nightbot CANNOT use a string of words as a trigger (edited)

kind tusk
inner plinth
#

Can anyone help me with this?

ionic thunder
#

I'm using a cloud based OBS solution (antiscuff), so I'll probably have to give it a few days to try it. Thanks for the tip, I'll let ya know how it goes!

inner plinth
uneven oxideBOT
#

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

merry elbow
#

Can you make it so an overlay actually shows over the streamers gameplay screen as a reward for chat to redeem and say make it block, distort, the view?

kind tusk
merry elbow
dense haven
#

is there an method to hide Badges via css file because the Badge visibility (css = display: "none" ) is not working when i change it in the Fields section

dire kestrel
#

Hi. I’m having issues hearing my alerts in OBS! How do I fix! I can see the alert.. just can’t hear it

fervent stratus
dire kestrel
void cove
#

Hello! is there a command that i can add that will show my fifa 23 ranks for my twitch viewers?

regal tinsel
#

I need help with pulling donation information from the api, can anyone help?

lofty bay
#

Hi all, we are new to Discord and am unsure how to navigate - however we are experiencing a black screen in OBS which once we followed some YouTube fix tutorials the issue was not resolved. Can anyone help with this please>

#

?

mighty shell
#

_ _

πŸš€ **StreamElements Logos **

Where can I find StreamElements Logos as Alpha Footage ? Are there some Alpha Logos here in the server?

I am pretty sure that at least the STAFF members can provide SE Logos with Alpha footage .... right ? πŸ˜„

I wonder if there are any Alpha Logos ... anyone?

_ _

ocean raptor
#

I was wondering: is there a Hype Train event planned with the StreamElements API? If I have to go through the Twitch API, how would you advise me to use it?
I found this on the doc https://dev.twitch.tv/docs/api/reference#get-hype-train-events but I'd like to create this widget for other users so it seems difficult to fill in the token and all of that every time
EDIT:
I just found something interesting: https://github.com/Brendonovich/eventsocket
However, I don't know if I could use websocket events on an SE widget

worn girder
#

Hi!
Is there a way to combine chat with streamelements?

hardy walrus
#

If you mean across platforms then no.

worn girder
#

rip

hexed fox
#

Hi, is there a way to export user data

#

?

uneven oxideBOT
#

@lofty bay ‡️

SE.live is a plugin for OBS Studio for the best OBS support, please join their Official Discord @ https://discord.gg/obsproject

mighty shell
#

@dire kestrel

Hi there πŸ˜„

You reacted to my message topic with the emoji : #dev-chat message

πŸš€ So ... do you know if there are StreamElements Logos with Alpha Footage ?
_ _

dire kestrel
mighty shell
full ingot
#

q: anyone know a custom cmd for clipping? I use chatty while streaming so having a cmd will be helpful.

mighty shell
#

okay thanks

earnest helm
#

hey just wondering does anyone have a way to add a count down when someone redeems something from twitch points. for example someone taking glasses off with a 5 min count down. like do we have a way to add something to stream elements that will trigger the count down for each twitch point redemption?

paper ruin
#

any one knows how to fix the resolution for stream scenes sources

#

from My Overlays

#

i change the sittings in my overlays to 1440

#

but not working

#

in obs

#

and on the web site

uneven oxideBOT
#

@paper ruin ‡️

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 and Refresh browser when scene becomes active, as shown in this GIF: https://imgur.com/a/2JhJD0S

sudden barn
#

Is there a way to remove streamelements bot from chatstats?

hardy walrus
#

Outside of not letting it speak in chat or others speak more often no.

sudden barn
#

I see, thanks for the info

ocean raptor
ocean raptor
#

I would like to use it especially for the Hype Train events, do you have any other solutions for that?

unique hemlock
#

Hello🌸
I'm doing a subathon for my 3 year anniversary & I need a timer that will ADD time to it for each dono/sub. Anyone know how to do this using streamelements? I'll be using desktop w/OBS as well as mobile streaming. So, my 2nd question is... will the clock reset when I switch between the two?
Sorry... I'm new here & hopefully I posted this in the correct section. πŸ™ƒ
Thank you a billion times to the moon and back!

vagrant wraith
#

Hi. Im having an issue with a viewer not being able to redeem anything despite having over 100k points in chat. Ive tried resetting thier points to no avail. Can this be fixed on your end?

Account id: 6132d5aab370f5b4bbf95543

Viewer Affected: rigothegreat

#

This is the ONLY viewer affected btw i suspect it has to do wiith a name change perhaps

hexed fox
#

Hi, is there a way to export user data
?

north ivy
#

Are there code samples available for the built in alertbox+TTS overlay template?

I made a custom TTS API that I'd like to use with SE, ideally by just making small modifications to the already provided overlays if possible

#

If not does anyone know of an open source alertbox that implements TTS that I could use as a starting point?

real furnace
unique hemlock
real furnace
# north ivy Are there code samples available for the built in alertbox+TTS overlay template?...

re-creating a full alertbox as a custom widget is a nightmare, believe me I tried. The easiest solution would be to create a custom widget in the same overlay that you have your AlertBox, disable the TTS from your alerts, and make an api call to get the right TTS for the variations that you want it to play, I would recommend using a WebSocket for the call so it is always listening.

real furnace
real furnace
ocean raptor
real furnace
#

@ocean raptor did he update on his github?

ocean raptor
#

Yes I think so

real furnace
#

awesome, I will take a look πŸ˜„

#

if you have the widget working, share a clip on DMs would love to see it πŸ˜„

ocean raptor
#

I test the Hype Trains events tonight, to see what this tool can send to me

#

(if my viewers want to send some bits...)

real furnace
#

o/

regal oracle
#

Hi!
I'm actually tryin to modify the CyberChat stream widget (https://strms.net/cyberchat_by_lx ), I've already succeded to put badges before the user name, but now I want to modify the length of the random thingy that pops out when a message is printed, i'm trying to change this directly within the js, idk if there's a way to do this?

hexed fox
real furnace
hexed fox
real furnace
inner lagoon
#

onSessionUpdate doesn't seem to be working for me... can anyone else try this and see if it works for them?

window.addEventListener('onSessionUpdate', function (obj) {
    console.log("hi");
});
#

I'm updating my cheer goal progress. then i see this in console, but not my "hi"

#
Updating session data for widgets```
inner lagoon
#

yeah its definitely not working..

real furnace
real furnace
inner lagoon
#

Yeah but update your session data via the session tab. Like a cheer goal

real furnace
#

it will only trigger with emulated or real events

inner lagoon
#

Updating your session data is.. not updating your session? Huh? Lol. If it's saying "updating session data for widgets" wouldn't that be an event?

real furnace
#

that is a manual update that you force into the data. It does not count as an event received from the api, that is why the onSessionUpdate function does not trigger anything

#

it's like going into the Database and manually updating a value, instead of receiving the value through a websocket or api call

#

if you log the value of the cheer-latest or cheer-goal after you update it manually you will see that the value changes, because you changed the value in the "Database"

inner lagoon
#

That should definitely be changed to trigger onSessionUpdate because that's quite literally what the name says. I'm updating the session data so it should trigger that event. Because now instead of listening for that event, I need to check every few seconds to see if the data has changed...

This is for a custom bit/sub/tip goal overlay btw. Let's say someone starts a new sub goal and wants to set their sub goal progress to a certain amount, they go into sessions data and update that amount.

Current implementation would be they would have to refresh the overlay to send the updated data, or like I said have a script that checks every few seconds if that data changes

real furnace
#

@inner lagoon are you free to hop on a call, if not I can add a custom goal widget to your account and you can use it as a base

inner lagoon
#

I'm not, I'm in bed. 2am here haha

#

Also since you seem to be pretty responsive, I submitted a few widgets to #widget-share probably like 6+ months ago. What's going on with that?

real furnace
inner lagoon
#

As well as applied for the one-click sharing ability and didn't hear back

real furnace
#

one click sharing @ruby thistle can help

inner lagoon
#

Thanks! And yeah this discord name. I forget what I submitted it's been so long tbh. Probably my iOS notification style chat widget and I forget what else

real furnace
#

you can modify the base from there

real furnace
inner lagoon
#

only solution i can see, unless your devs make it so updating that session data triggers the onSessionUpdate event, is to loop through every few seconds checking the session data

real furnace
#

that is a limitation of the current overlay editor. The new editor that we are working on will solve this issue

inner lagoon
#

new overlay editor? πŸ‘€

real furnace
#

but the widget will update correctly if a event is fired

#

if is just an editor gap

real furnace
#

on this case if you refresh the editor after saving the widget you should see the update

#

this widget that I shared is battle tested so you can trust

inner lagoon
#

yeah i'll just tell the client to refresh. not ideal but whatever

real furnace
#

that is to see in the editor, but the client will see the widget updating live or with simulated events

inner lagoon
#

ok thanks

hexed fox
wispy wharf
#

Hey everyone πŸ‘‹
Is it possible to use the API to post a tip to another channel with the JWT token? Or do we need the OAuth2 access?

robust pagoda
#

I've a request to have API access for more than 4 weeks now and still no response. Is the queue that high? Do anybody know what's the average? We have an app working on other softwares/platforms, we only need access to StreamElements to close the circle. Any tips or contacts I can talk to?

stoic kindle
#

[SE API]
Why between these dates no donate is displayed to me, although it should be displayed, e.g. the one from 13 days ago.

#

in general, the tip filtering before the creation date does not work ... It displays all transactions even if I give "before this date" where not all tips were "before this date"

#

if you do not know what it is trying to achieve, it tries to download the last donate from e.g. a minute ago (for a test it gives 1000 days)

prime lake
#

is this element no longer available?

young shard
#

why does the message event for custom widgets no longer have BTTV emote data? it still has FFZ emote data

coarse hull
#

^ am also interested in this. BTTV emotes are missing from the SE-provided kappagen stuff as well as custom widgets, but haven't seen any official acknowledgment of an issue here or from nightdev

wet stratus
#

Same issue here with BTTV, was working fine the other day

kindred oar
#

Same issue here, kappagen no longer displays any emotes other than regular twitch emotes

#

worked fine on saturday, only displays regular emotesplosions when using !kappagen now, no bttv emote in chat shows up on screen

blissful oracle
#

is there a way to execute a chat command using a custom dock in obs that's similar to quick actions ?

#

in other words Custom Quick Action that send a command in chat

pulsar willow
#

Hello! I'd like to ask for help on how to add videos into the SE alert custom CSS. Thanks a bunch πŸ™‚

real furnace
pulsar willow
real furnace
#

shouldn't be, check the alert duration, maybe it's smaller than your video size

rotund horizon
#

hey um i think this is the best place to ask, but i saw in certain commands examples the use of the pipeline symbol as an "or" operator of sorts, is that the only operator?

steel grove
#

I have a question. Is there a page that shows all the codes for widgets like β€œrecent host” and such? Im trying using a pre-made overlay but can’t figure out the codes. Had it before.

fast cairn
#

Hi, can I somehow add a donation goal to my hml site?

prime lake
rotund horizon
#

thank you!!!!

prime lake
rotund horizon
#

oh the commands are in js?

prime lake
#

oh, sorry, which commands are you referring, I thought you meant JS for some reason.

rotund horizon
#

oh no, i meant the chatbot commands

prime lake
#

ooh, no idea sorry nervous

rotund horizon
#

no prob

proud spade
#

The chat bot doesn't have any flow control aside from the pipe as an or in some variables.

real furnace
real furnace
# stoic kindle #ref

I would need the python project to take a look. Can't figure out from just looking at the code snippet. Sorry for that

stoic kindle
#

that's all code. added only import at the top and request and print at the bottom.

hardy dirge
#

Hello everyone, idk if this is the right place to post this, but here it is anyway. πŸ˜… What type of script would I need to use to get streamelements chatbot to pull from a .txt file? I am creating a custom list that I'd like it to randomly pull titles or names from but everything I have seen done is for nightbot and I can't get it to work with streamelements. Any and all help would be appreciated, I've been racking my brain for a few days now.

rugged rapids
inland osprey
#

Can someone help me what the command for the time in Austin Texas is? i cant find the right command for Austin/Texas LMAO

hardy dirge
quiet kindle
#

Hi ! In the overlay editor I would like to scroll in a single layer the last follower then the last cheerer, the last subscriber, raider, etc. on the same line, one after the other.
But I don't know which variables to use because when I create these widgets separately the variable is always {name} and does not specify if it is the last follower, subscriber, etc. Is there a way to specifically call a variable that refers to the name of the last follower, subscriber, etc ? Thx a lot !

rugged rapids
hardy dirge
oblique torrent
#

I am having issues with my alerts for donodrive. when i customize the picture it takes away the sound i want to use

dry plover
#

Are there any answers yet on whether we can add multiple redirect URIs to an application?

#

Or would I have to fill in the same application form 3 times with different redirect URIs?

I searched this channel and there's been quite a lot of people asking the same question over the years, and somehow nobody has ever answered it lol

hardy walrus
oblique torrent
#

any answers on the alert box bug

dry plover
#

@hardy walrus Oh hey, thought I recognized the profile picture, long time no speak! Okay, thank you. I'll send those in tonight πŸ™‚

rotund horizon
#

Im not fluent in JS or even any web related languages, so idk if this is simple, but can i access a variable from the custom fields in the js script? And how

covert trout
#

Hello! I am unsure if this is the correct area to be asking this, so feel free to remove and clarify where this should be on the server!

I'm super new to creating custom chatbot commands with SE and recently I had a fun idea to add a ! guess command for my community to guess numbers for specific events.
Three commands are working: ! Guess (pulls guess based upon the name of the user who guessed it), ! addguess {value} (adds guess to list within custom api), and ! deleteguess (clears all guesses on the list)
I got everything working by completely converting this to be readable by SE: https://community.nightdev.com/t/customapi-quote-system/7871
Its an altered quote system to allow me to view saved "guesses" for an extended period of time, perhaps weeks.

The issue I have run into involves using a command to retrieve the user's guesses.
I decided not to try and convert even more code from NightBot that people were using to limit entries. Therefore I was going to allow potentially unlimited guesses/entries, figuring that it would be easier to figure out how to pull just the first value, or lowest integer within my guess list for each individual user. (Trying to work smart and not hard if possible snowys20KEKW )

If anyone has any ideas on what I could add in as an argument to the data being pulled from the custom api please lmk! Any help is massively appreciated.

Current viewable, public list that Im experimenting with pulling guess values from for reference: https://twitch.center/customapi/quote/list?token=497c438d

TLDR: Looking for bot command lines that allows either:

  1. Only one entry per user to custom api command
  2. Command line that pulls the oldest/first input value from a given user

Update: ${user.lastmessage} filters the last submission, but not the first one snowys20Sadge

lament fern
#

hi guys, just discovered a bug in my alert.
If i send have 2 HP and send 2 x 1hp damage, it triggers everythingm as well as 1 x 2hp, both making HP reaches zero.
But if i have 1HP and send a 2hp damage, hp will be -1, and no triggers happens.

#

i tried ".childElementCount" - currentHP (variable) - tried to make if currentHP gets below Zero, becomes Zero, but without sucess.

nocturne axle
#

Just checking in again to see if there has been any progress on the "allowing PKCE oauth for the api" as well as "is there any way to expedite an API approval request" as ive been waiting over 2 months now I think for information and this seems crazy given other providers just have a public API you register and use.

If it was just end users who cared about me integrating with StreamElements fair enough, but given I could really do with the integration for my workflows its a massive pain being stuck in limbo waiting for a response.

agile musk
#

Hi, I hope this is the right place to ask about/suggest this. Not sure if it's been asked before. Can the commands page of a user show the whole command outcome instead of how it is in the picture (cuts out with ... after a certain number of letters)? That way it would've been a lot more convenient and less disturbing as we wouldn't have to type the command in chat every time. It would also help find out how people use certain commands so they can be applied in other channels, too (such as a special command to show the current date/time etc. I believe these are what we call APIs) Because some people just have a lot of commands and it would be spammy to type them in chat just to see the message and this won't let the user see the aforementioned special parameters in chat (which wouldn't look nice in chat anyway). I hope I was able to ask clearly. Thank you ❀️

next merlin
#

Hello people. I am setting up SE, and I only have 3 bot modules available.
One the SE website and other tutorial vids they have several. Here is what my screen looks like.

proud spade
next merlin
proud spade
rotund horizon
#

shouldnt this be working? maybe its because im using streamlabs, but idk, feels like it should work

ornate kite
#

im trying to connect a custom api to streamelements. its pastebin, so ive seen a couple questions about it on this channel already, but i want to randomize which line it spits out into chat. i have an api that has 50 lines of jokes, and i want streamelements to pick a random joke of those. is that possible, and what would be the command?

ornate kite
#

nevermind, i figured it out!

rustic cave
#

Hallo I add in Streamelements the "Credits Roll" Widget i make all configs but this widget didnt show any activity from my Stream session at the end. No Information from my activity feed like Follower/Donater. What do i wrong or is it buggy ?

tribal zenith
# rotund horizon shouldnt this be working? maybe its because im using streamlabs, but idk, feels ...

a selector of 'goal-last' would try to match a tag with that name, which of course doesn't exist.
So to match an element with the class of 'goal-last' you would have to add a dot ('.goal-last') and if it is the id it would be ('#goal-last') with the hashtag.
Also variables get replaced with the actual value without any adjustments. Since the text() function expects a string, you'd need to put the quotes around the variable. Like this text('{{lastGoal}}')

tribal zenith
hasty dawn
#

How do I move the wireframe over the
image without messing something else
that is for a bit cup

inner lagoon
#

I'm open again for custom widget commissions if anyone needs my services πŸ™‚

subtle slate
wicked ice
#

Hello! I'm not sure if this is the right area, but I want to know if I can adapt the hype cup or make a similar custom widget.,
what I want to do is have an overlay that shows my subscribers as an uploaded image which changes depending on how long they have been subscribed for

wicked ice
sand cosmos
#

Is there anything that acts like a hype cup but it collects emotes used in chat (instead of collecting the usual subs, bits, follows)?

next helm
#

Hi folks.
I wrote an api to work with Nightbot via urlfetch and then posting messages back to Twitch via NB. Unfortunately it appears that NB's rate limiting will not allow my api to work properly. I have done this with PHP. Been reading up for a couple of hours and apparently Streamelements also have urlfetch. I also gather that in general with SE this would normally be done with JS. I would assume that it's possible with PHP as well, but are there any good pages that explain how this could be done please ? Also, what message rate limiting is there on SE please (I would assume it is limited in some way !!) ?
I have been hunting for information on how to use urlfetch with SE but all refers to JS. Is πŸ•΅οΈ API documentation: https://dev.streamelements.com/docs/api-docs/bcd899e16ac9a-se-api-docs all there is in explanatory notes, or is there somewhere that explains things in more basic terms please ? Trying to work out where to start !!!
TIA πŸ™‚

still juniper
#

APIs are language-agnostic. What you use to get/post/put/delete is up to you.
In any case I think you're mixing concepts here. urlfetch (or customapi in SE terms) is just a command variable used to get a response from a 3rd party API, you don't need to interact with SE API directly for it to work. So you probably need to further clarify your use case/issue

next helm
# still juniper APIs are language-agnostic. What you use to get/post/put/delete is up to you. In...

Thanks for the reply. When I stream, I am often streaming with a few other streamers and doing a multistream. We do countdowns/synchdrops, so the viewers can count in with us to hopefully all get into the same battle. I'll point out that this IS permitted by the game company. πŸ™‚ My api sends the countdown text (3 2 1 GOOOO) to all streams simultaniously (providing they "register" to be included). The problem comes with sending up to 6 simultanious messages. I have achieved this by setting off up to 6 child processes which all attempt to read from a locked file. When the script releases the lock, all child processes send out the messages to the appropriate chats. πŸ™‚

#

The problem comes when 6 messages are all recieved by Nightbot in the same millisecond !!

#

BUT obviously, for the purpose of the api, they need to all be sent at the same time.

still juniper
#

I'm honestly having a hard time grasping your code flow and issue, although I'm not familiar with PHP. But coming back to SE-related things, when is urlfetch involved in all this?

next helm
#

It's not a "code flow issue" as such. It's a Nightbot issue which is why I am asking about SE πŸ™‚

#

The way Nightbot works is it creates a unique URL which is valid for 5 mins, so the urlfetch command sends this url to my api so the api knows where to send messages in reply.

still juniper
# next helm The way Nightbot works is it creates a unique URL which is valid for 5 mins, so ...

The equivalent of urlfetch for SE is customapi, such as ${customapi.link-to-your-api.com}. However, afaik, it doesn't send back any special URL/info in the headers (I might be wrong though, I'd have to test). If you want to send message with SE you have to directly use the API, and to have an appropriate token authorizing the call for each channel: https://dev.streamelements.com/docs/api-docs/1e22a4ed3ad16-channel-say. I don't think there's any rate limit documented, so you'd have to test.

next helm
flat vale
#

Hello. does anyone know if there is a way to tell a gifted sub apart from a non-gifted sub? Is it possible to create a custom label that does this: Shows the name of the gifter when a sub is gifted OR shows the name of a regular subscriber

obtuse isle
#

What is the current status of twitch channel points alerts/usage detection? I seen like multiple posts on community board that are "we are working on this" (8 months ago was the most "recent" response).

Or do we have some diy way to read them with no need to do some weird third party authorization? Or is there way to access the "auth" of twitch so we can connect to websockets outself?

I do not care about reading the queue, removing rewards, adding rewards, cleaning/refunding. I just want to live react to the rewards as they happend.

zenith sluice
#

Hey just wondering how subscriber-month is getting calculated. It's giving me a much higher number than I would be expecting for the month. Everything else seems fine for a monthly amount, just subscribers is wrong.

stark rune
#

Is there any way to get SE chatbot to send 2 messages on twitch for one command. For example if mods type "!safe". We'd like it to do a "/emoteonly" and "/followeronly"
I tried setting up two chat commands and alias them to the same keyword. However, it only runs one of the commands

#

Seems like this functionality would be incredibly useful

sand cosmos
#

Hi again wonderful Developers. I've searched in the #widget-share channel and can't find what I'm after:
Is there a widget like the Time one described here #command-share message ?
But it also shows DAY/DATE - because of time zones I'm usually a day ahead of my viewers and it would be good for them to see that (New Zealand vs USA)?

lime raft
#

Hello @bitter abyss . I had a question in regards to Neohud . I saw you had a help field with your info to DM but wanted to post it here incase anyone else has the issue and searches it up. I did a search of this server and saw other people ask but no answer. I am noticing that while using the overlay it does not update on it's own. I allowed it time to see if maybe it was taking longer than normal however it never updated. That being said, the moment I hit reload overlays it fixes itself. Has anyone else been able to fix this so that I do not need to manually update every time? Thank you in advanced.

quartz estuary
#

Hey there! I am having trouble with the end credits by grot widget. It will only show my followers even though I have the sub/dono/cheerer boxes checked. Anyone know how I can fix this? Thanks!

lapis cradle
#

Hey there, was wondering if there's a chance for a developer to launch creator program via SE?

broken coyote
tame crane
#

Hello I got an email about a pending paid sponsorship with hello fresh I could do from stream elements but when I click get started and it takes me to the stream elements page it just loads. It’s just a spinning circle and nothing loads up

tepid arrow
#

quick question about the stream marathon widget. Is it possible to make tier 2 and tier 3 add more time than a tier 1 sub? ex. tier 1 adds 5 mins, tier 2 adds 10 mins etc.

sand cosmos
keen cliff
#

yo i need help with resizeing my overlay on twitch but its not fitting into my stream so can you possibly help me???

stoic kindle
#

does streamelements have any api that does not require httpS connection, only http?

#

(Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available."))

stark rune
peak garden
#

Good Morning all! I am just wondering if there was a way in streamelements to track donations made to a 3rd party charity and actually have an alert play when someone donates? The charity we are going to work with is [jumpstart by Canadian Tire] and they have their own [jumpstart fundraising page] for us and in order to donate you have to go through the link to the fundraising page that will be added to our panels on twitch..

inner lagoon
#

Am I missing something? Is there a way to get the top monthly sub gifter from the data object? I don't see it.
And I couldn't even use subscriber-latest and calculate it from there because that only shows 25 subs

soft lodge
#

Ok, so I was directed to come here for advice. I know jwck-diddly about CSS, so does anyone know if a way to edit the alert box behavior to scale images based on the alert box size so images don't get cropped if the alert box is smaller than the image?

mild smelt
#

Ok, maybe someone could help me? I recently added the pre-made event rotator and for some odd reason I got a new follow today and the latest follow just shows welcome now no user name? I can't figure it out for the life of me. Is it possible its a character limit? or something that can be changed to make it work? I like having this over an overlay taking up screen real estate but not if its not going to work.

halcyon juniper
#

Good morning smart folks. I have a subathon timer that works really well except there is no way to manually add time without going into overlay editor. I am trying to piggyback off of a stream store event, based on the redeem size, to add time to the overlay timer, I think i'm running into js syntax issues (learning as I go) but am unsure, is anyone available to help? If I was able to open the editor on the base streamelements redeem widget it would be helpful but alas, here we are.

soft lodge
mystic kraken
#

try "object-fit: cover;" in the img object's css

#

or "object-fit: contain;"

buoyant bane
#

Hi. I'm brand new to SE, and I feel I have to say first, WOW!!! I am amazed at how quick and easy it was to get everything set up and running. FABULOUS app!!! excite

There's one thing I want to do, that a half day of researching and reading has not gotten me to:

For a few particular viewers, when they first say something in the chat during a broadcast, I want to play a sound. (I expect I'll have to rest this in between broadcasts.)

I found SE documentation on how to do this (at https://cdn.streamlabs.com/chatbot/Documentation_Twitch.pdf ), but it uses an "Event" command, which appears on the Dashboard of the example pictured in the documentation, but Event does not appear on my Dashboard. I suspect perhaps the documentation is from a previous version?

Is there some way to achieve this now? I mean... I know it can be done; I see other streamers do it. But can I do it within SE, or do I need a separate bot?

p.s. Thank you, in advance, for this Discord server. First time here, but I looked around and it seems that the support for SE is as wonderful as the app itself!!! simcDonut

hardy walrus
#

@buoyant bane that's the other guys aka streamlabs. Not us.

next helm
#

Heya πŸ™‚

I think I may have found a bug in customapi - I have a number of commands which do a customapi call.

As an example I have........................
$(customapi.https ://zoeballz.tv/wot/_Events/rec.php?code=<OBFUSCATED>&user=${user}&event=hyp&to=${1:})

this sends.............
code=<OBFUSCATED>&user=PretzelRocks&event=hyp&to=PretzelRocks
when the user was NOT PretzelRocks.

Now either I am misunderstanding something or there is a serious bug. Can anyone assist please ? πŸ™‚

#

Surely ${user} should be the user who typed into chat and not the 1st argument ?

#

I'll point out that I also tried this on Nightbot and it works just fine so it's not my receiving PHP script that is at fault. I'd like to get this going on SE as it's a pain in the butt to have 2 bots dealing with the same command.

next helm
#

πŸ˜„

hardy walrus
#

${sender} may be a better variable to use

next helm
next helm
next helm
#

BTW - Is there any limit to the usage of customapi please ? e.g. If I set up a command to use regex so EVERY message typed in was sent to my server, would it be rate limited at all ? Thanks πŸ™‚

mighty shell
#

_ _

πŸ”₯ Error with StreamElements Browser sources

These error messages only appear with StreamElements Browser sources.

Only when the browser source is deleted, then the error message is gone, but I need the browser sources.

Error examples below

[obs-browser: '🧲 S T A R T β†’ A P E X T I T L E S H A P E A N I M A T I O N'] Error: [Report Only] Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'none'".

[obs-browser: '🧲 B R B β†’ A P E X - A L P H A'] Error: [Report Only] Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'none'". Either the 'unsafe-inline' keyword, a hash ('sha256-dCImnf5U50C6/yGGZrNBJ0w5/O+LgHlBid+gCtyw7PI='), or a nonce ('nonce-...') is required to enable inline execution.

[obs-browser: '🧲 B R B β†’ A P E X - A L P H A'] Error: [Report Only] Refused to load the script 'https://streamelements.com/overlay/scripts/vendor.js' because it violates the following Content Security Policy directive: "script-src 'none'". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.

πŸ”₯ OBS Log file here : https://obsproject.com/logs/iSXzL42I9ex0ASqU

_ _

hardy dirge
#

I have a command that I’m working on that requires me to use the ${random.chatter} variable twice. Is there anyway to make it so it pulls the same name both times, or is there a different variable I can use to make it pull the same name as the first ${random.chatter} variable does?

next helm
#

Any members of SE Staff ? Is there any limit to the usage of customapi please ? e.g. If I set up a command to use regex so EVERY message typed in was sent to my server, would it be rate limited at all ? Thanks πŸ™‚

#

It's just that on my server, processes are only allowed to run for 60 seconds so I cannot have a process running that can collect the data in the proper way.

next helm
#

Any staff around please ?

#

I don't want to do something and then find I'm breaking any rules

tranquil iron
#

do we really have to beg for api access through a form?

jade ingot
#

Hi! I don't have enough followers to even have access to subs and bits, so I wanted to have follows and chat commands activate an action in an overlay, say the snake game by LX. I tried adding Followers and Chat in the JS and Data editors but it just doesn't work. Maybe Twitch use other variables than that to represent both but I just can't find them.

bitter wagon
#

Sorry - I hope this is the right place to ask.
Do I really have to handle variations manually if I have custom CSS enabled for my alerts or am I missing something? This is pretty bothersome and makes setting up custom subscriber alerts a lot of work. I'm asking because my variations don't seem to be applied anymore, now that the custom CSS has been enabled.

summer crow
#

I'm trying to make a panel for Mods of a channel to update data such as day, timezone etc from the overlay widget fields/data. I can see there is /overlays/{channel}/{overlayId} which lets me pull the data from the widget for the timezone but i don't see a way to update it. Is it possible from the API?

next helm
#

Any staff here pretty please ?

median spruce
#

what happened Why can't I reach can streamelements

young matrix
#

Hi there, i want to create some widgets in typescript. I just want to ask if it is possible to use amd or commonjs modules within a custom widget and if yes what i have to do to get them run?

gentle coyote
#

Hi I've been trying to duplicate a overlay on streamelements i already have made. I did it before somehow but idk how to do it again please help

fervent stratus
gentle coyote
fervent stratus
gentle coyote
#

the whole overlay. but if i can just get it to copy all of my notifications that works as well

fervent stratus
# gentle coyote the whole overlay. but if i can just get it to copy all of my notifications that...

If you want to duplicate the whole overlay, you goto Streaming Tools > My Overlays > Click the three dots > Duplicate.

If you want to duplicate just the alert box, you open a new overlay that you want to copy it over to the back up to the My Overlays page, Open the overlay that has the alertbox you wish to copy, click the layer then click the icon that has the two squares. It will give the option to duplicate the alertbox to this overlay or another. Selcet Other Overlay then choose your destination.

next helm
#

Heya @fervent stratus Any chance I might get an answer to this please, when you have a min spare ? Pretty please !!! #dev-chat message

fervent stratus
gentle coyote
#

@fervent stratus okay thats awesome! but when i try to duplicate the whole overlay it say duplicate in twitch or youtube and i just want it to duplicate on my stream labs

fervent stratus
gentle coyote
#

i meant stream elements im sorry

next helm
#

πŸ˜„

fervent stratus
next helm
#

I've done worse - Posted in here about a bug in Nightbot before now πŸ˜„ I forgot which bot I had used !!

fervent stratus
#

When it provides that response, it's asking if your want to duplicate it to your StreamElements account created via Twitch or your StreamElements account created via YouTube.

This pops up when your account has a merged account on it.

gentle coyote
fervent stratus
barren shell
#

Yo, I'm switching to streamelements from streamlabs and I've got most of my stuff set up but I can't figure out how to transfer the chat box design over - I have a custom design from one of streamlabs packages and I'm not sure if it's even possible to transfer it across

mighty shell
#

_ _

πŸ”₯ Error with StreamElements Browser sources

These error messages only appear with StreamElements Browser sources.

Only when the browser source is deleted, then the error message is gone, but I need the browser sources.

Error examples below - I do not understand their meaning

[obs-browser: '🧲 S T A R T β†’ A P E X T I T L E S H A P E A N I M A T I O N'] Error: [Report Only] Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'none'".

[obs-browser: '🧲 B R B β†’ A P E X - A L P H A'] Error: [Report Only] Refused to execute inline script because it violates the following Content Security Policy directive: "script-src 'none'". Either the 'unsafe-inline' keyword, a hash ('sha256-dCImnf5U50C6/yGGZrNBJ0w5/O+LgHlBid+gCtyw7PI='), or a nonce ('nonce-...') is required to enable inline execution.

[obs-browser: '🧲 B R B β†’ A P E X - A L P H A'] Error: [Report Only] Refused to load the script 'https://streamelements.com/overlay/scripts/vendor.js' because it violates the following Content Security Policy directive: "script-src 'none'". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.

[obs-browser: '🧲 C A M + L A B E L S β†’ A P E X - 16 : 9 '] Error: Uncaught (in promise) #<Object> (https://streamelements.com/overlay/630b9c7ed2f12b4a62b37f17/f_NxtJlAPatJStNslJx04rydX9uoQWdJEkQ8ExGqiyt6MOwA:0)

πŸ”₯ OBS Log file here : https://obsproject.com/logs/iSXzL42I9ex0ASqU

_ _

stark rune
next helm
mighty shell
#

_ _
Hey guys.

**CSS editing of a widget, text problem. **

The original font size is 24 , and when increasing to 50, the message box cut into the username.

I use the StreamElements Widget in this link : https://link.streamelements.com/boxed_chat_by_cocahh

Maybe it is in the CSS editor code : lines 14-26 or 65 - 75 .

When the message gets longer, the message box moves down with each new line and cut less into the username. But that is not realistic solution.
_ _

severe shell
severe shell
stark rune
stark rune
severe shell
# stark rune Is there any possible work around? We tried giving two commands the same alias, ...

Alias will not work, and keywords either. Once one of them is processed, the other will not run.
One thing I did to bypass that was creating a custom widget and using jebaited.net to send chat messages. But that needed to be configured on Overlay editor using JS.
Something like:

window.addEventListener('onEventReceived', (obj) => {
  const message = obj.detail.blablalbla.data.text // I don't remember exactly the object here for the message
  if(message === "!rank"){
    fetch('https://api.jebaited.net/botMsg/JEBAITED_TOKEN/YOUR_BOT_RESPONSE')
    fetch('https://api.jebaited.net/botMsg/JEBAITED_TOKEN/YOUR_SECOND_BOT_RESPONSE')
  }
})

More information on jebaited.net on pinned messages in this channel

next helm
severe shell
fervent stratus
# next helm Any members of SE Staff ? Is there any limit to the usage of customapi please ? ...

Basically - on our github repo we have a chat widget. Change it to send messages over to server instead of displaying on overlay.


Hmmmm. Or scratch that. customapi from bot doesn't send whole message, it just uses the payload. Does that person want to have pinging server to keep it alive via bot? It is even stranger in that case.```

This is the response we got back from one of our devs
severe shell
honest mauve
#

hello can anyone help me when someone types tts followed by the message its speaks tts as well how can i fix it

next helm
# fervent stratus ```Using a customapi call is absolutely wrong for that scenario as bot will try ...

Heya πŸ™‚

It shouldn't be a problem because my api to receive the messages will only respond with a message consisting of a single space which is not relayed back to Twitch from SE. As no response is posted it shouldn't cause any rate limiting on Twitch's end. Is that ok ? I tried it last night and it worked pretty well.

I did notice one slight problem with it though. If a user sent 2 messages to Twitch chat, sometimes it would send their 1st message AGAIN instead of the 2nd message. The SE command I used was........

$(customapi.https://zoeballz.tv/wot/_Events/<REDACTED>.php?code=<REDACTED>&user=${user}&event=mes&level=${user.level}&message=${pathescape ${user.lastmessage}})

Am I using the wrong variables perhaps ? ${user.lastmessage} seems a bit unreliable.

Many thanks πŸ™‚

honest mauve
#

?

mighty shell
fervent stratus
honest mauve
#

so u fixed it?

severe shell
# mighty shell _ _ Hi c4ldas. First of all, **thanks for the reply** , finally an answer...

I checked the log and saw there is a lot of SE reports related to unsafe-eval and Uncaught (in promise). I had this once and the only thing that made me get rid of those errors was creating a new overlay on Streamelements website and then importing it again to OBS.
It worked for some time, and then after some weeks the issue came back. I removed the overlay and created a new one again and the error disappeared one more time. Since then, no more errors in logs from SE overlays.
I don't know why that happens, but that can generate a lot of unnecessary logs.

mighty shell
daring lintel
#

I just reset my computer and redownloaded se and all my scenes and every code i put in them are gone.... fixable?

tiny gyro
#

Is there another way to port in or link dns from playstation to OBS

floral badger
#

Hello,

Would it be possible for example to use Touch Portal to activate a store redemption without the need of posting it into the chat?

(with an api for example?

floral badger
tiny gyro
#

Currently use dns connection to lightstream

floral badger
tiny gyro
#

A Pb haha sorry what

floral badger
tiny gyro
#

OK sweet as thankyou and would that also possibly help getting a remote ps game source

#

Thanlyiu heaps any help is help this part got me stumped

floral badger
#

Lets continu chat via direct message (sorry i used my native there for DM

desert sparrow
#

Hello SE Staff, Im currently trying to setup chatstats for Twitch but have been getting the chat stats 404 error code. Name: https://www.twitch.tv/vibeandreas Account ID: 63427e168f010db0e25f0c50

stark rune
#

I think I found a bug, the "!command" module is enabled in chatbot and set to super moderator permissions. regular moderators are still able to add/edit commands

daring lintel
#

My streamelements bot isnt working and cant figure it out.. help please

cold imp
#

Would anyone that knows coding be able to help me add a "stop timer" button into the "Stream Marathon Timer" widget via the overlay gallery? if so please @ me

next helm
#

@fervent stratus Just wondering if you saw my last reply ? Very many thanks πŸ™‚ #dev-chat message

reef sable
#

Hi

#

You game yes or no?

fervent stratus
next helm
willow canyon
#

Hey, this widget (#widget-share message) is not working properly. The time on the 24 hour clock says 24.19 (and so on) instead of 00.19

kindred jasper
#

Hello, does anyone know a way of triggering pjonp's prize wheel widget (#widget-share message)
Through a twitch channel point redemption?

severe shell
severe shell
willow canyon
#

It says 00.19 in my system time as well (since 24.19 does not exist). I've attached a screenshot of the widget during my stream

#

My timezone was set to Europe/Berlin, maybe it is something that only happens with this setting since yours is showing up normal

severe shell
next helm
crisp shore
#

Ji, I have a very strange problem, never happen before. I have two monitors, one for the streamelement obs.lite and I can move a tab from my left to my right screen but for some reason I can not move the studio(entire)program tab to the other monitor. I have done this 100;s of times, what is this. owe and it keeps crashing

severe shell
# next helm Heya πŸ™‚ It shouldn't be a problem because my api to receive the messages will o...

Getting back to your question, I would recommend that you use the overlay editor for that, as you can have more room to work on. The only issue here would be with the user.level, as we are not able to get that information from SE API without using your token (in this case you would not be able to have values for superModerator and Regular users), but if you just want to know if they are mod, sub, vip, or just an ordinary user, you can use the userState below.

window.addEventListener('onEventReceived', (obj) => {
  if(obj.detail.listener != 'message') return
  let userLevel
  const data = obj.detail.event.data
  const userMessage = data.text
  const encodedUserMessage = encodeURIComponent(userMessage)
  const channel = data.channel
  const userName = data.nick // you can use displayName instead of nick, in case you want to use capital letters

  let userState = { // User profiles
    'mod': parseInt(data.tags.mod),
    'sub': parseInt(data.tags.subscriber),
    'vip': (data.tags.badges.indexOf("vip") !== -1),
    'broadcaster': userName.toLowerCase() === channel
  }

  if(userState.broadcaster) userLevel = 1000
  else if(userState.mod) userLevel = 500
  else if(userState.vip) userLevel = 400
  else if(userState.sub) userLevel = 250
  else userLevel = 100

  fetch(`https://zoeballz.tv/wot/_Events/<REDACTED>.php?code=<REDACTED>&user=${userName}&event=mes&level=${userLevel}&message=${encodedUserMessage}`)
})
#

Just edit an overlay you use on Streamelements website, click on the blue + sign > Static/Custom > Custom Widget
Click on Open Editor and delete everything from each tab (HTML, CSS, JS, FIELDS and DATA)
Copy the code above on JS tab and save it

Try to send a message on your chat and check if your backend is able to get it

uneven oxideBOT
#

@crisp shore ‡️

SE.live is a plugin for OBS Studio for the best OBS support, please join their Official Discord @ https://discord.gg/obsproject

next helm
next helm
# severe shell Getting back to your question, I would recommend that you use the overlay edito...

I have tried and it works great πŸ™‚ Thanks very much indeed πŸ’• I do have a question though. My api checks the HTTP User-Agent to make sure it's SE or NB sending the data. The User-Agent on OBS looks much more like a normal browser........
"Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 OBS/27.2.3 Safari/537.36"

Would you happen to know if it's possible to set OBS to have a custom User-Agent ? I've been Googling but haven't found an answer yet.

#

Also asked on OBS Doscord but no reply as yet.

next helm
#

FOOTNOTE - Question has been answered πŸ™‚ Apparently it can πŸ™‚

severe shell
next helm
severe shell
next helm
#

Apparently it's not even documented !

#

@severe shell Very tempted to set it as "Netscape/7.1" just to see if any websites reply with "WTF?" πŸ˜„ πŸ˜„ πŸ˜„

next helm
#

That reminds me - I used to have a home FTP server which responded to initial login by saying it was an Olivetti M24 !

next helm
severe shell
next helm
#

Ok - I'm tired - I TOTALLY missed the comment you put in the script 😦 My excuse is I've been up for 24hrs now πŸ˜„ πŸ˜„

next helm
twin canyon
#

HI all, I have a question. I was hoping there would be a way to create a new type of alert that keyed off a custom webhook. For example I love the customizability of Stream elements for alerts and I just want to create a custom alert for when someone beats me in a game for instance. Is there anyway to do that?

severe shell
next helm
#

Thanks very much πŸ™‚

true tapir
#

hi! i'm building a chat widget and i was wondering two things:

  1. in obj.detail.event.data for a message, what are the possible values for the "subscriber" field? i'd like to differentiate between tier 1 / 2 / 3 subs, is this possible?
  2. is it possible to detect channel point redeems? specifically i would like to be able to detect a "highlight my message" channel point redeem

thanks in advance for the help!

hardy walrus
#

@true tapir there's one specifically in #widget-share that handles chat input based redemptions so something to work off of.

#

But beyond that it's you'd figure out own your own.

true tapir
#

thanks for the pointer! i found the widget you were talking about (i think) and understand how to work it in

dull lagoon
#

Merch Rotator Widget not working. how to fix?

hexed vector
#

Hello. I'm creating items in the store with the API using the example payload of this message: <#dev-chat message>

The item is created, but it does not appear on the store. If I do a GET to the created item it exist. What am I missing? I double check that I'm creating it in my store xD.

hexed vector
#

If I GET all items, the ones I created with the API does not appear.

hexed vector
#

this is the payload:
||```json
{
"enabled": true,
"featured": false,
"name": "Test item",
"description": "Test description",
"type": "perk",
"accessLevel": 100,
"cost": 1,
"cooldown": {
"user": 10,
"global": 0
},
"quantity": {
"total": -1
},
"alert": {
"enabled": true,
"graphics": {
"duration": 8
},
"audio": {
"volume": 0.5,
"src": null
}
},
"bot": {
"enabled": true,
"identifier": "TestItem"
},
"userInput": [],
"accessCodes": {
"keys": [],
"mode": "multi"
}
}

And this is the response 200:
```json
{
  "bot": {
    "sendResponse": true,
    "identifier": "testitem"
  },
  "cooldown": {
    "user": 10,
    "global": 0,
    "category": 0
  },
  "accessCodes": {
    "keys": [],
    "mode": "multi",
    "random": false
  },
  "alert": {
    "graphics": {
      "duration": 8
    },
    "audio": {
      "volume": 0.5,
      "src": null
    },
    "enabled": true
  },
  "subscriberOnly": false,
  "sources": [],
  "userInput": [],
  "order": 0,
  "_id": "637f8d048d6a5544e89502a1",
  "enabled": true,
  "featured": false,
  "name": "Test item",
  "description": "Test description",
  "type": "perk",
  "cost": 1,
  "quantity": {
    "total": -1
  },
  "public": false,
  "channel": "5dc83892525c3d60626b9485",
  "createdAt": "2022-11-24T15:25:56.310Z",
  "updatedAt": "2022-11-24T15:25:56.310Z"
}

Why the item doesn't show in the store?

hexed vector
#

I found the solution if someone gets the same problem. It is necessary to add the next field when creating. Or you can add it editing.

{"sources": ["bot", "website", "extension"]}
severe shell
# twin canyon HI all, I have a question. I was hoping there would be a way to create a new typ...

You can work with websocket, webhook is not available on SE. In your system, you can send information to SE websocket using this.

async function executeSocket() {
  const id = YOUR_ACCOUNT_ID // https://streamelements.com/dashboard/account/channels
  const jwt = YOUR_JWT_TOKEN // available in https://streamelements.com/dashboard/account/channels > Show Secrets

  const socketFetch = await fetch(`https://api.streamelements.com/kappa/v2/channels/${id}/socket`, {
    "method": "POST",
    "headers": {
      "Content-Type": "application/json",
      "Accept": "application/json",
      "Authorization": `Bearer ${jwt}`
    },
    // You need to use JSON.stringify to send the body
    // You can send any information on body, the only required one is event: 'eventName'
    // The eventName can be anything you want to receive with socket.on('eventName')
    "body": JSON.stringify({
      event: 'beatsme', // this is the only required option, everything else is optional in the body and you can add and remove whatever you want
      data: {
        message: 'Abracadabra',
        title: 'Nice!',
        username: 'any person'
      }
    })
  })
  const socketTest = await socketFetch.text()
  console.log(socketTest) // OK
}

executeSocket()
#

In SE Overlay Editor, you can create a custom widget and add this as an example:

<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.2.0/socket.io.js"></script>
<div id='websocket-title' class='websocket-title'></div>
<div id='websocket-message' class='websocket-message'></div>
* {
  font-size: 2rem;
}
const socket = io('https://realtime.streamelements.com', { transports: ['websocket'] })
 const jwt = YOUR_JWT_TOKEN // available in https://streamelements.com/dashboard/account/channels > Show Secrets

 socket.on('connect', onConnect)
 socket.on('disconnect', onDisconnect)
 socket.on('authenticated', onAuthenticated)
 socket.on('unauthorized', console.error)

 function onConnect() {
   console.log('Successfully connected to the websocket - Streamelements')
   socket.emit('authenticate', {method: 'jwt', token: jwt})
 }

 function onAuthenticated(data) {
   const { channelId } = data
   console.log(`Successfully connected to channel ${channelId}`)
 }

 function onDisconnect() {
   console.log('Disconnected from websocket');
 }

 socket.on('beatsme', (data) => { //event:beatsme is the name you put in the body
   // do your magic here
   // const websocketTitle = document.getElementById('websocket-title')
   // const websocketMessage = document.getElementById('websocket-message')
   // websocketTitle.innerText = data.title
   // websocketMessage.innerText = data.message
   console.log(data)
 })
severe shell
# hexed vector I found the solution if someone gets the same problem. It is necessary to add th...

Great!
Something that I usually do when I want to get the values to create something is:

  • Open the browser developer tools and clear the tabs Network and Console
  • Create the item/command/redemption/configuration I want
  • Check the network tab for the API requests and then look at the headers and payload

With that I can understand better how to call the endpoint and what values I need to send. Sometimes the information available on SE API page is not enough to give all information we need.

hexed vector
#

that could save me hours before xD

still juniper
severe shell
still juniper
#

yeah sure, they'll have to check the event name matches their own event

severe shell
#

Once I was diging into the source and found these events on websockets (going to put here before I lose that). Events on SE Websocket:

"event"
"event:test"
"event:update"
"session:reset"
"session:update"
"overlay:update"
"overlay:refresh"
"overlay:action"
"event:skip"
"overlay:togglequeue"
"alert:settings"
"overlay:mute"

"usernotice"
"authentication-failed"
"authenticated"
"subscription:error"
"unauthorized"
"reconnect"
"disconnect"
"connect"

"contest"
"contests:winner"
"contest:updated"
"contests:join"
"contests:started"

soft sage
#

Is this where I need to ask about my chat not working?

fervent stratus
soft sage
#

Twitch

fervent stratus
soft sage
#

so do I need to be in that room

#

ok thanks

frosty bridge
#

Greetings, I am one of the tech support members over on the Moonlight discord (it’s an app to stream your computer games basically)

We have been noticing that a lot of users are installing StreamElements live and it breaks GeForce Experience… almost like it breaks it from being able to listen on its primary ports, even after uninstalling it.

We’re getting about 2 users a day with this issue and I can’t replicate it on my end. But I do recall one user contacted support and they mentioned the plug-in randomly assigns an open port and that might be related to why stuff is breaking?

Any idea on who I need to contact or refer users to for this problem? Nothing we try fixes it other than reformatting their computers

proud spade
frosty bridge
proud spade
#

no

frosty bridge
# proud spade no

Regardless if it is a port issue or not, any ideas on what I can suggest? I've been in the IT industry for about a decade and one thing is certain, if you have dozens of users reporting the same issue and they all have one specific program installed.... its not a coincidence.

At the moment we're going to add SE Live to the list of known application issues, what is troubling is nothing we do seems to fix it other than a windows reinstall.

It is partly an NVIDIA problem, but at the same time NVIDIA will just tell me its an SE Live problem because it only happens with SE Live users.

proud spade
frosty bridge
proud spade
uneven oxideBOT
#

Please create a support ticket by filling out the form here: https://streamelements.com/contact This will ensure staff can track and resolve your issue in a timely manner.

broken coyote
# proud spade no

Se live would have to use a inbound port. Cloud backups would have to come from somewhere

proud spade
pulsar willow
#

When setting a goal and selecting the monthly sub count it seems to just be last 30 days rather than say this months sub count of Nov 22(1st til 30th). Is there a way to get that count instead for a custom widget?

winged wedge
#

Hey! Did you solve this problem? I'm having the same issue. Thank you!

dull lagoon
#

Merch Rotator Widget not showing?

elfin arch
#

why not @dull lagoon ?

severe shell
acoustic heron
#

#widget-share message

Does anyone know how to set this one up to get the rotating effect? It seems when I change one it effects them all.

hardy walrus
#

@mild cipher ^^^^

severe shell
acoustic heron
severe shell
acoustic heron
acoustic heron
#

@severe shell - but I can’t work out how I get it to show sub, follower, raid, ect - like it just rotates between subs

#

Then when I switch back to followers it shows this on the end of the name

severe shell
acoustic heron
severe shell
acoustic heron
acoustic heron
#

Thank you for your help!!

mild cipher
# acoustic heron <@282327953864523776> - but I can’t work out how I get it to show sub, follower,...

Hi!! This widget rotates between multiple events of one type only (e.g. the last 20 follows, etc). If you want a widget that shows the last event of multiple types (last follow, last sub, last cheer, etc) then you probably want the other widget, rotating metrics - https://streamelements.com/dashboard/overlays/share/5cc9fbd0be35f88ec0726126

marsh fog
#

could we get an updated documentation here?
https://dev.streamelements.com/docs/api-docs/54472038d5274-channel
at the Body parts we have an "example" only

  • there is no description what kind of "modes" are existing / accepted
  • there is no description what can we put to the "users" like usernames only or maybe we could use ids or something too
true tapir
#

hi, i have a question. is it possible to detect if someone has sent a "first-time chat" (the one that twitch specially calls out)? i would like to have different styling for an on-screen chat if this is the case.

severe shell
# marsh fog could we get an updated documentation here? <https://dev.streamelements.com/docs...

I believe that endpoint is to add or set points to users, almost sure it is not to use for context as it says. The modes can be "add" or "set". But I'm not entirely sure on how to use it.
I found the body should be something like this:

{"users":[{"username": "c4ldas"}],"mode":"add"}

However, it only says "Created" with Status 201 and I could not see any changes in the points. @viral patrol, do you know something about this endpoint?

What do you like to do exactly?

severe shell
marsh fog
#

and yeah this API is not for "start a contest" as it says on the site πŸ˜„

actually found this API earlier on this discord with an example where names was used with add mode, but since the documentation is not complete here i was wondering what else can we do with this

blazing gorge
#

Hi not sure where to ask this but I’ve noticed one of my tees is showing up weird in the store. You can’t see what’s on the front only what’s on the back any help?

late flax
#

Hello guys πŸ™‚
I'm having fun setting up a new overlay but I need some data. Is there a way to get the top monthly sub gifter from the data object?
It seems it's not possible, but it sounds very weird since we can pull the all time sub gifter, monthly top cheerer etc ... only the top monthly sub gifter is missing :/
Is it going to be fixed ? Is someone working on it ? πŸ™‚

signal moth
#

so with out fail my stream goes red and disconects me from the stream every 1 hour

hexed vector
#

@marsh fog @severe shell
A few days ago I made a script to pass all users points from one channel to another.
modes are, as @severe shell said, "add" and "set".
for usernames I used usernames, I didn't try Ids because the GET points only gives username and points.

So the body must be something like this:

{
  "mode": "set", // "set" or "add"
  "users": [
    {
      "username": "username",
      "current": username-points,
    },
    {
      "username": "another-username",
      "current": another-username-points,
    }
  ],
}

There's a limit of 1000 users per request.

severe shell
hexed vector
severe shell
real furnace
smoky olive
#

Hello

#

I already tried asking but I don't think anyone was able to help before

#

Does anyone know how to make the background of something blurry?

#

Best way I can visually explain it is with the iPhone

#

The background of this is blurred but stuff still moves and you can see it

still juniper
smoky olive
#

As for those links I don't know how I'd add that to what I want to do

desert pebble
#

Is there an ongoing issue with the chat box?

mortal wagon
#

Random ask but does anyone have a command that pulls ya tiktok follower count an latest video ?

past osprey
#

Is it possible to make a custom alertbox but for a non-twitch event instead? (so an alert is triggered by an API)

severe shell
severe shell
#

If you have a more specific question, we can try to give some more directions, just let us know πŸ™‚

dense cove
#

Hello there, not sure if this is the right channel- does anyone know a tool or method to streamline question box/cards? Do OBS/SE support that natively or through a plugin maybe?
basically AMA integration (think marshmallow and like)
if you have any idea or suggestion please feel free to ping me :)

winter atlas
#

Hello,

I have a little problem, I have to wait 24 hours without streaming the game, except that the progress bar is stuck at 23:55.
In addition, on my stream with the overlay, it shows 33 new PC players and on the dashboard 32.
I think the dashboard is blocked at 11:55 p.m. and 32 new PC players.

Can you help me ?

I would like to end the campaign. Thanks in advance.

severe shell
turbid mango
#

trying to do an html ticker widget on my overlay. and its not displaying. what am i doing wrong? is this not possible?

#

when i input the html for it, it doesnt not display the ticker tape, instead just a link for trading view, which is also in the code

#

the way its supposed to look

#

this is the way it looks in stream elements

#

anything over here that needs adjusting?

severe shell
# turbid mango

SE blocks that type of embed script execution, it seems... You can see this in console:
Uncaught DOMException: Failed to read the 'cookie' property from 'Document': The document is sandboxed and lacks the 'allow-same-origin' flag.

vagrant wraith
#

idk if this is where to post this but i have been having an issue where one of my viewers can not redeem anything on stream despite having points, i suspect its because they changed their name about 2 months ago. Their name is RigotheGreat but it WAS rigomendez07. My account id is 6132d5aab370f5b4bbf95543

#

I this something someone can help me with?

broken coyote
turbid mango
#

i will use streamlabs for the other features

severe shell
# vagrant wraith idk if this is where to post this but i have been having an issue where one of m...

Logout/login from your Streamelements account will fix that. Try it from here:
https://streamelements.com/logout

That will refresh your token with Twitch and people will be able to redeem points again.
After that, if there is an specific user who cannot redeem it, ask them to do the same.

agile ermine
#

Hi,

I'm using the "Streamelements Events Rotator by CO6Studios" and I would like to increase the delay between each notification animation. I looked around in the code but I couldn't find that specific setting.

Can anyone point me in the right direction please ? Thank you.

hushed scroll
#

Hey y'all, I've submitted a widget yesterday but I needed to change the code today to implement more stuff, any way to update the submission or something like that?

severe shell
# hushed scroll Hey y'all, I've submitted a widget yesterday but I needed to change the code tod...

If the links are still the same, it doesn't need to update the submission. The code analysis take some time to be reviewed, so you don't need to worry about that as your submission was sent yesterday.
However, if the link changed (usually jsfiddle put a /2/ at the end of the address, and your submission finishes with /1/), you can submit it again.

From the form, on part 7, you can inform that you had submitted the same widget before but needed to update the links, so the previous one can be ignored.

stone gorge
#

I've got some html/css/js code from github for a custom Xbox achievement follow notification.
I've put it into CSS editor for a follow alert on Streamelements and everything is working fine but where the little trophy icon shoul be, there is nothing.

I'm not very good with code so wondered if someone could help me with what i would need to change to add the logo to the alert?

hushed grove
#

Is it possible to communicate between multiple custom widgets and thus exchange JSON objects, for example?

severe shell
severe shell
# hushed grove Is it possible to communicate between multiple custom widgets and thus exchange ...

You can use SE_API to communicate between different custom widgets as they all will receive the alert:
https://dev.streamelements.com/docs/api-docs/775038fd4f4a9-stream-elements-custom-widgets#se-api

Using SE_API.store.set('keyName', obj) will store an object on that keyName. This will emit an alert with the listener "kvstore:update"
Using SE_API.store.get('keyName') you can retrieve the object in that key

Unfortunately, it is not possible to delete the keyName once it is created (there isn't a SE_API.store.delete)
If you use SE_API.store.set on the same keyName, you will replace the value of it.
The good thing is that you can create as many keys as you need with different names (maybe there is a limit, but I don't know what it is)

hushed grove
#

Ah, I see. I just tried it and it works. Only this event is fired multiple times, although I only set a key once. Looks like a bug :/

severe shell
hushed grove
#

Urgh. Then I guess I'll have to work with IDs, which I'll then cache to prevent an action from being executed multiple times. Thank you very much for your help!

severe shell
# hushed grove Urgh. Then I guess I'll have to work with IDs, which I'll then cache to prevent ...

Well, if you don't need to store the data, you can use the endpoint to send an event via websocket. This will emit an event with listener "event:test":

window.addEventListener('onWidgetLoad', async (obj) => {
  // Get the apiKey and accountID onWidgetLoad
  apiKey = obj.detail.channel.apiToken
  id = obj.detail.channel.id
})

fetch(`https://api.streamelements.com/kappa/v2/channels/${id}/socket`, {
  "method": "POST",
  "headers": {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": `apikey ${apiKey}`
  },
  "body": JSON.stringify({
    event: 'event:test',
    data: {
      //Your object here   
    } 
  })
})

So you just need to read it with onEventReceived

window.addEventListener('onEventReceived', async (obj) => {
  if (obj.detail.listener == 'event:test') {
    console.log(obj.detail.event)
  }
})
#

The good thing is that will trigger only once.

marble linden
#

Is there possible that I want to change my tipping link?

severe shell
modern citrus
#

Is there a way to get actual helpful error messages when developing widgets? Seems like it always points to srcdoc and it's a different error depending on the browser.

opaque wasp
modern citrus
opaque wasp
modern citrus
#

So destructuring single variables out of objects is not allowed since it's the same syntax as rendering? Seems like streamelements should check to see if const, let, or var are in front before trying to render it.

opaque wasp
modern citrus
#

Yeah if I don't destructure it's fine. I just think this is a weird gotcha when destructuring seems best practice and multivariable destructuring works no problem.

opaque wasp
severe shell
# stone gorge Thanks for the reply. The github link is https://gist.github.com/anonymous/512a1...

There is an external CSS that is not working on the code. I believe in that CSS has information about the xbox-logo
Also, if we check the preview on Codepen where the code is hosted (https://codepen.io/FOUR20BlazedIt/pen/rJvwbO), we can see there is no information about that either, it is just a green circle..

But you can try to get an image and add in there. Just add the following information on CSS part of the code:

.xbox-logo {  
  content:url(your_image_URL_here);
}

You can upload this image and use the URL for that:

stone gorge
#

That's awesome thank you @severe shell

severe shell
stone gorge
#

Yeah that's what i wanted. This is awesome thank you. I tried to see in the code where i could add/change the image but didn't know what code i'd need to enter it

unreal yew
#

Not sure if this is the right thread for this but I would like for chat users to be able to request songs. However, I also do not want anyone to be able to post any link into my chat. Whenever someone does a song request the user is timed out in chat and the song request never goes through. I have tried whitelisting youtube.com but it still does not work. Is there any way to be able to have song request without allowing any link to be posted in my chat?

hardy walrus
#

@unreal yew have them use the videoID found at the end of the link.

For example this is the latest video by Wildcat from Among Us DFUJcSRhntY

drowsy sonnet
#

hey the website doesnt count the followers i alr had before start using the website so i cant setup my follower count properly can anyone help me

drowsy sonnet
#

<@&382267076632379392>

upbeat trout
#

Hello, I was wondering if this is the place to post about an issue I'm having with coding for a custom Chatbox? I'm pretty much done, just can't find a way to change one small thing that I need to alter

#

I'm trying to make it so the background image changes if a Mod is talking vs other chatters, the background is a box

#

And I have two images, one orange, one green

severe shell
severe shell
upbeat trout
# severe shell You can post it here, if we know how to help, we will πŸ™‚

Thank you, what would I need to post exactly? I'm effectively got two identical images (I'll add one for reference), working as the Background-Image for my chatbox, however if a mod has said something, I'd want the background image to be a different one (the same, but the orange is green), would this be a JS line to add somewhere?

opaque wasp
upbeat trout
#

This is a custom image working on the background-image parameter, I don't think it would work like that, right?

#

But I assume I could do something like check if the user is a Mod and then make the background-image different?

#

I'm just not really sure how to do that ;-;

opaque wasp
upbeat trout
#

Do you know what script I'd have to type where for that?

opaque wasp
# upbeat trout Do you know what script I'd have to type where for that?

You should look inside obj.detail.event.data.badges for infos that tell you if the user is a moderator or not, where obj is the message event obviously. Then I don't really know how you build the HTML dynamically but you most likely wanna set the background-image CSS variable to the other background URL.

upbeat trout
#

And this is where the image is in the CSS

opaque wasp
#

lol, gotcha

upbeat trout
opaque wasp
# upbeat trout Sorry for the silly questions as I'm really new to HTML/CSS and never really use...

Ok so, you'll need to add/edit a few lines.

Add a new line after row 109
let isMod = obj.detail.event.data.tags.mod == 0 ? false: true;
Now you gotta pass this variable to the addMessage function so, in the line after add , isMod so it will looks like addMessage(username, badges, message, data.isAction, data.userId, data.msgId, isMod);

Next, you gotta do basically the same into the addMessage function, so from this function addMessage(username, message, badges, user_id, msg_id, color, isAction) { to this function addMessage(username, message, badges, user_id, msg_id, color, isAction, isMod) {

Then add a new line before const element declaration inside addMessage function

if(isMod) ifMod = `style='background-image: url(${'INSERT_YOUR_URL_HERE'}) !important'`;

Now you can overwrite the first line into const element and add the background if needed, so from this
<div data-from='${user_id}' data-id='${msg_id}' class='message-row {animationIn} animated' id='msg-${totalMessages}'>
to this <div data-from='${user_id}' data-id='${msg_id}' class='message-row {animationIn} animated' id='msg-${totalMessages}' ${ifMod}>

Tried to make everything clear, ask if you need help understanding

upbeat trout
earnest dune
#

So for the standard shoutout command I made- !so username Check out @${1}, they are playing ${game ${1}} at https://twitch.tv/${1} my issue is that sometimes a different mod will put the @ before the username and then it messes the link and it ends up being https://twitch.tv/@user and then shoutout is useless. Is there a way for the bot to check for the @ and then eliminated it so it doesn't post in the link?

earnest dune
#

ok i figured out how to fix it, if anyone is looking to do this. I changed my shoutout command to this and it never includes the @ in the link: Check out ${1}, they are playing ${game ${1}} at https://twitch.tv/${channel ${1}}

upbeat trout
cinder cape
#

like make the text come in about 1 to 2 seconds after or so

opaque wasp
severe shell
jade atlas
#

Hi there!
What exactly is returned by the bot/:channel endpoint in the logs field?

hexed vector
jade atlas
severe shell
deft stag
#

Any Devs in here? I have some information to share that may be useful.

What happened?

  • Tried to open Stream Elements OBS (as admin)
  • Unsuccessful this time
  • OBS flashed up, then disappeared
  • OBS appeared in system tray but disappered on mouse over
  • Camera lights came on briefly showing for a second OBS had picked them up in the scene

What did I do?

  • Deleted and replace each file one by one to see what was causing this issue from : %appdata%\obs-studio
  • Once this file was removed, OBS launched again properly
  • Problem file was: obs-streamelements-core
  • Below/attached are the contents of that file in notepad (in case it contains any useful information as to why OBS failed to launch:
heavy coyote
#

Hello everyone!

I'm looking to add the name of a random current viewer to a subscriber alert message. I know I can pull the name of a current random viewer into a chat message by using ${random.chatter} but is there a way to do the same to an alert?

For example, I'm looking for the equivalent of "{sender} gifted a sub to {name} and ${random.chatter}'s head exploded."

loud copper
#

ive got a pipedream set up to port over Kofi subs and donations, but is there a way to tie in a purchase on another site or commission through kofi or some other site to the alert box for merch purchase?

#

im not seeing a way to add custom items to the se merch store, so thats a no go as i find the design your own product options to be bland

pulsar willow
#

I have tried and tried and tried and tried to set up a new bot name, now my bot doesn't work at all

uneven oxideBOT
#

@pulsar willow ‡️

If your commands recently stopped working and you're using SE.Live and a custom bot name do the following:

  1. In SE.Live, click on the hamburger menu (three stripes) at the top left of your activity feed
  2. Click on Stream Settings > Custom bot name
  3. In the Custom bot name field select Set custom bot name, not your already existing username (with capital letters). Note: If you already connected an account that way, the third entry will show as the account name (see image https://i.imgur.com/re4theQ.png).
  4. Scroll a bit down and click on the purple Connect Custom Bot Account button
  5. Log in as usual and Authorize the custom bot name
  6. Back in the Activity feed, click on the Send Test Message button and check if your custom bot name starts working again
pulsar willow
#

I have done that numerous times.

uneven oxideBOT
mortal wagon
#

Has twitch recently changed how you pull subscribers ?

still juniper
#

no

upbeat trout
#

I was wondering if anyone could help with this? I had this working before with the help of someone on here, but I wanted to make it so if they're a Mod it changes the BG image AND colour of their name, but when we altered the code like this, it's now not doing either, any ideas?

severe shell
severe shell
upbeat trout
heavy coyote
severe shell
severe shell
upbeat trout
severe shell
# upbeat trout Here you go!

You closed the quote in the wrong place. ${customBG} and ${customColor} should be outside of the quotes, this way:

const element = $.parseHTML(`
<div data-sender="${uid}" data-msgid="${msgId}" class="message-row {animationIn} animated" id="msg-${totalMessages}" ${customBG}>
    <div class="user-box ${actionClass}" ${customColor}>${badges}${username}</div>
    <div class="user-message ${actionClass}">${message}</div>
</div>`);```
upbeat trout
severe shell
upbeat trout
marsh pike
#

Hello! I am making my first twitch chat box overlay and I am looking for a toggleable way to remove the colon from the twitch username. Would anyone know how to do this using css?

real furnace
broken coyote
marsh pike
dawn delta
#

I am looking to get some help with Harvey Toad face's Stream Marathon widget. A friend basically wants to add follows and channel points to the timer when people do those. I guess my main question is there a proper syntax for follow and channel points in stream elements, or is there somewhere i can go in stream elements to look at the syntax and vocabulary?

So to add followers would it just be follower-latest ?

severe shell
# dawn delta I am looking to get some help with Harvey Toad face's Stream Marathon widget. ...

follower-latest is the option for followers, indeed.
However, in order to use Twitch channel points, the channel point needs to have the option "Require Viewer to Enter Text" enabled. Otherwise, the redemption will not be recognized by SE when it happens.
A channel point redemption has a key called obj.detail.event.data.tags["custom-reward-id"] on message listener. So if that key is present, you know it means a channel point redemption

dawn delta
#

Thank you! Does message listener auto capture how many points were redeemed with it similar to a tip?

#

and would that mean the option would be custom-reward-id-latest ?

severe shell
severe shell
dawn delta
#

Okay so i would need someway to pull the amount from the ID.

severe shell
dawn delta
#

Yeah that might just be easiest. She wanted to add to the timer based on the points used, and the amounts are different values for different redemptions.

#

Thank you for all your help by the way!

severe shell
dawn delta
#

I got follower working πŸ™‚ Having not programmed in years I will take it

#

So trying to walk through this, here is the code for if someone tips:

else if (listener == 'tip-latest' ){
amount = event["amount"];
addTimeToCounter(toAdd * tip_time, event, "tipped");

And here is the code in jerbaited for hydrate:
:"Hydrate!","__typename":"CommunityPointsCustomReward"},{"id":"43219a94-28df-4010-a9d4-79055804052d","backgroundColor":"#9147FF","cost":500,"defaultImage":

So would it be possible to pull the cost? Something like

else if (listener == 'custom-reward-points-latest' ){
amount = event["cost"];
addTimeToCounter(toAdd * tip_time, event, "points");

Or is there someway to look up the cost based on the ID?

Also if there is any SE syntax document I can look all this up in and read through I would gladly go that route πŸ™‚

#

A separate question: Is there anyway to create commands that would not show up in twitch chat that the owner or a moderator could use? Something like !add1minute so we could add minutes to the counter but it wouldnt show in chat?

severe shell
# dawn delta So trying to walk through this, here is the code for if someone tips: else if (...

There is no listener called "custom-reward-points-latest". For channel points you can use this:

window.addEventListener('onWidgetLoad', async (obj) => {
  const jebaitedAPI = await fetch(`https://api.jebaited.net/twitchItems/${obj.detail.channel.username}`)
  const jebaitedJson = await jebaitedAPI.json()
  customRewards = jebaitedJson[0].data.community.channel.communityPointsSettings.customRewards
})

window.addEventListener('onEventReceived', async (obj) => {
  if (obj.detail.listener == 'message' && obj.detail.event.data.tags["custom-reward-id"] == "43219a94-28df-4010-a9d4-79055804052d") {
    for (const element of customRewards) {
      if (element.id == obj.detail.event.data.tags["custom-reward-id"]) {
        hydrateAmount = element.cost 
        console.log(hydrateAmount)
      }
    }
  }
})
dawn delta
#

holy crap thank you.

severe shell
#

I'm just making a simplified version so anyone can understand and use in case they need. Of course, there are better ways to optimize it and tie the code to be more concise, but every time we add a new feature, a new monster member is created, so we end up with a new Frankenstein

dawn delta
#

lololol I completely understand. Again thank you so much for your help!

keen ivy
#

Hello, is there any issue with the /giveaways API endpoint? All endpoints work fine, except this one, which gives me 404 Not Found.

keen ivy
keen ivy
#

well, now, /giveaways/{giveawayId} works, but did endpoints for starting, listing joined users, etc. change? Because those give me 404 error now

severe shell
# keen ivy well, now, `/giveaways/{giveawayId}` works, but did endpoints for starting, list...

Here you can find some endpoints I collected some time ago.

Create giveaway
curl --request POST --url "https://api.streamelements.com/kappa/v3/giveaways/ACCOUNT_ID/" -H "Accept: application/json" -H "Authorization: Bearer <JWT_TOKEN>" -d "title=Test_Title" -d "botResponses=true" -d "description=Test_Description" -d "cost=0" -d "subscriberLuck=3" -d "subscriberonly=false" -d "freeTicket=true" -d "maxTickets=1"

Start giveaway
curl --request PUT --url "https://api.streamelements.com/kappa/v3/giveaways/ACCOUNT_ID/GIVEAWAY_ID/action" -H "Accept: application/json" -H "Authorization: Bearer JWT_TOKEN" -d "action=start"

Stop giveaway
curl --request PUT --url "https://api.streamelements.com/kappa/v3/giveaways/ACCOUNT_ID/GIVEAWAY_ID/action" -H "Accept: application/json" -H "Authorization: Bearer JWT_TOKEN" -d "action=close"

Not sure about lising joined users and how to change the giveaway (maybe a PUT on the giveaway ID)

keen ivy
severe shell
keen ivy
severe shell
keen ivy
#

thank you πŸ˜„

gloomy quail
#

Hello! When editing Fields in custom css, it seem to be unable to translate underscores in a value, resulting in {{fontName}} not adding the correct value, causing the widget to revert to a backup font.

   "type": "dropdown",
   "label": "Font Family",
   "value": "supernatural",
   "group": "Font Settings",
   "options": {
     "supernatural": "supernatural_10_02"
    }

The font name works in CSS if set directly there, so parsing issue in Fields/json? All other fonts work, with the only difference is the underscore. I tried with another font with an underscore, same results.

I can set it directly in CSS, but defeats the goal of having field dropdown options. πŸ˜› I was wondering if there is a workaround? I do not work with json often enough to figure out, or maybe an editor bug. Thank you!

severe shell
# gloomy quail Hello! When editing Fields in custom css, it seem to be unable to translate unde...

Left side is the actual font name. Right side is the name that will appear to the user. Check the example below:
Note that in my code "Triakis Font" has double space in the name, so I had to put it in single quotes inside double quotes.

  "fontName": {
    "group": "Font Settings",    
    "type": "dropdown",
    "label": "Font Name",
    "options": {
      "supernatural_10_02": "Supernatural",
      "'Triakis  Font'": "Triakis Font",
      "Algerian": "Algerian",
      "Agency FB": "Agency FB"
    }
  },  
gloomy quail
dull lagoon
#

Merch Rotator Not showing.

upbeat trout
severe shell
# upbeat trout By any chance, say I wanted to add the option for it to change for Subs too, how...

To know if the user is a mod, sub, vip or broadcaster, you can use

const data = obj.detail.event.data
const channel = data.channel
const user = data.nick

let userState = {  // {mod: 1, sub: 1, vip: false, broadcaster: false}
    'mod': parseInt(data.tags.mod),
    'sub': parseInt(data.tags.subscriber),
    'vip': (data.tags.badges.indexOf("vip") !== -1),
    'broadcaster': user === channel 
}```
And then you can check using 
```js
if(userState.sub){
 // code here
}
else if(userState.vip){
 // code here
}
else if(userState.mod){
 // code here
}
else if(userState.broadcaster){
 // code here
}
upbeat trout
severe shell
upbeat trout
#

And then on the second part changing the if isMod to the other parts and have the customBG and customColor lines between each one saying what they should do?

#

I think

#

lmao

severe shell
upbeat trout
#

Thank you!

upbeat trout
upbeat trout
#

Thank you!

severe shell
jaunty saddle
#

I’m trying to create a command in my channel that is very similar to how !quote functions, but I want to use it for facts. How do I do that? (And is this the correct place to ask?)
Example: !facts add XYZ Results: !facts Message: XYZ #

upbeat trout
severe shell
severe shell
jaunty saddle
jaunty saddle
severe shell
# jaunty saddle I could, but I was hoping to also keep the !quote function available

Well, in that case you can use the Fyre API with pastebin for that:
https://thefyrewire.com/docs/api/twitch/pastebin/

You can create a new paste on pastebin.com (I recommend that you create an account in there so you can edit your paste). Each line of the file will be a random text
After that, you will have a link for that paste, the last part of the link is the ID.
You can create a command for that using the following (replacing PASTEBIN_ID with the ID of the paste you created):
${customapi.https://api.thefyrewire.com/twitch/pastebin/PASTEBIN_ID}

severe shell
viral flare
#

Looking for some help with alerts not showing videos chosen. I’ve done everything I’ve found in YouTube/google but they don’t show up

oblique trellis
#

hey i just saw someone talking yesterday about the quotes usage. It seems for me the quotes command are entirely gone from my modules can i get any help on that?

hardy walrus
oblique trellis
#

i think it just arrived

#

or i was blind

hardy walrus
still granite
#

Hello, trying to get alerts setup, however tip messages do not appear unless I add it to innerhtml, which then messes up the spacing and text color. How can I add tip messages as normal text?

uneven oxideBOT
#

@still granite ‡️

Text not showing up over your alerts? Go to the Advanced Text Settings and set the top margin to 50, you can work your way to the right position from there.

still granite
#

thats not an option with custom css enabled though

upbeat trout
#

How do I share an overlay if I've made it for someone, like on the Widget Share page in the Discord?

hardy walrus
upbeat trout
#

Or would it be a lot of copying and pasting pretty much?

#

I imagine

hardy walrus
#

If it's entire code and not asset based like the default alertbox then I'd suggest something like codepen with instructions.

#

If it is like the default widget then invite is the best solution.

flint harness
#

Which parts of the API work for YouTube?

#

I read somewhere that only certain portions of it will work with YouTube, and to get the most functionality, I would need to use Twitch...

upbeat trout
hardy walrus
#

100% in that case.

upbeat trout
hardy walrus
#

Anything using actual files would be editor.

upbeat trout
#

Got it, yeah, it's only using Images/Videos that I uploaded to SE, but they're using the Video Address in the code

little wharf
#

Hey,
I want to sync my tipeestream tips with streamlabs(trigger overlays etc.)
Do I need to apply if I only want api acces for my channel? And if yes how long does it take?

severe shell
sand geyser
#

How do i setup a store

opaque wasp
#

According to the docs and on my past works the obj.detail.listener should looks like widget-button when a button from the settings menu gets clicked, instead I'm receiving event:test listener. What's up?

severe shell
opaque wasp
kind beacon
#

Hey guys - according to the widget doc there should be a " data["subscriber-session"]["count"] - Subscribers since session start " within the obj. But it seems to be missing in the onWidgetLoad aswell as in the onSessionUpdate Event ?

stark rune
#

The chat bot needs an option for bulk subscriber messages. If you have chat alerts on and somebody drops a large amount of gift subs, the bot spams chat and gets hit with a rate limiter by twitch

#

Also, since it seems like the bot can in fact send back to back messages. I still don't understand why you can't implement multi-part chat commands in the bot

uneven oxideBOT
#

@stark rune ‡️

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.

severe shell
kind beacon
#

ok - strange though that it does not get triggered by an emulated event

broken coyote
#

Normally when I’m messing with this. I’ll set the current session amount to 1 that why I can grab the info to verify things are working

sand cosmos
bright mango
#

Hey yall, I want to write a widget (or use one ) that includes chat messages in loyalty counts. So essentially, the. more someone chats, the more their loyalty goes up.
I've started to mess around with setting up user counts (and incrementing them when someone chats) using the SE_API store but When it comes to finally displaying say, the top 5 users, I'm not sure the best way to do that.

Is there an SE store api method that just essentially gives me all keys so I can pull the values out or something? Rather than the .get() method that requires knowing the key already

pearl oyster
#

hi guys, im looking for a widget that help me in a subathon in youtube, that add time in real time from super chats, subs and memberships, somebody know about something like that? yogevGood

wicked quartz
#

Hi, I've got some issues with the custom CSS that I can't seem to work out. I'm trying to transfer my animated twitch alerts to trovo by using the duplicate alerts feature. According to the tutorial I'm using, the next step is to copy and paste the custom CSS inputs (HTML, CSS, JL, Fields) from the twitch copy to the trovo copy, but all its giving me is the default shark. I've tried 4 or 5 times now with the same result. I'm not familiar with code so I don't know what to do now. The twitch copy is unaltered and runs as normal. I would appreciate any advice! Thanks.

severe shell
bright mango
severe shell
severe shell
bright mango
wicked quartz
severe shell
coarse hull
#

is anyone aware of a reliable way to detect where a custom widget's code is running (e.g. within the overlay editor, in OBS, etc)? I feel like I've seen this called out in a widget before, but now that I'm looking for an example, I of course can't find it in the many overlays I've added to peek at. thanks!

wicked quartz
#

I can give you screenshots of the code I'm trying to copy paste as well if that would help.

severe shell
coarse hull
zinc vale
#

Hello

#

I have a problem

#

Emulation sent but alerts are paused in the activity feed

#

Why??

#

Please help me

wicked quartz
nocturne ferry
#

I'm getting into modifying a custom chat widget, is there any better way to see my changes besides using the SE code editor and browser console? it's super tedious to constantly close it out and send a test message, then open the editor back up again

hardy walrus
nocturne ferry
#

ah, unfortunately there doesn't seem to be a chat message emulation option 😦. definitely saving this for later though, this looks great!

regal juniper
#

I feel dumb asking this, but I see under add (+) button, under "STATIC / CUSTOM" I can add video... and I see where I can upload files and it will store audio under "SOUNDS", but how can I add a sound to a custom widget without setting up as an Alert? Or is setting it up as an Alert the way to go about it?

regal juniper
#

[Static/Custom]->[Custom widget]? or am I still looking in the wrong spot?

#

nvm, I think I can accomplish this with [ALERTS]->[Store redemptions]. Thanks

solid bane
#

Hello, good evening, could someone help me? I have a problem with the "end credits" widget, I take as a base the one that is already made for twitch and modify it to work with facebook but when the session list is displayed it only shows 25 elements, could someone help so that I can show the complete elements, I think it must be something very simple but I am not visualizing it.

#

Put a variable for each event.

#

I kept the structure that was already defined and only adjusted it to what I needed

#

I left this part exactly the same

nocturne ferry
#

does anyone know how to fix the right edge getting cut off? this *does* get centered if the widget width is large enough (~400px) and works well the wider it is, but once it gets to the 350/300 mark the right side of the message container (not the text) starts getting clipped no matter what. convinced this is an issue with my css

rn i "fixed" it by having having it reduce the width when it reaches 400/300 px wide but i'd still like to know what's causing this

marsh pike
severe shell
solid bane
vital mango
#

Would there be any easy way to keep a log of messages that are identical via using the custom widgets?

vital mango
#

Basically what I'm trying to do is create a widget that can read messages in TTS if the messages are sent enough times. I've already got the TTS portion working, I just need to figure out a way to read if a message has been sent enough

vital mango
#

I just need a way to store variables

opaque wasp
vital mango
#

Late night no braining I suppose

nocturne ferry
pulsar willow
#

I have a basic cheers label which is "{name} {amount} bits." Is there any way to make the {amount} a different color?

hardy walrus
pulsar willow
#

Legendary, thank you!

pulsar willow
#

All of the text is still white

hardy walrus
#

You forgot some " "

pulsar willow
#

This works with stream labels, right?

hardy walrus
#

It should but without checking personally no idea tbh

pulsar willow
#

It just remains white

knotty thorn
#

maybe put a space between : and # for the color?

pulsar willow
#

Alright, I'll give it a crack

pulsar willow
hardy walrus
#

Does it work with color names?

pulsar willow
#

Color names?

hardy walrus
#

literal names

#

vs hex like that.

pulsar willow
#

Nah, it was still white even with the colour name

hardy walrus
#

Previously this would work since I had answered that here. Lemme see if I can poke someone who could answer this.

severe shell
#

It seems you cannot change the color of variables using in-line tags. You can change the text, but not the variables. You can see here the x {amount} is in the tag, but only x changes

#

Even adding that !important, it does not make any effect

hot trout
#

it's because the variables get muched up to make them wiggle

#

also, doing this messses with the tts if you use it

#

so you're probably best off just using the highlight text settings, or going custom css

pulsar willow
young saffron
#

hey there, trying to set up a chat command that links my latest youtube video. It works fine and is easy enough, however the functionality seems to freak out when there are premiers set on youtube. any ideas?
freakout as in, it links to a premier, but not the premier thats scheduled to release the soonest. kind of just randomly selects any premier regardless of date

#

id also love to know if there is a way to trigger a few second video preview of my latest youtube vid as an overlay, via the command

fluid mountain
#

hello, I need help with the leaderboard extension on Twitch. It shows my Cheers, but no data for my Subs and Chat Stats or Points. Any help? I tried reddit and got redirected here. Yes, I have changed my Twitch username twice in the past before though. I heard that may be a factor in the issue. Though this is my first time using StreamElements add on.

severe shell
severe shell
fading hearth
#

Hi all, I'm using streamelementsNet to listen for tips and trigger things in my stream. This was all working fine up until Nov 21st and then I stopped getting OnTip Notifications. Did something change that I need to update?>

#

Authorization seems to work fine. I checked the JWT token and that is correct. Any other things I can check?

#

Looks like if I subscribe to the raw messages I see it come through

pulsar willow
#

Realized that it was a dev thing and not twitch. β€œWhenever I tried to set the duel up the max is now only 100k and it won’t work when I put the max amount >100000 β€œsomething went wrong” any clue?”

severe shell
hoary lintel
#

Hi, i'm planning to try and control SE stuff via CLI as I'm managing multiple channels with sponsors.
Is it possible for me to start using the API to atleast test the possibilities before i go build a full application for use?

#

More specifically, it will probably be limited to timers and commands

pine orchid
#

which flavour regex streamelements use?

severe shell
severe shell
muted agate
#

Hello Guys,

In StreamElements Reward Store, there is a field where you can add gift cards that are immediately redeemed by the user when they are redeemed. Is it possible for these codes to be requested from an API endpoint rather than being pre-populated and delivered to the user who redeemed them?

#

To clarify, I have a store where I can redeem prepaid codes through an endpoint. I would like to automate streamer reward stores by connecting StreamElements to this endpoint.

severe shell
# muted agate Hello Guys, In StreamElements Reward Store, there is a field where you can add ...

It is possible to have the codes requested from an API, you will just need to update the item with those keys.
You need the Account ID, Item store ID and JWT Token

In order to get the Account ID, you can get it from here (key _id is the account ID)
https://api.streamelements.com/kappa/v2/channels/{username}

You can get the Item store ID here:
https://api.streamelements.com/kappa/v2/store/{account_ID}/items

JWT is like a password, so you will have it only if you have dashboard access and roleplay the streamer account. After roleplaying the account you want, open browser Console > Application > Local Storage > https://streamelements.com and look for StreamElements.roleplaying. That is your JWT for that streamer in specific.

You can use this endpoint to update the item store (The content of body is auto explanatory, however if you have questions and I know the answer, feel free to ask) :

Request type: PUT
URL: https://api.streamelements.com/kappa/v2/store/{account_ID}/items/{item_ID}
Headers:
Accept: application/json
Authorization: Bearer JWT
Body:

shrewd flame
#

Is there a way to manually increment the session cheer counter, either from a custom overlay, or a chat command? Or alternately, to fetch the current session cheer counter in a chat command?

solid kettle
#

Hey guys, little question, is there an simple way to add an multiplier for T2 and T3 Subs to the Strea Marathon Timer of HarveyToad?

shrewd flame
#

It shouldn't be hard to add though by copying what is in the base marathon timer to add the extra fields and logic in the event handler to distinguish between tiers.

weary yacht
#

how do i fix a encoding overload?

fast flame
#

Does anyone have a link to a good tutorial of how to build a custom twitch chat widget from scratch?

broken coyote
fast flame
broken coyote
#

It’s the whole widget. Not sure exactly what your wanting to learn. But your gonna need the majority of that code and then just customize it to suite your needs

fast flame
broken coyote
#

I would just that widget and then just play around with it

fast flame
broken coyote
#

It’s in the pinned posts

sacred holly
#

I've been using the goal widget that was shared in the post linked below for a while. Every time I get a new follower, the current follower account switches from a number to NaN until I refresh the overlay, which I don't want to constantly do during stream. Does anyone know what would need to be done to stop this from happening? Here's the message from #widget-share with the widget.
#widget-share message

rugged roost
#

Hi Dev channel.

I've asked around on the Twitch helpdesk channel with no luck. Hoping someone here can suggest about the following.

Why using StreamElements Multichannel Chat widget shows the host's Avatar for all chats instead of individual chatter's Avatar.

const client = new TwitchJS.client(clientOptions); client.on('message', function (channel, userstate, message) { channel=channel.replace("#",""); let emotes = [], badges = [{"type": "ExternalChannel", url: channels[channel].avatar}];

hot trout
#

if I understand correctly it should show the avatar of the channel the message was sent in

rugged roost
hexed vector
#

@rugged roost check if the avatar is in the userstate info. I'm using tmi.js and it is not.

{
    "badge-info": null,
    "badges": {
        "broadcaster": "1",
        "glitchcon2020": "1"
    },
    "client-nonce": "",
    "color": "#00ffff",
    "display-name": "kieneht",
    "emotes": null,
    "first-msg": false,
    "flags": null,
    "id": "",
    "mod": false,
    "returning-chatter": false,
    "room-id": "",
    "subscriber": false,
    "tmi-sent-ts": "",
    "turbo": false,
    "user-id": "",
    "user-type": null,
    "emotes-raw": null,
    "badge-info-raw": null,
    "badges-raw": "broadcaster/1,glitchcon2020/1",
    "username": "kieneht",
    "message-type": "chat"
}
hot trout
#

It won’t be because twitch does not send that info with chat messages so you’d need to query twitch for the avatar url based on the username and store that somewhere

#

I.e. it’s possible but requires nontrivial modifications to the code

rugged roost
broken coyote
#

You won’t want to use decapi to grab avatars. Unless you are going to cache the urls. That could be a ton calls to the api.

hardy walrus
#

And I don't think Decicus would like that kekwholup

broken coyote
#

He won’t. I know lol. I boo boo’d once and he hit me up

hot trout
#

using decapi or the twitch api directly is the same amount of work here, and as I said it's not a trivial modification where you just change a variable or something

potent hornet
#

Apologies for bringing this up, as I have searched the threads on it, but it is still yet unclear... on the topic of pausing and resuming alerts. I'm presuming that the widgetDuration field defines a maximum number of seconds to hold an event in some behind-the-scenes event queue - so its essentially a TTL for an event. How do we put receiving events on hold? Specific use case is musician puts events on hold, musician plays song, musician finishes playing song, musician resumes events. While this is available with the SE.Live plugin for Elgato's StreamDeck Software for Windows, looking at how to code this programmatically through a custom SE widget. Thanks!

sacred holly
latent shale
#

Hello all (sorry for my english, i'm not a native), I try to dev a progress bar on SE widget who can be completed by a command on a chat ( like : !progressbar +1), but I don't know the way to collect the variable information from this command. Anyone have an idea ? Thanks for the help! ^^

rugged roost
hardy walrus
#

LX is community member turned staff.

#

But the aforementioned reasons is part of it along with hasn't had time to add it even if it were planned.

#

But have the widget be used in channels with thousands if not hundred thousands of users "actively" chatting it will be making an api call for every single one of those messages per user per x seconds. Having something to query that kind of information isn't cheap and can add up if not cached.

upbeat trout
#

Hi, I'm having an issue with my Alerts, I've custom coded some, and in the preview on the SE Overlay site they are in line, but when I add a Browser Source with the exact same size, they're clipping out of the box, any idea why?

#

For some reason the items aren't getting scaled down in the OBS window (I have them at 75% on the CSS) and it's previewing correctly in the SE window, just not OBS

#

As reference:

upbeat trout
shy oriole
#

Hi,
Quick question, I will be going through discord and materials at the same time, but maybe you could help me faster. I want to create a basic !love command. But if I wont state the user I would like the command to pick a random user. How the command function should look like then? D:

upper cove
upper cove
#

Perfect, thank you! ThankEgg

severe shell
severe shell
upbeat trout
patent whale
#

Any idea how I can get this to work inside of a command for StreamElements?

$(if $(arg 1) == F
   $(eval C = $(math $(arg 2) - 32) * 5/9)
   $(sendmessage The temperature in Celsius is $(C))
   )
$(elseif $(arg 1) == C
   $(eval F = $(math $(arg 2) * 9/5 + 32))
   $(sendmessage The temperature in Fahrenheit is $(F))
   )
$(else
   $(sendmessage Please specify whether you want to convert from Fahrenheit or Celsius by using "F" or "C" as the first argument.)
   )
severe shell
cursive linden
#

looking to create a subathon script for Trovo, there is plenty for twitch etc, but trovo is now supported through stream elements, looking to use the Elixir, and subs from there, I got the subs to work but the elixir is not working. I'm not really a coder, but thought it would be as simple as changing the Tags from Bits to Elixir.

finite dragon
#

Anyone here taking custom chat widget commissions? XinPeek

lament marlin
#

help pls

cinder imp
#

Does anyone know how to move text from one position to another in Stream Elements? I'm trying to have the name of a Subscriber follow this animation that I made.

sacred holly
subtle peak
#

Hey I just figured out how to get the !quote command working but every once in a while I get a strange error. When I close twitch and re-open it works fine again.

#

These are literally typed one after the other.

#

And when I disconnect from chat and then reconnect it works again.

subtle peak
#

Jk I re-did everything and it works fine now.

hidden prism
#

Hey quick question, I'm new to getting sponsorships and I was reading the do's and don'ts of the offer and it says I must not incite profanity and not to make references to nudity or innuendos. I'm a 18+ streamer and use profanity regularly in my content, does this mean I cant do this sponsorship?

severe shell
#

You can use the SE API for that. Documentation is on this channel description

severe shell
severe shell
# sacred holly Is there anyone who can help me with this issue? I've been dealing with it the e...

I tried to test the widget, but could not reproduce it with a real follower. However, my suggestion would be to change the lines 46 and 48 on JS tab to these ones (not sure if that will fix the issue, though):
Line 46
return current = parseInt(sessionData["follower-total"].count);

Line 48
return current = parseInt(sessionData["subscriber-total"].count);

If you can record a video with the issue (or send a clip from your stream), will be easier to understand what is happening exactly.

tepid obsidian
#

Hi! I'm looking for someone who can help me move a custom HTML/CSS goal bar widget from streamlabs to streamelements. I believe it's custom fields that is not formatted correctly or the data field that does not exist in streamlabs but exist on SE that is causing trouble. I'm not really good with coding but willing to try do it myself with a little guidance. Thanks in advance!

sacred holly
broken coyote
vivid rivet
proud spade
#

The main link is good, you should be able to search for things from there. If you find any other broken links let us know

upper bough
vivid rivet
upper bough
#

Thank you!

copper prawn
gilded harness
severe shell
severe shell
gilded harness
#

ah wait im dumb - streamlabs internal id not the twitch one - my bad :D

gilded harness
severe shell
#

You can get the ID here (the key _id):
https://api.streamelements.com/kappa/v2/channels/USERNAME

gilded harness
#

was using streamlabs socket too long but yeh finally converted to something better - outdated socket and nothing documented just a mess, elements is way better

gilded harness
dire kestrel
#

hey. Stream keeps lagging and glitching

#

Do i need to update settings

#

and also ending

proud spade
copper prawn
maiden coyote
#

I'm looking for help executing some JS on plugin initialization. I'm not sure where to put it.

next helm
#

HAPPY NEW YEAR everyone πŸ™‚

river umbra
#

Hey developers, I'm experiencing a glitch in the text while making an overlay.

#

Is this the correct room to share glitch and feedback?

alpine mango
severe shell
small fulcrum
#

Using the OBS plugin for StreamElements to import my overlays and builds from StreamLabs and the process is taking an insane amount of time. and hasnt moved past 20% for over 2 hrs. any suggestions?

marsh holly
#

Hello! This may be a frequently asked question but I haven't found an answer online! My Stream Labels does not show anything but people who follow. I was just curious how to get it to show all of my other notifications. Thank you so much!

hardy walrus
#

Do you show other events in the activity feed?

marsh holly
#

Yes, just not in the Stream Labels app.

severe shell
hardy walrus
#

There is no streamlabels app 0.o

marsh holly
#

Stream labs stream labels.. downloader thing that you put in a file?

hardy walrus
#

Wrong server.

small fulcrum
#

text over image is not working when displaying an emulated alert

uneven oxideBOT
#

@small fulcrum ‡️

Text not showing up over your alerts? Go to the Advanced Text Settings and set the top margin to 50, you can work your way to the right position from there.

maiden coyote
#

Why does this not work?

#

This code is supposed to dynamically create an SVG path, and then apply the path as a clip-path to the svg-frame class. My problem is that none of it ever executes.

proud spade
severe shell
# maiden coyote

Hmm, maybe because float and string are not javascript keywords. If you look at the browser console, you will see there are errors in your code.

maiden coyote
maiden coyote
#

Okay, so I fixed it.

sacred vale
#

Hi, could someone point me in the right direction on how I can set a delay for my stream alerts so they don’t play straight after the other?

cinder imp
#

I need help with a CSS/HTML/Javascript problem in Streamlabs.

#

can anyone do that?

proud spade
cinder imp
#

I want to animate text to move down, its StreamElements, I've been working on this for weeks now and got the names mixed up lol

proud spade
#

Post what you have, how're you're stuck and when someone who knows has time they'll answer

cinder imp
#

Thank you!

cinder imp
#

HTML

#
        <body class="username">
            <span class="text-container" id="username-container"></span>
        </body>
        <p class="username">
        </p>
    </div>
</div>```
#

CSS

#
    font-family: 'Staatliches';
    color: {{fontColor}};
    font-size: 150px;
    overflow: hidden;
}

.username {
  position: absolute;
  top:250px;
  left:300px;
  color:#FF5733;
  font-size:33px
  font-family: Staatliches Regular;```
#

JS

#
const name = '{{name}}';
const animation = 'wobble';

// vanilla es6 query selection (can use libraries and frameworks too)
const userNameContainer = document.querySelector('#username-container');

// change the inner html to animate it :zany_face:
userNameContainer.innerHTML = stringToAnimatedHTML(name, animation);

/**
 * return an html, with animation
 * @param s: the text
 * @param anim: the animation to use on the text
 * @returns {string}
 */
function stringToAnimatedHTML(s, anim) {
    let stringAsArray = s.split('');
    stringAsArray = stringAsArray.map((letter) => {
        return `<span class="animated-letter ${anim}">${letter}</span>`
    });
    return stringAsArray.join('');

}```
#

FIELDS

#
  "someText": {
    "type": "text",
    "label": "Some Text",
    "value": "Default text"
  },
  "someTextField": {
    "type": "textfield",
    "label": "Some Text",
    "value": "Default other text"
  },
  "someColor": {
    "type": "color",
    "label": "Some color",
    "value": "#ff0000"
  },
  "someColorPicker": {
    "type": "colorpicker",
    "label": "Some other color",
    "value": "#0000FF"
  },
  "someNumber": {
    "type": "number",
    "label": "Count",
    "value": 10
  },
  "someSlider": {
    "type": "slider",
    "label": "Counter",
    "value": 10,
    "min": 0,
    "max": 100,
    "steps": 1
  },
  "something": {
    "type": "dropdown",
    "label": "Choose an option:",
    "value": "blue",
    "options": {
      "blue": "Blue thing",
      "apple": "Some apple",
      "7": "Lucky number"
    }
  },
  "someFont": {
    "type": "googleFont",
    "label": "Choose a font:",
    "value": "OpenSans"
  },
  "someFinal": {
    "type": "textfield",
    "label": "Some Text",
    "value": "Default other text"
  }
}```