#dev-chat

1 messages ยท Page 42 of 1

elfin arch
#
soundEffect.pause();
soundEffect.currentTime = 0;

this will stop the music right before it changes to gray

const playSoundEffect = () => {
soundEffect.currentTime = 0;
soundEffect.play();
};

paper dock
#

got it, last thing

#

With the static wheels im doing in that new one u sent me

#

Is it possible to make a few of the spots smaller than others?

#

so its harder to hit a "Jackpot" than the others

elfin arch
#

the colors are based off the Twitch users chat name.

#

would be really hard to remove a color; like not BLACK... or '000000' but can be '000001'

paper dock
#

gotcha its no big deal, I just kinda wanted the good items to only be gold, but I can manually set every color. No big deal

elfin arch
#

i don't think that is possible. but i can check. i've been asked if there as an option to make it 'half as wide' and don't recall seeing that option

paper dock
#

Ok no problem, Just an idea I had

elfin arch
#

ya. i'm not thinking it's an option; but maybe i'll get a hint somewhere to add it. glad you like it ๐Ÿ™‚

coral kelp
#

Is there any chance to get some help with Event Rotator By CO6STUDIOS code? How to make it appear only from one side? Without jumping to the left and to the right all the time?

mystic locust
#

hey can i get help with changing fonts in css

#

please?

left fiber
#

in css?

mystic locust
#

yea

left fiber
#
@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@font-face {
    font-family: 'reitam';
    font-display: swap;
    src: local('Sans-serif'), local('Reitam'), url('Reitam.otf');
}
#

Like this?

mystic locust
#

yea

#

but just the font face

#

im trying to import a font from my computer

left fiber
#

src: local Will look for the file in the folder

#

so you can try out to use

#
@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');
@font-face {
    font-family: 'FAMILYNAME';
    font-display: swap;
    src: local('FILENAME');
}
mystic locust
left fiber
#

It will check on the streamelements hosting pc for the family

mystic locust
#

what the code that i have

#

?

#

cause i dont get what that means

#

sorry

left fiber
#

That line will check in the windows folder for the font

#

Because the font is a custom one

#

It is probaly not installed on the se servers

#

So yeah you would need to look to change it with a web url not a local src

mystic locust
#

so can i just copy that code you sent

left fiber
#

No

viral patrol
#

@mystic locust You don't need to use font-face if you have the font installed on your streaming PC. Just type a name as it appears in fonts

left fiber
#

^^^

mystic locust
#

im still confused

#

cause i dont know how to code

viral patrol
#

Like you can use font-family: "Times New Roman" and it will use this font if it is installed on your PC.

#

No need to point path to that font

#

But name should be the same (case sensitive AFAIK).

mystic locust
viral patrol
#

Remember about " around when there's a space in font name

#

And not really...

mystic locust
#

oh

viral patrol
#
.username{
  font-family:"Times New Roman";
  /*Rest of stuff */
}
#

Something like that

mystic locust
#

@viral patrol

#

did i do it right?

viral patrol
#

You have it overwritten by "TheFontBold" on the bottom, so remove it, also use actual font name

mystic locust
#

yea i found that out

#

it worked and i set the font to roboto

#

i just dont know how to make it bold

viral patrol
#

font-weight:bold

mystic locust
#

oh

#

well do i still do it under .username?

viral patrol
#

Yes

mystic locust
#

yea ok thanks it works now i need help animating the text from up to down

#

never mind

mystic locust
#

hey can someone help me with css animations

#

i kinda know how to use them but i need more help matching them up with my alert

sonic basalt
#

Any good intro to code custom Stream Elements vids/docs

#

nvm saw the pinned docs up top lol

paper dock
#

@elfin arch I shot you a DM of an Idea!

fluid mango
#

Hi, i have been waiting for my oauth2 key for weeks now. When will i get it ?

viral patrol
#

@fluid mango Hi. Next batch of access should be dispatched shortly. For the time waiting you can develop your tools in local environment using Bearer :JWT as Authorization method, then you can switch to OAuth :token after oauth credentials are provided.

simple creek
#

Is there by chance any api or otherwise any way to get data from bit boss? I noticed there is a data-action that indicates if attacking or healing, but there is no way to inject any kind of javascript easily to retrieve that

simple creek
#

I found the docs for custom widgets that i can probably more easily do what I am trying to do, but still running into the same general problem. Is there any way at the very least to get who the current bit boss is from another widget. I tried gathering that from the url of my boss widget but naturally blocked by a CORS request.

fluid mango
#

@viral patrol so when will i get oauth credentials

bleak berry
#

Hi, I was using the TTS API I found on a reddit post, however it has now stopped working? is there another way to access it? or is that no longer available?

hardy walrus
#

Got a link to the post by chance?

viral patrol
#

@fluid mango I will do my best to push things forward so they happen sooner than later. It doesn't depend on me, but I can query right people ๐Ÿ™‚

short turret
#

Hello all, I have been working on a command code for my twitch. It is a spin on the hot potato game that many see in Streamlabs streams. I have something going but I can not figure out how to create in interrupt with the timer. I am using the Russian roulette to help spring board me... but again, not sure where to go from there. I have also been all over the internet but if someone has something or any guidance that would be helpful!

proper goblet
#

Hi there, does anyone know where does streamelements get the bits information from? I'm switching from streamlabs to streamelements but the bit amount that has been given to me does not match up... I think this might be api related since I started using streamlabs before signing up for streamelements. Is there Any way I can update this?

simple creek
#

does the custom widget have any sort of persistent data

proper goblet
#

What do you mean persistent data? It's just that streamelements is missing the data from before I joined streamelements somehow

#

It should get it globally from twitch no?

hardy walrus
#

We don't get data from other providers outside of tip history.

#

And that's when importing with the extensions.

simple creek
#

Well I was hoping to be able to retrieve data from bit boss widget, such as, is the action a heal or damage, or if that is not possible, who the current bit boss is so I can compare against, if that isn't possible, then I need to store data such as what the current health is, and switch the bit boss manually

proper goblet
#

@hardy walrus but I thought bit/cheer data came directly from twitch themselves... So should I try to import the streamlabs data again? Everything else was imported correctly, its just the bits that are not matching up when checking on both platforms

viral patrol
#

@proper goblet We cannot collect data from the before you joined us. Your all aggregates should populate over time, but there won't be ability to adjust some of them.

#

Twitch doesn't provide historical data for that purpose.

#

We store this data as it happens on Twitch. It is up to date but since moment you joined us.

proper goblet
#

Damn, I understand, so I'm stuck with those different values then right? Such a shame

#

Well just glad I signed up for se not too long after streamlabs to consider and make the choice

#

Thanks!

viral patrol
#

They will populate over time (unless you are using "all time top cheerer" widget)

proper goblet
#

Exactly what I intended to use haha but it's fine I guess, a little discrepancy will not hurt

#

Thanks for your help

wind heron
#

i see there are still no oauth tokens going out? is there any eta when this will finally be done again? sadcat

next remnant
#

The TTS has captcha monkaW

#

how can someone apply like the channel points tts to get access to it without captcha Smile ? Where can that be done?

bleak berry
#

^^ having the same issue, had to change to a different API which is nowhere near as good. Please remove the captcha ๐Ÿ™ like it was before or give us a way we can call it from an API end point

teal bone
hardy walrus
#

@bleak berry @next remnant Due to unreasonable use of our API that security wall has been put in place. Until we have a method in place to regulate it it's unfortunately going to stay.

bleak berry
#

I completely understand why you had to do it, just very sad to see it gone thats all, I would have even paid for it ๐Ÿ˜„ I spent all day shopping around at other APIs and none of them was as nice as yours

#

can I ask, is your TTS in house or do you use a service like amazon polly?

hardy walrus
#

That is beyond my access and understanding.

next remnant
#

Nah you can still access the TTS and use it for like mp3 and make stuff with it, but bots can't access it anymore
well I guess not only twitch purposes were like used by that api, other stuff probably used it too when they heard about it ๐Ÿคท

broken coyote
#

@bleak berry because like your widget. It was being used by 3rd parties rather then on the platform

bleak berry
#

Yea like I said I understand why it was put in place, but I will miss it.

pulsar willow
#

Is it possible to add custom fonts to overlays?

#

And also, I assume the rendered end-product is on a Chromium-based solution? If so, any details on what it supports/doesn't?

#

Reason for why I ask is that I wanna test some heavy-duty-JS stuff on text animations for a donation overlay.

teal bone
#

@pulsar willow you can add without problems, on html or css, your choice

viral patrol
abstract basalt
#

@pulsar willow I do use gsap for heavy text animation, didn't got a problem

viral patrol
#

If you use something that is really heavy it can take to render them by OBS (same as in the browser).

pulsar willow
#

Hmm.

#

@abstract basalt Can GSAP do heavy mapping animation?

#

Like 3djs or WEBGL

#

Say, I apply a distortion map to the text and animate it, can it do it? Any examples for it?

abstract basalt
#

gsap provide tools for animations (easing, timeline, and tons of stuff), it can be used with threejs (don't use webgl alone you masochist), but I mostly use it for DOM animation and/or SVG animation
But if you want to go with canvas based distortion I would probably avoid gsap (or I don't have the knowledge for it).

You should try to look, what obs uses as chromium version same for SLOBS (check on windows and mac, they might differ)

#

I don't know what vmix use, probably chromium too

pulsar willow
#

Thanks, super informative and yea, I guess then GSOP isn't the tool for it

elfin arch
#

my best advice would be to grab an example CodePen and do a merge into the Overlay Editor. see if it works; then fire it up as a source in OBS and check that.

abstract basalt
#

You can also run a tool like babel to transpile the code and apply polyfills

simple creek
#

is it possible to retrieve bit boss widget data from another custom widget, either who the bit boss currently is, or if the action is healing or damaging

trim bronze
#

Curious about how SE fetches (hjeh using this word) the follows & other such data after streamer not using Streamlabels desktop client anymore ? EDIT: @viral patrol Big thanks good to know :)

viral patrol
#

@trim bronze We run everything in cloud to collect data and display it as labels. We are using Twitch API to achieve that.

teal bone
#

Correct me if i'm wrong:
The event โ†’ Bot:counter should return {"counter":"CounterName","value":"CounterValue"}
but CounterName is returning empty

mystic locust
#

can someone help me with css keyframing in stream elements please?

simple creek
#

sandbox prevents from saving local storage........so is the only way I can have persistent data is to set up a server and do HTTP requests to do this

night laurel
#

Hey guys do you know how long it usually takes to get approved for oauth2 tokens? Been waiting about 2 weeks I think. :]

grizzled bear
#

@elder dragon Had a question about your Simple Info bar widget! Could we Dm about it?

molten iron
#

Hey guys, just wondering if there's a list of IP's I can whitelist for a simple app I'm creating, so that only StreamElements can access it? Thanks.

zealous basin
#

Hello, trying to translate my SLOBS HTML & CSS code to SE, but of course it's not the exact same. Trying to use keyframed colorwave on the alert text to sync with the alert itself and I am having trouble translating it. Also not sure how to get the alert to show up because it is just a default.gif in HTML.

viral patrol
#

@teal bone This one works for me:

window.addEventListener('onEventReceived', function (obj) {
   console.log(obj.detail);
});
#

@molten iron SE uses plenty of IP addresses, the best way I could think of is to provide authorization header within your requests from custom widget and check it on your end.

#

@zealous basin Instead of path to default.gif you can use {image} which gets replaced with user selected image URL. Also keyframes should work fine as this is pure HTML which is not platform specific

zealous basin
#

Itโ€™s a webm file.

viral patrol
zealous basin
#

this is how simple it was in slobs, but this isn't working in SE. Just trying to figure that aspect out.

elfin arch
#

Are you editing a custom widget or using custom CSS in the Alert Box?

zealous basin
#

custom CSS,

elfin arch
#

that looks like a re sub message?

zealous basin
#

This works in the CSS tab on SE, but HTML still doesn't give me the correct name in the alert. This is just for subs in general.

elfin arch
#

the {userMessage} should be {{message}} the message the user sends with the resub .... i'm not sure what "messageTemplate" is?

#

is that the username?

zealous basin
#

that's just from slobs, the message template is whatever you have in the message box.

elfin arch
#

i could be wrong here; but once the custom CSS is enabled then all of the other 'settings' are ignored. so it basically all has to be hard coded.... minus the information from the event; like username, message, monthssubed, etc.

