#developers

1 messages · Page 13 of 1

rugged perch
#

Will do o7

cold tendon
solid gale
#

7chatterino

#

but why would someone need 7 chatterinos

sullen edge
#

it doesnt address the issue of users being confused

solid gale
rigid narwhal
#

PauseMan That's why I like Emoterino7

sullen edge
#

Chatty Rhino

#

i was thinking spammerino or nanarino

#

wait

#

or Svenerino going back to the roots

rigid narwhal
#

PauseMan oh, that one is also nice

sullen edge
#

or Svenchat

#

-chat makes it sound mobile though but its probably only cause of dankchat

rigid narwhal
#

My vote goes to Svenerino forsenUpvote

real sorrel
#

If you come up with a good name or a collection of them, please ping me again (I'll probably miss it otherwise) or make an issue on GitHub

rugged perch
#

ftkrino Cinema

tidal narwhal
#

glorperino glorp

worldly idol
#

Thanks again, already have the emotes appearing in my app. I struggled a lot yesterday. Now I just have to iron out this partial transparency issue and we're golden :]

forest swift
#

just remove the h in the og name, and make it Catterino

#

for all the cat emotes

tidal narwhal
rotund pivot
#

Name it Michael

cold tendon
#

Minionrino

#

omerino

sullen edge
gaunt magnet
#

AUR has taken to calling it "Chatterino 7TV" which I prefer over just "Chatterino7" or "Chatterino 7". Any sort of prefix change is fine by me too

this being done with an update to the actual version code being exposed would be great. sorry didn't see your responses until now

humble rose
#

if this was 2003, you could call it Cha7terino

stuck oasis
#

as someone who had to explain to people a bunch what the difference between chatterino 7 and regular i feel like chatterino 7tv is a way better name that doesnt require much explanation compared to other names suggested here. Also makes it feel more official and i think changing from Chatterino 7.5.3 to Chatterino 7TV 2.5.3 makes sense

#

or call it paintterino bc thats all the fork adds

rugged perch
#

welp..

#

@real sorrel Thoughts on just plain and simple Chatterino7TV?

rotund pivot
#

chatturbate

mortal fossilBOT
#

ayyybubu, reminder(s) from: spoust - 5min (2h, 53m ago)

real sorrel
rugged perch
#

Yea Charlotte also agreed. So we go with that

real sorrel
distant phoenix
rugged perch
deft sapphire
#

i somehow lost all of my appearances. any help?

distant phoenix
deft sapphire
distant phoenix
#

i had a similar issue a while back but it was automatically fixed after like a couple hours

deft sapphire
distant phoenix
#

oh yea that was probably the same issue then

lament pine
#

is it possible to know which badges the user has enabled? or only fetch ones which should be displayed to avoid this:

distant phoenix
#

what the fuck

distant phoenix
#

tell me any chat i should type in

round wind
#

Or you can listen for presence events from the eventapi

stuck oasis
#

(thats what you probably should do for things like chat overlays and shit)

lament pine
distant phoenix
lament pine
lament pine
distant phoenix
#

think so it shows anything but sub badges

lament pine
#

i tried making it get the latest sub badge from the tags property

distant phoenix
#

ohh i see

rotund aspen
#

Eventapi would probably be the best way, you could also do live emote updates and stuff, here you can find the docs #developers message

lament pine
#

thanks i'll try using it, i just wish there was a good library that implemented this stuff

stuck oasis
#

write one yourself

shy epoch
#

when will the arrow to update chatterino from 7.5.1 to 7.5.3 be added?

solid gale
#

so we just wont work at all

ionic yarrow
distant phoenix
#

i dont remember it doing but idk

ionic yarrow
#

Shrugeg never gotten it

arctic crystal
lapis tulip
#

is there a recommended way to fetch the global emote-set via v4?

there was a v3 api endpoint https://7tv.io/v3/emote-sets/global
and v3 gql

namedEmoteSet(name: GLOBAL) {}

but nothing as such for the v4 endpoints.
lennart/troy implemented something that would imply for an emote-set being flagged as global through the emote-set attribute "kind"

pub enum EmoteSetKind {
    Normal,
    Personal,
    Global,
    Special,
}

but every single emote-set for the 7tvapp user, the emote-set kind is set to "Normal", making this useless as well

my current approach is to have the emote-set id hardcoded. annoying if that changes for special occasions like christmas and stuff like that.

not sure what dev would be responsible for implementing such feature or flag the proper emote-set as global

i'm sure someone in the community would be able to implement such thing, as there's literally an attribute emote_set_id in the global config (https://github.com/SevenTV/SevenTV/blob/main/apps/api/src/http/v3/rest/emote_sets.rs#L37 -> that's how v3 global workes) to get the global emote set.
but as the current git repository is basically just decoration, that's useless too.

patent wing
#

why not just keep using v3, it's not like it is being discontinued anytime soon

lapis tulip
#

yeah, that’s what i’m doing, it’s the only reason my v3 helper still exists.

i just figured i’d bring it up here, since this isn’t a thing in v4.
seemed like a reasonable feature to call out, as this is just a reason not to migrate to v4 - since it worked perfectly fine in v3

and i feel like fetching the global emote-set is something that happens in most community projects related to 7tv FeelsOkayMan

rugged perch
#

I don't really think we're going to discontinue v3 anytime soon. V4 is far from ready to replace V3 anyway. So you can use it with confidence FeelsOkayMan

#

You can still use GQL if you'd like as well mhm

stuck oasis
#

how is v4 not ready

#

its literally complete people are just too lazy to learn gql

lapis tulip
#

are you saying what i'm trying to do is possible via v4 gql?

stuck oasis
#

i am saying just because the 7tv dev team is too lazy to make this possible in v4 by flagging the emote sets, it doesnt mean that "V4 is far from ready to replace V3 anyway"

lapis tulip
#

ah my bad, i see what you were referencing to. yeah no i definitely agree okayL

stuck oasis
stoic bison
shell spoke
distant phoenix
#

are you subbed

lethal jackal
#

these docs were hard to find online

#

got what i needed done though so thanks for posting here

jovial raft
#

So I made an emote added it to a channel, deleted the emote, uploaded a new one with the same name. I can’t remove the emote from the channel because it doesn’t exist anymore and I can’t add the new one to the channel because it has the same name

#

What?!

ionic yarrow
jovial raft
#

Ok waiting

torn torrent
rugged perch
#

In the near future I'll try my best to make a documentation that includes the current V3, Some of the V4, and most of the important GQL queries a user would like to use.

lapis tulip
#

honestly if the playgrounds would be running that would already help a lot.

round wind
lapis tulip
late wyvern
#

hi i have 2 questions, first are you not able to query for the active emote set id in v4 gql? i can find it in https://7tv.io/v3/users/twitch/id. second question, are you not able to do a mutation to add multiple emotes to an emote set in v4 gql? i can only add 1 at a time and need to do a mutation for each emote

round wind
#
users {
  user(id: "<id>") {
    style {
      activeEmoteSet {
        id
        emotes {
          items {
            emote { id }
            alias
          }
        }
      }
    }
  }
}
#

And you can add multiple emotes at once by sending bulk gql requests in a single http request. But iirc the event api doesnt support that and will only send an event for the first emote update of that bulk query

ionic yarrow
#

what creepy linked was a query, not a mutation

late wyvern
#

oh ok

#

thank you creepy, that really helped

late wyvern
#

it looks like adding multiple emotes will work until you get an error, then it doesnt continue

#

if anyone knows the best practice for swapping batches of emotes into an active set i would love to know

inner vale
#

Is number of subscriptions working incorecttly for websockets?

Because server send me 500 on hello, but on 293 subscriptions i get disconnect with

websocket connection closed, attempting to reconnect: failed to get reader: received close frame: status = StatusPolicyViolation and reason = "Rate limit reached" 439 500
#

Code is simple

Subscribe:

func (c *WsConnection) Subscribe(ctx context.Context, msg map[string]any) error {
    if c.websocket == nil {
        return fmt.Errorf("websocket connection is nil")
    }

    if c.SubscriptionsLimit > 0 && c.SubscriptionsCount-1 >= c.SubscriptionsLimit {
        return ErrToManySubscriptions
    }

    msgBytes, err := json.Marshal(msg)
    if err != nil {
        return err
    }

    if err := c.websocket.Write(ctx, websocket.MessageText, msgBytes); err != nil {
        fmt.Println(c.SubscriptionsCount, &c.websocket)
        return fmt.Errorf("failed to send subscribe message: %w", err)
    }

    c.mu.Lock()
    c.SubscriptionsCount++
    c.mu.Unlock()

    return nil
}

read:

func (c *WsConnection) readLoop() {
    for {
        select {
        case <-c.ctx.Done():
            return
        default:
        }

        if c.websocket == nil {
            time.Sleep(time.Second)
            continue
        }

        _, msg, err := c.websocket.Read(c.ctx)
        if err != nil {
            fmt.Println(
                "websocket connection closed, attempting to reconnect:",
                err,
                c.SubscriptionsCount,
                c.SubscriptionsLimit,
            )
            if reconnectErr := c.reconnect(); reconnectErr != nil {
                fmt.Println("failed to reconnect:", reconnectErr)
                time.Sleep(5 * time.Second) // Wait before retry
            }
            continue
        }

        if len(msg) == 0 {
            continue
        }

        if c.onMessage != nil {
            c.onMessage(c.ctx, c, msg)
        }
    }
}
#

c.SubscriptionsLimit is setted on hello from 7tv.

topaz crown
#

If you sub using the channel ID/platform it auto subs you to every topic for that channel, even if you only specified one.

#

Just set max topics to 250 and no issues

inner vale
#

So, that means

subMessages = append(
            subMessages, map[string]interface{}{
                "op": operations.OutgoingOpSubscribe,
                "d": map[string]any{
                    "type": "emote_set.*",
                    "condition": map[string]string{
                        "ctx":      "channel",
                        "id":       channelId,
                        "platform": "TWITCH",
                    },
                },
            },
        )

        if emoteSetId, ok := channelsWithEmoteSets[channelId]; ok {
            c.registeredChannelsWithEmoteSetId[channelId] = emoteSetId

            subMessages = append(
                subMessages, map[string]interface{}{
                    "op": operations.OutgoingOpSubscribe,
                    "d": map[string]any{
                        "type": dispatchtypes.UpdateEmoteSet,
                        "condition": map[string]string{
                            "object_id": emoteSetId,
                        },
                    },
                },
            )
        }

When i use asterisk * it subscribes to every space in emote_set?

#

Thats explaining everything.

topaz crown
#

And cosmetic.* and entitlement.* etc

inner vale
#

Thank you ryan. <3

topaz crown
inner vale
#

Would you rather recommend sse?

#

I think it's not neccecary because i already implemented all reconnect stuff e.t.c

topaz crown
#

I haven’t used the SSE since I first tried both and iirc something was confusing about topic subscription for that too LULE

#

Yea I’d just stick to ws mhm

inner vale
#

@topaz crownthat feels like subscription limit wrong, hello sents me 500, but after ~350 it's sending rate limit error.

So i set it to 300 in hardcode. Can you confirm that?

topaz crown
#

i did the same and set it to 250, been that way for over a year Shrug

inner vale
#

I thought if i properly count * it should works correctly with 500.

#

But ok.

zenith holly
#

Hi, I'm trying to consume the v3 gql api to fetch emoteset and emotes, but it seems every response would include the analyzer and tracing extension, which is making the responses significantly larger (fortunately compression helped a lot). Is this the intended behavior?

stuck oasis
#

why gql v3 and not gql v4?

zenith holly
wooden river
#

Hello, I'm writing an application that embeds twitch chat with an iframe. I see that https://github.com/SevenTV/Extension/pull/964 was closed like a year and a half ago since the extension was going to be rewritten in the monorepo. Did that ever happen and if so is there anywhere I can see the updated manifest? I tried looking there but I didn't find anything. Sorry if this is the wrong place to ask.

GitHub

This is a continuation of a previous pull request
I have added &quot;all_frames&quot;:true, to the manifest for URLs that match a chat embed or popup to support embedded iframes showing 7tv...

wooden river
#

Yeah also seems that the extension isn't working on firefox and was supposedly was going to be fixed during the rewrite.

plush kayak
#

7tv too good at promising things that will never happen

rugged perch
orchid path
#

is this the place to chat regarding the 7TV.app website? I've noticed a strange issue regarding AVIF versus the GIF version for a specific emote and im confused as to why the GIF version is incorrectly timed and a frame gets stuck

rigid narwhal
orchid path
#

Original versus the Fixed version

orchid path
rigid narwhal
#

ApuApproved thanks for reporting it

warm yacht
#

I remember there was a pull request that fixed this though?

swift bough
warm yacht
true bay
#

why is there no way to tell if an emote is zero width through api?

true bay
#

youre right, sorry, i forgot that was a thing, thank you

late wyvern
#

is rate limit 600 per minute for gql? i need to do about 4000 requests one time

lapis tulip
#

rate limit is being returned in the headers x-ratelimit-global-limit and x-ratelimit-global-remaining which should be 5000 per minute iirc

late wyvern
#

tyvm

crimson bolt
rigid narwhal
crimson bolt
solid gale
low yarrow
#

Hello is there any chance to create an easily transfer emote sets between twtich and kick ?

ionic yarrow
distant phoenix
#

@ionic yarrow ignore that

low yarrow
rugged perch
distant phoenix
#

@rigid narwhal tap in

plush kayak
#

incredible work guys

rugged perch
#

yaay

distant phoenix
lapis tulip
#

we're already used to waiting months for anything to happen, so surely it'll be fine

distant phoenix
#

@rigid narwhal CHRIIIIIIIIIIIIIIIIIS

jaunty sparrow
#

@paper plover DinkDonk

tepid quail
#

my vote for next dev is anyone who can figure out why a gif holds on frame one for too long while a Webm file does not when both are uploaded onto 7tv. and have that fix be a universal fix to previous animated emotes so users dont have to reupload them

round wind
narrow timber
#

do devs get paid?

stuck oasis
#

probably not enough if they leave out of nowhere

celest sparrow
#

accidently put less than 2 years experience when i have almost 5 and i cant edit my fourm

narrow timber
#

Im on an open source team for a game where nobody gets paid and it’s the same vibe ppl come and go as they please.

#

I’d do the same here without the work hours expectation

celest sparrow
#

github link?

narrow timber
#

We need devs lol

narrow timber
#

Is it for profit now?

stuck oasis
#

It has been for profit for a long time lol what i meant is that the commit hash https://api.7tv.app/ returns is not a commit on the official github repo

narrow timber
#

Okk interesting thanks

#

Do u think they’d accept free work as I mentioned above

#

I start a job soon and don’t have 30h to commit

#

But I’d like to work on it

stuck oasis
#

I'm sure they would but i would not recommend when 7tv easily makes tens of thousands of dollars a month off of subscriptions

narrow timber
#

It’s an impressive resume item
Like I said I don’t have time to get paid for this lol.

#

Unless they’re flexible with time expectations

waxen sleet
# narrow timber But I’d like to work on it

You can still make pull requests on the repos. In theory, 7tv is still open source but the devs didnt apply that in practice. This will probably change tho if there are new devs.

narrow timber
lapis tulip
#

they‘re deploying from a private repo since a while now, so no.

they mentioned that they would update the public repo with the current state every now and then, for other devs to be able to contribute, but well..

celest sparrow
odd pasture
#

@fast bear Look who got hacked.

plush kayak
#

beep boop

rigid narwhal
#

madashell @plush kayak

odd pasture
#

We got jebaited? Pfftt

plush kayak
vagrant lion
#

not funny, stay banned Skip

fast bear
lavish elm
#

Did you know that in Spain, when there are soccer matches, the president of the soccer league blocks your website? I just found out you're using Cloudflare support, and that's why you're affected. It goes down for hours.

distant phoenix
#

yes thats known

#

isp's tend to block 7tv for whatever reason and there isnt really anything we can do about it

solid gale
#

its gonna come out one day

stuck oasis
#

extremely soon

#

when 7tv says they will do something soon it will always happen

#

especially if it requires dev work

#

✌️

#

cant wait for the global emote raffles

#

:P

solid gale
#

just like the bundles that were meant to be coming soon when the new site came out but then just got completely erased

stuck oasis
#

well to be fair thats an awful idea anyways

solid gale
#

awful idea or not, still silly

distant phoenix
#

coming soon sheCrazy

fervent kindle
distant phoenix
#

my account is gonna be 3 years old soon and this has been coming soon at least since i created my account

celest sparrow
#

i have used it recently but i havent been too deep into

signal orbit
celest sparrow
signal orbit
celest sparrow
#

yeah i have started learning it im really good with C++ though and i dont have any real projects in rust

solid gale
stuck oasis
#

What does 7tv use to avoid the 30s restriction

#

I there are some problems with bots dedecting it as spam or something by default

#

sure would be amazing if it was open source

#

haha

ionic yarrow
stuck oasis
#

oh

#

didnt know it was a seperate repo thought it was in the mono

rigid narwhal
stuck oasis
#

yur

#

it seems like Moobot detects it as spam

#

in some channels atleast im a stream rn where it times people out for i, but im gonna talk to the mods to see if its default settings

#

ik its not on 7tv to fix, its on the bots dev, just wanted to check if the people are using 7tv or chatterino

rigid narwhal
#

forsenHmm hmm, yea, I unfortunately don't know enough how moobot works. All I can say is that 7TV and Chatterino both will use \u{34f} after the update, since Twitch drops \u{e0000} from messages now (and broke the feature that way)

stuck oasis
#

it probably falls under some special symbol regex

stuck oasis
#

what about something like u180B

#

As I said it's not really on you guys, but if its a common issue because some common regex that could be used by bots matches it, it could be annoying in the future

stuck oasis
#

Olrite its just a regex for zalgo symbols

rigid narwhal
# stuck oasis what about something like u180B

u34f was chosen, because it should be relatively future proof (can't really get dropped that easily, because of usage related to enojis). But I'm sure if problems with it get discovered in the future it might get changed again

stuck oasis
sturdy scroll
#

@warm yacht When you find the time too look into something with the addon, when you add an emote under both an alias and its normal name, they wont show both, we noticed this is streamerdatabase we have the emote kekingwide and maqzek which are both the same emote, while on chatterino and other places it shows on both names, FFZ addon only recognizes 1 of the 2 and its always the one who got added first.

warm yacht
#

Don't think there's a fix to that really because that's how FFZ handles emotes, it overwrites the one in the named slot iirc

Would be weird if not because... well, you can't have 2 emotes on the exact same name / code in chat anyway (unless you'd go the discord route with KEKW~2 or whatever)

#

(It may also be I'm misunderstanding what you're asking for haha)

#

Ooooh wait you meant you have one emote that you can type with two names

#

So like OMEGALUL would be the main one but you also have an alias for LOL or BRUH or whatever else

#

I think that's doable...? Would need to see what the API returns for that. Probably related to the emote having the same ID and that's the one that gets replaced

#

So I'd need to do some magic with "is this ID already propagated and it's the same actual 7TV emote identifier (not name)? If so, add it with -1 or -2 or something"

sturdy scroll
warm yacht
#

aaaaah

unborn prawn
warm yacht
#

@sturdy scroll Could you please open an issue / feature request on the FFZ Add-Ons repository for that? I don't know when I'll be able to look at it but I think I do have an idea on how to implement it

#

Just so I don't forget lordmaLUL

warm yacht
#

Yup

sturdy scroll
#

Done

#

I screenshotted the convo

#

easier than doin another explanation

warm yacht
#

Yeah was about to suggest just screenshot it haha

#

With you saying it works in other programs like Chatterino, that means the API is already returning the data for the emotes properly

#

so its just a matter of implementing it properly in the FFZ addon

#

I assume Chatterino handles emote renaming / adding / removing of aliases, too?

#

how do you even add emotes as an alias, I can't see that as an option on a 7TV emote's page

odd pasture
#

You can rename the emote before adding it to one of your emote sets, and then you just confirm it.

warm yacht
#

So I find a new emote I don't yet have, rename that to something else while adding it to the main set, and then afterwards I can add it normally as well or...?

ionic yarrow
#

in the "Add to..." menu

warm yacht
#

yeah this for example

#

its on catKISS rn, but if I click confirm that'll remove catKISS and add catKISSx, wont it?

ionic yarrow
#

oh it seems like it renames it instead of adding it again

warm yacht
#

Yes

ionic yarrow
#

you can use a bot like potatbotat to do it

warm yacht
#

So it's not officially supported through the website then

#

Meaning like 3 or 4 people are actually using it? KEKEGA

ionic yarrow
#

i guess not

warm yacht
#

Hmm

ionic yarrow
#

but a lot of people use potatbotat

#

or bots similar to it

warm yacht
#

I do like the idea of having one emote under multiple names

#

But needing a bot for that is... eh

#

Feels like it's moreso a side-effect than an actual feature

rotund aspen
#

But it was intended on api side afaik

solid gale
#

this still happens when youre not subbed

#

whatever the fuck 131% even means

distant phoenix
#

lol

#

soon 👀

solid gale
#

yea...

#

also not sure what translates the time remaining for next badge

#

but Im glad its 50% polish 50% english

#

same goes for the previously subscribed

#

and also its kinda funny to read, 131%, 1 month remaining for 1 year badge, previously subbed for 363 days

#

just a hunch

rotund pivot
#

ayyybuPosture miesiąc left

plush kayak
#

I think I had 200% last month

#

I thjnk it breaks if u don’t renew the sub

#

and then the month after the last month will have higher % than 100

solid gale
#

yea

#

still a bug non the less

solid gale
#

would it be possible to view owned cosmetics without needing to have an active sub?

#

^ asking overall, not for a specific thing/request

topaz crown
lavish elm
#

website./ twitch
WHY doesn't the fifth appear?

#

I've tried with other emotes but it's the same.

lavish elm
#

I didn't know that review time is now needed

#

how long can it take?

stuck oasis
#

normally its like a few hours if u are sub

#

it was always needed but only for the first person trying to add it as a personal

#

soo all other emotes you added were already approived

lavish elm
#

im waiting more than 30 hours for sure

#

idk what happend

#

mods can you check my problem ?

#

If this happens with every emote I add, then this feature is completely useless.

distant phoenix
#

who said anything about 30 hours?

#

maybe a week or two if ur lucky

stuck oasis
#

?

#

it always gets approved for me in hours

#

it probably jusat didnt get approved

#

given what emote it is

odd pasture
lavish elm
#

I've added other emotes before, and they were instant. I don't understand why I have to wait now, especially since it's an emote that Twitch has already approved; I find this absurd.

stuck oasis
#

These other emotes have been Approved already because other users have added them to their personal emotes

#

I would assume this emote is not approved given 18k users have added it already so im sure other people have tried before

#

twitch never approved the emote

#

its just that personal emotes have different rules

stuck oasis
#

Mine get approved really quickly

#

is it because im a translator?

#

nevermind it wasnt disapproved yet OMGScoots TeaTime guess i just got lucky

lavish elm
#

So, who is the staff member responsible for carrying out the approval process? I want to know why it takes so long.

lavish elm
#

yes

pseudo sequoia
# lavish elm yes

mine get approved pretty quickly (1-2 days max) and im pretty sure anyone with the 7tv mod role can accept/deny emotes

stuck oasis
#

itsa bunch of people 7tv has multiple thouisands of subs bro you are not htte only one

#

😭

lavish elm
#

@odd pasture can you check my issue ?

stuck oasis
odd pasture
# lavish elm <@1366474433476165713> can you check my issue ?

I'd love to, but I just have to check, why it wasn't approved for personal use in the first place.
Tried to find similar emotes, and none of them are approved for that purpose, just for publicly listing; it's quite unlikely for emotes that are at least 3 years old, that no one already requested them.

Personal emotes ≠ Publicly listed emotes

There's a different approach to it - due to them being visible in every chat, not just in created emote sets.
Twitch sets different rules to those, it's more strict.

rotund aspen
stuck oasis
lavish elm
#

@odd pasture So what do I do? Do I wait? Or will they reject it anyway and I'm just wasting my time?

distant phoenix
#

you wait

rotund aspen
lavish elm
#

And how can I know which ones are valid and which ones are not?

rotund aspen
lavish elm
#

It's that maybe I'm explaining myself poorly about what I mean.

#

That is, as a user, I need to know what emotes I can upload as a personal user and their current status. There has to be some filter to determine what emotes I can upload. I'm not going to try thousands of emotes, for God's sake.

rotund aspen
#

as for exact guidelines I honestly have no clue if they can be shared feelsd

rotund aspen
# lavish elm

yeah and every emote here is approved for personal use

#

cause you have 'personal use' filter selected

rotund aspen
lavish elm
#

@rotund aspen And the reason for the rejection? Is it a confusing emote?

#

I find it fun, although it may seem like something else, it is giving shine to a wooden object, I didn't know that filter was so delicate.

rotund aspen
stuck oasis
#

genuine question though why are some emotes not getting denied and just left on the queue

rotund aspen
stuck oasis
#

idk i just cant imainge an emote like clean with 18k usages has nevcer been requested for personal

#

but idk

odd pasture
#

Personal queue usually gets cleared every week.

Public queue is more demanding, due to its quantity - there are like hundreds or even thousands newly added per day/week.

swift bough
#

eventapi down? elisClassic

distant phoenix
rotund aspen
distant phoenix
rotund aspen
#

But will be denied

distant phoenix
#

i kind of miss the old very clear personal emote rules

#

nothing wider than 1.5:1 and must be added in >50 channels

rotund aspen
distant phoenix
#

yea no i get ur just saying how it is rn

solid gale
distant phoenix
#

that is a 2022 emote

#

if you cant use it in your pesonal emote set it has probably been denied

solid gale
#

and shouldnt there be an indication for it?

#

I saw some denied emotes just have the tag top right that its simply denied

#

here Im seeing nothing

#

and also, why would it be denied to begin with FeelsBadMan

distant phoenix
solid gale
#

forsenAlright thats interesting I guess

distant phoenix
#

for example

#

but it is missing all activity entries

#

i dont remember exactly why they are missing but there was a reason i think

solid gale
#

do you know a reason why that emote is denied then? I dont see anything wrong with it hmhm

#

thats why I assumed it'd be fine

#

its not wide, its not annoying, and has obviously way more than 50 channels

distant phoenix
#

these rules have changed so much over the years

#

the >50 channels / max 1.5:1 aspect ratio rules are also not in place anymore

rotund aspen
#

second time I see it happen

solid gale
#

renxSHRUG Im just pointing out things I've noticed

distant phoenix
solid gale
#

thanks for approving @rotund aspen FeelsOkayMan

distant phoenix
mortal fossilBOT
#

seryxx is no longer AFK: (no message) (1h, 58m ago)

topaz crown
#

eventapi has been missing a lot of events recently for me

plush kayak
#

the company has been losing value

#

I think I’m going to cancel my investment

rugged perch
stuck oasis
#

W

#

I tried

lavish elm
#

TEBAS DOWN 7TV ON sPAIN

distant phoenix
#

what

old fox
#

7tv down for spain

odd pasture
distant phoenix
#

7tv is always down in spain if there is football on

#

usually

lean violet
#

hi! is there an API endpoint specifically for username cosmetics? or any way or method i could fetch the cosmetics for a particular user?

ionic yarrow
#

you can use the playgrounds in the pinned message to see more fields

lapis tulip
#

also, you're only gonna be able to query cosmetics for users with active subs. for users no active subs, it will not return any owned cosmetics

lean violet
#

thank u so much!

gusty horizon
sacred path
#

can someone exapin why chattion is using private QT apis?

rugged perch
#

Maybe @real sorrel can help. ( Sorry for the ping oopsie )

real sorrel
# sacred path can someone exapin why chattion is using private QT apis?

For drop shadows in paints: only used in https://github.com/SevenTV/chatterino7/blob/chatterino7/src/providers/seventv/paints/Paint.cpp.

it seems like that’s also possible with the qgraphgicsitem APIs, but I haven’t looked closer at them. This is currently the most efficient solution, because you don’t need to construct a qobject. Maybe you could reuse a graphics item? Not sure. I’ll need to look at this a bit more, because the previously mixed signals from upstream are leaning towards „Let’s add paints and personal emotes but disabled by default because we dislike chatterino 7“.

#

If you want to refactor to use public APIs just let me know

gusty horizon
#

what language is recommended to contribute to 7tv?

plush kayak
rugged perch
#

And extention is a mix of Vue and Typescript

lavish elm
#

7tv still down in Spain ...

ionic yarrow
#

they block 7tv during football matches

gusty horizon
#

why

round wind
#

they block all of cloudflare because some football piracy sites were running through cloudflare

distant phoenix
proper hawk
#

Hey, am I understanding correctly from Chatterino7's code that there are no initial fetches of cosmetics, and that they are instead built over time from the websocket feed (op 35, cosmetic.*) ?

stuck oasis
#

I think thats the recommended way for apps that work with chats instead of singular users

proper hawk
mortal fossilBOT
#

lolsper spent the entire day in bed: 🛏 💤 (16h, 58m ago)

proper hawk
#

For future searchers : the Firefox extension has the debug flags enabled you can get a way better understanding

proper hawk
# ionic yarrow yes

Users send 1min presence updates and 7tv builds a map of users per chatroom for the whole platform and sends ws updates for the entitlements of members per room, is that it ?

stuck oasis
#

it has docs

#

I assume the basic concepts apply

#

@proper hawk

real sorrel
#

Yep, the current EventAPI is (from a user's perspective) identical to the "old" one.

lavish elm
distant phoenix
#

complain to your isp

solid gale
#

you either somehow find a workaround yourself or you just deal with it

#

the fucks 7tv meant to do about that one

proper hawk
gusty horizon
#

yooo how long does it take for pull requests to get read bc i see a lot from like the past few months

mortal fossilBOT
#

itsbr0dyy is no longer AFK: (no message) (21m, 16s ago)

gusty horizon
#

$rafk

mortal fossilBOT
#

itsbr0dyy, Your AFK status has been resumed.

stuck oasis
#

There is no rust dev atm

potent spade
#

@DiscordModerator ^

amber horizon
#

Hi devs and everyone! Any word or thoughts on the "origin" emote set feature returning that we had on the old 7TV site? It was a super handy feature for swapping in seasonal emotes into your main emote set. I know it was just experimental at the time, so I know there's no guarantee.
Was useful for when you had 500+ emotes on your main set and just wanted to swap in "Halloween" emote versions of your peepos for example peeposit

tight terrace
#

I keep hearing the news like this but I thought that firefox was out of the picture for 7TV after it got pulled off of their web store??? #news message

#

So whats the news about?

#

Are yall putting it back in?

gusty horizon
#

Firefox is tweaking but I talked xslash earlier and they are working on it I guess

rugged perch
#

We are trying our best to put it back on the store and even sign a newer version. But FireFox takes days to review. Then after review they would reject kn issues that are literally irrelevant and so we keep fixing those so called "issues" and we keep resubmitting

gusty horizon
#

So fuck Firefox but not fuck at the same time

rugged perch
#

You could say so demeSilly

#

I mean it's a great browser and Amazing dev-team. Just a bummer they reject on little tiny so called "issues"

gusty horizon
#

For a second my retarded ass was gonna say make a GitHub repo and put it in there but it’s the extension

rugged perch
#

Something like " The title of the extention version is unmatched " When it's 3.1.11.1000 instead of 3.1.11 ome90

gusty horizon
#

That’s how retarded I be

rugged perch
#

I mean you can build it yourself if you want. I'll make a good documentation on how to build for Chrome and FireFox and update the repo so people know how to build and load

gusty horizon
#

Wait when you install and extension usually it shows a download while adding it but that just might be chrome

gusty horizon
#

I been tryna find a good website to deploy my bot and yet none work

rugged perch
#

It's very simple. I'll make the documentation very understandable as well.

rugged perch
gusty horizon
#

Bc for my bot to run once I run the task then I need it to link with my bot’s twitch account through authentication

#

Honestly I nah rewrite the code in typescript instead of Python

rugged perch
#

I personally vouch a bit for Replit because it's very easy to deploy apps and work and stuff. I hate the new AI stuff but you can still do anything without using their AI thingies

gusty horizon
#

You made that??

rugged perch
#

On Replit yea. Replit isn't as bad if you know how to program. Just not good for big projects. My projects are small so it's perfect

gusty horizon
#

That must had taken a lot of files to create the frontend

rugged perch
#

Not at all. You can cook with your imagination

gusty horizon
#

Mmm

#

Ngl you put me on

#

I was planning on making a website so people can connect to the bot or just add a join command in my chat

#

Lwk why doesnt 7tv have a bot? Wouldnt it be easier to add emotes through chat or is potatbotat doing the job?

rugged perch
#

We don't really plan to do that. Besides PotatBotat and other goated bots take care of that pretty well.

gusty horizon
#

Mmm fairs

#

Potatbotat is amazing honestly that gave me the idea to start my bot

gusty horizon
rugged perch
#

Oh i forgot to deploy the fix oopsie forgot the overflow to be none while I was testing stuff

gusty horizon
#

Alr

crude shell
#

Not sure if this is the right channel but I'll ask here. Trying to swap over xQc's emotes to the halloween versions but currently the halloween set doesnt have the emotes that arent halloween-ified (as in theres 110 hallowene emotes and 400 total)

Is it possible to have both sets enabled and the halloween set just overrides if both exist? Or is the only option to manually add the non-halloween emotes to the halloween set

crude shell
#

"#mergeset 01GE2V844G0003C3CDHVR6Y4WS 01FE9DRF000009TR6M9N941CYW as:Halloween 2025" would work?

#

first id is halloween set, second id is current set

forest swift
#

yes, that should work

crude shell
#

that would enable a new set where halloween emotes ovverride, if missing it comes from mainset?

forest swift
#

yes

crude shell
#

how do i ping potatbot to see if its in chat OMEGALUL isnt working

pseudo sequoia
ionic yarrow
#

it should be joined

crude shell
#

whats the name again is it just potatbot

ionic yarrow
#

potatbotat

pseudo sequoia
crude shell
#

ty

#

do i need to use this or no

pseudo sequoia
crude shell
#

perfect its working

#

thank you

tight terrace
#

7TV is like the only thing that makes Twitch remotely bearable with all the popups and chat restrictions Hmm

stuck oasis
#

jesus christ retard spotted HOLY

tight terrace
#

Let’s keep it out ApuApproved

stuck oasis
#

if they run around with that tag I am allowed to call them a fucking idiot

tight terrace
nova gyro
#

they're not wrong tho

#

they are ritard

drifting trellis
#

😭

rugged perch
#

Let's keep this channel for programming and development talks only FeelsOkayMan

rugged perch
stuck oasis
tight terrace
low copper
#

Can y’all please fix the dog slow cdn? Could’ve legitimately been vibe coded in a day atp, yet it’s been an issue for many months now. I feel obligated to trash talk if the owners are offering paid perks for the service, but the bare base of the service is absolute trash.

low copper
#

It has actually been longer than half a year.

stuck oasis
#

bro forgot to switch acc

solid gale
#

just apply as a rust dev

distant phoenix
#

where is a position open

solid gale
#

right there, you dont see it?

main chasm
#

So I see that PRs against the old SevenTV/Extention repo are not being accepted anymore, but I cant seem to find the extention in the MonoRepo

#

or am I wrong an SevenTV/Extention is still being used for PRs related to the browser extention

rugged perch
#

The SevenTV/Extention is the current active used one. We didn't migrate it to monorepo yet. But it's what we use

#

And as for the PR's. In the upcoming days I'll review all PR's and merge as much as I can

fierce idol
#

kick connections seem to be disabled now

#

is that intended?

tight terrace
rugged perch
rugged perch
tight terrace
rugged perch
#

I don't blame them it's okay. But I just hate the fact that they reject the whole version cuz of 1 simple "mistake" in their eyes intead of just asking and I can reply

rugged perch
fierce idol
#

awesome

tribal vapor
#

W ftk789

tight terrace
#

@rigid narwhal

unborn prawn
keen kindle
#

Has a bug ever been reported where the browser page suddenly lags really bad, increading memory usage consistantly unless you close the page? It's been happening to me lately and from what I "debuged" it comes from 7TV as I disabled every of my Google extensions 1 by 1, only to find 7TV was the problem

#

It only happens when I'm either:

  • Watching any VOD on the site,
  • As a mod, opening someone's profile with the basic Twitch viewer card and scrolling through their chat messages.
stuck oasis
#

This has happened to me 2 Times in the last 2 Days where my pc just ran out of Memory to the point where earlyoom failed so it crashed buh

#

I was already wondering what it was since I only had firefox, chatterino and vesktop open at the time, but either of these things you mentioned could have very well been the case when it actually happened

#

I'm on 3.0.9

keen kindle
#

I'm on 3.1.9 on my side

#

Great to know I'm not the only one

stuck oasis
#

I never really look at user logs as a mod, but it has happened a few times the last few days, so that one specifically could be the case for me. I Don't think it has happened when watching VODs for me as i have done that regularly over the last few months. That would explain why it only now appeared for me even if I'm on an older version

#

Can't seem to replicate it however

keen kindle
#

I can, let me send a video

keen kindle
gusty horizon
keen kindle
#

To me it seems only people with 999+ messages make the tab lag

stuck oasis
#

nope can't replicate it

keen kindle
#

Hmm

#

I'm reducing the video quality to send here, you'll see I can repro 100%

#

And my PC is very much fine, it's only this window completely bugging out

#

So yeah. And this same exact behaviour happens when watching a VOD. Totally freezing periodically

stuck oasis
#

OH WAIT

#

that user card

#

i did /user

#

likein a seperate tab

#

I never did it like that

keen kindle
#

Same thing if I use /user, this is just Twitch's base user card

#

It gets replaced with the 7TV one but I disabled that in the settings

stuck oasis
#

as for the reason it would brick my whole pc I it's just a linux thing

#

Also can't replicate

keen kindle
#

Hmm, might be a me thing then but I'm curious to know if the devs had that been reported at any point

stuck oasis
#

I remember I wasn't even focused on the browser when it happened, It might also be something else for me. There where some Vesktop updates lately and I also only recently updated chatterino version. But it would make sense if it was something related

dusk pendant
#

What's the rule on adding support for other extensions in 7tv? Anyone I can talk to for more information?

For context I built EloWard (https://www.eloward.com/) which is a chrome extension that displays league rank badges in chat (expanding to more games soon). Currently, you have to have the EloWard extension downloaded in order to see the rank badges. I wanted to build an addon (similar to the ffz addon system) that allows 7tv users to see the rank badges as well. Is this something that could be considered for production? It would be similar to how 7tv supports bttv emotes.

More context: EloWard is open source. EloWard only displays rank badges on streams with the category set as League of Legends so it won't be intrusive to streams that aren't related. Viewers have to link their accounts with the EloWard extension, but my hope is that the ability to see the badges won't be exclusive to extension and ffz users.

I already have it fully integrated into the 7tv extension code but am unsure if I should even attempt a PR. Wondering if anyone can help me on this.

EloWard

The ultimate Twitch streaming tool for League of Legends players. Display authentic rank badges in chat, integrate with OBS, and enhance viewer engagement. Free extension with streamer subscriptions available.

opal holly
#

wizebot not counting chat messages from chatterino7. Does it have anything to do with the chat send protocol setting ?

lone marsh
dusk pendant
# plush kayak that’s never happening

Any reason for that? 7tv integrates into ffz and vice versa, same with bttv. So the idea of integrating isn’t crazy.

In general these integrations provide a better and more seamless viewing experience for everyone. We all have the same mission and EloWard is also open source. We have a dedicated user base of streamers and viewers that this would positively impact.

short sand
#

Same mission

7TV's diverged a long time ago Sadeg

#

But good luck peepoAlright

main chasm
#

I'm writing an extension to embed twitch chat on youtube.com for people multistreaming. Having 7tv support on that embed would make much more realistic to use.

plush kayak
lone marsh
rugged perch
#

Since rewrite didn't finish yet. I gotta review the main buugs that need to be fixed ASAP where extention is stable meanwhile rewrite is happening..

main chasm
dusk pendant
tame cipher
#

hey, is 7tv accepting feature PRs? I was considering implementing user ignoring / message ignoring but wanted to check if it would be better to wait

ionic yarrow
heady shore
#

I am currently coding a chat app that already supports 7tv emotes but I can't figure out where I can find the endpoint to get the paint and badge of an user. Does anyone know the endpoint for namepaints and the selected 7tv badge?

rotund aspen
ionic yarrow
#

it's a different query for the active badge/paint,
for v3:

  user(id: $id) {
    style {
      badge {
        id
      }
      paint {
        id
      }
    }
  }
}

for v4:

  users {
    user(id: $id) {
      style {
        activeBadge {
          id
        }
        activePaint {
          id
        }
      }
    }
  }
}
#

you can see the other fields on the gql playground

heady shore
#

I found /v3/users/{id}/presences in docs and give it a try later

ionic yarrow
#

but like xslash said, it's probably best to get them through eventapi alr

heady shore
#

I'm still struggling with this API from 7TV. I have the PaintId and BadgeId, but how can I use these IDs to find out the BadgeURL, PaintColor, and PaintAngle?

ionic yarrow
solid gale
#

thats what you're asking for?

tight terrace
#

@short cairn not sure if your the right one to ping but

wide frigate
#

I’m trying to build a small script that ranks all emotes in an emote set based on how many channels are using them.

However, I can’t seem to find a proper way to get that “channel count” value through the API.

Could someone point me to the right endpoint or field for retrieving it?🙏

solid gale
wide frigate
#

THANK U 🙏

heady shore
#

v4 seems broken because this is not working

{
  paints {
    paints(id: "01K1BPH75HG2B1P7RF4TQ8VG51") {
      id
      name
      data {
        layers {
          id
          ty(ty: "PaintLayerTypeImage") {
            images
          }
          opacity
        }
        shadows {
          color {
            hex
            r
            g
            b
            a
          }
          offsetX
          offsetY
          blur
        }
      }
    }
  }
}
lapis tulip
#

as far as i know, you can't query paints by id - at least in v4
you'd have to fetch all paints and filter for the paint id you're looking for

jaunty hare
#

Hey, i was asked by a streamer if there is a possibilty to make a "Emote Only Chat" only with 7TV Emotes.
In theory it is possible to do but I would need to grab the emote list from that streamer the first time and every time it gets updated.
I haven't seen a API on GITHUB nor the Website and here the links are kinda weird.
The one sends me to a json type of output and the other one is an archived GitHub page from 7TV which kinda looks like that it is not available anymore.

Any info about that ? Thanks o7

rotund aspen
shell sierra
#

I want to add my 7TV badge to my chat overlay (on kick streaming), I already have the cosmetics like the color, but I don’t know how to get that badge through the API. Can you help me?

solid gale
#

@ionic yarrow were u gonna offer anything for this xdd

ionic yarrow
solid gale
#

was gonna offer the same idea

solid gale
#

a lot of good data you can get from gql requests

zealous arrow
#

yeah just monitor the api request sent by the client when viewing a streamer’s active emotes, set perPage to 1000, then try your best to truncate the request

#

i was unaware of the pin when i sent this

rotund aspen
#

I mean you asked for 5mb (uncompressed) worth of data in the gql query

jaunty hare
rugged perch
#

I am already working on a better way to get API docs by just a link or a button on the website. Taking longer than expected but that's on my bad. Will send it here when it's ready

zealous arrow
#

a streamer i mod for has too many emotes and i figured that would be a good way to remove the bad ones

paper token
#

Because, somehow, 1000 emotes is still not enough

rugged perch
#

Hopefully in the future ( NOT CERTAIN BUT JUST VISIONS ). I might make it easier to " sort by ". Where you can sort by numbers of channels it's in. date. and other sutff. Not sure though cuz I'll see how hard/easy would that be. but yea

zealous arrow
#

imagine the upsell

paper token
zealous arrow
#

hmmm

#

yeah

paper token
#

even the most active chat's can't effectively use more than like 100 or 200

#

more emotes isn't the solution

#

removing the trash emotes is the solution

zealous arrow
#

streamelements has 7tv chatstats

#

but that's not a good measurement

#

maybe emote existance time / chatstats ranking

manic torrent
#

@topaz crown

#

Would it be possible to make it so potat manually removes the top 20 most unused emotes after a week? I think it would be cool to set a custom timer for it

#

#steal ryanpotat

paper token
#

it would be cool

#

I was imagining a dropdown inside the emote set itself on the website, with options to auto-remove emotes that don't get used after X weeks.

solid gale
#

would be kinda ass, sorry

#

best idea which I did myself and saw others do is use that 1 command that list least used emotes

#

I think it was literally called #leastused

#

and then you can pick and choose yourself which things you could get rid off

#

even without a mod team, this would take max 30 minutes to sort out a lot of space for emotes

#

on the other hand, outside 3rd party bots, I feel like 7tv should have something for searching emotes depending on specific filters, which I've seen already suggested so suggesting it again doesnt really make sense

manic torrent
#

Idk I feel like there is simpler ways of doing it tinking

#

I don’t think people care as much tbh

solid gale
#

best method is not add 50 million emotes as soon as someone links it in chat

manic torrent
#

Maybe we got to up personal emotes a bit

#

I love using useless emotes

solid gale
#

I could be tweaking but I swear someone wrote that the personal emote limit would go up a bit

#

but I could've just imagined it idk

manic torrent
#

I doubt it sadly catSigh I don’t think it’s on the agenda just yet

solid gale
forest swift
#

i have the rest of the emotes as my personal emotes too

solid gale
#

yea I can barely get myself to pay for a 7tv sub Im good

forest swift
solid gale
#

everything gifted TriHard

manic torrent
#

I got so many gifted during the gifting events

solid gale
#

most of my subs nowadays are paid

#

I did like the times where there were codes for 1 month free sub

#

even the streamelements one had a free sub

topaz crown
solid gale
#

unless you could make expections for rarely used emotes, but that'd get annoying to manage

topaz crown
#

It would need some logic of how long it’s been added + usage, which I was working on

topaz crown
manic torrent
#

The idea I had was to have 20 slots where people can redeem an emote. The list would refresh every week — but if an emote is popular enough, it’ll be kept. Idk

distant phoenix
#

what if we all just deleted potatbotat, deleted 7tv and just went back to bttv and ffz Life

mortal fossilBOT
#

seryxx made up their mind about going to bed: 🛏 💤 (2m, 19s ago)

distant phoenix
#

$rafk

mortal fossilBOT
#

Your AFK status has been resumed.

forest swift
#

nymn has an emote redemption bot that kinda does that kira

topaz crown
#

Ah yes back to 100 combined slots

manic torrent
#

Also give me the power to bypass guards so I can rob anyone’s potato’s

forest swift
#

they allocated like 5 slots in the set for emotes ppl redeem

manic torrent
topaz crown
#

Yeah gempbot does this somewhat, besides the keep if popular

forest swift
#

if the new emote is good they will manually add it

manic torrent
#

Manually means more work and we cannot afford to give people new jobs

forest swift
manic torrent
#

If I was 7tv ceo I would cut jobs in half!

#

Can I get a minion clap

manic torrent
#

Ty ty

#

Hey get those damn crickets off of me I’m allergic

#

Ty

#

I am a hotdog enjoyer

solid gale
#

I feel like people would think of a lot of ways to remove unused 7tv emotes, and some people would want it in a really specific way

#

thats why it'd be hard to make a general function that suits everyones needs

manic torrent
distant phoenix
tight terrace
paper token
#

it would legit be so helpful though

paper token
distant phoenix
# paper token with a saw

are you gonna cut all 3 in half and keep half of each or are you gonna get rid of one, cut one in half and leave one be?

paper token
#

and donate the rest to a food pantry

stuck oasis
#

yes it is harder, especially for beginners, but gql allows way more depth without sending these 4.2MB which cuts traffic and requests if used right. It's on 7tv to teach users how to use gql

stoic bison
#

hes right

rancid tulip
#

Hello 7tv devs can you revert the global halloween emotes, its been 5 days

#

?

paper token
#

@rancid tendon 🚨 (ok nvm but server pfp needs to change if you have time)

#

actually

#

maybe they've already been reverted @rancid tulip have you tried clearing cache?

#

(I haven't checked, personally)

rugged perch
solid gale
#

especially with the tools we're provided

paper token
#

sorry for pinging you kathy

forest swift
#

now ping her to change the server pfp

paper token
#

I'll just edit the existing ping 😈

stuck oasis
stuck oasis
# solid gale I wouldnt say gql is that hard tbh <:xdd:1373808422050332692>

well I didn't say it's hard, I said its harder which is true, because you still have to write a query compared to just sending a get request buh it would be ignorant to not acknowledge that it can be somewhat confusing for people that are used to other APIs that don't use gql even if the playground helps, which is proven by the average question in this channel being about gql

solid gale
#

YESIDOTHINKSO I dont disagree with that at all, I was skeptical about using gql considering I've used apis since forever, but now that I understand gql I feel like its much more easier and convenient to use

stuck oasis
solid gale
#

that also doesnt mean that apis are hard to use, mainly poorly documented ones are

stuck oasis
#

yeah i think 7tvs main problem with the API is docs, but if ftk says his on that, then I'm sure we'll soon have less questions here

solid gale
#

chat will die even further

solemn moat
lapis tulip
#

well, you don't

lapis tulip
molten tartan
#

has there been any progress on mass operations? specifically i want to copy from one set to another. i have edit permissions on both.

https://github.com/SevenTV/SevenTV/blob/main/docs/website.md#emote-set-batch-operations

this has some comments about it but last edit was 10 months ago. if there's no support i was thinking about hitting /gql with EmotesInSet and a payload with perPage: 1000 and then manually hitting AddEmoteToSet for everything that returns, but im also afraid that approach may hit some throttle

gusty horizon
molten tartan
#

Not exactly. I have a bunch of sets. Someone adds me as an editor of their sets. I want to just shove all emotes from one of my sets into their set (which may have emotes already)

gusty horizon
molten tartan
#

Will take a look, thanks

gusty horizon
#

there is a command in that bot #mergeset {your set id} {their set id} and it will merge your emote set to theirs in minutes

gusty horizon
solid gale
#

@gaunt magnet I just wanted to comment on here, because I'm not sure whether to actually make a followup PR or not, the reason Nerixyz got false is because I simply put a check for watch streaks in a place it should not have been, there was no reason to put it there and this is just fully on my end, which I apologise about.
This happens on line around 786, or just where Nerixyz commented, this does not impact how things behave and simply is just considered an unnecessary check, so all we'd need to do is revert

if (msgType == "viewermilestone")
{
    msg->flags.set(MessageFlag::WatchStreak);
}
else
{
    msg->flags.set(MessageFlag::Subscription);
}

into

msg->flags.set(MessageFlag::Subscription);

The other checks I have put should actually return properly (line 856 and 1150) - as for the tests, I am able to get the raw IRC input but I don't think I'd be able to actually get the output to achieve the proper json file, sorry about that. Just wanted to follow up on this instead of not making a PR at all and leaving it like this

gaunt magnet
#

since we're already talking here too, since this was your first contribution you can add yourself to the about page if you'd like @solid gale

Thank you! As a first-time contributor, you are now eligible to be listed in the About page in Chatterino.

If you want this, you can open a new PR where you modify the resources/contributors.txt file and add yourself to the list. Read the comments at the top for instructions.

solid gale
gaunt magnet
#

sounds good Okayeg

molten tartan
# gusty horizon no problem

ok, that tool would require the streamer to do more actions than setting me as an emote admin so it wasnt a good use case to me. i ended up writing my own script ( https://pastebin.com/4gJvMwU8 ), then on node i can run it and pass the --fromSet and --toSet arguments. during execution it asks for the bearer token (it can be retrieved from any operation on the website, and it asks during execution so it is not retained by the command line). it works well, seems to get throttled at 98 emotes or so, but there's an anti collision in place that makes it work, just gotta run about once per minute until everything copies over 😛

#

chat goes crazy though so better to do when streamer is offline

ionic yarrow
molten tartan
#

yeah, in my own set i see the choice

ionic yarrow
#

yeah the permission to change sets isn't included in the default permissions

molten tartan
#

on the person's set i dont

molten tartan
#

so i have the ability to "change their sets", but i lack the ability on the set themselves "to set on others"

rotund aspen
#

you need Manage Profile to change active sets

molten tartan
#

at this point doesn't matter much, I just used my script to dump everything on their set, but I'm quite confident that I managed to enabled mine on their profile once, but couldn't revert the operation

rotund aspen
solid gale
#

a dev might have to look into this

sterile shell
#

Is there a way to get 7TV to work for embeded chats?

hidden portal
#

full implementation coming along swimmingly ApuGuns

solid gale
#

@rugged perch will there be a form of viewing paints for users who dont have an active sub?

rugged perch
#

It is in the plan to allow users without a sub to view the cosmetics they own yes.

solid gale
#

Okayge 👍

rugged perch
distant phoenix
#

2029 patch notes leaked NOWAY

pearl ore
#

I implemented it on the client only to see this... All this time...

#

Why even make it part of the protocol if it's just not there at all? dies I'm assuming it was dropped during the re-implementation to Rust due to performance problems it caused...

#

Average 7TV integration development experience

#

Do docs still not exist at all? Crazy

stuck oasis
#

xd

#

the devs that wrote the rust version just had the job to convert it to rust 1 for 1 afaik

stuck oasis
rugged perch
#

I guess here's a sneak peek? Pfftt

pearl ore
pearl ore
#

God I hope I don't have to make a GQL-based API client in the future...

stuck oasis
#

doesn't event API do most for chat overlay

pearl ore
stuck oasis
pearl ore
# stuck oasis doesn't event API do most for chat overlay

For example, if I in theory subscribed to personal emote set updates of chatters, I wouldn't be able to easily know which user's map (I store personal emotes as [username][emoteName]: emote) to modify on a personal emote event since it relates only to the set (actor and owner of the personal emote set are not necessarily the same users so I can't assume one equals the other), so I need a mapping of emote set ID to owner username, which is much easier to get via the v3 API

#

Also getting the initial emote set for the channel and the global one is easier with v3 API obviously

pearl ore
#

The only reason I have a working client for it is because I totally gave up on code quality in ChatIS and pretend to just not care that it's shit

stuck oasis
#

wait so if change the personal emotes of another person the event API will not tell you who owns the personal emote set?

pearl ore
stuck oasis
#

I assume that's what you meant by actor right? ApuThink

pearl ore
#

So the actor I assume is the user that caused the event, so the one who added an emote to the personal set in this case

#

But that's not necessarily the owner of the personal emote set since iirc you can give perms to edit your personal emote set to other people

#

Meaning I know the emote set ID, but not the username of the owner

#

So I either have to keep 2 mappings [username][emoteName}: emote + [personalEmoteSetId][emoteName]: emote, or map [personalEmoteSetId]: username

#

Because when messages come in chat, the primary identifier is the username (or at least that's how ChatIS works)

stuck oasis
#

yeah makes sense

#

weird that it wouldn't just send information about the owner of the set

pearl ore
#

Also, I'm not even sure this case currently works correctly at all in ChatIS, when an emote if removed from a set, the update you get is an "emote", not an "active emote" (iirc), but only "active emote" has the emote name by which the emote goes in chat ("active emote".name is the name used in chat, "emote".name is original emote name as the author made it), so how do I know which emote to delete from my [emoteName]: emote set... Do I need an [emoteId]: emoteName map too?

#

This is how a "renamed" emote looks, where the long ass name is the original emote name and "Dies" is the rename

#

The struct data with the original name is the "emote" struct, which is contained inside the value struct (with the active name), which is an "active emote" struct

#

I sure love 7tv!

stuck oasis
#

Oh so if an emote gets remove it just sends the inner emote data

#

I mean this system was made by anatole OMEGADANCEBUTFAST I am not surprised it' scuffed as hell

#

wait but if you just store emotes, a channel has with their ID this shouldn't be a problem right?

#

isn't the ID already stored in the [emoteName]: emote set?

#

you can just do a linear search for teh right emote

#

well unless sets in your language aren't iteratable

violet flint
#

am i overcooking here xd

plush kayak
ruby mist
#

I helped this guy get subs and he helped get some ppl into 7tv:3

ruby mist
#

lol wins twitch ngl

full owl
#

what is this

violet flint
paper token
#

Is it as performant as chatterino too?

violet flint
#

I'd argue it is, only thing I'm still trying to improve is start up times

plush kayak
#

since it's tauri

#

will just depend on the system's webview crap

violet flint
#

there's a couple things that's blocking first paint that i'm attempting to minimize because i'm fetching more data on initial load

#

but yeah for time it takes for the actual window to render is out of my control afaik, though that hasn't really been an issue in release builds

full owl
#

and is it a qt app?

plush kayak
plush kayak
#

that’d look cool with those placeholder animated gradients yk

solid gale
violet flint
#

i think i solved most of the issues yesterday after implementing a basic cache for badges and emotes

#

here's a demo with a release build

solid gale
#

I think one of the pros of chatterino is the fact that you open it once and it will just work on all the channels without rejoining you every time you open a chat

#

not only is it a pro in terms of usage, but its just better for load times I feel like

distant phoenix
#

my chatterino uses 4-5gb of ram

violet flint
#

yeah i was just about to say, keeping those connections open is probably gonna consume more ram

solid gale
violet flint
#

though i do plan on implementing multiple later for splits and whatnot

solid gale
#

I do think you will start seeing performance issues whenever theres a lot of chat paints rendered

#

you might want to add an option to disable 7tv paint shadows, and just allow the gifs/gradients to work

violet flint
#

are shadows that taxing for css? i am using a virtual list for the chat so only what you see in view is getting rendered

solid gale
#

if you load up someones profile cosmetics page without hardware accel you will start seeing quite heavy performance loss

solid gale
violet flint
#

i haven't noticed any issues yet but i'll keep that in mind

distant phoenix
solid gale
#

19

distant phoenix
#

hm

#

makes sense

solid gale
#

I just feel like one of the good reasons to use chatterino is because of the ability to quickly hop channels and people can like ping you and shit

#

without that youre basically just running modded native chat

violet flint
#

def gonna prioritize that for v1, just working toward a beta rn

solid gale
#

FeelsOkayMan 👍

ionic yarrow
distant phoenix
ionic yarrow
#

makes sense then

distant phoenix
#

and i have like 145 tabs

fading isle
distant phoenix
#

i think scrollback is 8k and load on join is 2k?

ionic yarrow
#

mine only uses 264mb with ~60 tabs

#

scrollback only on 2.5k

distant phoenix
#

i also have logs enabled for some reason

#

dont even ask why...

ionic yarrow
distant phoenix
#

$remindme in 5h disable logging in chatterino you dumb fuck

mortal fossilBOT
#

I will remind you in 5h, 0m (ID 3693099)

violet flint
plush kayak
violet flint
#

temporary channels (which get removed when app gets closed), online following, offline following

mortal fossilBOT
#

@distant phoenix, reminder from yourself (5h, 0m ago): disable logging in chatterino you dumb fuck

plush kayak
#

Ohh wait I think it's my fault

#

are these not in the repo?

violet flint
#

oh i didn't think about that

#

i'll fix that in a min

plush kayak
#

oki

#

thxxx

plush kayak
#

@violet flint do you have a discord server for ts?

violet flint
#

not yet, i'll start a discussion megathread for now

stuck oasis
#

In case linux gets more support and you get people on reporting a bug where its just a blackscreen or similar even if it compiles properly on x11 and when using a nvidia gpu it might be related to this issue https://gitlab.archlinux.org/archlinux/packaging/packages/webkit2gtk/-/issues/1 I had this happen on another tauri app that i was trying to package for nixpkgs and I couldn't find the source of the problem for a few days dead idk how common it is but it was so hard to find out what caused it, I don't want you to go through that as well

plush kayak
#

it’s abandonware

plush kayak
#

idk if that’s the actual solution but idk why you’d use nouveau nowadays

stuck oasis
#

no i use normal Nvidia drivers

#

trust me i played around a lot with my drivers in an attenpt to fix this

plush kayak
#

I personally don't like webkitgtk

#

bc I'm used to the chromium inspector 😭

tawny obsidian
#

Why does the dev build still target mv2?

rugged perch
ruby mist
#

why does bot h8 me;-;

obsidian thorn
#

Ok so I have this problem. It's a classic hardware acceleration anomaly visual glitch. If I turn off the hardware acceleration the glitch stops but it lags my youtube at 5 fps because bottleneck of the CPU. But I discovered the problem is from the 7tv extension after removing it. I use brave on Windows. The glitch shows contrast change every 2 secs on every twitch stream.

nova kestrel
#

Hi everyone. Hope your day is well.

I cannot be the only one that deals with this glitch.
When I select a certain color to appear as a background when I chat or am tagged, other than the default red, it will reset whenever the tab is refreshed. Also the custom sound as well. I tried numerous fixes, including new back up and reload. I asked someone else to try it and they had the same results.

Please, please tell me someone is working on this issue!? I am so tired of having to change the color every single refresh!

Thank you for your time.

rugged perch
rugged perch
distant phoenix
#

it gets more and less saturated

#

but idk if thats an extension issue tbh

rugged perch
#

If I'm not mistaken. that's a Brave issue that has been going on for a while now.

#

I'll still look into the high CPU Usage as well. extension require some optimizations anyway

obsidian thorn
rugged perch
#

I see it now. I didn't notice it. But I'm afraid this is a Brave issue

#

Can you try it on Chrome? Me trying it on Brave as well didn't replicate the issue which is also confusing me...

obsidian thorn
#

On chrome I didn't have an issue but im not switching back to chrome with all the ad blockers not working

rugged perch
#

Or more of a good test as well. Can you try it out WITHOUT any extention but 7tv?

obsidian thorn
#

I did

#

Only with 7tv had the issue

rugged perch
#

It still has the same glitch?

#

Are you on latest update on Brave?

obsidian thorn
#

Yes. Is the nightly version

rugged perch
#

How do I replicate that custom cursor just for reference to test out everything as your setup?

obsidian thorn
#

I got the image of the cursor and changed it in windows settings

rugged perch
#

Oh not a Brave thing

#

I genuinely don't know how to replicate your issue

#

7TV-Nightly only, Windows, Brave latest version

obsidian thorn
#

I tried both versions of 7tv extensions, not only nightly

rugged perch
#

I know this might be a "stupid" question but do you have your GPU drivers up to date? I remember someone had to update their drivers and it fixed some issue like that

obsidian thorn
#

Yeah, im not driversen

rugged perch
#

Idk what that means LULE U update or nah?

#

Weird I actually cannot replicate the issue thinking

obsidian thorn
#

Yeah. forsen is driversen bc he never updates his drivers

rugged perch
#

ahh wire

obsidian thorn
#

I will tell you more about it when I get home, im in the bus rn

#

Maybe u can have all my extensions as well

#

I tested already my extensions tho