#

what do you want the first {{message}} you have there to say?

zealous basin
#

ohhhhh, well i just want the name of who subbed is all.

elfin arch
#

try just {{name}}

zealous basin
#

Same thing, the name is showing up fine now, just gotta figure out the keyframing since it's not reading the colorwave correctly in CSS

elfin arch
#

the css looks good to me.... i think; but to be fair my CSS isn't too great. can you post a jsfiddle of your full HTML/CSS/JS ?

zealous basin
#

i'm assuming it has to do with the id= before Colorwave

elfin arch
#

i'll take a look. ...but we might have to wait until someone with better CSS knowledge jumps in and it might take a while.

zealous basin
#

No worries

simple creek
#

@viral patrol omg ty

#

@viral patrol is it possible to use this to retrieve bit boss data?

elfin arch
#

@zealous basin ... make the first {{Name}} lowercase ๐Ÿ˜‰

zealous basin
#

I did after I saw it haha

elfin arch
#

did that fix it?

zealous basin
#

no sadly D: one second

#

it's either the alert-message is the wrong term, or the keyframe colorWave is just being rude.

elfin arch
zealous basin
#

does it do a colorwave or just stay yellow?

elfin arch
#

it waves

zealous basin
#

hmmmm

#

can I send you the webm and you try it out?

#

mine just stays purple, i dunno why

elfin arch
#

all i did was change the Name to name lowercase

zealous basin
#

under the settings what is your alert message

elfin arch
#

nothing there; once the custom CSS is enabled all of those settings are removed.

zealous basin
#

Not for me? ๐Ÿ˜ฎ

elfin arch
#

well; they still show but don't actually change anything because the custom CSS overrides them all

#

...at least that is how it works from my testing

zealous basin
#

is there a way I can reset the sub alert to default and try again

elfin arch
#

when you press the emulate for a sub do yo see your image?

zealous basin
#

yes

#

just the text stays purple

elfin arch
#

there is no 'reset'; but you can create a 2nd one and test with that.

#

let me try again; i can't get the image or video to show from the settings menu when i enable the Custom CSS toggle ๐Ÿค”

zealous basin
#

o.O this is weird.

elfin arch
#

ya DM me your image

trim bronze
#

Howdies. Why my top tipper stopped appearing all of sudden at it's label box ? On that box there's now: top tip: no data. Now current top is rolling at label named as 'recent tip' That person is still higher than recent & name is now behind the name in that label box. It should be on 'top tip' label. How to get it back there ? I just got to know yesterday that SE retrieves that & such data from the cloud. Why that label stopped working few days ago ?

viral patrol
#

There is no change, can you check if that label doesn't show "last week top tipper" or something like that?

trim bronze
#

@viral patrol Ty. Ah no even when go online it's showing 'top tip: no data'. Early this week this name that now is following recent w smaller sum is was on that box. I changed overlay today, but that label didn't change it's text display. Yeah overlay doesn't have anything to do with it.

viral patrol
#

Check if selected period is proper there

trim bronze
#

@viral patrol Check from where sry i have no clue. Ah thanks Is that done in overlay editor ? Update: Found it just moments before you replied with instructions & now working like used to. Still big thanks & for your time with this problem that happened on it's own. Clicked the widget "label box" & then saw the options.

Edited by deleting All time Top Data from the box & leaving name, currency, amount. If glitches again then know what to do & if doesn't help then to ask here in Discord. Wish you & all to whole SE staff good new week ๐Ÿฅณ ๐Ÿ‘

viral patrol
#

Yes. Go to overlay editor, click that widget and check "settings" in left panel

trim bronze
#

On my other overlay same options in settings not shown in widget ๐Ÿ˜ฎ ๐Ÿ˜ฆ It's 'recent tip' widget. Only thing that can edit at it's settings are text [name] [currency]. So that overlay on same widget is missing 'how many recent' w max being 20x ๐Ÿ˜ฆ I imagine it shouldn't be overlay dependant on what setting options same widget has. Update: Hjeh nvm i guess it's just cause of it's planned setup. I copied that other widget over to overlay that didn't have it like that & made same settings to it as other one ๐Ÿ™‚

pulsar willow
#

hy can anyone gime link about documentation regarding building costume wiggets with, HTML, CSS and JavaScript tnx in advance.

viral patrol
solar geode
#

Hi, Is there currently some sort of websocket for the songrequest?

zealous basin
#

Got everything figured out thanks to @elfin arch! Thanks homie!

uncut cave
#

Hi everyone. New here. I was wondering, is it possible to code a spinning wheel for new followers that happens automatically? ๐Ÿ™‚ If so, where should I start?

elfin arch
sharp trout
#

Hey, I have a problem with a Benno widget : Video on command

rugged rapids
#

What is it?

unkempt bluff
#

What is the process for the widget sharing? I submit the form about 1-2 weeks ago. How long does it usually take?

tropic finch
#

@unkempt bluff no ETA, just waiting, but it will be posted

viral patrol
#

@unkempt bluff Your widget was next in queue and you had a great timing as it was supposed to be published today (and it is published). Thank you for your contribution SEheart

unkempt bluff
#

@viral patrol Thanks! I was just hoping I did not screw something up! You know, the #fails.sillys3Fail

viral patrol
#

You will know if it is all ok when people start asking questions about it. Be prepared ๐Ÿ™‚

somber owl
#

Okay, I need an actual example of argument variables in use. Working on a text based chat RPG, would be a big help. Thank you.

sharp trout
#

@rugged rapids To make it simple, I have an overlay containing 5 widgets that allow you to display video and/or audio by typing a command in the chat. The command works once or twice then stops working and works again a few times afterwards without any regularity. I don't know the cause of these malfunctions and it disappoints my followers.

I am directed by you because I have already been able to contact you and your answers are fast and efficient.
Hoping to be well explained.

rugged rapids
#

Make sure, that in one widget the video/sound need to be played fully, before a new one can get activated via command. Also by default this is only available for VIP and above, depending on the settings, if you have not modified the widget.

hardy walrus
#

Is there any kind of documentation with the titlify integration by chance?

mystic locust
#

hey is there a way that i can put my most recent follower and most recent subscriber on my overlay?

#

cause if so can anyone tell me?

sharp trout
#

Yes, but even the finished sound/video doesn't work backwards any more

lapis mortar
#

why I have that respond a captcha for use the api?

#

the captcha is of cloudflate jumeeeJumeidiot

hardy walrus
heady orchid
#

hello community, how are you? Hope so. I wanted to clarify a question regarding the custom chat widget. How do I leave the chat user's nickname box the same color as the name and the color of the name in white? This way:

shell shell
#

im trying to link my overlay to lightstream but i keep getting a white screen when i paste the link

pulsar willow
#

Hi

#

I want to create my custom Alert with HTML, JS and CSS but i need a documentation to manaage the events

indigo flume
pulsar willow
#

Thx

#

I have find it on GitHub

#

is it your official project?

pseudo siren
#

Yes

elfin arch
pulsar willow
#

@elfin arch Ok

rugged rapids
#

@sharp trout Is it working, when you use one overlay with one widget, which is the default one provided via the widgets gallery?
Just tested it with a fresh widget and it is all working as intended.

sharp trout
#

Yes, the other widgets work. But yours works 35% of the time over a one hour time slot, which is very random.

rugged rapids
#

What OBS version do you use?

tribal zenith
#

How do you guys include custom fonts (not google fonts) for css? When I try to upload them on my own server I get CORS'ed on SE ๐Ÿค”

hardy walrus
#

Why not install locally and specify in the overlay?

tribal zenith
#

install locally?

high swallowBOT
#

Google Fonts
More than 900 google fonts are supported at this time. You can preview them here: https://fonts.google.com/

Custom Fonts

Steps:

  1. Install the font on the streaming PC or choose a pre-installed windows font.
  2. In the overlay widget settings, select Text Settings
  3. Enable Custom Font
  4. Type the name of the font as it appears in the windows font directory (This is usually C:\Windows\Fonts)

Note: After installing fonts, the browser and OBS must be restarted for the font to appear.

hardy walrus
#

Otherwise this:

@font-face {
    font-family: 'FAMILYNAME';
    font-display: swap;
    src: local('FILENAME');
}
tribal zenith
#

That seems more like a hack monkaS
I build overlays mostly for other people, so I can't expect them to always install custom fonts locally. Plus I am pretty sure the font license doesn't allow that as well

hardy walrus
#

Unfortunately not much we can do in that case.

elfin arch
#

why not git?

#

๐Ÿคฃ i tried... github shouldn't get you CORS

tribal zenith
#

Oh, okay I will try that then ๐Ÿ˜„

#

I think it would be great if we could have a field like font-input and just upload them there

viral patrol
#

@tribal zenith If you are corsed on your end, be sure that headers responded by your webserver include Access-Control-Allow-Origin: *, for example if it is apache, you can set a rule in .htaccess

<FilesMatch "\.(woff|otf|tft)$">
  <IfModule mod_headers.c>
      Header set Access-Control-Allow-Origin "*"
  </IfModule>
</FilesMatch>
tribal zenith
#

@viral patrol Thanks, will try that later too ๐Ÿ‘

errant lily
#

Has the team considered integrations with IFTTT? It would be cool to control smart devices with stream store items

vital night
#

Just wondering if there is any way to push custom stuff to the activity board and trigger custom alerts via API?

woven jacinth
#

Are there any decent documentation sources for the special variables usable inside custom bot commands? I'd like to implement a simple if statement, and I'm struggling to find anywhere that documents how to achieve that kind of thing?
If someone could help me out that would be ace, but if there's a place I can find out for myself that would be even better. Teach a man to fish and all!

topaz ferry
woven jacinth
#

@topaz ferry Yeah, thank you - I've already seen that page and I don't think it helps my situation. There's no if statement etc, but I know that it's possible to do that kind of thing.

#

I've used things like '|' as a logical OR before, but I don't think it's documented anywhere... I'm after that kind of thing

vital night
#

@woven jacinth try doubling it.
|| , &&

sterile girder
#

@vital night MY MAN! I love this guy!

frail flax
#

Does anyone mind making a custom widget for a mobile streamer

quiet eagle
#

Hey Team, Not sure what board this is best on. But if I have a command that cost 50 when a user doesn't have 50 it doesn't return any error is there a way to do so ?

viral patrol
#

Unfortunately there's no way to output any message if user has not enough points or privileges condition is not met.

quiet eagle
#

@viral patrol Thanks mate - doh but thanks ๐Ÿ™‚

knotty thorn
#

Hello, when I click on the refresh icon next to the gifted subs in activity feed, nothing comes through the websocket api - any idea why?

#

this is for the main gifter btw - if i click on the individuals who got the sub, that works ok

viral patrol
#

This is normal behaviour AFAIK as first row is just to show that those gifts are aggregated. Twitch sends information about individual subs and this data is converted on the fly to emit community gift alert variation.

knotty thorn
#

oh ok

#

would be cool to have something come through though, make it a bit easier to know

sonic dew
#

Does anyone know if itโ€™s possible to access the DOM of one custom widget from another custom widget? Iโ€™m working on changing colors of a bunch of elements when alerts happen but itโ€™s going to force me to use multiple widgets to build it all out.

viral patrol
#

Unfortunately not. All custom widgets are sandboxed in separate frames.

sonic dew
#

Thatโ€™s what I thought. Could make for some interesting alerts otherwise, though.

vital night
#

Suppose I'll ask again.
Any way via API to trigger alerts with custom messages from an external application? Like custom follows, etc.?

#

and to push them to activity feed too?

viral patrol
#

@vital night without pushing to activity feed you may check charity widgets on #widget-share - this does the part you want.

vital night
#

And if we want to push it to activity feed too?

#

I just don't see anything on pushing, just get functions related to activity.

#

In short, I've been working with a group on developing a bot for Trovo.live and a lot of people have requested streamelements support.
So I was trying to get it that until SE does add Trovo if they plan to, that they can at least OAuth and trigger their twitch alerts or something with custom messages

sharp trout
#

@rugged rapids It's OBS 25.0.8 with StreamElements OBS

spiral jacinth
#

Hello! I was wondering if there was a way to rotate a window in the StreamElements overlay editor to a specific degree.

sharp trout
#

@rugged rapids Look that, there are 2 command to audio 1 but none for audio 2

elder dragon
#

Is it possible to edit the goal widgets using html/css/js or do you need to recreate them from scratch?

hardy walrus
#

visually you can with css in the browser source Custom CSS. Otherwise custom widget would be it I think.

viral patrol
inland ice
#

Good day everyone. ๐Ÿ™‚ Is anyone familiar with the Bank Heist widget, and possibly know how to troubleshoot it?

#

It was working great, but with double messages. I turned off and on, the chat alerts for SE, on the Bot Modules page, now !heist does nothing. I tried a new API token, and that didn't work. Then, I removed the overlay, and got another API token, still to no avail. Did I break something when I turned the chat alerts off and on?

tall phoenix
#

Hi, I'm trying to use custom CSS to position a webm video for a alert. How can I generate the source link for the image I uploaded? or do I need to use a 3rd party webm host? and is there another method to change positioning of an video for alert without using custom CSS.

inland ice
#

Also, is there a way to get the URL of uploaded sounds to SE, so we can put in the custom widgets?

tribal zenith
#

Just create a field with type sound-input (lets call it mySoundInput here) in your custom widget and access it in HTML/CSS via {{mySoundInput}}

#

In JS you can access it via the fieldData property

inland ice
#

@tribal zenith So I'd need to create a custom widget to get access to that field? Basically, I am using someone's shared greet viewer widget, and wanted the URL of the sounds in my personal SE uploads, to input into the URL fields.

tribal zenith
#

@inland ice if you want to access a specific uploaded sound by name you would need a field in a custom widget, yes. But for widget specific questions you should probably ask the creator

inland ice
#

@tribal zenith thank you. Don't know about creating custom widgets, so I'll do some GoogleFu. I don't think this is widget specific though. I tried to access page source, for my uploads, but it seems the browser needs to login, in order to access the URLs, of said sounds. Thanks again. :)

rugged rapids
#

@sharp trout That is just the label being wrong for the second command. It should say "Command to start audio2". Sorry.

tribal zenith
#

@inland ice well, a little hackier workaround would be to create a custom widget with sound-inputs, select the desired files there and just console.log the fieldData for the URLs

inland ice
#

@tribal zenith if I already have a custom alerts page overlay, with said sounds in them, would that work? I just created blank overlay, and added what I wanted to follows, etc, but using the GUI. Does the default blank overlay template have an editor?

sharp trout
#

@rugged rapids Okay but all the seconds audio and seconds video dont work

tribal zenith
#

@inland ice yes, the upload- & select-form should be shared so you don't have to reupload your files. Once you have the URLs you can just delete the custom widget

inland ice
#

Nice! I'll try that when I get back to my machine! Thank you @tribal zenith

tribal zenith
rugged rapids
#

@sharp trout Can you get me an editor invite link to your account per DM, so I can take a look please?

woven jacinth
#

Hi, me again.
I'm really struggling with the bot syntax for custom commands. The almost complete lack of documentation for a product that has existed for years absolutely baffles me.
There are strange, obtuse design choices happening in the background that I can't work out how to get around because the documentation doesn't exist.

#

Here's the example I've been working with recently (I asked for help in here already).
I'd love to be able to make a command that prints its usage instructions if a user supplies an incorrect number of arguments. The bot seems to have incredibly shaky logic surrounding the decision to even run a command that uses args if the wrong number is supplied. For instance, the command in question hits a custom API I've written. It takes a parameter that should be a queryencoded string from the user. If the string is empty or contains only whitespace characters, the API returns a usage string (although I only added this to the API because it seemed impossible to do it at the SE end). So the command looks something like:
${customapi https://example.com/?user=${user}&message=${queryencode '${1:}'}}
The command is not executed if no args are supplied, and inserting | test anywhere other than inside the ${1:} still doesn't cause the command to run (with no args). Using a single or double pipe, with any (or no) amount of whitespace within the queryencode doesn't help either; the command will still only run when at least 1 argument is supplied.
The reason why I think the "use 2 pipes" advice I got here is incorrect, is because if you were to change the queryencode section to ${queryencode '${1:|| test}'} the API receives the string '| test' when no args are supplied - notice the pipe symbol at the start of the string. So using 2 pipes really doesn't help me here.
As ||ing outside the queryencode doesn't cause SE to run the command, I'm scuppered - because whitespace isn't seen as a string by the bot (or at least isn't enough to get the command to run with no args).

#

I hope you can appreciate that it has taken me days of trial and error to work out even the small amount I have. There are many possible solutions I've tried, but to no avail.
A simple if statement, or even just a damn checkbox that will force the command to run with no args is all I need. Failing that any sort of basic string processing that would allow me to split up a given string on spaces (so I could take all the args, even from 0, but then splice 0 out) would suffice.

In my opinion I shouldn't have to try and hack my way around an undocumented design choice like this, but if I'm going to have to, the UI should be absolutely up front about it, and maybe offer some common resolution guides or something to help at least.

Yes, in this example, I could do something like change the API code to treat a message that starts with a particular symbol as a request for usage, and get SE to combine the args with that instead of whitespace. But I shouldn't have to do that, and it has the chance of breaking other usecases for this API.

The truth is I don't care about this example; it's not particularly important. But this certainly isn't the first, and I'm sure not the last time, that I've had to sink way too much time and effort into bashing my head against brickwalls that I have no hope of knowing about beforehand.

#

I joined this Discord in the hopes of finding some sort of documentation so I can actually learn how to use this product properly. I'm a big advocate for SE in general, and I want to be able to use the chatbot for creative & engaging things.
My creativity is severely limited when I have no hope of understanding the tools at my disposal.

I'm not even trying to do something complicated, but every time I try to do something simple using custom commands, it feels like a battle.
I have to create test commands (because I'm never exactly sure how things will turn out), and even make design choices in back-end code specifically to deal with the way SE handles custom commands.
I could maybe accept all of these things if there was any sort of documentation surrounding them, but forcing users to work it all out for themselves is not an acceptable solution.
I sincerely hope that this lack of documentation is not standard practice for StreamElements, as all it serves is to frustrate and demoralise your customer base.
I'm sure decent documentation would also save the support team time as well. Personally I'd even be happy looking over snippets of source code.

#

If you read all of that brain dump; thank you.

  • Rozza
regal steppe
#

Hi I'm not sure if this is the best channel for this but I think I've been banned or something out of the speech API endpoint. I have been testing a new custom browser source script using the API and I understand I probably did overdo it lately ๐Ÿ™‚ Is there any way I can talk to someone about this? I also have a screenshot of the error but it contains my IPv6 address so dont really want to post that here ๐Ÿ™‚ Forgot to mention the error I received is CloudFlare error 1020 - Access Denied

elfin arch
#

"Due to unreasonable use of our API that security wall has been put in place. Until we have a method in place to regulate it it's unfortunately going to stay." @regal steppe there is a small chat about it in one of the pinned messages.

regal steppe
#

ahh i forgot to check pins, thanks

elfin arch
#

no problem. it was a pretty recent change

elfin arch
#

@woven jacinth i personally tend to stay away from the custom commands myself because of the limitations. I think one thing that might help you is using ${0:} for the args as there will always be the 0 argument (the command) when sending to your API. I would personally suggest looking at making a 'custom widget' that basically handles all the custom commands that you want but understand if that is not an option for you because of the limitations that has (must be in OBS and OBS must be running).

ocean fractal
#

is there a way to listen for channel point redemptions in a custom widget?

hardy walrus
#

Unfortunately you're on your own as we have nothing setup with it yet. Only thing is the custom widget in #widget-share that works with text based redemptions.

ocean fractal
#

gotcha

#

Looks like twitch api has a pubsub thing for channel point redemptions. I've got a nodejs bot that maybe I can have listen to those for my channel

viral patrol
#

@woven jacinth Hi. I think that the best way would be to use: ${customapi https://example.com/?user=${user}&message=${queryencode '${1:|help}'}} so if your message equals help print usage message. This will also work if user types !mycommand help.

tame sun
#

yesterday I posted a google form on the streamelements API to ask for oauth2 credentials, how long does it take usually to get an answer? I'm making a twitch chat minigame which currently supports only streamlabs and I want to add streamelements support for the currency system

viral patrol
#

Hi. There is currently a delay providing this details. I recommend you to prepare that without oAuth layer at the moment - you can use JWT authorization method for local dev environment (Authorization: Bearer JWT-here) and once credentials are ready for you you will just add Auth layer and replace authentication with Authorization: OAuth oauth-token-here

tame sun
#

I haven't used JWT before, the minigame is supposed to be hosted locally by every streamer who uses it, is JWT safe for that?

viral patrol
#

The best way is to go via OAuth, but you can prepare your project with JWT (for yourself) to create full logic, so OAuth process won't hold you back. Then you just add Authorization from Oauth provider

tame sun
#

oh JWT is strictly self-testing, well I'll do that, I just hope I'll get the oauth credentials like in a week at most, one of the streamers I watch took a 1 month break and they'll stream like in a week I want them to be able to use the minigame on that stream

elfin arch
#

if you have your code locally hosted by the user with an '.env' or settings file for server only then it would be fine. (at least i hope ๐Ÿคž ) i have JWTs stored with twitch/discord tokens in the 'setup'

gleaming arch
#

How do I debug custom code used in the alert box? I have some alerts working but one isn't displaying the correct info. Example: Resub alert is fine, but Community gift alert is missing the data. I can't find a way to step through the code to find the issue, neither can I log anything to console or display an alert box! How do you debug custom code?!

viral patrol
#

@gleaming arch You can use console.debug() as this method should work. Just make sure you change console logging level to verbose in your browser.

gleaming arch
#

Perfect! Spotted mistake instantly! Was using console.log()

gleaming arch
#

Additionally, is there a way to step through the code? I have other code working locally but put it in to a custom widget and it is slightly different.

viral patrol
#

Just add debugger; after your console.debug call

gleaming arch
#

Thank you! Damn, of course it's that straight forward!

worldly flame
#

Hi I wasn't sure if this is where I ask this cause I don't see a help desk for widgets. I got the Clock widget by MrBoost and it has the wrong time. Is their a way to change this to my timezone

viral patrol
#

I think timezone settings should be in widget properties

#

I don't know that particular widget, but when you click this clock and then settings in left panel @worldly flame ?

broken coyote
#

Arizona doesnt do day light savings, thats why its a hour off

abstract basalt
#

Hey everyone ๐Ÿ˜„ Is there a way to cancel a submission to the widget-share ? I noticed I didn't met some requirements and prepared a new version that tries to solve the main problem (due to licensing)
Also, can I use my own CDN to host some files so I can have control on where they are used (licensing reason again)

viral patrol
#

Huh. I was about to publish this widget today, but sure. I can wait, but there's one thing - we don't allow external js executed (besides of known js cdns), so I pasted your JS in the javascript tab.

#

But sure - I can postpone that widget ๐Ÿ™‚

uncut condor
#

hello I need to substract 1 sub point from bar (which is probably my eternal tier 3 sub) in sub points progress bar.

const update = (amount) => {
  const percentage = Math.floor((amount / prefs.goalNumber) * 100);
  const current = document.querySelector('.label.current');
  switch (prefs.progressDisplay) {
    case 'amount':
      current.textContent = isTip ? currencify(amount) : amount;
      break;
    case 'percentage':
      current.textContent = `${percentage}%`;
      break;
    case 'amountpercentage':
      current.textContent = `${isTip ? currencify(amount) : amount} (${percentage}%)`;
      break;
  }
  document.querySelector('.progress').style.width = `${percentage <= 100 ? percentage : 100}%`;
}

It's probably case 'amount': but since I can do sth with html, css and php javascript is black magic for me.

#

now I have 0 subscribers but it's still display 1 point

abstract basalt
#

@viral patrol I can send you the updated code so it's easier to edit for people who want to ๐Ÿ˜„ , for the CDN stuff I understand ๐Ÿ˜„ you should be able to simply paste the code at the top of the JS tab
Or I can try to include it, but I did got some problems at some points where it would cut a part of the JS code I pasted if it was too long

viral patrol
#

Sure. You can dm me the new code and I will update it ๐Ÿ™‚

abstract basalt
viral patrol
#

Sure it is

warped willow
#

Hello! Iโ€™m having an issue with my alerts on obslive. I inported my overlay and alerts from streamlabs, at first it was working fine. But now on the alerts they are not populating the data. Letโ€™s say I get a follow, instead of the alert saying โ€œNew Follower Lobotiempoโ€ it comes up as โ€œ{insert title}โ€ lobotiempo then underneath the alert โ€œ {amount}โ€ I edited the message to say โ€œLobotiempo is now follow!โ€ So not sure why it isnโ€™t populating like that on the alert

fallen wind
#

hello i am having a issue with closing my account

pseudo siren
#

Sorted

terse raft
#

Does anyone know if the stream elements websocket connection emits chat messages for twitch? The docs have a message event type but it doesn't seem to work. I'm wondering if I need to use Twitch pub/sub to get this.

abstract basalt
#

You want to listen to chat messages ?

terse raft
#

Yeah, I'd like to make my own chat widget

silk pebble
#

Hi, does anyone know how do get a command to work for non-subs but then NOT work for subs? ๐Ÿค” Thanks.

twin condor
#

Is there any way to get a SFX command/chat command user specific?

hardy walrus
#

Nope

twin condor
#

Darn, okay

#

Wasn't there a custom widget at some point that could do SFX via chat commands?

hardy walrus
#

I'm certain there is but not for specific users.

twin condor
#

Boo, okay

polar hollow
#

Hey guys, I downloaded the recommended compressed bits/tips/follow/sub bar and I was wondering if anyone knows what to edit in the code?

#

mine has a gap and im unsure on how to fix it?

naive sorrel
#

Hello! ๐Ÿ˜ƒ
I'm creating something for which I'd like to make use of StreamElements loyalty points.
The redemption store seems like a great fit for me, but I need my own service to know when a redemption takes place.
Is there some notification mechanism I can use for that, or do I need to constantly poll the site via the "list current user redemptions" API call?

viral patrol
#

@naive sorrel I am not sure, but probably those events are emitted on websockets too.

naive sorrel
#

Hmm, alright, I can see that in the documentation, though it doesn't specify what events it supports.
I'll test it out, thanks. ๐Ÿ™‚

silk pebble
#

Hi, is there a way I can give different responses for different user levels in Twitch chat? I know Nightbot can do this sort of thing, but I don't like that Nightbot has a minimum of 5s CD on its commands. Thanks. ๐Ÿ™‚

tribal robin
#

The Game Label Widget is something I've been looking for for quite a while, would it be difficult to add a Stream Title field also?

#

having title and category automatically filled on a standby scene would be really handy

viral patrol
tribal robin
#

nice!

plain dirge
#

Does anyone have an alertbox widget that is customizable?

#

I'm looking to integrate Discord server joins as an alert but I'm unsure if it's even possible

viral patrol
#

@plain dirge You can take charity widgets from widget-share and build something around what's there

tribal robin
#

the Game Label widget has the text jammed right next to the icon. Any way to insert a few spaces so it's not so tight?

#

15 pixels seems like it would be about right

tribal zenith
#

@viral patrol FYI I tried the .htaccess file to hopefully fix the CORS issue, but unfortunately that did nothing. I then asked my server provider, if they know why this didn't work and what I could do, but they just said, that this is nothing I could fix on my end and StreamElements would have to whitelist the domains.
So yeah, seems like we have to use github for custom fonts :/

viral patrol
#

Wait. It is not about whitelisting a domain on our side.

#

Can you dm me the URL of that font on your server?

tribal zenith
#

sure

terse raft
#

thanks @viral patrol ! I'll look into that

novel rapids
#

is there anyone on that can get access to my accout to help me please

twilit aurora
#

is there a way to listen for channel point redemptions in a custom widget?
@ocean fractal Google 'triggerfyre' my friend โค๏ธ

jaunty breach
#

Hi, I would like to know if there is a way to use a custom command for the !uptime instead of the default command?

pseudo siren
#

Yes

twilit aurora
#

give the command an alias ?

#

@jaunty breach

pseudo siren
#

@jaunty breach you can disable default command and create custom command with same name :)

twilit aurora
#

ohhhhhhh

jaunty breach
#

Iโ€™m missing the alias to get the uptime back

twilit aurora
#

just change the command name

jaunty breach
#

Because since the streamer im working for 2 days+, twitch force you to restart your stream after 48h, so the !uptime only show the bew stream

#

New*

twilit aurora
jaunty breach
#

So we want to make a custom one saying 2D + {uptime}

pseudo siren
#

Maybe

#

Give me few minutes

jaunty breach
#

No problem, thanks

#

I search the alias to get back the uptime but couldnโ€™t find it ^^

twilit aurora
#

its in default commands so it wont appear in search

jaunty breach
#

Yup, just wondering if we can disable it on the default commands and create a custom one with an alias to get the uptime and add 2D before it :p

twilit aurora
#

disable default command and write custom with 2 days ${uptime} and counting...

pseudo siren
#

And when stream will run for 1 day+?

#

2 days, 1 day, 2 hours....

jaunty breach
#

RosieRiver have been streaming for 2 days and ${uptime] !

#

Using that

#

And getting:

#

StreamElements: Parsing error at position 56: Mismatched input list, missing end of inputs

pseudo siren
#
${channel} have been streaming for 2 days, ${uptime}!
jaunty breach
#

Working like a charm

#

Thank you @pseudo siren โค๏ธ

pseudo siren
#

It works for me

#

You dont pinged me :) @jaunty breach

jaunty breach
#

Oh oops

native trellis
#

@gloomy robin Kappa

jaunty breach
#

Have a good one guys!

pseudo siren
pure adder
#

Question is there an API limit? I wrote a script to add points to specific users and want to make sure I don't go over the limit.

polar hollow
#

Hey guys, i feel like the pros missed my message from earlier

silk pebble
#

Hi, Having an issue where a Regex is functioning normally in my channel, but then the exact same Regex isn't working in a channel I am modding for. ๐Ÿค” (repost from main twitch subchannel)

elfin arch
#

make sure the other user has the reqEx checkbox enabled @silk pebble ๐Ÿค” .... other than that; i'm not sure. (make sure SE or bot is a mod of course)

silk pebble
#

@elfin arch yeh Regex works 95% of the time on the channel

#

but not 100% which is the issue xD

elfin arch
#

@pure adder I am not sure about the API rate limit, but if you are adding points to multiple people at the same time then look at doing a "Bulk Add" and add them all at the same time with a single object

#

is it working for some variations of the filter or not working for any?

pure adder
#

I didn't see anything in documentation about bulk add

elfin arch
silk pebble
#

@elfin arch i mean Regex is working for essentially all other commands. is there something about a different type of command that would differentiate it? also i cant tell where that screenshot is from

elfin arch
#

oh command; my bad i was thinking filter

silk pebble
#

@elfin arch and when i say 95% of the time, I mean literally a Regex match for a function will be working 1 day, then randomly stop working the next. Sometimes giving the Regex a "kick" (Edit Regex, Save, Revert Edit, Save) helps, but sometimes as in the case from today, nothing helped.

elfin arch
#

ya; it's not explicitly mentioned in the Docs @pure adder ... but there is an object you can send to the points endpoint with a list of usernames and points to make 1 call. (like if you wanted to add points to all offline chatters for example) .... i'll see if i can find it

silk pebble
#

I did end up just using a Command Keyword instead to make it work, but having Regex be unreliable is annoying, as u would imagine. @elfin arch

elfin arch
#

ok. ya. i remember having this convo like a month or 2 back about getting it to work. wasn't sure if it was '95%' not working because it was missing something in the filter or if the whole regEx was getting disabled

#

ya. sorry @silk pebble i am not sure and don't use regEx commands enough to notice any issues or know why that would happen.

silk pebble
#

@elfin arch lol yeh. npnp. tnx anyway

elfin arch
#

are you using JS/node @pure adder ?

pure adder
#

python

#

I just need to know the body, url and method

elfin arch
#

BulkPutPointsToSE: (userNames, points) => {
      //userNames = [pjonp, streamElements, commanderroot], points = 5;
      let SEUserObject = userNames.map(i => {
          return {
            "username": i,
            "current": points
          }
        }),
        SEDataObject = {
          "mode": "add",
          "users": SEUserObject
        };
      return fetch(`https://api.streamelements.com/kappa/v2/points/${process.env.SE_ACCOUNTID}/`, {
          method: 'PUT',
          body: JSON.stringify(SEDataObject),
          headers: {
            'Content-Type': 'application/json',
            'Authorization': `Bearer ${process.env.SE_JWTTOKEN}`
          },
        })
....
pure adder
#

ty

#

this needs to be added to the documentation

elfin arch
#

so body is like this: ```json
{
"mode": "add",
"users": [
{
"username": 'pjonp',
"current": 5
},
{
"username": 'streamElements',
"current": 10
},
{
"username": 'commanderroot',
"current": -100
}
];
};

pure adder
#

ya I got that thanks

elfin arch
#

that user's should be an array not an object; just edited it

#

and the response back will be .text() not a .json()

#

@polar hollow i'm looking at that widget and can't get it centered like you have. ๐Ÿค”

polar hollow
#

centered?

#

Im looking to push it to the left (currently stuck in middle)

elfin arch
#

ya. that is what i mean; i see yours is centered. can you try to get a new copy of the widget?

#

i saw your screenshot and something doesn't look right as you mentioned.

polar hollow
#

yeah the normal widget had a hype bar and extra things and a bunch of weird things that i ended up deleting

elfin arch
#

ahh. ok. you were editing it already.

#

so you want to shift the center part to left?

polar hollow
#

Im trying to get a bar that shows follows/bits/subs/tips on the left side

#

yeah

#

should i start on a fresh one?

elfin arch
#

try in the CSS tab; line 37 change to 'left'

#

naw; if you already have it close to what you want then no reason to start over.

polar hollow
#

yes! thank you!!

#

also with bits is there a way to show the top of the week or is that a weird one to change?

elfin arch
#

um... not sure; let me check. you want both stream top and weekly top?

polar hollow
#

just the widget

#

had someone donate 5000 bits and then someone else donated 1 bit right after

#

big pain

elfin arch
#

๐Ÿคฃ

#

do you want both the top in the week & most recent or just the top for the week? (.... the latter would be easier)

polar hollow
#

latter yeah

#

the other one does sound interesting but I don't think I want to get into it that much

elfin arch
#

alright... try this...

#

replace 'cheer-latest' with cheer-weekly-top-donation

polar hollow
#

I cant tell if it worked or not but thanks!

elfin arch
polar hollow
#

awesome

#

Thank you~

#

I have a new question thats something else ๐Ÿ˜…

elfin arch
#

sure. ask away. if i can't answer maybe someone else can

polar hollow
#

Iv saving up for a capture card and i thought i would put a goal up. I could never figure out how to make it so tips, subs and bits all go to the goal

viral patrol
#

Great timing. We've just added a widget that fits your needs ๐Ÿ˜‰

polar hollow
#

no way haha

elfin arch
#

perfect timing lx ๐Ÿ™‚

polar hollow
#

what are the odds

viral patrol
#

One minute before you asked for that

polar hollow
#

WHAT ARE THE ODDS

#

WHAT

#

thats so weird

viral patrol
#

And now I can uninstall brain control software. Thank you for cooperating @polar hollow โค๏ธ

polar hollow
#

alright time to figure out how this works

#

How much does an affiliate get from subs?

abstract basalt
#

Hey everyone ๐Ÿ˜„ I'm building a raid alert widget, what are the best practice to handle these events?
I saw the widgetDuration with resumeQueue but I've trouble to understand how it works

If the widget has a widgetDuration only one event will be sent at the same time and the will "lock" the other event for the duration?
And resume queue allow to "skip" or release the queue earlier?

viral patrol
#

That is correct. Every queueable items falling into custom widget will lock queue for widgetDuration time, you can resume queue prematurely via resumeQueue method (especially if event is not doing anything within that widget - you want to display raid alerts only using that and you want to make sure that subs and other alerts are not holding queue there)

abstract basalt
#

So something like this would be the correct way?

window.addEventListener('onEventReceived',  (obj) =>{
  if (obj.detail.event.type === "raid"){
    animate(obj.detail.event.name,obj.detail.event.amount)
  }
  else{
    SE_API.resumeQueue();
  }
});
viral patrol
#

Not only that, you have to exclude events that are not holding the queue

#
const skippable=["bot:counter","event:test","event:skip","message"]; //Array of events coming to widget that are not queued so they can come even queue is on hold
window.addEventListener('onEventReceived',  (obj) =>{
  const listener = obj.detail.listener;
  if (skippable.indexOf(listener)!==-1) return;
  if (listener === "raid-latest"){
    animate(obj.detail.event.name,obj.detail.event.amount)
  }
  else{
    SE_API.resumeQueue();
  }
});
abstract basalt
#

Ho yeah ok I see ๐Ÿ˜„ didn't realized they could be triggered

#

Without that you could "skip" event that are still in the queue and miss some alerts?

elfin arch
#

ya; i'm also curious what the difference is there ๐Ÿค” ... i will note that lx code has 'listener == raid-latest` (which is how i'd do it was well)

#

oh i think i see it now.... say you have a sub bomb of 50 subs and each one is set for 10seconds. any chat message would bypass the 'skippable' check and start clearing the queue

abstract basalt
#

What is the difference between using the listener or the type of the event? safer since it's not inside the event data?

viral patrol
#

Listener is always provided. event contains event data, which does not always contain type parameter.

abstract basalt
#

Good to know ๐Ÿ˜„

viral patrol
#

Without that you could "skip" event that are still in the queue and miss some alerts?
You could skip current event when it is played. For example you have 2 raids in queue (one after another), raid #1 is playing, somebody writes a message in chat, you will receive next event via onEventReceived and your animation may break

abstract basalt
#

I totally see the point ๐Ÿ˜„ Good to know ๐Ÿ™‚

novel rapids
#

hi folks is there anyone i can pick ther brains for a bit

viral patrol
#

Hi. Please state your question, it will be easier ๐Ÿ˜‰

novel rapids
#

is there anyone that can assist me with overlays and some other stuff please

high swallowBOT
#

@novel rapids Welcome to the helpdesk! Please let us know how we can assist you today and a support volunteer or staff member will assist you as soon as they are available. Thank you for your patience.

desert spoke
#

Hi, does anyone have an idea on how to make the alert text box's adaptive so they fit any length of words when someone donates or subs?

viral patrol
#

Hmmm. This one seems not OK

#

nvm. Just checked it - should be OK

desert spoke
#

sweet ill give it a look, thanks

polar hollow
#

Im still trying to figure this bar you sent me

#

this test points bar is a bit weird

#

^here I have 400 points

#

shouldnt the bar go up?

real mountain
#

So I wanna know if theres a way to get the discord stream kit overlay in my streamelements overlay to save resources

novel rapids
#

hi folks me again lol how do i know if my stream is ready

cinder lintel
#

@novel rapids Are you looking for API assistance? If so, you will want to ask detailed questions. If you are looking for assistance with certain features of the website, please ask in the appropriate helpdesk channel

novel rapids
#

i was hoping for someone to have a look at my stream to see if its ready

cinder lintel
#

which is not an appropriate question for this channel. In reality, that question should be asked to yourself. Only you can say if your channel is ready. Does it have everything you want? does it look the way you want it? It is your channel, your choice

novel rapids
#

@cinder lintel sorry

hardy walrus
#

@tribal robin Only one we have natively is for our media request. Anything else would require a custom widget that connect to an available API or locally load a file to be displayed on stream.

swift ibex
#

Thankyou for pointing me here Sudo.

Hi all. Does anyone know if there is a widget available that listens to the Twitch API, and can swap out active animation loops/gifs with a different image/webm/gif/etc. when say when it detects a subscription in the api?

Basically I use a custom animation as a layer over my tip jar to create a character, so swapping out animations when a sub happens would be the greatest. I've just never had the time to figure out how to approach it or learn the coding required.

elfin arch
#

do you have experience with HTML CSS or JS?

elfin arch
abstract basalt
#

What's the recommended way to play sounds in a widget?
an html audio tag with an ID
Or something like this?

var audio = new Audio('audio_file.mp3');
audio.play();
viral patrol
#

I usually go the JS way for audio.

elfin arch
#

+1 for the JS route to add volume slider as well

viral patrol
#

But the really important part: audio.volume=fieldData.audioVolume/100;

abstract basalt
#

Good to know :D
I'll see to add that now that the visual base of my new widget is working ๐Ÿ˜„

abstract basalt
#

Is it ok to use the field widgetDuration in a slider and not an hidden type ๐Ÿค” ?

viral patrol
#

Of course you can do that.

#

But I was using widgetDuration as a fuse. If everything in the code fails to resume queue prematurely, it is an exit from it.

elfin arch
#

i couldn't change the widgetDuration in my testing with it; for me it was locked at the value i set it for the first time. couldn't change it

viral patrol
#

There's a way to adjust that. Logic there for any custom is like:

  1. currentValue = defaultValue
  2. if the userValue !== currentValue, currentValue = userValue
    So if you change defaultValue in fields (even remove the field, it is still in values)
#

This one can cause troubles like you have an artifact in your code and somebody copies just the code of it, it may not work as original widget may have a values used in code when they are missing in fielddata.

elfin arch
#

ya. i've had that a few times where the Field variables were overriding stuff in the JS; i'm saying that once i set the the widgetDuration = 30 in the fields it was fixed there for me; even if i changed the field data to widgetDuration = 2 it was still 30 seconds

#

Once i set it; i couldn't change it. unless i was going crazy or made an ooof

viral patrol
#

Yup. In that case you change type from hidden to number and adjust value in both Fields and code.

viral wyvern
#

Hey guys...How would i get $time in 24h format and AM/PM format for Asia/Vientiane ?

hardy walrus
#

Very last one.

tame sun
#

day 6 of waiting to get oauth credentials for the API, I got everything working, now to release the "streamelements currency system support update" all I need is to get a response regarding the credentials.

inland ice
#

Good day everyone. ๐Ÿ™‚ Does anyone know how to adjust the volume of custom widgets, in the JS portion of one? For Zanzer's custom greeting, it just says to type "volume": 50 but it never adjusts the sound clip.

viral patrol
#

Try to use volume between 0 and 1 to be sure

inland ice
#

I've tried to use 0, and it didn't work to turn it off, and no other combination I use works either

#

That's in the JS field

#

@viral patrol I've tried to use the volume, and length custom fields, and they don't seem to work. Then, I added the strms link for the widget, and can't adjust in there, either. There has to be something I'm missing.

#

I copied the JS block into notepad++, and tried a search for volume. When I searched volume, aVolume variable came up. It looks as if the variable is defined twice. Could that be the issue?

viral patrol
#

I think the best is to get widget author ๐Ÿ˜‰ @crude crest can you take a look? Thanks in Advance

#

(I am not able to investigate the code currently)

inland ice
#

@viral patrol Thank you for your time ๐Ÿ™‚

toxic harbor
#

how to set a negative value to a count? when I set ${count name -3} the value is subtract 3 instead of set to -3.

subtle marten
#

Is it possible to get the profile image to a twitch username? For example a "Top Widget"?

#

how to set a negative value to a count? when I set ${count name -3} the value is subtract 3 instead of set to -3.
@toxic harbor set it to 0 and then subtract 3 OpieOP

viral patrol
#

And this is out of box thinking:

#

We hit ${count wins 0} and even ${count wins -3}

#

Or you may make it so it looks like just -3

#

Like: ${count wins 0}h! We are at ${count wins -3} which will produce 0h! We are at -3

naive forum
#

Does anyone have a way to make the Media Request widget where it scrolls the Title text. Some of the songs and artists are longer than the window I use.

#

Scroll Horizontally that is.

silk pebble
#

Hi, is there a way of seeing all stored quotes in a list? ๐Ÿค”

hardy walrus
#

Not atm unfortunately.

#

Planned though.

silk pebble
#

ooh ok. tnx

#

๐Ÿ‘

#

@hardy walrus will it have a "new" tag or something in the dashboard, u think?

pulsar willow
#

guys is there way to make !so @name , i saw this from nightbot

hardy walrus
#

@silk pebble No idea.

silk pebble
#

@hardy walrus kk xD. tnx

rugged rapids
#

@pulsar willow Take a look at the templates when creating a new custom command.

pulsar willow
#

i know without @ but dont see with it

hardy walrus
#

Use ${touser}

pulsar willow
frozen hill
#

hmm should be $(touser)

pulsar willow
#

it work but it doin link with @ and thats wrong

frozen hill
#

even when doing $(touser) instead of ${touser} ?

pulsar willow
#

idk can try it again with dif. closses

frozen hill
#

then just use ${1} ๐Ÿ™‚

hardy walrus
#

Would still cocontain the @.

frozen hill
#

oh yea. hes tagging the person with the @.. didnt see that xD

rugged rapids
#

Check out ${1}, they are playing ${game ${1}} at https://twitch.tv/${channel ${1}}

#

This is what is in the templates.

pulsar willow
#

ey that fixed

#

i thanks

ruby geyser
#

Hey so I'm looking into making a simple "Challenge Me" button system where on a sub, it'll press the button and it'll present me with a challenge, I got the core function done in codepen and I've imported it into streamelements with customisable colours, a text field for a command to go into as well as a test button but, I haven't got the foggiest idea how to connect it all up, am I allowed to share my codepen in here or shall I screen record it functioning?

simple cove
#

Curious on if this is technically the right section, but i am testing a sub goal for my stream, and say I set it at 10 (for total subs) and then someone subs for 25 months, it goes straight to 25/10 - but thats not 25 subs?

#

So technically a live sub count!

viral patrol
ruby geyser
#

So my brain exploded, I can't seem to find the part where I would essentially trigger a button press. Can I share my code pen so you get a rough idea what the function is?

#

I should probably mention I am a complete novice when it comes to JS ๐Ÿ˜…

viral patrol
#

@ruby geyser

const command='!challenge';
window.addEventListener('onEventReceived', function (obj) {
    if (obj.detail.listener !== "message") return;
    const message = data["text"];
    if (message.startsWith(command) && message.length > command.length){
    const challengeText=message.replace(command,"");
    if (!parseInt(data.tags.subscriber)) return;
    startChallenge(challengeText); // - here it is where you start it
    }
});
honest pine
#

@ruby geyser are you after some code that detects a sub alert, and then can run some custom code, rather than a chat command?

viral patrol
#

Oh. On a sub... I am blind...

#

Great catch @honest pine

honest pine
#

np, sorry I didn't spot it sooner, but I'm nicking that code

viral patrol
#
window.addEventListener('onEventReceived', function (obj) {
    if (obj.detail.listener !== "subscriber-latest") return;
    startChallenge(); // - here it is where you start it
});
#

This one triggers startChallenge() on new sub โคด๏ธ

ruby geyser
#

https://codepen.io/jakeyn00b/pen/gOPyJgG So here is what I have as a bare bones button press. Essentially I want it have a way of testing the button press either with chat command or the button within streamelements and for it's core function to trigger on sub. I've been spending most of today looking for a way to loop function the array but my knowledge is limited and I'm struggling to understand how to do it with what I have.

I'll take those chunks of code and see what I can do with it myself but any pointers or hints on how to achieve this would be incredibly helpful, I'd also love to share it once it's done

Using an Array which can be fully customised in JS. On button press, a challenge is selected at random!...

#

I pretty much would like it to loop through each of the challenges for a determined amount so for example 12 times before presenting the output

spring knoll
#

Hi everyone!~ I am currently testing out a free alerts widget from NerdorDie.com. It's their "Wicked" widget. I am currently earning in USD, and am fairly happy with a little update they did last night to add a currency symbol reflecting USD amounts.

#

However, I was curious if the currency symbol and syntax would correctly change depending on if I changed my currency settings at my StreamElements.com account.

#

It mostly did. It seems to work well for currencies that use "."/decimal points to separate dollar amounts from cents. However, the system does seem to have trouble with commas.

#

So, for example, with Japanese yen, it does not provide commas, as JPY does not use decimal points to separate dollars from cents. They just have yen in increasing amounts, and when it gets to 1,000yen, they start separating with a comma.

#

It's passable, but looks a little bit weird.

pine island
#

Hi, is there a way to show a video on an overlay that hides when an alert is triggered?

spring knoll
#

Okay going back to testing in USD, and I am also seeing no commas being included in the syntax for higher amounts at $1,000 or above. It's probably not going to matter to me this fall, since I'll be a new streamer, and I doubt I'll ever get such high amounts, but 1,000JPY, for example, is about $9USD give or take a quarter. So that's not a very high amount, and so I think commas being added to currency syntax has some value, but maybe isn't a coding priority.

plain dirge
#

Is there any way to use iframe in a SE overlay? I'm trying to get a recent Twitch clip to play in an overlay

rugged rapids
#

Afaik, for security reasons, that is not possible as iFrame.

plain dirge
#

Is there any other way to show a Twitch clip in a widget?

#

I'm trying to reproduce a feature Dr. Disrespect had on his stream where his chat would vote for a clip to be created and then it would show shortly after on stream

torn gulch
#

@plain dirge this is a software "Boom.tv".

rugged rapids
plain dirge
#

Ooooh! Alright. Thanks, guys! โค๏ธ

vital hollow
#

can you get streamelements bot to show new follower on chat?

viral patrol
vital hollow
#

omg @viral patrol man i was hoping you wopuld respond thank youpurplefingerguns philKill

#

wow it was in front of my face thank you! ive been stuck for days lol

mystic dragon
#

Hey i want a Custom URl , now is mine dalim-7320 and i want only dalim pls help me

covert widget
#

I hope this is the right place to ask. Does anyone know of a chrome extension that can detect a dom change from a streamelements overlay URL and send a UDP packet (Itโ€™ll actually be an OSC command) on my local LAN containing certain data from that change? I figure why duplicate a job thatโ€™s already done?

red oriole
#

Can anyone help me HTML a single gifted sub alert? I can't find out how to put the name of the person receiving the gifted sub in the HTML alert.

viral patrol
#

@red oriole Hi. You should be using {sender} in your HTML in a place you want to have sub gifter and {name} for a gifted person.

red oriole
#

@red oriole Hi. You should be using {sender} in your HTML in a place you want to have sub gifter and {name} for a gifted person.
@viral patrol Hmmm...I've tried that and no dice. Can I send you what I have to show you?

viral patrol
#

@ruby geyser As in your example it should be:

const command='!challenge';
window.addEventListener('onEventReceived', function (obj) {
    if (obj.detail.listener !== "message") return;
    const message = data["text"];
    if (message.startsWith(command) && message.length > command.length){
    const challengeText=message.replace(command,"");
    if (!parseInt(data.tags.subscriber)) return;
       Loadquotes() // - here it is where you start it
    }
});
#

@red oriole Sure. You can give me jsfiddle with your code

#

@covert widget I haven't seen any DOM listener for SE overlays

red oriole
#

Big shout out to my dude @viral patrol for taking the time to chat with me via a call, and walk through some things. Thank you my friend!

viral patrol
#

You are welcome! Glad I could help you SEheart

mental lintel
#

i am trying to edit my overlay and every time i change the video for a sub alert it shows that i changed it but if i simulate a sub it keeps using the default sub alert picture. im not sure why this keeps happening..

viral patrol
#

Hello! You need to replace <img> tag in your html with something like <video id="video" playsinline autoplay muted style="width:50%; height:50%"><source id="webm" src="{{video}}" type="video/webm"></video>

mental lintel
#

im not really sure how to do that but its not a CSS if that helps.

#

all the other alerts except sub and cheer have changed to the correct video. and the ones that dont show the right video do have the correct noise

viral patrol
#

Oh. It is not css

#

Go to variations tab as probably you are triggering "Resub" variation

#

Same applies to cheers

mental lintel
#

yep.. that was it! thank you. i was feeling very defeated haha

tame sun
#

I am trying to get this API request working:
https://docs.streamelements.com/reference/single-user [Add or remove points from user]

url = 'https://api.streamelements.com/kappa/v2/points/razbith3player/razbith3player/10'
headers = {'accept': 'application_json',
          'Content-Type': "Content-Type",
           'Authorization': f'Bearer {jwt_token}'}
res = requests.put(url, headers=headers)
print(res.json)

{"statusCode": 403, "error": "Forbidden", "message": "No channel authorization found"}
I don't know what I could've done wrong.

It doesn't say "invalid token" it just says I don't have authorization, which makes no sense, I try to access my own User on my own channel

viral patrol
#

You have a typo in your headers

#

f'Bearer {jwt_token}'

#

OK. All of your headers are wrong

tame sun
#

I just copied the example

viral patrol
#

It should be Accept: application/json You don't need content-type (which is malformed too) as you are not passing any body

#

Also, what programming language are you using? Is it JS?

tame sun
#

python

#

requests library

#

"it should be Accept: application/json"
alright I adjusted the capitalize, it didn't do anything

#

the requests library handles the formatting of headers, like when using other APIs it works as intended

viral patrol
#

It is not capitalization as you had underscore there

tame sun
#

oh

viral patrol
#

Ohhh.

#

One more thing

tame sun
#

also right now I am testing it on Postman

viral patrol
#

https://api.streamelements.com/kappa/v2/points/599f72deef8c5c6dcfb39eec/razbith3player/10

tame sun
#

where the underline is not an issue, but good that you pointed that out

viral patrol
#

You were using channel's name instead of id

tame sun
#

alright, makes sense, now it works, I'm used to twitch API where both work

#
{
    "channel": "599f72deef8c5c6dcfb39eec",
    "username": "razbith3player",
    "amount": 10,
    "newAmount": 15790,
    "message": "Added 10 points to user razbith3player"
}```
viral patrol
#

Due to multiple platforms we have covered, we require users to query via channel ID.

#

So there are less mistakes when there's somebody who has channel on Twitch and YT/Facebook with same username

tame sun
#

oh that actually makes sense

[tbh since channel name is so short compared to the channel_id. if the provided channel_name is a lot shorter than the channel_id, the request should tell you, to use channel_id instead of channel_name directly. [I have no idea if all channel_ids are 24 char long, but mine is]

tame sun
#

question: how to fetch channel_id by username, i am looking through the API and I don't see any way to do that, do I have to tell users to copy their Channel-ID and paste it in the program ?

tame sun
#

works, thanks

viral patrol
#

But, there's a better way to get this data (assuming you have authorization token), then you query /channels/me as channel name may be different.

tame sun
#
            url = f'https://api.streamelements.com/kappa/v2/channels/{self.name}'
            headers = {'accept': 'application/json'}
            res = requests.get(url, headers=headers)```
too late now, I fetch the self.name anyways through twitch api to figure out where the bot should connect to

what's the difference between `pointsAlltime` and `points` when I request a user's points
high swallowBOT
#

10 minutes of watchtime are given to those in chat when the loyalty points are handed out (every 10 minutes). Therefore, loyalty must be enabled for watchtime to work properly.
There is no direct link between watchtime and all-time points.
It canโ€™t be calculated from the amount of all-time points a user has because subs may earn points at a faster rate and !bonus all command increases all-time points for users in chat at that time.
Giving points to a single user does NOT affect all-time, only when giving to all in chat.

hardy walrus
#

@tame sun ^^^^

tame sun
#

wait, pointsAlltime = watchtime ?

inland ice
#

@crude crest would you happen to have time to help troubleshoot the volume adjustment for your Automatic Greeting widget?

tame sun
#

I just gave myself 20 points and requested my own points and the points was higher by 20 than pointsAlltime so I suppose points is the actual points and pointsAlltime is all points gathered by watching + !bonus ones, or smth

when fetching, I'll use the points one, I guess

hardy walrus
#

@tame sun That's how I read it.

#

Not that I understand the API ablobderpy

tame sun
#

alright, points it is

untold shuttle
hardy walrus
#

@untold shuttle I know what you're speaking of and it's behaving the same way you're most likely getting. Gonna ask some people.

covert widget
#

@viral patrol thanks for the reply

fresh helm
#

is this the channel where i would ask questions about custom widget code?

#

is the TTS in the alerts widget able to be manipulated at all in the javascript editor?

abstract basalt
#

Is it normal that the input type checkbox doesn't reset the iframe when the value change like other inputs do?

delicate light
#

Developing a website for a client, he wants to add in some features with the Donation/Tips API, but I see the client ID is a parameter for the leaderboard endpoint, was wondering if there's a way he can generate an API key for me?

pastel goblet
#

Guys, I have been searching for it online, but couldn't fidn much information about it. Could someone recommend me some documentation about merging streamelements economy with a discord bot economy? Or is that even possible in some way? I'm developing a discord bot and would like to use a cross-economy with my streamelements points.

viral patrol
#

@abstract basalt Yes. I think it is because changing state of checkbox doesn't change it's value but state only. This is why I am using dropdown type instead.

#

@pastel goblet Unfortunately I don't know anything about that, but you can listen to SE events via WS on your discord bot and then dispatch discord currency to your users (ofcourse with name check, because you will get twitch username and not Discord username from us).

#

@delicate light Reading /tips/:channelId/leaderboard doesn't require API key, but streamer needs to enable this in tipping settings

delicate light
#

@viral patrol Where are the tipping settings?

#

Also apparently /tips/:channelId/leaderboard ALWAYS returns a 403 error, so you actually need to access the /top endpoint instead

#

I read that above.

viral patrol
abstract basalt
#

Thx I'll switch to a dropdown ๐Ÿ˜„

delicate light
#

^^ nvm what I said earlier, enabling leaderboard fixes that (not specified in docs tho)

covert widget
#

Is there documentation on the DOM of a Streamelements widget URL ? I want to make a browser plugin using MutationObserver that acts on the DOM change when a stream alert happens.

abstract basalt
abstract basalt
#

Anyone got a problem with rem units for a widget on OBS ?
I have the correct display on the editor/preview on the browser, but once in OBS, the font is super small and margins too. I only use rem not px

#

(same effect with using px)

pulsar willow
#

Hey there! I was recently editing variations for my sub alerts and I wanted to do some custom css for it, but I'm having trouble finding containers for the amount of months resubbed for, who gifted subs etc... basically any variable that doesnt appear in the default css for the default alert

viral patrol
plucky phoenix
#

Looking to submit a widget sometime in the near furture once I get the bugs worked out.

On the rules it says "3. Forward any data that could identify a streamer to an external resource without their consent (not as opt-out too)"

Is it fine that it uses a mini API to get creds for a 3rd party I host which is then saved on the widget to get info from the 3rd party on the user behalf.

viral patrol
#

Yes, but it has to be described as external service (like for example user has to input something or check a checkbox before any data (like username) is forwarded to external service)

plucky phoenix
#

I see. Would on the mini api it connects the 3rd party and shows what data they are allowing to be used?

#

Like on connection it shows what permissions to be granted.

viral patrol
#

Huh. I cannot tell without checking that in action. If you submit your widget I will definitely reach you to discuss it ๐Ÿ˜‰

plucky phoenix
#

I can give you the API link as it's online currently while am testing.

viral patrol
#

Just like heist game widget - it requires user to oauth and paste a token within widget. Just to make user sure what are they doing.

plucky phoenix
viral patrol
#

I am not on PC ATM - I will be in ~10hrs ๐Ÿ™‚

plucky phoenix
#

Am I allowed to make changes to the widget after submiting?

viral patrol
#

I had my own endpoint for that too. Spotify is not really happy about streamers playing music from their app.

#

But about that question: yes, you can update widget after you submit it. And we are happy if you do so ๐Ÿ˜‰

plucky phoenix
#

monkaHmm How long ago was this as it seems they don't care much anymore.

#

They even have there own Twitch Ext made by themselfs.

broken coyote
#

i dropped the api stuff and just started using snip.

plucky phoenix
#

Snip does work. Kind of just like having a overlay that just works anywhere with no conf needed or any programs installed. I used Snip in the past and it works great tbh.

broken coyote
#

i had so many lag issues with the aiden one. just moved all my code over to snip

pulsar willow
#

@viral patrol thanks a lot for the help! it was exactly what i needed

cinder bridge
#

Is there any way to the test the API (for example, the tip listing) without having to wait for a tip? Emulating the event does not seem to send the event through the API unless I'm mistaken and I'm doing something wrong.

delicate light
#

Do you not get API access to channels you manage?

cinder bridge
#

I have API access and I've getting tips for old events that have already happened, but I'm trying to test it with new events to make sure that I can trigger actions and they will work correctly in my application.

burnt shale
#

Hi all - I am looking to build some integration with StreamElements on the back of requests from my users. Is there a staff member around that I can speak to just to confirm no concerns from SE around my plans? Thanks

viral patrol
#

@burnt shale Hi! I hope I will be able to provide answers to your questions.

rose brook
#

@viral patrol Hi I'm trying to implement your chat poll widget on Streamelements but I'm having some issues with it responding the the chat commands. I've added the widget but it's not responding to the chat commands set up.

viral patrol
#

I just checked it on my account and it seems to be working

#
!startpoll  Which option?|option a|option b|option c
rose brook
#

Thanks @viral patrol I've managed to get it working. It disappears when I move it's position but now I've sorted out where I want it, It's all good. I think I was doing the command slightly wrong. Thanks x

inland ice
#

Good day everyone ๐Ÿ™‚

#

@crude crest were you able to check on the code for the automatic greeting? The part to change the volume of sound files wasn't working, when I manually set it in the JS code.

elfin arch
#

@pastel goblet ... it's a rough road for the Twitch to Discord connection; but is possible. you will need to link the accounts yourself and verify the tokens/id/username for each user. But you will need a website or something for people to agree to connect their accounts

#

@inland ice did you set it to a value between 0 & 1?

inland ice
#

@elfin arch I tried that as well, yes. 0 didn't disable the sound, 0.0 didn't either. When I tried several increments, I tried .01 .1 0.1 etc

#

The overall volume level could be changed, but not the differing single sounds and/or videos.

elfin arch
#

go to https://jsfiddle.net/ and post your JS code in there; click save then send the link back.

#

ooooo; you mean different volumes for different alerts

inland ice
#

Correct. The overall volume for the entire widget can be changed, but not the separate values for individual alerts.

#

In the remitted block, it says to use a value from 1-100, but that didn't work either.

#

The sound will go off, so I know that part of the JS is solid.

bleak vapor
#

Is there a way for me to make changes to the premade Evenlist with custom CSS?

#

For youtube that is

inland ice
#

Sorry, @bleak vapor I'm green when it comes to all of this. But welcome ๐Ÿ™‚ There is probably someone who knows, however.

elfin arch
#

i'm sure with YouTube; but if there is a 'custom css' override or settings that brings up the HTML/CSS then yup ๐Ÿ™‚ @bleak vapor

#

so if you add that "volume" : 2 would be 2%

inland ice
#

ah, so a space is needed where the colon is?

elfin arch
#

and you are correct; this code has the 0.01 multiple in it; so it is a number between 1-100

#

no that space won't matter; is that 'volume' something you added?

inland ice
#

yes, I did add that, as the remitted portion says use "volume" 1-100 to adjust the volume of a specific command

#

is it possibly nested wrong?

elfin arch
#

try just 50; no quotes with it

inland ice
#

what about the comma after the 50?

elfin arch
#

remove the comma

inland ice
#

unfortunately the volume still won't change

plucky phoenix
#

@viral patrol Do you think I should try submitting it still?

inland ice
#

at 55 seconds in the video, you see how volume is set

elfin arch
#

yup; that looks good to me. (i don't know the code though)

#

but did you remove the quotes from your "50"

inland ice
#

yes I did

elfin arch
#

copy the aVolume and change to like 0.2

#

see if that changes the volume

#

that aVolume is the number you put in * 0.01 (so this should be low volume; 20%)

inland ice
#

@pฬjฬoฬnฬpฬ unfortunately, that didn't work either

covert widget
#

There must be browser plugins or server side code that detects alert/types/values that get pushed to a streamelements widget URL. Iโ€™m looking to send OSC packets over my LAN, and it seems to me all the authentication work is already done by that browser page. I need to send OSC packets over my LAN. Can anybody point me in a good direction?

fresh helm
#

anyone coded a widget where it plays an alert depending on if a user left a message or not

frozen hill
#

is there something like nightbot's $(querystring) in the streamelements bot? so if i send a command without anything after the command it will still send the costomapi to the server.

random raft
#

Not sure if its the right place but does anyone know how to add a text source to a widget?

delicate light
#

What kind of access does the JWT Bearer token give to someone's account?

#

Would it be appropriate to ask my client to send it to me so I can access the proper endpoints?

#

I've been trying for a few days to figure out how to get access to my clients tip history through the API. Does anyone have any solutions?

rocky lava
#

Hi, im trying to add a custom font to an Alert, Im enabling the Custom Font Switch but after that what should I do?

high swallowBOT
#

@rocky lava Google Fonts
More than 900 google fonts are supported at this time. You can preview them here: https://fonts.google.com/

Custom Fonts

Steps:

  1. Install the font on the streaming PC or choose a pre-installed windows font.
  2. In the overlay widget settings, select Text Settings
  3. Enable Custom Font
  4. Type the name of the font as it appears in the windows font directory (This is usually C:\Windows\Fonts)

Note: After installing fonts, the browser and OBS must be restarted for the font to appear.

rocky lava
#

Thank you!

solemn cedar
#

HELLO I AM HAVING AN ISSUE AND I COULD REALLY USE SOME HELP. I JUST CHOSE MY OVERLAY THEME IN STREAM ELEMENTS AND THEN I WENT TO MY OVERLAYS. THEN I OPENED THE OVERLAY EDITOR FOR THE THEME THAT I CHOSE AND THE ISSUE THAT IM HAVING IS THAT I TRIED TO EDIT THE TEXT FOR ALL OF THE SOCIAL MEDIA THAT CAME WITH THE OVERLAY AND I WAS ABLE TO EDIT THE TEXT IN THE ACTUAL EDITING TAB BUT FOR SOME REASON ITS NOT TAKING EFFECT OR CHANGING THE SOCIAL MEDIA FOR THE OVERLAY I TRIED SAVING IT MULTIPLE TIMES AND THEN LOOKING AT THE PREVIEW AND THE SOCIAL MEDIA TEXT JUST WON'T CHANGE OR PERMANENTLY SAVE. WHAT AM I DOING WRONG?

elfin arch
#

if you alt click on the name; then edit it the left tab; it should show in the editor preview

solemn cedar
#

Ok i think i got it thank you so much!

#

One more thing how do i found / implement a new social media icon that doesn't exist in the overlay you chose

viral patrol
#

@solemn cedar you can use google images to find it and upload it to overlay as image widget

solemn cedar
#

Thank you

#

And also is there a way to pin the social media on the bottom of your in game scene so that it shows in all of your scenes not just in the in game

#

Or do i have to add the social media individually to each one

viral patrol
#

You can have a social rotator as separate browser source and add it anywhere you want

#

And you should find several of them

vapid scroll
#

Hello everyone! I have a rather specific question about the Credit Roll widget:

Would it be possible to reload the Widget via JS at an interval, so that it stays updated? Currently I'm using it on my end screen and have to (automatically) reload the whole Streamelements browser source to get the widget to update and show the stream's latest followers etc.

I would prefer to not refresh the complete source, as it blackens the screen for a moment and also resets other widgets like the chat box. I know it's more of a cosmetical issue, but would smoothen the flow of the scene transition a bit.

elfin arch
#

in OBS settings for that scene do you have the 'shut down source' enabled?

vapid scroll
#

No, that is not active

elfin arch
#

is that widget on the same overlay as all of the rest?

vapid scroll
#

Yes, only one overlay and one browser source in that scene

elfin arch
#

create a new blank overlay; copy that widget over; then when you switch it off it will reload without affecting the others

#

i am assuming this if for a 'credit roll' at the end of the stream with it's own scene

vapid scroll
#

Exactly, and you are very right, that might be the easiest way to do it ... damn, I could have figured that out myself ellamiLachen
Thanks for your input!

elfin arch
#

๐Ÿคž

vapid scroll
#

It works just as expected! timmeh1Love

inland ice
#

@elfin arch I was just curious, did you happen to have anymore ideas about the widget volume?

elfin arch
weary aspen
#

Has anyone been able to come up with a !clip command that can be added to SE for easy quick clipping?

rugged rapids
solemn cedar
#

So the overlay that i made in the stream elements overlay editor is the one that im using for streamlabs but i want to use the same overlay for my obs but just with a slight tweak or difference, how can i use the same overlay for both obs and streamlabs but with slightly different versions of the same overlay?

rugged rapids
#

Create one overlay for the items that are the same and then two more for the ones that are different.

solemn cedar
#

What are you referring to when you say items? And when you say then two more? Could u be more specific?

rugged rapids
#

Either create two overlays, which contain the changes and the duplicated items and add them to the OBSs or create one overlay with the matching same things and two more for the ones that are different and add to the one OBS the two overlays and the other OBS gets the same and another one, so also two.

stone vigil
#

Hello! Sorry to intrude, is there a way to put the media share overlay bar with the info on top of video instead of bottom? seems like a no-brainer, but i can't get around it

simple creek
#

SE_API.store apparently doesn't store data forever? How can I have permanent persistent data. Do I have to set up my own API?

#

or is it if data eventually is missing, i am using a name that is being used

viral patrol
#

Data within SE_API.store should be permanent. Are you sure nothing is overwriting it?

random raft
#

Is anyone around that is good at making widgets that could help me think my through how to make something work that im trying to do for my stream overlay

bold scroll
#

Hi, I am building a now playing widget site and I want to show the current now playing status from the streamelements songrequests. I need people to be able to sign in with their streamelements account. How can I do this and where can I create my Streamelements developer application?

velvet cave
#

please dont tag all support heroes

#

check the pinned messages for the most info

#

and otherwise a Code Guru can most likely answer your question bordea1Thumbsup

real dune
#

you want all your viewers to have to sign up for an SE account?

bold scroll
#

The pinned messages do not contain my question

#

No, I am a developer of a site where people can create a now playing widget to include in their streams and I want people to be able to connect to my site using their streamelements credentials

#

Oauth2

real dune
#

so you do want everyone to have to make an se account

bold scroll
#

No by default people can login to my site using spotify to show their current spotify playing status and when they want to include the streamelements songrequest I want them to be able to connect their streamelements account to my site

real dune
#

im so confused, you say no, but then say "able to connect their streamelements account to my site"

best thing is to figure out what you want then wait for a coder to respond

bold scroll
#

I want access to the streamelements oauth2 api

#

https://docs.streamelements.com/docs/getting-started-1 i am trying to follow this guide but the oauth2 application form is disabled

hardy walrus
#

@bold scroll Unfortunately we aren't allowing any new applicants atm.

bold scroll
#

Aah, when will streamelements allow new applications?

hardy walrus
#

No idea but I'm certain we'll make known when this is possible.

fading lynx
#

Hello, is there any way to hide deleted messages from my on-screen chat? Unwanted messages shouldnt be shown.

#

It would be great if an option gets added to Streamelements chat overlay.

#

Imagine that you are a streamer with few viewers and someone pastes a dikpik text-art to your chat and it appears on your stream. You cant remove it even if you ban the user.

#

This is a serious problem, i hope developers see this.

simple creek
#

@viral patrol it isn't being overwritten by me, my only thought is some other widget was using the same key

inland ice
#

@elfin arch setting to zero did mute the volume, yes

stoic palm
#

Does anyone happen to have a timer that I could add to my overlay? I checked in Widget share but didn't really find anything that would suit my purpose. The closest thing was a marathon timer which is activated by user interaction.

simple creek
#

how does one get interaction from the someButton field?

#

{{someButton}} .... nevermind

#

er no that just displays the value #confused

#

i found it, my apologies i searched for someButton and not button. It is in the doc

leaden sentinel
#

Hello.. when giving access to stream elements it is asking to permanently edit or delete my videos

#

the same is with stream labs

#

and i have heard peoples account getting hacked because of this feature

#

im from INDIA and is this secure way to stream

#

or should i choose OBS STUIDO instead??

elfin arch
#

Are you talking about the streamElements website or the OBS.live extension @leaden sentinel ? The SE OBS.live extension is just a plug-in for OBS STUDIO that allows you to have some Stream Elements docks and information inside of OBS Studio. It is completely secure as long as you keep your password safe and never share your tokens (the same as any other website / software)

viral patrol
fading lynx
#

Thanks I will give it a shot @viral patrol

fading lynx
#

@viral patrol where can i adjust the space between messages?

viral patrol
#

I think in message-row in css

#

But I am not 100% sure

fading lynx
#

Okay i will check

fading lynx
#

Btw i pasted json to fields, is it right?

viral patrol
#

That is correct

fading lynx
#

I just checked it doesnt remove messages from screen@viral patrol

viral patrol
#

Timeout should remove them, but message delete has changed AFAIK

fading lynx
#

Yeah timeout works

tame sun
#

exactly 2 weeks later, still no API credentials reponse, I get that I can use the JWT token, I setup basically everything, I'm just waiting for this so I can rollout the update, I don't trust users pasting their JWT token without being confused, skipping instructions then dming me 20 times about how they don't know what to do

also when I go to the form page:

hardy walrus
#

@tame sun It is closed for the time being and we're not accepting new applications. I will however ask about your status.

#

Unfortunately as I'm going to bed due to work tonight I'm not sure when I'll get a reply from the person who could answer it.

tame sun
#

thanks basshunter

viral patrol
#

@tame sun We are resolving the issue behind backlogged OAuth credentials dispatch. Your application is still queued and once the issue is fixed your application should be processed in the first batch (before we reopen requests form).

left rampart
#

Is it possible/allowed to have a POST webhook that updates information on the overlay? I'm not positive I can consume the api via JS, but if I can, it beats polling the service every few seconds.

#

Oh, the webhook and API are external to SE.

orchid plover
#

Iโ€™m not sure where Iโ€™m supposed to ask this but i finally got my own custom alerts and overlays but when i put the alerts into the overlay editor the text on image will not show up but the text shows up next to and under the alert

onyx shuttle
#

hello. can I ask for a help regarding invitation?

(idk where to ask this since all the helpdesk is regarding specific stuff for social media.sorry for the inconvenience)

#

I want to invite my main account here

unique umbra
#

Hey guys, is it possible via API to retrieve the last subscriber or tips count?

viral patrol
#

@ClintonIsDeaf#1895 Check if the custom code for all of your alerts is the same. If it is a default alertbox (no custom code) - check margins and text position if it is not out of the canvas

#

@onyx shuttle What kind of invitation are you looking for?

#

@unique umbra You can get your session data from this endpoint <https://api.streamelements.com/kappa/v2/sessions/:channelId>

granite pelican
#

Hey! Is there any way to reset current followers count in followers goal widget?

high swallowBOT
#

@granite pelican To reset goals:

  • from the overlay editor -> session data on top right (monitor symbol) -> goals tab -> reset progress of desired goal
  • from the dashboard -> activity feed on the left -> widget data on the right -> goals tab -> reset progress of desired goal
    Note: Goal widgets(progress) only counts up and doesn't go down automatically, if you loose followers/subs
granite pelican
#

It helps, ty.

minor steppe
#

Hmm aint there some sort of endpoint for top 10 list of superchats? just wondering here, since i can get the one in the first place of superchats but would like to generate a top 5-10 like i do with tips

pulsar willow
#

Hi! I have a question about the Widgets API. I don't exactly understand how state is managed for widgets.

So, let's assume a simple widget that has some animations and it's supposed to draw a different icon, based on how many months the person has been subbed for, the problem I have is when reading the API is: When writing code, do I subscribe to a certain event?, as I understand it, a widget is already pre-destined for a certain event.

I just can't find the "Widgets API", just your normal API.

rugged rapids
#

You subscribe to the event type subscriber (obj["detail"]["event"]["type"]) and get the subscribed months with obj["detail"]["event"]["amount"]

pulsar willow
#

I see, and the next step is returning markup or whatever for the render. How does that happen?

#

Like, the way I assume it works is I sub to an event -> that event comes with data -> I do something with the data -> I return something.

#

That return something irks me. Internally, streamelements wait until I return something? What's that something?

#

If you could point me to the widgets API docs, I'm not gonna bother you with this ๐Ÿ˜›

#

I just can't find them.

rugged rapids
#

Take a look at the channel header for the overlay editor documentation.

viral patrol
#

@minor steppe I see no endpoint for top supporter unfortunately

hoary sphinx
#

Hello! I'm trying to set up the Train V2 widget, but my end sprite animation starts as soon as the train begins instead of as it ends. So, based on Harris's video, i'm trying to get the pokeball to animate once charmander reaches it, but instead, it's animated in a loop and consistently closing while charmander is moving towards it. I was advised to ask here by Support. Any help would be great.

knotty basin
#

Not sure if this is the best place to ask but (Custom Widgets on the Overlay Editor):
Is there a way to temporarily mute the sound effect of an alert? Hypothetical scenario:

  • User cheers 100 (or arbitrary number of) bits with the message "nosound"
  • Set audio volume of alert to 0, but play the animation.
  • If the keyword is not in the cheer message, audio volume is set to whatever it's configured to, and plays normally.

I'm not sure if it's possible to modify the alert widget with that behaviour (enable custom CSS for the alert widget, change the JS), or if it would be necessary to create a custom alert widget instead (no idea how involved that would be).

fiery burrow
#

I have a subscriber goal widget. But my subscribers are not updating in real time. There is a problem in your api.
when I had 82 sbs it was showing 81 subscribers. even After having 84 subscribers it was showing 81. now my subscribers are 86 but it's showing 84. Plz help

gleaming lantern
#

so i have probably a super super basic question (i feel embarrassed asking); but with the streamelemts variables how can i make it so when a command uses "@"<username> that the response eliminates the "@" symbol? trying to do a simple shoutout command with the twitch link in the response but that "@" symbol keeps messing it up. what am I doing wrong?m

#

i dont remember this being a problem in the past, iirc, perhaps something has changed? i have tried the simple ${1} to using touser, and other variations.

knotty basin
#

don't know if that's possible using custom commands and variables itself. not seeing nightbot's $(eval) equivalent which can easily use some inline js to strip out the @ if it exists.

Other option would be to use a custom widget.

gleaming lantern
#

with nightbot it was super easy with the following, but i was hoping to have elements only and remove nightbot altogther
nighbot command: ->
!commands add !test -ul=moderator $(twitch $(user) "Be sure to give {{displayName}} a follow over at {{url}} ! They were last playing {{game}}")

#

or something like that

knotty basin
median halo
#

Is anyone aware of a single goal widget that can combine all financial contributions into one progress bar? I want to create a monthly goal that includes tips/bits/subs but I have yet to find this in the wild. Not for stream elements at least.

thick wing
#

Maybe this is not the right channel for my question, but: Can I create a custom command (SE Twitch), which either tells that the user is lucky or resets the users points to 0.

elder dragon
#

I'm trying to get latest gifter's name and amount on sessionUpdate

knotty basin
#

alltime is probably cumulative. as in the most recent "gifter" has gifted XX number of total subs.

onyx shuttle
#

@onyx shuttle What kind of invitation are you looking for?
@viral patrol server invitation

simple creek
#

Is there a way to button up a widget and hide open editor before sharing

viral patrol
#

@gleaming lantern I think you may want to use: ${channel ${touser}}} which should return you channel name of that person (so it will strip @ character)

#

@median halo Please search for in:#widget-share goal it will return you two of the widgets for cumulative goal

median halo
#

thank you @viral patrol I've been waiting for that exact widget forever (:

viral patrol
#

No problem! Keep an eye on this channel as you can find a lot of other hidden gems there (even if they are not really hidden) ๐Ÿ™‚

median halo
#

@viral patrol after creating 1 step and removing the other 4 I can't seem to get anything to show up. I've set it to 1200 points and each bit/tip as 1 unit and subs as 3. Before I created the step when testing it would show fine. Not sure what's wrong.

viral patrol
#

Hmmm. I am not an author of that particular widget.

median halo
#

oops my bad

pulsar willow
#

Hello,

I have a problem with the widget "Season of Subgiving".
On gifted community subs there should a train drive through the overlay.
The train works while testing the widget in the editor. But in the live stream when real subs are gifted the train doesn't work.
Do you know that problem and can someone help me, please?

viral patrol
#

@pulsar willow Twitch changed something recently in their sub gifts events. We are investigating that one.

median halo
#

I'll give that one a shot thanks lx

pulsar willow
#

@viral patrol Ok, good to know, thank you.
Where can I see wether you have found the problem so I know when I can use the widget again?

viral patrol
#

@median halo with that one you will have it easier - you will be able to blame me for something broken as I am author of if.

#

@pulsar willow I would recommend you to create alertbox variation for community gifts to handle them and also keep that train. If it doesn't display anything you will have just alertbox, but one day actual train will go through your screen.

pulsar willow
#

@viral patrol Thank you.
I already created my Overlay like that.
Alerts are separated from the train.

Ok, so all I can do is just wait, right?

viral patrol
#

Yes. I hope we get events like we used before.

pulsar willow
#

Great. Thanks for your help ๐Ÿ‘

median halo
#

I can't seem to make sense of the 'bar thickness' field. It seems to have zero effect. @viral patrol

viral patrol
#

Checking it RN

median halo
#

however this is simple and what I'm looking for (: I can just pop a mask over top of it and make it look how I like. The only thing I'm curious if we could add would be the option for a gradient instead of solid bar color?

viral patrol
#

I will push updated CSS/JSON in few minutes

median halo
#

alright thanks (:

viral patrol
#

OK. Same link as above

median halo
#

alrighty I'll check it outu

viral patrol
#

And if you want to adjust your gradient to be non repeating, you can check this portion of CSS code

median halo
#

haha you read my mind

#

do you happen to know how to code it in a way that the gradient is revealed as the goal is met instead of it as an image that's smashed in and expanded as the goal is met?

#

do you understand what I'm trying to express? @viral patrol

viral patrol
#

You can add background-size: 300px 100px; below it and then play with numbers

median halo
#

ty

#

perfect, you've been a real help and I appreciate ya @viral patrol

#

you seem to have the know how, may I suggest you look into creating a boss battle widget similar to this? that would certainly be a popular one. on past platforms I used one that would have staged effect where I could start it at 10hp and each tip was 1hp damage. Once it was killed it would revive with x more hp. the best part about it that it included tips/bits/subs just like your goal tracker. the overkill option was nice as well, that way if someone did a large amount it would continue to do damage on the revived boss.

#

ah I see there is one updated. let me see if the changes match my needs (:

viral patrol
#

To be honest some time ago I created Boss widget, which later was included as native one:

median halo
#

I can't remember what the default one was missing but it didn't work out for me

#

oh I remember now, you can't have increasing HP and overkill both active for some reason

#

and I'm not sure if you can adjust how much more HP the boss will have upon revival, it seems to be at 100hp

#

I'd imagine these are things that could be fixed but the default widgets won't allow me to edit ):

gleaming lantern
#

IX thank you greatly!! /bow

viral patrol
#

@median halo unfortunately there's no way to adjust it in the code.

spare knot
#

Hello, there are any way to skip current song? Didn't find this in references.

pseudo siren
#

For StreamElements media request?

spare knot
#

Yep

pseudo siren
#

Chat command !skip doesn't work?

spare knot
#

Work, but i need it in code.

pseudo siren
#

Oh

spare knot
#

And... Something about it?

rocky lava
#

how can I export an Overlay to a different account?

#

Like Share it

torn gulch
spare knot
#

Someone, please?

spare knot
#

Nothing...

pseudo siren
#

Please be patient ๐Ÿ˜‰

spare knot
#

I want to, but i was ignored

crisp laurel
#

hello, any ideas on how to get a animation to play on command?

shell tree
#

@crisp laurel Are you looking for like, !renandstinky to show a gif of the two on stream?

#

If so setup a item in your store thats free that people can claim then make a command to redeem the item, set the alert to be the gif you want

crisp laurel
#

@shell tree i want a webm video o play on !confetti

shell tree
#

What size is the webm file?

crisp laurel
#

5.73mb

#

also i dont know what the store is >.>

shell tree
#

Ok then just do what I said above

#

Go there and setup a slot for it

crisp laurel
#

ohhh damn no idea that was a thing, thanks!

shell tree
#

Yep!

#

Setup the stream store item, then edit the alert to be your .webm file through the overlay editor.

#

Afterwards you can use !redeem <itemname> or setup a command to redeem the item

crisp laurel
#

ok so you can do one with redeem?

shell tree
#

Yep

#

Or setup a new command named whatever that contains ${redeem <storeitemname>}

crisp laurel
#

it does the redemption but it doesnt play

#

ok so it plays now, but i have the redeption alerts set to 1920x1080 same as the webm but it plays at like quarter size

#

got it, solved that issue, now i just need to get it to not show up in activity feed and its perfect, thanks for your help again!

shell tree
#

Oh dear, missed a few! sorry lol

#

Click filter and deselect Redemptions

crisp laurel
#

yup i got it, its perfect, thanks!

sage path
#

So did StreamElements stop allowing people to register for OAuth credentials so they can create apps?

hardy walrus
#

@sage path For the time being yes. However if you had previously applied with no response yet you're still on the list to do.

sage path
#

So then there's no way for us to create new apps?

#

Cause using my JWT token that I got from my account page keeps saying i am unauthorized

hardy walrus
#

Were you previously approved?

sage path
#

no

#

I wanted to create a new app today

hardy walrus
#

In that case JWT is the only way atm.